OpenUP is an iteratively incremental method of software development. It is positioned as an easy and flexible version of RUP.
OpenUP is an economical unified process that uses iterative and incremental principles within a structured lifecycle. OpenUP uses a pragmatic philosophy of flexible development, which is based on a collective approach to software development. It is a tool-independent, little-regulated process that can be expanded to adapt to a wide range of project types.
Cost-effectiveness: From the concept of Lean Manufacturing (economical production), we have taken the focus on high-quality results, preventing unnecessary losses of time and money, working with changes and aiming at creating a value for consumers.
Flexible development philosophy: OpenUP meets the principles of Manifesto for Agile Software Development, see www.agilemanifesto.org
Expandability: IBM, we believe, can be an example for many organizations planning to create OpenUP extensions. Currently, RUP is being processed and it is planned to include in this process a set of extensions for OpenUP. This means that you can start with a lightweight open source process and add the necessary materials as necessary, which will allow you to create different versions of RUP and other processes.
Microsteps: In XP there is the concept of baby-step (children’s steps). In Scrum, work is carried out in a similar way through the sequence of iterations.
Personal work in the OpenUP project is organized according to the principle of micro steps (see figure). Microsteps are small units of work that form a constant measurable increment in the execution of a project (usually from several hours to several days). The process involves intensive joint work, since the development of the system is carried out gradually, interested, built on the principle of self-organization, the team. Microsteps provide an exceptionally short feedback loop, which makes possible the adoption of adaptive solutions during each iteration.
OpenUP divides the project into iteration: planned, time-limited intervals, the duration of which is usually measured in weeks. Iterations orient the team to supply gradually increasing consumer value to interested parties in a predictable manner. The iteration plan determines what exactly should be delivered at the end of the iteration, and the result of the iteration is a version whose work can be demonstrated or transferred for familiarization and evaluation to interested persons. OpenUP developers’ teams are built on the principle of self-organization, solving the problems of performing the iteration tasks and transferring the results. To do this, they first determine, and then solve well-detailed tasks from the list of work items. OpenUP uses the concept of the iteration life cycle, which determines how to use microsteps to deliver stable, increasingly sophisticated system assemblies that are gradually approaching the iteration goal.
OpenUP divides the life cycle of the project into four phases: the initial phase, the phase of refinement, construction and transmission. The life cycle of the project ensures that stakeholders and members of the team are given points of acquaintance and decision-making throughout the project. This allows you to effectively monitor the situation and make decisions on the acceptability of the results on time. The project plan determines the life cycle, and the final result is the final application.
In the future, we’ll look at the Life cycle of the iteration, the MicroSteps, the Project life cycle, we’ll examine the impact of Eclipse Way, XP, and RUP on OpenUP.