|
Module 1: Introducing Object-Oriented Analysis and Design - Define OOA&D
- Define Analysis and Design
- Understand the role of objects and classes
- Define the key features of OO programming
- Detail the nature and benefits of the iterative, incremental lifecycle of projects
- Introduce the major phases of a system development effort
Module 2: Introducing the Unified Modeling Language - UML definition
- Introduce the primary diagrams used in the UML
- Introduce the Package notation and Stereotypes
Module 3: Requirements and Initial Analysis - Describe the process of gathering information
- Define Candidate Objects and the role of domain experts
- Specify the role of the data dictionary
- Analyze the role Risk Assessment plays in system development
- Introduce Use Cases and Use Case Scenarios
- Introduce Activity Diagrams, Packages and Component and Deployment diagrams
Module 4: Analysis of System Objects and Classes - Part I - Understanding the Analysis Phase
- Role of Key Abstractions
- Develop Object Diagram and Class Diagram
- Define Associations and Multiplicity
- Define Complex and Qualified Associations
Module 5: Analysis of System Objects and Classes - Part II - Modeling Inheritance
- Modeling Polymorphism and Abstract Classes
- Modeling Reflexive Associations
- Analyzing for Aggregation, Composition, Propagation and Delegation
- Java Interfaces
Module 6: Analysis of Dynamic Models - Define the role and function of Sequence Diagrams
- Define the role and function of Collaboration Diagrams
- Define the role and function of State Transition diagrams
- Define the role and function of Activity Diagrams
Module 7: Patterns - Introduce Patterns
- Facade
- Singleton
- Factory
- Composite
- Observer
- MVC
- State Pattern
Module 8: The Object model in Design - Part I - Encapsulation: get/set attributes
- Design attributes and data types
- Define constraints, methods, and static data and methods
- Role of Constructors
Module 9: The Object Model in Design - Part II - Categorize classes
- Coding for Composition, Aggregation, and Association
- Explain the concept of Direction of Traversal
- get/set/add/remove constructors and static associations
- Explain link access methods
- Submethods from Inheritance
- Delegation and complex operations
Module 10: The Dynamic Model in Design - Sequence diagrams in Design
- Collaboration diagrams in Design
- State Transition diagrams in Design
- Activity diagrams in Design
Module 11: System Design - Packages and subsystems
- Frameworks
- Role of cohesion and coupling
- System performance issues
- Revisiting Components and Deployment
- Role of network and databases
|