What you'll learn?

·     Describe the object-oriented software development process, including object-oriented methodologies and workflows.

·     Gather system requirements through interviews with stakeholders.

·     Analyze system requirements to determine the use cases and domain model of the problem domain (the Requirements model).

·     Create a system architecture (the Architecture model) supporting the nonfunctional requirements (NFRs) and development constraints.

·     Create a system design (the Solution model) supporting the functional requirements (FRs).

Description

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.

Audience :

Database developers and administrators, Internet application developers, middleware programmers, Java developers, and client/server developers.

Topics :

Introducing the Software Development Process

o  Describe the Object-Oriented Software Development (OOSD) process

o  Describe how modeling supports the OOSD process

o  Explain the purpose, activities, and artifacts of the following OOSD workflows: Requirements Gathering, Requirements Analysis, Architecture, Design, Implementation, Testing, and Deployment

Examining Object-Oriented Technology

o  Describe how OO principles affect the software development process

o  Describe the fundamental OO principles

Choosing an Object-Oriented Methodology

o  Explain the best practices for OOSD methodologies

o  Describe the features of several common methodologies

o  Choose a methodology that best suits your project

Determining the Project Vision

o  Interview business owners to determine functional requirements of the software system

o  Analyze interview results to identify NFRs, risks, and constraints

o  Create a project Vision document from the results of the interviews and risk analysis

Gathering the System Requirements

o  Plan for the process of gathering requirements

o  Plan for the stakeholder interviews to validate and refine the FRs and NFRs from the Vision document

o  Document the system in the System Requirements Specification (SRS) from all requirements sources,/li>

Creating the Initial Use Case Diagram

o  Identify and describe the essential elements in a UML Use Case diagram

o  Develop a Use Case diagram for a software system based on the SRS

o  Record Use Case scenarios for architecturally significant Use Cases

Refining the Use Case Diagram

o  Document a Use Case and its scenarios in a Use Case form

o  Recognize and document Use Case and Actor inheritance

o  Recognize and document Use Case dependencies

o  Identify the essential elements in an Activity diagram

o  Validate a Use Case with an Activity diagram

Determining the Key Abstractions

o  Identify a set of candidate key abstractions

o  Identify the key abstractions using CRC analysis

Constructing the Problem Domain Model

o  Identify the essential elements in a UML Class diagram

o  Construct a Domain model using a Class diagram

o  Identify the essential elements in a UML Object diagram

o  Validate the Domain model with one or more Object diagrams

Creating the Analysis Model Using Robustness Analysis

o  Explain the purpose and elements of the Design model

o  Identify the essential elements of a UML Collaboration diagram

o  Create a Design model for a use case using Robustness analysis

o  Identify the essential elements of a UML Sequence diagram

o  Generate a Sequence diagram view of the Design model

Introducing Fundamental Architecture Concepts

o  Justify the need for the architect role

o  Distinguish between architecture and design

o  Describe the SunTone Architecture Methodology

Exploring the Architecture Workflow

o  Describe the Architecture workflow

o  Describe the diagrams of the key architecture views

o  Select the Architecture type

o  Create the Architecture workflow artifacts

Creating the Architectural Model for the Client and Presentation

o  Explore user interfaces

o  Document a graphical user interface (GUI) application in the Client tier of the Architecture model

o  Document a web user interface (Web UI) application in the Presentation tier of the Architecture model

Creating the Architectural Model for the Business Tier

o  Document the persistence mechanism in the Resource tier of the Architecture model

o  Document the persistence integration mechanism in the Integration tier of the Architecture model

Creating the Solution Model

o  Create a Solution model for a GUI application

o  Create a Solution model for a Web UI application

Creating the Solution Model

o  Create a Solution model for a GUI application

o  Create a Solution model for a Web UI application

Refining the Domain Model

o  Refine the attributes of the Domain model

o  Refine the relationships of the Domain model

o  Refine the methods of the Domain model

o  Declare the constructors of the Domain model

Applying Design Patterns to the Solution Model

o  Define the essential elements of a software pattern

o  Describe the Composite pattern

o  Describe the Strategy pattern

o  Describe the Observer pattern

o  Describe the Abstract Factory pattern

Modeling Complex Object State Using Statechart Diagrams

o  Model object state

o  Describe techniques for programming complex object state

Prerequisities :

Recommended Knowledge :

Students must have CIW Foundations certification or equivalent experience, and have completed the Java Programming series (Java Programming Fundamentals) or have equivalent experience with an object-oriented programming language.

Recommended Course(s) :

Category :

  • Programming

Training Materials :

CIW Official Curriculum

Labs :

This course includes several labs to ensure you will gain the targeted skills and experience.

Credential :

This course qualifies for the Exam 1D0-438 and is a credit towards the CIW Enterprise Developer.