Home
About Us
Join Us
Contact Us
Consulting
Training
Course Catalog
Seminar Schedule
Home
>
Course Catalog
Training
Course List
Seminar Schedule
Enroll
Have it Onsite!
Coaching
Client List
System Analysis & Design with UML
Outline
Course 352 - 4 Days
Motivation for Transitioning to Object Technology (OT)
The agile enterprise and the role of IT
Traditional vs. OT approaches to system development
Managing complexity
Assembling solutions from components
Intro to Component & Object Technology
Concepts and principles
Classes and instances
Methods and messages
Encapsulation
Inheritance
Separating Interface from implementation
Software Components
Development Process
Challenges of Component Based Development (CBD)
Incremental and Iterative development
Requirements Analysis
System Design - Designing components and component architectures
Implementation and testing - Assembling solutions from components
Unified Modeling Language (UML)
What is UML?
Building blocks of UML
Common mechanisms
UML with the Development Process
Requirements Analysis
Business Requirements
Technical Requirements
Business Process Models
Business Object Models
User Interface Models
Use Case Modeling - Intro
What is a use case model
Benefits of the use case approach
Actors and system boundaries
Modeling use cases
Use cases define user interfaces
Use Case Modeling - Refining the Use Case Model
Primary and secondary use cases
Achieving reuse with includes and inheritance relations
Capturing sub-flows with extends relations
Defining extension points
Refining use case and actor definition with inheritance
Identifying and documenting business rules
Use Case Modeling - Use Case Scenarios
What makes a good scenario?
Business concepts (objects) and scenarios
Scenarios drive the development lifecycle
Use cases and reuse
Use case modeling guidelines
Modeling Business Processes
Process Models
UML Activity Diagrams
Concrete vs. abstract use cases
Use cases and activity diagrams
Interaction diagrams
Modeling Business Objects and Components
What are Business Object Models
Objects and Attributes
Links and associations
Roles and multiplicity
Representing object state
Invariants
Associations
Links and associations
Discovering associations
Roles and Multiplicity
Generalization and composition
Modeling System Behavior
Objects, methods and messaging
Pre and post conditions
Activities, operations and invariants
Formalizing operation contracts with OCL
Modeling state with state diagrams
Modeling collaborations with interaction diagrams
Business Component Models
What is a Business Component Model
Business component specification
Component interfaces and events
Component interaction diagrams
Persistence specification
Clustering Criteria
Logical Component Architecture
Anatomy of a component
Component Facade
External Events
Recursive System Component Decomposition
Component Persistence Architecture
Architecture Strategies
Physical Component Architecture
Architecture Patterns
Architecture Frameworks
Application Templates
Business Component Integration with Application
Templates and Architecture Frameworks
Component Glue - enabling standards and technologies
CORBA
EJB
COM/DCOM (COM+)
Component Design
What is Component Design
Implementation Classes
Operations
Visibility
Navigability
Aggregation vs. generalization
Interfaces, Types and Roles
Component Design Patterns
Sequence Diagrams
UML and sequence diagram notation
Mapping scenarios to sequence diagrams
Patterns of interaction
Benefits of sequence diagrams
Tips and techniques
Assigning Responsibility
Responsibilities and Collaboration
Design patterns
Patterns for assigning responsibility
Component Implementation
Mapping from diagrams to source code
Coding guidelines
Managing change - Version Control Repository
Component Test Cases
Reuse
Why focus on reuse
Assembling solutions form pre-existing components
Organizing for reuse
Reusable assets
Reuse repository
Back to course overview
Overview
Interested in having this class onsite?
Ask a Question
Email a Friend