Module 1 - Introducing
the Software Development Process |
| 4 |
Describe the Object-Oriented
Software Development (OOSD) process |
| 4 |
Describe how modeling
supports the OOSD process |
| 4 |
Explain the purpose,
activities, and artifacts of the following OOSD
workflows: Requirements |
| 4 |
Analysis, Architecture,
Design, Implementation, Testing, and Deployment |
Module 2 - Examining
Object-Oriented Technology |
| 4 |
Describe how OO principles
affect the software development process |
| 4 |
Describe the fundamental
OO principles |
Module 3: Choosing
an Object-Oriented Methodology |
| 4 |
Explain the best practices
for OOSD methodologies |
| 4 |
Describe the features
of several common methodologies |
| 4 |
Choose a methodology
that best suits your project |
Module 4: Determining
the Project Vision |
| 4 |
Interview business
owners to determine functional requirements of
the software system |
| 4 |
Analyze interview results
to identify NFRs, risks, and constraints |
| 4 |
Create a project Vision
document from the results of the interviews and
risk analysis |
Module 5: Gathering
the System Requirements |
| 4 |
Plan for the process
of gathering requirements |
| 4 |
Plan for the stakeholder
interviews to validate and refine the FRs and NFRs
from the Vision |
| 4 |
Document the system
in the System Requirements Specification (SRS)
from all requirements |
Module 6: Creating
the Initial Use Case Diagram |
| 4 |
Identify and describe
the essential elements in a UML Use Case diagram |
| 4 |
Develop a Use Case
diagram for a software system based on the SRS |
| 4 |
Record Use Case scenarios
for architecturally significant Use Cases |
Module 7: Refining
the Use Case Diagram |
| 4 |
Document a Use Case
and its scenarios in a Use Case form |
| 4 |
Recognize and document
Use Case and Actor inheritance |
| 4 |
Recognize and document
Use Case dependencies |
| 4 |
Identify the essential
elements in an Activity diagram |
| 4 |
Validate a Use Case
with an Activity diagram |
Module 8: Determining
the Key Abstractions |
| 4 |
Identify a set of candidate
key abstractions |
| 4 |
Identify the key abstractions
using CRC analysis |
Module 9: Constructing
the Problem Domain Model |
| 4 |
Identify the essential
elements in a UML Class diagram |
| 4 |
Construct a Domain
model using a Class diagram |
| 4 |
Identify the essential
elements in a UML Object diagram |
| 4 |
Validate the Domain
model with one or more Object diagrams |
Module 10: Creating
the Analysis Model Using Robustness Analysis |
| 4 |
Explain the purpose
and elements of the Design model |
| 4 |
Identify the essential
elements of a UML Collaboration diagram |
| 4 |
Create a Design model for a use
case using Robustness analysis |
| 4 |
Identify the essential elements
of a UML Sequence diagram |
| 4 |
Generate a Sequence diagram view
of the Design model |
Module 11: Introducing Fundamental
Architecture Concepts |
| 4 |
Justify the need for the architect
role |
| 4 |
Distinguish between architecture
and design |
| 4 |
Describe the SunTone Architecture
Methodology |
Module 12: Exploring the Architecture
Workflow |
| 4 |
Describe the Architecture workflow |
| 4 |
Describe the diagrams of the key
architecture views |
| 4 |
Select the Architecture type |
| 4 |
Create the Architecture workflow
artifacts |
Module 13: Creating the Architectural
Model for the Client and Presentation Tiers |
| 4 |
Explore user interfaces |
| 4 |
Document a graphical user interface
(GUI) application in the Client tier of the Architecture
model |
| |
Document a web user interface (Web
UI) application in the Presentation tier of the
Architecture model |
Module 14: Creating the Architectural
Model for the Business Tier |
| 4 |
Explore distributed object-oriented
computing |
| 4 |
Document the Business tier in the
Architecture model |
Module 15: Creating the Architectural
Model for the Resource and Integration Tiers |
| 4 |
Document the persistence mechanism
in the Resource tier of the Architecture model |
| 4 |
Document the persistence integration
mechanism in the Integration tier of the Architecture
model |
Module 16: Creating the Solution
Model |
| 4 |
Create a Solution model for a GUI
application |
| 4 |
Create a Solution model for a Web
UI application |
Module 17: Refining the Domain
Model |
| 4 |
Refine the attributes of the Domain
model |
| 4 |
Refine the relationships of the
Domain model |
| 4 |
Refine the methods of the Domain
model |
| 4 |
Declare the constructors of the
Domain model |
Module 18: Applying Design Patterns
to the Solution Model |
| 4 |
Define the essential elements of
a software pattern |
| 4 |
Describe the Composite pattern |
| 4 |
Describe the Strategy pattern |
| 4 |
Describe the Observer pattern |
| 4 |
Describe the Abstract Factory pattern |
Module 19: Modeling Complex Object
State Using Statechart Diagrams |
| 4 |
Model object state |
| 4 |
Describe techniques
for programming complex object state |