9
CS48711-1/31 Illinois Institute of Technology CS487 Software Engineering Midterm Review David Lash

Illinois Institute of Technology

  • Upload
    noreen

  • View
    25

  • Download
    0

Embed Size (px)

DESCRIPTION

Illinois Institute of Technology. CS487 Software Engineering Midterm Review David Lash. What it covers. ~2 hours long A mixture of concepts and problem solving Covers material from the beginning of the course through this 7/3/01. What it covers. 1. What is SE Softw Lifecycle models - PowerPoint PPT Presentation

Citation preview

Page 1: Illinois Institute of Technology

CS48711-1/31

Illinois Institute of Technology

CS487

Software Engineering

Midterm Review

David Lash

Page 2: Illinois Institute of Technology

CS48711-2/31

What it covers

~2 hours long A mixture of concepts and problem solving Covers material from the beginning of the

course through this 7/3/01

Page 3: Illinois Institute of Technology

CS48711-3/31

What it covers

1. What is SE Softw Lifecycle models Various models (waterfall, prototype,

incremental, sprial evolutionary concurrent)– What are the advantages of …– What are the weaknesses …– Which model would you use if ...

2. Requirements -> Requirements process, FAST, QFD, partitioning,

– What is QFD? What is FAST

Page 4: Illinois Institute of Technology

CS48711-4/31

What it covers

3. Requirements II - several modeling techniques, use case, system context diagrams, Partitioning

– Data Modeling - Entity-Relation - Data objects and their relationships

Information flow diagram - Data flow diagrams - how data transforms in system- how functions transform data

– Control Specifications - State diagrams - how system behaves as result of external events .

Test example list HW

Page 5: Illinois Institute of Technology

CS48711-5/31

What it covers Consider the problem of designing the software system for an

automatic teller machine (ATM). – The user puts his or her card into a slot, enters a four-digit PIN (personal

identification number), and can then perform the following operations on different bank accounts: d

deposit any amount, withdraw funds (the account may not be overdrawn), determine account balance, or transfer funds between two accounts.

– Design the ATM system using a transaction-oriented analysis. Draw a data flow diagram (Level-0 and Level-1). Note: in this question you do not have to specify (e.g., using pseudo-code) processes, data flows, external entities, stores and modules

Page 6: Illinois Institute of Technology

CS48711-6/31

What it covers

Customer

CardReader

Bank

Printer

CashDispenser

ATM

Commands & Data

Card Data

ResponsesCommands & Response

Amount

Line

Page 7: Illinois Institute of Technology

CS48711-7/31

What it covers

Customer

Card Rdr

PINValidation

PIN Number

PIN Prompt

Card Data

MenuSelection

Menu

Selection

Valid PIN

Temp UserData

Card Data

DepositCash

Customer

WithdrawCash

TransferCash

Inquire

Temp UserData

BankDatabase

Card DataInq

Account

Printer

Acct Stat

Acct DataCust Info

Acct Data

TxF Cmd

LineWidthdrawal

Prompt

Deposit

Printer

CashDispenser

Line

Acct Info

Amount

Prompt

Line

Amount

Temp UserData

Card Data

Acct InfoBank

Database

Debit Cmd

Card Data

Credit CmdAmount

Customer

Amount

Prompt

Page 8: Illinois Institute of Technology

CS48711-8/31

What it covers

4. More Requirements - Decision tables,– Like HW

5. Design concepts - abstraction, cntrl hierarchy, struct programming, info hiding, coupling, cohesion

– What is the problem with content coupling. – Suppose Module X and module Y both access the

same global structure, what type of coupling is it? – List all types of module cohesion. For each type of

module cohesion provide its description and an example of a module exhibiting that kind of cohesion.

Page 9: Illinois Institute of Technology

CS48711-9/31

What it covers

6. Architectural concepts - various types of architecture, DF oriented design

– For a DF diagram with a transform flow, translate into one with none.

– (transform and transaction flow) – Go to structure Chart.

7. Low level design concepts - pseudo code, Struct programming

– What is SP, what programming constructs does it require? 8. OO software concepts -

– What is the difference between inheritance and polymophism?