Computer Image

Length: 4 days | Price: $2095

This OOA&D training course presents the key concepts and methodologies required to perform quality object-oriented software engineering, with particular attention to practical techniques such as use-case and CRC analysis, UML diagramming, and patterns. Students practice applying object oriented analysis during the course to improve software designs and to see how software objects can be altered to build software systems that are more robust and less expensive. Students use several methods for analyzing software systems, finding and refining useful classes and relationships between objects. Care is taken not to focus on any one language so that all students can participate in the design exercises without relying on specific programming skills. The course emphasizes the most practical analysis and design methods, including the application of use case analysis, CRC analysis, problem domain analysis, activity diagramming, interaction diagramming, and class diagramming. The Unified Modeling Language (UML) is presented in detail and is used in the exercises and case studies. Practical aspects of project management and implementation are presented from the perspective of experienced object system designers. Special emphasis is given to the use of object patterns in developing software systems. The students apply their skills in labs that are mini design sessions, during which the instructor helps the students identify and overcome common obstacles that occur during group sessions.

Course Prerequisites: Knowledge of structured programming concepts.

Object Oriented Analysis & Design with UML Course Overview
  • Structured vs. Object-Oriented Development
  • Complexity and its Effects
  • Inadequate and Unstable Requirements
  • UML Notation
  • OOA&D Project Methodology
  • Requirements Phase Activities
  • Analysis Phase Activities
  • Design Phase Activities
  • Characteristics of Iterative OOAD
  • Conducting Productive OOAD Sessions
  • Developing a High Level Use Case Model
  • Adding Details to a Use Case Model
  • Conceptual Class Diagrams
  • Analysis Patterns
  • CRC Analysis
  • State Machine Diagrams
  • System Operations Diagrams
  • Applying Design Patterns
  • Interaction Diagrams
  • Communication Diagrams
  • Sequence Diagrams
  • Documenting a Design Using Specification Class Diagrams
  • Evaluating Object-Oriented Software Design
  • Organizing Large Scale Software Applications