Object Oriented Analysis and Design: Applying UML and Patterns Craig Larman
Object Oriented Analysis and Design: Applying UML and Patterns Craig Larman
Design
Chapter 1
Applying UML and Patterns
Craig Larman
NJIT
Applying UML and Patterns in
OOA/OOD
NJIT
Analysis
Analysis is a broad term. In Software
development, we are primarily concerned
with two forms of analysis.
Requirements Analysis is discovering the
requirements that a system must meet in
order to be successful.
Object Analysis is investigating the object in
a domain to discover information important
to meet the requirements.
What is Design?
(Class-answer the question)
NJIT
Design
Design emphasizes a conceptual solution
that fulfills the requirements. A design is
not an implementation, although a good
design can be implemented when it is
complete.
There are subsets of design, including
architectural design, object design, and
database design.
Analysis and Design
Analysis
do the right thing
Design
Do the thing right
What is Object Oriented
Analysis?
The emphasis is on finding and describing
the objects (or concepts) in the problem
domain.
In a Library Information System, some of
the concepts include Book, Library, and
Patron.
What is Object Oriented
Design?
The emphasis is defining software objects
and how they collaborate to fulfill the
requirements.
In a Library Information System, a Book
software object may have a title attribute
and a getChapter method.
Implementation
During Implementation, or Object-Oriented
Programming, design objects are
implemented, such as a book class in
Java.
Implementation is also known as Coding
or Construction.
Example Tasks
Define Use Cases
Define a Domain Model
Define Interaction Diagrams
Define Design Class Diagrams