Rational Rose (version 2002


• “The World's Leading Visual Modelling Tool”

4+1 View of Software Architecture
• Software architecture consists of 5 concurrent views [PK94] • Rational Rose provides 5 different perspectives/views. • Selecting a view allows users to focus only on what is architectural significant and meaningful to them
in Rose: Component View

Use-Case View Logical View Process View Deployment View Implementation View

Target Audience:
End User Analyst/Designer System Integrator System Engineer Programmer

The Use-Case View • From end-users' perspective • Concerned with
– Understandability – Communication – Usability

• Use Case Model
captures system's intended functions and interactions with environment

– – – –

use case diagrams use case flow of events supplemental documentation activity diagrams (optional)

• requirements specification.
Use Case Model can serve as a contract between customer and developer instead of the traditional text requirement specification

A Use Case Diagram

The Logical View
• Concerned with functional requirements of the systems • From analyst/designer perspective • Includes
• • • • • use case realization diagrams class diagrams interaction diagrams statechart diagrams (optional) activity diagrams (optional)

A Class Diagram

The Process View
• Presents a perspective for the System Integrators • Non-functional requirements Include:
– – – – – – Performance Scalability Availability Fault Tolerance Throughput Concurrency and synchronization
• threads • processes Note: Not necessarily a single processing environment

The Implementation View
• Called Component View in Rational Rose • Aimed at Programmers • Captures organization of static software modules:
– packaging, layering, and configuration management
• • • • source code files data files components executable, etc.

• Concerned with derived requirements:
– – – – – –

ease of development software management reuse constraints imposed by programming language and development tools sub-contracting off-the-shelf components

4 Views + 1 Architectural View

in Rose: Component View

Rational Rose diagrams in UML
Use Case Deployment Class

Component Activity State

Object Collaboration Sequence

Rational Rose diagrams in UML
Use Cases plus Dynamic Views

Use Case Deployment Class

Component Activity State

Object Collaboration Sequence

Logical plus Dynamic Views

Rational Rose Environment

Standard menu

Standard toolbar

Diagram toolbar Browser window
(used to organize and navigate) (unique to each type of diagram)

Diagram window

Can be hidden, docked or floating Status bar

Documentation window

The Documentation Window
• Used to create, view and modify text documenting a selected item. • May be visible or hidden; docked or floating
– can be changed
• by selecting using View menu or • right clicking on an item in the Documentation Window

• The information added to the documentation window automatically updates the Documentation field in the appropriate specification.

The Diagram Window
• Allows you to create, update, and modify graphical views of the current model. • The Diagram Toolbox is unique to the diagram type, and changes automatically when you change types of diagrams. • Select a diagram or add a diagram by selecting it from those listed under the appropriate view in the Browser Window

The Specification Window
• Textual representation of a model element that permits viewing and manipulating the element's model properties • Open by right clicking on a View in the Browser Window

The Log Window
• Reports
– progress – results – errors

• Right click in the Log Window to set available action • Ctrl-tab from Log Windows returns to previous diagram

Developing the Use Case View
• In the Inception Phase
– Identify actors – Identify principal use cases

• In the Elaboration Phase
– More detailed information is added
• associations • stereotypes

– Additional use cases are added as needed

Finding Actors
• Actors are NOT part of the system. • Actors represent anyone or anything that interacts with (input to or receive output from) the system • Questions to help find actors
Who is interested in a certain requirement?
– Where is the system used within the organization? – Who will benefit from the use of the system? – Who will supply the system with information, use this information, and remove this information? – Who will support and maintain the system? – Does the system use an external resource? – Does one person play several different roles? – Do several people play the same role? – Does the system interact with a legacy system?

• Use case = a sequence of transactions performed by a

Finding Use Cases

system that yields a measurable result of values for a particular actor

• The use cases = all the ways the system may be used. • Questions to help find use cases • - What are the tasks of each actor?
– Will any actor create, store, change, remove or read information in the system? – What use cases will create, store, change, remove, or read this information? – Will any actor need to inform the system about sudden, external changes? – Does any actor need to be informed about certain occurrences in the system? – What use cases will support or maintain the system? – Can all functional requirements be performed by the use cases?

Finding Flow of Events
• Flow of events document is typically created in the elaboration phase • Each use case is documented with flow of events

a description of events needed to accomplish required behavior – written in terms of what the system should do, NOT how it should do it – written in the domain language, not in terms of the implementation

• Flow of events should include
– – – – – When and how the use case starts and ends What interaction the use case has with the actors What data is needed by the use case The normal sequence of events for the use case The description of any alternate or exceptional flows

• Each project should use a standard template.
– See the previous slides in the requirements section for two suggested templates used to document in detail each requirement.

Master your semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master your semester with Scribd & The New York Times

Cancel anytime.