Business Systems
Analysis
for Object Oriented Projects with UML
3 Day Course Description
The key to effective business analysis is to provide
specification of “what” functionality a software system
will provide its users, rather than “how” the software will
be designed. But too often traditional business analysis
produces artifacts and specifications that do not align
with the concepts of object-oriented design and development.
This course focuses on how business analysts and business
systems analysts can provide object-oriented developers
with concise specifications of the problem domain within
which a software solution will be constructed. Students
will learn the power of the Unified Modeling Language version
2 (UML 2) for expressing business concepts and project goals
using object-oriented models, to prepare for either in-house,
or out-sourced, technical design and implementation. Extensive
hands-on exercises using two complete, and parallel, case
studies assure that students see how a concept is modeled,
and then have the opportunity to immediately apply and test
their understanding.
Audience
Business analysts and project managers who need
a common, practical technique for constructing business
analysis specifications of object-oriented systems.
Prerequisites
Experience in analysis is desirable, but not mandatory.
Course Contents
The Role of the IT Business Analyst
Context of IT Business Analyst
The IT-BA’s Responsibilities
What the IT-BA Delivers
Types of System Requirements
The Requirements Flow
IT Business Analyst as Enabler
What the IT-BA Does Not Do
Concepts of Object-Orientation
Why is Object Thinking Important to You?
Concept: Object
Concept: Object Operations
Concept: Class
Concept: Objects from a Class
Concept: Relationships
Concept: Abstraction
The UML and the IT Business Analyst
Business Domain Modeling
Structural Domain Models
Behavioral Domain Models
Functional Models
Data Models
The Unified Modeling Language
Structure Analysis Diagrams vs. UML
Why IT-BAs Should Develop UML Models
Object-Oriented Analysis
The ‘Big’ Picture of a Project for the IT-BA
Goals of the IT-BA’s Analysis Activities
Inputs to the Analysis Activities
Analysis Activities for the IT-BA
Outputs from the Analysis Activities
What are the Analysis Models?
Identify Analysis Classes
Identify Candidate Entities
Challenge the Candidate Entities
Construct the Domain Model
Responsibility-Driven Analysis
Construct Responsibility Specifications
Construct CRC Representations
CRC Defined
CRC Cards
Simulation Sequence Diagram
UML Overview – The 13 Diagrams
The Unified Modeling Language
UML Version 2
The 13 Diagrams
UML and Us
Definition of the UML Structural Model
UML Relationships
Association
Aggregation & Composition
Association Class
Inheritance
Developing The Analysis Class Diagram
UML Classes, Objects & Stereotypes
Responsibility-Driven Class Definition
Step 1: Identify the Analysis Classes
Step 2: Identify Classes with Relationships
Step 3: Identify Relationship Semantics
Step 4: Identify Relationship Multiplicity
The UML Behavioral Model
Analysis Behavioral Models
The 7 Behavioral Models in UML
Developing The Sequence Diagram
Sequence Diagram Structure
Interaction Frames & Operators
Special Tips for Analysis Sequence Diagrams
Modeling Exercise: Sequence Diagram
Updating the Class Diagram
The Communication Diagram
Communication / Sequence Diagram Isomorphism
Developing The State Machine Diagram
Defining State
State Machine Diagram Structure
States, Events, Actions, Activities & Transitions
Updating the Class Diagram
Developing The Activity Diagram
Activity Diagram Structure
Putting It All Together
What Have We Accomplished?