What is the Rational Unified Process?

The Rational Unified Process is a Software Engineering Process. 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 Rational Unified Process 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.

The Rational Unified Process is an iterative process. Given today's sophisticated software systems, it is not possible to sequentially first define the entire problem, design the entire solution, build the software, and finally test the product. An iterative approach is required that allows an increasing understanding of the problem through successive refinements, and to incrementally grow an effective solution over multiple iterations. This approach gives better flexibility in accommodating new requirements or tactical changes in business objectives, and allows the project to identify and resolve risks earlier.

The Rational Unified Process is a controlled process. This iterative approach is only possible however through very careful requirements management, and change control to ensure at every point in time a common understanding of the expected functionality, the expected level of quality, and to allow a better control of the associated costs and schedules.

Activities of the Rational Unified Process create and maintain models. Rather than focusing on producing large amounts of paper documents, the Rational Unified Process emphasizes the development and maintenance of models - semantically rich representations of the software system under development.

The Rational Unified Process focuses on early development and baselining of a robust software architecture, which facilitates parallel development, minimizes rework, increases reusability and maintainability. This architecture is used to plan and manage the development around the use of software components.

Development activities of the Rational Unified Process are driven by use cases. The notion of use cases, and scenarios drive the process flow from business modeling and requirements through testing, and provides coherent and traceable threads through both the development and the delivered system.

The Rational Unified Process supports object-oriented techniques. Several of the models are object-oriented models, based on the concepts of objects, classes, and associations between them. These models, like many other technical artifacts, use the Unified Modeling Language (UML) as the common notation.

The Rational Unified Process supports component-based software development. Components are nontrivial modules, subsystems that fulfill a clear function, and that can be assembled in a well-defined architecture, either ad hoc, or some component infrastructure such as the Internet, CORBA, COM/DCOM, for which an industry of reusable components is emerging.

The Rational Unified Process is a configurable process. No single process is suitable for all software development. The Rational Unified Process fits small development teams, as well as large development organizations. The Rational Unified Process is founded on a simple and clear process architecture that provides commonality across a family of processes, and yet can be varied to accommodate different situations. It contains guidance on how to configure the process to suit the needs of a given organization.

The Rational Unified Process encourages objective on-going quality control. Quality assessment is built into the process, in all activities, involving all participants, using objective measurements and criteria, and not treated as an afterthought, or a separate activity performed by a separate group.

The Rational Unified Process is supported by tools that automate large parts of the process. They are used to create and maintain the various artifacts - models in particular - of the software engineering process: visual modeling, programming, testing, and so on. They are invaluable in supporting all the bookkeeping associated with the change management, as well as the configuration management that accompanies each iteration.

Back to the top Top

 

Display Rational Unified Process using frames

 

© Rational Software Corporation 1998 Rational Unified Process 5.1 (build 43)