Overview of Software Development Process and Modelling
Methodologies and their impact on the work of a Business Analyst
Waterfall steps Analysis, Design, Implementation, Testing, Maintenance
Agile approach to business analysis
Who Are Business Analysts?
Perspective on the BA Role
The Dynamic (Behavioral) Model
The Static (Structural) Model
Structured Analysis
The BA’s Perspective on Object Orientation
Object Oriented Programming and its impact on modelling
The UML Standard
Cognitive Psychology and OO?
Objects
Attributes and Operations
Operations and Methods
Encapsulation
Classes
Relationships
Generalization
Association
Aggregation
Composition
Polymorphism
Use Cases and Scenarios
Business and System Use Cases
An Overview of Business Object-Oriented Modeling (B.O.O.M.)
B.O.O.M. and SDLCs
The B.O.O.M. Steps
Sequencing the Steps
What Do You Define First—Attributes or Operations?
Analyzing End-to-End Business Processes
Interviews During the Initiation, Analysis, and Test Phases
Step 1: Initiation
Business Requirements Document Template
Step 1a: Model Business Use Cases
Step 1a i: Identify Business Use Cases (Business Use-Case Diagram)
Putting Theory into Practice
Note to Rational Rose Users
Case Study D1: Business Use-Case Diagrams
Step 1a ii: Scope Business Use Cases (Activity Diagram)
Case Study D2: Business Use-Case Activity Diagram with Partitions
Scoping the IT Project with System Use Cases
Step 1b: Model System Use Cases
Case Study E1: Role Map
Step 1b ii: Identify System Use-Case Packages (System Use-Case Diagram)
Case Study E2: System Use-Case Packages
Step 1b iii: Identify System Use Cases (System Use-Case Diagram)
Case Study E3: System Use-Case Diagrams
Step 1c: Begin Static Model (Class Diagrams for Key Business Classes)
Step 1d: Set Baseline for Analysis (BRD/Initiation)
Storyboarding the User’s Experience
Step 2: Analysis
The Use-Case Description Template
Documenting the Basic Flow
Use-Case Writing Guidelines
Basic Flow Example: CPP System Review Case Report
Documenting Alternate Flows
Documenting Exception Flows
Guidelines for Conducting System Use-Case Interviews
Activity Diagrams for System Use Cases
Related Artifacts
Decision Tables
Case Study F1: Decision Table
Decision Trees
Case Study F2: Decision Tree
Condition/Response Table
Business Rules
Advanced Use-Case Features
Case Study F3: Advanced Use-Case Features
Life Cycle Requirements for Key Business Objects
What Is a State Machine Diagram?
Step 2a ii: 1. Identify States of Critical Objects
Case Study G1: States
Step 2a ii: 2. Identify State Transitions
Case Study G2: Transitions
Step 2a ii: 3. Identify State Activities
Case Study G3: State Activities
Step 2a ii: 4. Identify Composite States
Case Study G4: Composite States
Step 2a ii: 5. Identify Concurrent States
Gathering Across-the-Board Rules with Class Diagrams
Step 2b: Static Analysis
Step 2b i: Identify Entity Classes
Case Study H1: Entity Classes
Step 2b ii: Model Generalizations
Case Study H2: Generalizations
Step 2b iii: Model Transient Roles
Case Study H3: Transient Roles
Step 2b iv: Model Whole/Part Relationships
The Composite Structure Diagram
Case Study H4: Whole/Part Relationships
Step 2b v: Analyze Associations
Case Study H5: Associations
Step 2b vi: Analyze Multiplicity
Case Study H6: Multiplicity
Optimizing Consistency and Reuse in Requirements Documentation
Step 2b vii: Link System Use Cases to the Static Model
Case Study I1: Link System Use Cases to the Static Model
Case Study I1: Results
Step 2b viii: Add Attributes
Meta-Attributes
Case Study I2: Add Attributes
Step 2b ix: Add Look-Up Tables
Case Study I5: Analyze Look-Up Tables
Step 2b x: Add Operations
Case Study I7: Distribute Operations
Step 2b xi: Revise Class Structure
Case Study I8: Revise Structure
Designing Test Cases and Completing the Project
Step 2c: Specify Testing
Structured Walkthroughs
Decision Tables for Testing
Case Study J1: Deriving Test Cases from Decision Tables
Boundary Value Analysis
Case Study J2: Select Test Data Using Boundary Value Analysis
System Tests
Beyond the System Tests
Step 2d: Specify Implementation Plan
Step 2e: Set Baseline for Development
What Developers Do with Your Requirements
Object Oriented Design Patterns
Visibility
Control Classes
Boundary Classes
Sequence Diagrams
Communication Diagrams
Other Diagrams
Layered Architecture
Interfaces
Mix-Ins
Implementing OO Using an OO Language
Implementing OOA Using Procedural Languages
Implementing a Database from OOA Using a RDBMS
|