Object-Oriented Analysis and Design Using UML (OO-226) : Course Outline/Details
Object-Oriented Analysis and Design Using UML (OO-226) : Course Outline/Details
Object-Oriented Analysis and Design Using UML (OO-226) : Course Outline/Details
Course Outline/Details
The Object-Oriented Analysis and Design Using UML
course effectively combines instruction on the software
development processes, object-oriented technologies,
and the Unified Modeling Language (UML). This
instructor-led course uses lecture, group discussion,
and facilitator-led activities (such as analyzing
stakeholder interviews) to present one practical,
complete, object-oriented analysis and design (OOAD)
roadmap from requirements gathering to system
deployment.
Students are provided a pragmatic approach to object-
oriented (OO) software development using a widely
adapoted methodology (the Unified Process), the latest
UML specification (version 1.4), and OO technologies,
such as the Java[tm] programming language. This
course progresses through: a primer on OO technology
and software development methodologies,
requirements gathering and analysis (including
interviewing stakeholders), system architecture and
design, implementation, testing, and deployment. The
classroom lectures expose students to other proven
OOAD practices, such as class-responsibility-
colaboration (CRC) analysis (used to discover the
Domain entities) and Robustness analysis (used to
move from analysis to design).
Prerequisites
To succeed in this course, student must already be able
to:
Course Outline
Module 1: Introducing the Software Module 8 : Determining the Key Abstractions
Development Process • Identify a set of candidate key abstractions
• Describe the Object-Oriented Software Development • Identify the key abstractions using CRC analysis
(OOSD) process
• Describe how modeling supports the OOSD process
Module 9 : Constructing the Problem Domain
• Explain the purpose, activities, and artifacts of the
following OOSD workflows: Requirements Gathering, Model
Requirements Analysis, Architecture, Design, • Identify the essential elements in a UML Class diagram
Implementation, Testing, and Deployment • Construct a Domain model using a Class diagram
• Identify the essential elements in a UML Object
Module 2: Examining Object-Oriented diagram
Technology • Validate the Domain model with one or more Object
• Describe how OO principles affect the software diagrams
development process
• Describe the fundamental OO principles
Module 10 : Creating the Analysis Model Using
Module 3: Choosing an Object-Oriented Robustness Analysis
Methodology • Explain the purpose and elements of the Design model
• Explain the best practices for OOSD methodologies • Identify the essential elements of a UML Collaboration
• Describe the features of several common diagram
methodologies • Create a Design model for a use case using
• Choose a methodology that best suits your project Robustness analysis
• Identify the essential elements of a UML Sequence
Module 4: Determining the Project Vision diagram
• Interview business owners to determine functional • Generate a Sequence diagram view of the Design
requirements of the software system model
• Analyze interview results to identify NFRs, risks, and
constraints
Module 11: Introducing Fundamental
• Create a project Vision document from the results of
the interviews and risk analysis Architecture Concepts
• Justify the need for the architect role
Module 5: Gathering the System Requirements • Distinguish between architecture and design
• Plan for the process of gathering requirements • Describe the SunTone Architecture Methodology
• Plan for the stakeholder interviews to validate and
refine the FRs and NFRs from the Vision document
• Document the system in the System Requirements Module 12: Exploring the Architecture Workflow
Specification (SRS) from all requirements sources • Describe the Architecture workflow
• Describe the diagrams of the key architecture views
Module 6: Creating the Initial Use Case • Select the Architecture type
Diagram • Create the Architecture workflow artifacts
• Identify and describe the essential elements in a
UML Use Case diagram
• Develop a Use Case diagram for a software system Module 13: Creating the Architectural Model for
based on the SRS the Client and Presentation Tiers
• Record Use Case scenarios for architecturally • Explore user interfaces
significant Use Cases • Document a graphical user interface (GUI) application
in the Client tier of the Architecture model
Module 7: Refining the Use Case Diagram • Document a web user interface (Web UI) application in
• Document a Use Case and its scenarios in a Use the Presentation tier of the Architecture model
Case form
• Recognize and document Use Case and Actor
inheritance Module 14: Creating the Architectural Model for
• Recognize and document Use Case dependencies the Business Tier
• Identify the essential elements in an Activity diagram • Explore distributed object-oriented computing
• Validate a Use Case with an Activity diagram • Document the Business tier in the Architecture model