★ Must-know
📌 Analysis determines what the system does, whereas design determines how the system does it.
Further detail
Analysis asks what the system does, whereas design asks how it does it.
★ Must-know
📌 The Waterfall model proceeds sequentially, with each phase completed before the next begins, while the Prototype model rapidly builds a prototype to clarify requirements.
Further detail
Waterfall → Prototype → Spiral
★ Must-know
📌 Structured analysis decomposes a system by functions and separates data from processing, whereas object-oriented analysis decomposes it into objects that combine data and behavior.
Further detail
Structured methods separate data and processing, whereas objects encapsulate both.
★ Must-know
📌 Each RUP iteration produces a runnable increment of the software system.
Further detail
Inception → Elaboration → Construction → Transition
★ Must-know
The three building blocks are:
UML diagrams are views of one model and are divided into structural diagrams describing static aspects and behavioral diagrams describing dynamic aspects.
Further detail
E-R-D: Elements, Relationships, Diagrams
📌 Aggregation is a weak whole-part relationship in which the part remains independent when the whole is destroyed, whereas composition is a strong whole-part relationship in which the part is destroyed with the whole.
📌 Generalization expresses an is-a relationship between superclass and subclass, whereas realization expresses that an element implements a contract specified by another element.
Aggregation lets the part survive; composition destroys the part with the whole.
★ Must-know
📌 An enumeration is a finite set of named values, whereas a structured data type is a compound type defined by combining other data types.
Further detail
UML collection types include:
UML does not define Date as a built-in primitive type; Date is taken from a standard library.
S-T-C: Stereotype, Tagged value, Constraint
UML 2.0 defined 13 diagram types, and UML 2.2 added the Profile diagram, resulting in 14 types.
The structural diagrams are:
The behavioral diagrams are:
Structural diagrams describe what exists, whereas behavioral diagrams describe what happens.
★ Must-know
Further detail
Rational Rose is a classic IBM Rational tool associated with RUP, while Visual Paradigm is a modern tool supporting UML 2.x and offering a free Community edition for students.
The case study covers:
Create project → create diagram → place elements → name → save/export
Structured and Object-Oriented Approaches
| Dimension | Structured approach | Object-oriented approach |
|---|---|---|
| Unit of decomposition | Function or process | Object containing data and behavior |
| Data and processing | Separated | Encapsulated |
| Typical models | BFD, DFD, ERD | Use-case, class, interaction diagrams |
| Reuse | Difficult and procedural | Higher through inheritance, encapsulation, and packages |
| Maintenance | Harder for large systems | Easier through local modification |
Test your knowledge on Object-Oriented Analysis and Design with 26 multiple-choice questions with detailed corrections.
1. What does a software process transform into a software system?
2. Which sequence correctly represents the main phases of software development?
Memorize the key concepts of Object-Oriented Analysis and Design with 56 interactive flashcards.
What is a software process?
A set of activities transforming user requirements into a software system.
What are the main phases of software development?
Requirements identification, analysis, design, programming, testing, deployment, and maintenance.
What does analysis determine in software development?
What the system does.
Import your course and AI generates sheets, quizzes and flashcards in 30 seconds.
Sheet generator