IDIOM Decision Suite and Rational Unified Process
The purpose of this paper is to describe how business rules are managed within the Rational Unified Process (RUP) and to outline how IDIOM can be integrated with RUP.
A brief outline of RUP is provided, followed by a description of the capture, use and management of business rules within a RUP software development project. Finally, the integration of IDIOM into a software development project using RUP is described. This description includes the benefits provided by the use of IDIOM.
Rational Unified Process
The Rational Unified Process1 is a software development process developed by the Rational Corporation that is intended to help ensure the success of large software development projects.
Key features of RUP are:
- Architecture centric
- Use Case driven - the core mechanism for capturing requirements in RUP is the use-case
- Iterative and incremental - RUP based projects are developed in a series of controlled iterations
- Uses UML as a representation tool
The architecture of a system is the blueprint for the application. It defines the overall structure of an application and determines how the functional requirements of the system will be satisfied.
Use case modeling is a method of capturing the functional requirements of the system. A use case captures requirements as a sequence of actions that the system will perform to yield an observable result to a particular actor.
Software development projects that use RUP are executed as a series of iterations or mini-projects that incrementally build up the capabilities of the system under development. Within each iteration, the process defines four phases and allocates the major workflows amongst these phases. Figure 1 provides a summary of these phases and the allocation of the workflow amongst the phases. As can be seen, the two workflows that are of principle interest in capturing business rules – Business Modeling and Requirements capture – have the bulk of their activity performed in the Inception and Elaboration phases.
The business rules are converted into executable code during the Construction phase, primarily via the Analysis & Design and Implementation & Test workflows.

Figure 1: Rational Unified Process Phases
Unified Modeling Language
The Unified Modeling Language (UML) is a graphical object-oriented modeling language, originally developed by Rational and since adopted as a standard notation by the Object Management Group (OMG)2. UML defines a number of standard diagram types. These are summarized in Table 1.
| Diagram | Purpose |
|---|---|
| Use Case | Model the relationship between actors and the use-cases of the system |
| State | Model the lifecycle of an object, including its possible states and the transitions between states |
| Class | Model the major entities in the system and their static relationships |
| Object | Model snapshots of the object instances of a system at a particular point in time |
| Sequence | Model the dynamic interactions between objects of the system |
| Collaboration | Same as sequnce diagram but with a different view |
| Activity | Model the activities that occur during the realization of a use case scenario |
| Component | Model the physical implementation of a system in terms of components and their dependencies |
| Deployment | Model the allocation of software components to hardware resources |
Table 1: UML Diagram Types
UML is an integral component of RUP. It is used to express the results of many of the RUP activities, including:
- Business Process Modeling
- Business Object Modeling
- Requirements capture via use case modeling
- Architecture
- Software Design
Business Rules within RUP
This section provides a brief description of the place of business rules within RUP. It concentrates on two major areas within the Rational Unified Process in which business rules are captured. These are the Business Modeling and Requirements workflows. In addition, the impact of business rules on the Design, Implementation and Test workflows is also briefly described.
- The Unified Software Development Process - Ivar Jacobson, Grady Booch, James Rumbaugh; Addison Wesley, 1999
- http://www.omg.org
