Lecture 2 Flashcards
What is Software Design?
Activity of specifying the nature and composition of software products that satisfy client needs and desire
What is Abstraction?
Suppressing or ignoring some properties of objects
How does Abstraction help in software design?
Allows us to simplify a problem and focus on the most important aspects instead
What is Modeling in software design?
Allows us to represent a target by having model parts corresponding to target parts
What does a Static Design Model represent?
Represents aspects of programs that do not change during program execution
Give examples of Static Design Models
Class/Object models
What does a Dynamic Design Model represent?
Represents what happens during program execution
Give examples of Dynamic Design Models
State diagrams
What is Software Product Design?
The activity of specifying software product features
What is Software Engineering Design?
Activity of specifying programs and sub-systems
Phase 1
Requirements Specification (Product Design)
Phase 2
Design (Engineering Design)
Phase 3
Implementation (Engineering Design)
Phase 4
Testing
Phase 5
Maintenance (Product Redesign and Engineering Redesign)
How many phases are there in the Software Product Life Cycle?
5
What is the first phase of the Software Product Life Cycle?
Requirements Specification (Product Design)
What is the second phase of the Software Product Life Cycle?
Design (Engineering Design)
What is the third phase of the Software Product Life Cycle?
Implementation (Engineering Design)
What is the fourth phase of the Software Product Life Cycle?
Testing