Introduction To top of page

It is often difficult to tell from a traditional object-oriented system model how a system does what it is supposed to do. This difficulty stems from the lack of a "red thread" through the system when it performs certain tasks. In the Rational Unified Process, use cases are that thread because they define the behavior performed by a system (see What is a Use Case? , for a more precise definition of use case). Use cases are not part of "traditional" object orientation, but their importance has become more and more apparent. Other object-oriented methods provide use cases, but use different names for them.

Use Cases in the Development Process To top of page

Chapter 2 explained that one advantage of the Rational Unified Process is its "use-case driven approach". What is meant by that is that use cases defined for a system are the basis for the entire development process.

Use cases play a role in each of the four core process workflows: requirements , analysis & design, implementation, and test.

  • The use-case model is a result of the requirements workflow. In this early process you need the use cases to model what the system should do from the user's point of view. Thus, use cases constitute an important fundamental concept that must be acceptable to both the customer and the developers of the system.
  • In analysis & design use-cases are realized in a design model. You create use-case realizations which describe how the use case is performed in terms of interacting object in the design model. This model describes, in terms of design objects, the different parts of the implemented system, and how the parts should interact to perform the use cases.
  • During implementation the design model is the implementation specification. Because use cases are the basis for the design model, they are implemented in terms of design classes.
  • During test the use cases constitute basis for identifying test cases and test procedures. That is, the system is verified by performing each use case.

Use cases have other roles as well:

  • They are used as a basis for planning an iterative development.
  • They form a foundation for what is described in user manuals.
  • They can be used as ordering units. For example, a customer can get a system configured with a particular mix of use cases.
 

Display Rational Unified Process using frames

 

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