OSIM - Delivery Method
The lifecycle of an OSIM project is divided over time into four sequential phases, each concluded by a major milestone. At each phase-end, an assessment is performed to determine whether the objectives of the phase have been met. A satisfactory assessment allows the project to move into the next phase.
Each phase comprises one or more iterations; an iteration is timeboxed (always finished on the scheduled date) and has a clearly defined and documented set of objectives which are designed to contribute to the end-phase objectives.
An iteration is a complete development lifecycle and results in fully-tested software of production quality. Using a process of continuous integration, the system evolves so that each iteration produces progressively expanded content, allowing the opportunity to receive user feedback early and avoid lengthy deviations from what is acceptable. The system evolves, so each iteration produces progressively expanded content.
Early iterations focus on eliminating risk so that by the end of the second phase (Elaboration), the remaining effort is highly predictable. Software projects that are late are usually characterised by attempts to achieve perceived value (functionality) early whilst leaving the ‘difficult’ elements until later in the project – by addressing risk early, any unforeseen problems can be addressed within the planned project schedule.
A typical project requires fewer resources for the early, risk-focused iterations; the following diagram illustrates an example of how work is distributed across the phases:
The diagram illustrates the four phases (horizontal axis) and disciplines or workflows (vertical axis) which describe the types of activity applied. The graph indicates (approximately) the varying emphasis per discipline depending on the project phase. For example, more time would be spent on requirements in early phases and more on implementation in later phases.