Getting Started

Getting started with the Rational Unified Process® can, at first-glance, appear somewhat daunting. Here we provide you with answers to a number of frequently asked questions about the Rational Unified Process that will help get you started on the right track.

 

What is the Rational Unified Process, or RUP?

Who should use RUP?

Configuring RUP for your project?

Why should I use RUP?

When should I use RUP?

Where can I learn more about RUP?

Rational Unified Process® Process Authoring Tools Community/ Marketplace Configuration Tools Process Delivery Tools The Rational Unified Process Platform

What is the Rational Unified Process, or RUP? Top

The heart of RUP Top

At its heart, the Rational Unified Process® (RUP®) is about successful software development. There are three central elements that define RUP:

  • An underlying set of philosophies and practices for successful software development.

    These philosophies, core practices and essential elements are the foundation on which the RUP has been developed. RUP has a long history of ongoing evolution that has included the Rational Approach, the Objectory Process, ClearGuide, SQA Process and so forth. To have an overview of RUP philosophy please read the Spirit of RUP article.

  • A process model and associated content library.

    Defined and improved on an ongoing basis by Rational Software, the RUP process model and associated content library defines the base RUP software engineering process framework from which you create your own process configurations.

  • The underlying process definition language.

    Underlying it all is a ../../process/workflow/environm/co_morop.htm -- This hyperlink in not present in this generated websiteprocess meta-model. This model provides a language of process definition elements for describing a software engineering process. This language is based on the SPEM extension to the UML for software process engineering and the Unified Process methodology.

The RUP process platform Top

Over many years of development effort, the RUP has evolved into a rich family of integrated software-engineering process products. These products enable software development teams to define, configure, tailor and practice a common software-engineering process. The key elements of the product family are:

  • Process Delivery Tools. Top

    RUP is delivered to practitioners as an interactive Web site using industry-standard browser technology. The tools used to deliver RUP include:

    • The RUP Web site you are currently browsing.

      A RUP Web site is a ../../toolment/builder/builder.htm -- This hyperlink in not present in this generated websitepublished process definition configured for your project and tailored to your specific needs. The Web site is created using dynamically generated HTML pages, which the RUP products enable you to publish in the form of multiple RUP Web sites, each representing a configured and tailored process definition.

    • A set of Web Browser navigation tools.

      The RUP Browser applets enable the RUP Web site to be dynamically accessed through a number of standard web browsers with the help of additional navigation applets.

  • Process Configuration Tools. Top

    ../../toolment/builder/builder.htm -- This hyperlink in not present in this generated websiteRUP Builder is a process publication tool that allows Process Configurations to be created for different needs and then published as a Web site for practitioners to access. RUP Builder allows the optional inclusion of process extensions to the RUP using the RUP Plug-In technology.

  • A Marketplace for process extensions. Top

    The RUP section of the developerWorks®: Rational® Web site provides a place for process engineers in the software development community to share their process extensions as consumable Plug-Ins, and provides a rich source of process extensions for the project manager.

  • Process Authoring Tools. Top

    The ../../process/res_processworkbench.htm -- This hyperlink in not present in this generated websiteRational Process Workbench (RPW) tool is comprised of three components: RUP Organizer for managing content libraries, RUP Modeler for defining process models that extend the basic RUP process definition, and the RUP process engineering process. These tools also provide a standardized mechanism for creating and transporting process definition extensions as RUP Plug-IN's

Who should use RUP? Top

If you depend on your ability to develop and deploy software which is critical to the success of your organization, then RUP will help you. The RUP product family is developed with two primary groups of users in mind:

  • software development practitioners working as part of a project team, including the stakeholders of those software development projects.

  • process engineering practitioners, specifically software process engineers and managers.

Software development practitioners can find guidance on what is required of them in the roles defined in RUP. A practitioner working on a RUP software engineering project is assigned one or more of the roles defined in RUP, where each role partitions a set of activities and artifacts that role is responsible for. Guidance is also given on how those roles collaborate in terms of the detailed work that is required to enact the workflow within an iteration.

Process Engineering practitioners can find guidance on defining, configuring, tailoring and ../../process/workflow/environm/co_iproj.htm -- This hyperlink in not present in this generated websiteimplementing engineering processes. The RUP product family provides ../../process/res_processworkbench.htm -- This hyperlink in not present in this generated websitea number of tools that enable and simplify defining, configuring and tailoring the engineering process.

A number of ../myrup/tree_browser.htm#_Types_of_Trees -- This hyperlink in not present in this generated websiteprocess views are provided with the RUP product that are focused on different groups of software engineering practitioners.

Configuring RUP for your project? Top

One of the core practices behind RUP is iterative and incremental development. This practice is also good to keep in mind as you start with RUP: don't try to "do" all of RUP at once. Adopt an approach to ../../process/workflow/environm/co_iproj.htm -- This hyperlink in not present in this generated websiteimplementing, learning and using RUP that is itself iterative and incremental. Start by assessing your existing process and selecting one or two key areas you would like to improve. Begin using RUP to improve these areas first and then, in later iterations or development cycles, make incremental improvements in other areas.

Visit the following links to learn:

Why should I use RUP? Top

RUP provides a software development practitioner with a standards-based yet configurable process environment. That process environment:

At it's heart, RUP is a collected body of software engineering practices that are regarded as representative of many continually improved on a regular basis to reflect changes in industry practices.

As a stakeholder in a software development project, RUP provides you with an understanding of what can be expected from the development effort. It provides a glossary of terminology and an encyclopedia of knowledge to help you communicate your needs effectively with the software development team.

As a software development practitioner, this process environment provides a central, common process definition that all software development team members can share, helping to ensure clear and unambiguous communication between team members. This helps you to play the part expected of you in the project team by making it clear what your responsibilities are. As a general software engineering reference, RUP provides a wealth of guidance on software development practices that novice and experienced practitioners alike will find valuable. Even if you are a lone code-warrior, you will find RUP a useful mentor in helping you to build world-class software.

As a manager or team leader, RUP provides you with a process by which you can communicate effectively with your staff and manage the planning and control of their work accordingly.

As a process engineer, RUP provides you with a good architectural foundation and wealth of material from which you can construct your process definition, enabling you to configure and extend that foundation as desired. This will save you enormous amounts of time and effort that would otherwise be required to create such a process definition from scratch.

When should I use RUP? Top

The Rational Unified Process Platform

RUP can be used right from the start of a new software project, and can continue to be used in subsequent development cycles long after the initial project has ended. However, the way in which RUP is used needs to be varied appropriately to suit your needs. There are a few considerations that will alter when and how you will use different parts of RUP:

Where can I learn more about RUP? Top

The following resources can help you to get up to speed and master RUP quickly:



Rational Unified Process   2003.06.15