![]() |
Technology Overview and Design |
OOAD (Object-Oriented Analysis and Design)
with UML (Unified Modeling Language)
Duration: 4 days |
Participants: Application developers, business system analysts, and systems designers. |
Objectives:
Upon successful completion of this course you will be able to:
- Use OOAD techniques to analyze raw data and design applications. - Use UML to graphically model an OO diagram. - Learn what UML (Unified Modeling Language) is and is not. - Apply UML to a variety of common modeling problems. - Be able to choose from the many UML diagrams which are appropriate for a particular situation. |
Overview:
- OOAD is the process of identifying the requirements of a software application and laying out the specifications in one of a variety of models of which UML is a popularly used model in today's industry. - This course teaches you how to use OOAD to analyze subject matter and identify its components and relationships and to express and model them with UML (Unified Modeling Language). |
Prerequisites: Programming experience, especially some experience with an OO language such as Java or C++. |
Format: Lecture and discussion with hands-on exercises. |
Setup: Rational Rose or Microsoft Visio is recommended but not required. |
Topic Outline:
- Software Development Life Cycle and Iterative Development - Object-Oriented Concepts - UML Overview UML - Unified Modeling Language UML Standard UML's Goals UML Ways People Use UML Some Typical UML Diagrams UML Diagram Completeness - UML 2.0 versus Older UML Graphics - Use Cases Enhancing Use Case Text Use Case Diagrams Use Cases and Business Processes Use Case Example - Buy Books - Class Diagrams Tips for Using Class Diagrams Properties Attribute Associations Attribute vs Associations Association Class Operations / Methods Java Code for UML - get / set Java Code for UML - add / remove UML Documentation - Notes and Comments Multiplicity Constraint Rules Bidirectional Associations Keywords Abstract Classes and Interfaces Generalization / Inheritance / Interfaces Subtyping and "is a"- Problem Collection Example Using an Interface Collection Example Using Direct Implementation Classifications Enumeration Static Operations and Static Attributes Read-Only and Frozen Dependency Some Dependency Keywords Derived Properties - Sequence Diagrams Struts Sequence Diagram Sequence Diagram - Comparison: Centralized Control Example Sequence Diagram - Comparison: Distributed Control Example Pseudo-message Creating and Deleting Objects Loops and Conditional Processing - Interaction Frames Synchronous vs Asynchronous Calls - Package Diagrams Reducing Package Dependencies Package Diagram Example Deciding on Classes for a Package Large Project - State Diagrams State Diagram for an Order "Canceled" State Superstate Example Payment Authorization States Concurrent State Diagram - Activity Diagrams Activity Diagram Example - Component and Deployment Diagrams - Communication / Collaboration Diagrams Communication (was Collaboration) Diagrams Sequence Diagram for Make Sales Collaboration Class Diagram for Make Sales Collaboration Parameterized Collaboration for Sale Parameterized Collaboration (Pattern) for Sale Sales Collaboration / Communication - Additional UML Diagrams - Risk Categories of Risk Dealing with Technology Risks Dealing with Skill Risks Business Requirements Change - Additional Topics Conceptual Model of the Domain Design Patterns UML Diagrams for Process Steps What Diagram to Use? Sample of UML Meta-model Project Components CRC Cards Responsibilities Prototyping Life Cycle Phases Iterative and Waterfall Processes Iteration Retrospective Structured Methods Elaboration Construction Phase Testing - Overview of RUP (Rational Unified Process) - UML and RUP |
Course Curriculum List Site Map Home |