| Lesson 2 || Project Life Cycle Prerequisites |
| Objective || Prerequisite Knowledge required for this course. |
Project Life Cycle Perequisites
Make sure you have the background and equipment required for this course.
The Object-Oriented Analysis and Design Fundamentals Series is intended for information systems managers and developers who are
familiar with the basics of object-oriented programming and are seeking to learn an in-depth approach to developing object-oriented business
applications from start to finish. Specifically, you should be familiar with the Unified Modeling Language(UML)
notation standards for object modeling.
This course assumes that you are familiar with the notation and provides only brief reviews before applying the notation to working examples.
To get the most from this course, you should have already taken the following DistributedNetworks courses:
- UML Fundamentals
or have equivalent knowledge.
This course supports the following operating systems:
- Macintosh/Mac OS X/
The waterfall method attempts to pin down the requirements early in the project life cycle. After gathering requirements, software design is performed in full. Once the design is complete, the software is implemented. The problem with this method is that if a change in requirements occurs, the impact can be devastating.
Iterative methods attempt to address the shortcomings of the waterfall approach by accepting that change will happen and, in fact, embracing it. The Unified Process is a wellknown iterative process. It consists of multiple phases, each phase containing some amount of the following activities: requirements, design, and implementation (coding). Iterative methods encompass a wider range of approaches (e.g., agile iterative processes), and they can range from using UML as sketch to using UML as blueprint.
Agile methods use iterations in extremely short bursts and attempt to minimize risk by always having a working system of expanding capabilities. Methodologies under this category have introduced some of the more interesting development practices, such as pair programming and test-driven development. Agile methods emphasize using UML as a sketch.