Object Oriented Analysis & Design with UML
Students Will Learn:
- Encapsulation, Inheritance, Polymorphism
- Requirements and Analysis Phase
- CRC Analysis
- Use-Case Analysis
- UML Notation
- Design Phase
- Diagramming and Refinement
- Design Patterns
Course Description: 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:
|The Object Paradigm
||Managing and Participating
in the OOA&D Approach
|Diagramming & Notational
Techniques Using the UML
||Requirements and Analysis
||Project Management and Implementation
|OO Languages and Tools
||Advanced Design Concepts
|Persistent Object and Database
"Instructor was well organized and presented the concepts clearly and in such a way as to stimulate thinking about the concepts. While the instructor was always available to assist, he would purposely allow us enough time to work through things so that we were very much involved in the whole process this really aided us in the understanding the concepts."
J.B., Solutions Plus
"Excellent instructor! Her knowledge of the material and presentation skills made this one of the best training courses I've ever attended. I've used UML and OOAD in the past, but I am more confident in my knowledge of the subject and plan on incorporating it into my work where applicable."