Object-Oriented Design with UML – Detailed Course Outline
Return to OOD and UML Courses page
Copyright © 1997 - 2024, Anderson Software Group, Inc.
Section 1 - Object-Oriented Fundamentals
- Basic Concepts
- Conquering Complexity
- Data Encapsulation and Abstraction
- Why Objects?
- Object State, Identity and Behavior
- Classes - Inside and Outside View
- Inheritance and Reusability
- Subclass, Superclass, Abstract Class
- "Is-A" vs. "Has-A" Perspectives
- Polymorphism, Typing, and Binding
Section 2 - Getting Start with UML
- UML Overview and Background
- What is UML?
- Models vs. Diagrams
- Use Case Models
- Actors
- Pre-Conditions, Post-Conditions, Exceptions
- Use Case Relationships
- Use Case Diagrams
- Expanding Use Cases
- Activity Diagrams
- Swimlanes
- Use Case Descriptions
- Object Modeling
- Building a Conceptual Model
- Designing Class Diagrams
- Class Diagrams
- Objects and Classes
- Class Attributes
- Class Operations
- Associations
- Multiplicity
- Association classes
- Role names
- Ordering
- Qualifiers
- Aggregation
- Generalization
- Ternary Associations
Section 3 - Dynamic Modeling
- State Diagrams
- Events and States
- Scenarios
- Event Trace, Attributes
- Transitions, Guarded Transitions
- Actions, Activities
- Nested State Diagrams
- Sequence Diagrams
- Object Interactions
- Messaging
- System Events
- Collaboration Diagrams
- Messages and Links
- Parameters, Return Values
- Sequencing
- Iteration
- Mutually Exclusive Conditionals
- Creation
Section 4 - Design Patterns
- Why use Patterns?
- Discovering Patterns
- Creator Pattern
- Singleton Pattern
- Controller Pattern
- Polymorphism
- Interfaces
- Facade Pattern
- Proxy Pattern
- Command Pattern
- Publish-Subscribe Pattern
- Model-View Separation
- The Gang of Four Patterns
Section 5 - Methodology and Process Approach
- Case Study
- The Project Organizer
- Analysis and Design