| Course Code: |
IN 678 |
| Course Abstract: |
The features, principles and techniques of object-oriented technology mitigate the complexities of modern software systems. Successful project managers have learned that object-oriented programming is insufficient; that object-oriented analysis, architecture, and design are required for robust, scalable, maintainable web-based and conventional business systems, as well as embedded systems. This course teaches the processes, techniques, and artifacts necessary for modern object-oriented analysis and design. This course uses and explains the chief diagrams, symbols, and concepts of the Unified Modeling Language (UML), the international standard design diagramming language for software design. Participants learn through detailed lecture and hands-on labs the core competencies in object-oriented analysis and design, and will be introduced to the many and varied topics surrounding these disciplines. Labs are performed with or without CASE tools such as Rational Rose® as the teaching environment permits.
|
| Audience: |
This course is designed for the systems analysts, architects, designers, developers, and testers who are directly responsible for developing object-oriented systems. This course will also benefit technical leads and software quality assurance personnel who oversee development of object-oriented systems and require an understanding of the process and the artifacts being produced.
|
| Duration: |
3 days |
| Learning Outcomes: |
Upon completion of this course, the participant will be able to: > Define and practice the techniques used in iterative object-oriented design > Learn and apply key principles that facilitate repeatable, quality designs > Design from and in adherence to project use cases, analysis models, and architecture models > Design classes, attributes, operations, and relationships > Acquire hands-on experience in these processes, techniques, and Rational Rose® tool use through case study exercises
|
| Course Topics: |
Roadmap of object-oriented analysis, architecture, and design processes in an iterative project Class modeling and sequence diagramming Key principles such as the Liskov Substitution Principle, The Law of Demeter, The Information Expert Principle, High Cohesion, Loose Coupling, and many others Key design patterns, such as Model-View-Controller, Publish/Subscribe, and State Partitioning a system into architectural layers and subsystems Integrating objects with relational database technology Essential documentation specifications for elements within of the models Optional: Use of the Rational Rose® tool to produce class diagrams, layer diagrams, and sequence diagrams |
| Prerequisites: |
Prior development experience and/or “Analysis Using UML” is required. |