Key ConceptsTopics: Basic Concepts in the Rational Unified Process > Software Engineering ProcessINTRODUCTIONMaking the Unified Process WorkThe development of software at the mission-critical systems level remains exceeding complex because of the interlocking strands related to how the software works together. The Unified Process helps people deal with this complexity. First of all, there are four phases: inception, elaboration, construction, and transition. Beyond the initial cycle phases, come further releases, major overhauls, and later generations of the software system. Within these phases are the interlocking workflows, architecture, risk management, iterations, and increments including:
The four milestones that anchor the process are: life cycle objectives; live cycle architecture; initial operational capability; and product release. The Life Cycle Objectives: The first milestone clarifies the objectives of the product live cylcle by raising the following questions which are answered during the inception phase:
The Life Cycle Architecture: The second milestone clarifies the architecture for the product life cycle through the following questions, which are answered during the elaboration phase:
Initial Operational Capability: The third milestone establishes that the product has attained initial operational capability. The key question, which is answered during the construction phase:
Prior to this milestone the project has:
Having satisfied these criteria we build the product. The building process should proceed smoothly if the stakeholders have agreed on the life cycle objectives and the life cycle architecture. Important in this phase are the sequence of builds and a minimum of iterations. A sequence means that the prerequisite for another iteration is will thought out, planned and no redo is necessary because of later learned events. Product Release: The fourth milestone establishes that the product is ready for unrestricted release to the users. The key question, which is answered during the transition phase:
The work to be done during the initial operational capability is beta testing, acceptance testing, and correction of problems and defects arising from operating in the working environment. Once the users are satisfied the product is delivered. Basic ConceptsThe basic concepts of the Rational Unified Process and typical software engineering process are now presented. The Rational Unified Process
(RUP)
[Images give more information on that key RUP concept.] The Software Engineering Process
A process is a set of partially ordered steps intended to reach a goal; in software engineering the goal is to build a software product, or to enhance an existing one; in process engineering, the goal is to develop or enhance a process. In RUP, these are organized into a set of disciplines to further define the workflows and other process elements.
Expressed in terms of business modeling, the software development process is a business process; the Rational Unified Process (RUP) is a generic business process for object-oriented software engineering. It describes a family of related software engineering processes sharing a common structure, a common process architecture. It provides a disciplined approach to assigning tasks and responsibilities within a development organization. Its goal is to ensure the production of high-quality software that meets the needs of its end users, within a predictable schedule and budget. The RUP captures many of the best practices in modern software development in a form that can be tailorable for a wide range of projects and organizations. When a software system is developed from scratch, development is the process of creating a system from requirements. But once the systems has taken form (or in our terms, once the system has passed through the initial development cycle), any further development is the process of conforming the system to the new or modified requirements. This applies throughout the system's lifecycle. The software-engineering process is the process of developing
a system from requirements, either new (initial development cycle) or changed
(evolution cycle). |
|
Rational Unified
Process
|