You are on page 1of 45

Rational ROSE

An introduction

Why modeling ?
Better understanding

The advantages of visual modeling


Modeling is a way of thinking about the problems using models organized around the real world ideas.

understanding of various interrelationships of a system fastest way to delineate the complex relationships easier for developers, software architects and customers to communicate on a common platform

UML
Unified Modeling Language

UML History

Why UML ?
Large enterprise applications a way that enables
Scalability security robust execution under stressful conditions

code reuse

RATIONAL ROSE
WHAT WHY AND HOW !!!

History

ROSE = Rational Object Oriented Software Engineering Rational Rose is a set of visual modeling tools for development of object oriented software. Rose uses the UML to provide graphical methods for nonprogrammers wanting to model business processes as well as programmers modeling application logic. facilitates use of the Unified Modeling Language (UML), Component Object Modeling (COM), Object Modeling Technique (OMT), and Booch 93 method for visual modeling.

When to use Rational ROSE


Modeling can be useful at any point in the application development process. Initial Design Work (Requirement Analysis and Definition)
Use Cases Class Diagrams Sequence Diagram

Generality is Good in early design.

When to use Rational ROSE


Refinement of Early Models (System & Software Design) Introduced in Middle of Project Rational Rose includes tools for reverse engineering as well as forward engineering of classes and component architectures. You can gain valuable insights to your actual constructed architecture and pinpoint deviations from the original design. Rose offers a fast way for clients and new employees to become familiar with system internals

Rational ROSE INTERFACE

Browser Diagram window Diagram toolbar

Documentation Window
docked/floating * Locked and unlocked modes of icons ** Customizing the tool bar

Overview

Views and Diagrams ???


Views

Diagrams

The different Views

Rational Rose Interface


Specification window

Log window

Options window
Options window

Stereotype display

Saving in various format


If you want to save a Rational Rose model as a different format, you may select any of the following options from the Save As Type list in the Save Model To dialog box: Models *.mdl (the current version of Rose) Petal *.ptl Rose 6.1/6.5 Model Rose 4.5/6.5 Model Rose 4.0 Model Rose 3.0 Model
If you prefer, you can modify the rose.ini file to always save in a specified format, eliminating the need to select Save As.

Difference between the saved model and workspace.

Add IN Manager
Extending Rational Rose allows you to quickly and accurately customize Rational Rose environment depending on development needs. can install language (for example, Visual Basic, Visual Java, etc.) and non- language (for example Microsoft Project) tools while in Rational Rose. Add-Ins can install: Menus (.mnu file) Help files (.hlp file) Contents tab file (.cnt file) Properties (.pty file) Executables (.exe) Script files (.ebs script source file and .ebx compiled script file) OLE servers (.dll file)

Using the browser


Hiding and Displaying the Browser Positioning the Browser
Docked and floating

Expanding and Collapsing the Browser Tree Selecting Multiple Elements in the Browser Navigating a Model Creating and Editing Model Elements Naming an Element in the Browser

Rational ROSE DIAGRAMS


Use Case Collaboration Sequence Class Statechart Activity Component Deployment

Rational ROSE DIAGRAMS


Creating a diagram Linking a diagram
1. Create a note on any diagram. 2. Display the browser if not already visible. 3. In the browser, locate the diagram that you want to link. 4. Drag the diagram icon from the browser onto the note icon on the diagram. As you position the cursor onto the note, you will see the shortcut symbol (a dotted square and a curved arrow inside a solid square). 5. The fully qualified name is displayed in an underline font. Note: You may need to resize the note to see the entire name. 6. Change the text in the note (if desired) to something more meaningful to your project. 7. Double-click on the note to view the linked diagram.

Displaying a diagram Rename a Diagram Deleting a diagram

Deleting in Rational ROSE


Shallow Delete
Click Edit > Delete Press CTRL + X Press the DELETE key Note: If you perform a shallow delete on an element without a name, Rational Rose will delete the model element completely out of the model.

Deep Delete
Click Edit > Delete from Model Press CTRL + D Right-click on an element in the browser and then select Delete from the shortcut menu

How to use Rational ROSE modeling in real life


Capture a Business Process Model. Map a Use Case Model to the Business Process Model to define exact functionality. Refine the Use Cases - include requirements, constraints, complexity rating, notes and scenarios. From the inputs and outputs of the Business Process Model and the details of the use cases, begin to construct a domain model (high level business objects), sequence diagrams, collaboration diagrams and user interface models. From the domain model, the user interface model and the scenario diagrams create the Class Model. This is a precise specification of the objects in the system, their data or attributes and their behaviour or operations.

How to use Rational ROSE modeling in real life


As the Class Model develops it may be broken into discrete packages and components. So from the Class Model a Component Model is built to define the logical packaging of classes. Concurrent with the work you have already done, additional requirements should have been captured and documented. The Deployment model defines the physical architecture of the system. Build the system: Take discrete pieces of the model and assign to one or more developers. In a Use Case driven build this will mean assigning a Use Case to the development team, having them build the screens, business objects, database tables, and related components necessary to execute that Use Case. Track defects that emerge in the testing phases against the related model elements - e.g.. System test defects against Use Cases, Unit Test defects against classes & etc. Track any changes against the related model elements to manage 'scope creep'. Update and refine the model as work proceeds

RATIONAL ROSE
Diagrams in detail

How to use Rational ROSE


Selecting a diagram Right-clicking as short cut Adding diagram elements from toolbar and browser Setting up default stereotypes

Idea about the Reverse engineering Deleting from a diagram and the browser

Use Case Diagram


Use Case Diagrams describe the functionality of a system and users of the system. These diagrams contain the following elements: Actors, which represent users of a system, including human users and other systems. Use Cases, which represent functionality or services provided by a system to users.

Class diagrams
Class Diagrams describe the static structure of a system, or how it is structured rather than how it behaves. These diagrams contain the following elements. Classes, which represent entities with common characteristics or features. These features include attributes, operations and associations. Associations, which represent relationships that relate two or more other classes where the relationships have common characteristics or features. These attributes and operations.

Class Specification
Export Control field.
Public, private, protected, implementation

The Cardinality Concurrency


A class concurrency defines its semantics in the presence of multiple threads of control.

Object Diagram
Object Diagrams describe the static structure of a system at a particular time. Whereas a class model describes all possible situations, an object model describes a particular situation. Object diagrams contain the following elements: Objects, which represent particular entities. These are instances of classes. Links, which represent particular relationships between objects. These are instances of associations.

Sequence Diagram
Sequence Diagrams describe interactions among classes. These interactions are modeled as exchange of messages. These diagrams focus on classes and the messages they exchange to accomplish some desired behavior. Sequence diagrams are a type of interaction diagrams. Sequence diagrams contain the following elements: Class roles, which represent roles that objects may play within the interaction. Lifelines, which represent the existence of an object over a period of time. Activations, which represent the time during which an object is performing an operation. Messages, which represent communication between objects.

Collaboration Diagrams
Collaboration Diagrams describe interactions among classes and associations. These interactions are modeled as exchanges of messages between classes through their associations. Collaboration diagrams are a type of interaction diagram. Collaboration diagrams contain the following elements. Class roles, which represent roles that objects may play within the interaction. Association roles, which represent roles that links may play within the interaction. Message flows, which represent messages sent between objects via links. Links transport or implement the delivery of the message.

StateChart Diagrams
Statechart (or state) diagrams describe the states and responses of a class. Statechart diagrams describe the behavior of a class in response to external stimuli. These diagrams contain the following elements: States, which represent the situations during the life of an object in which it satisfies some condition, performs some activity, or waits for some occurrence. Transitions, which represent relationships between the different states of an object.

Activity Diagrams
Activity diagrams describe the activities of a class. These diagrams are similar to statechart diagrams and use similar conventions, but activity diagrams describe the behavior of a class in response to internal processing rather than external events as in statechart diagram. Swimlanes, which represent responsibilities of one or more objects for actions within an overall activity; that is, they divide the activity states into groups and assign these groups to objects that must perform the activities. Action States, which represent atomic, or noninterruptible, actions of entities or steps in the execution of an algorithm. Action flows, which represent relationships between the different action states of an entity action states and the influence of action states on objects.

Object flows, which represent the utilization of objects by

Component Diagrams
Component diagrams describe the organization of and dependencies among software implementation components.

These diagrams contain components, which represent distributable physical units, including source code, object code, and executable code.

Deployment Diagram

Deployment Diagram

RATIONAL ROSE
A DEMO

When in doubt contact :Contact the tech support at the help desk in the labs. Or else Contact rational ROSE at 18880 Homestead Road Cupertino, CA 95014 Telephone: 800-433-5444 or 408-863-4000 E-mail: support@rational.com Or else
Mail me at asharm4@ilstu.edu

More References
UML Home Page - http://www.platinum.com/corp/uml/uml.htm Online Tutorials for Rational Rose http://www.rational.com/products/rose/gstart/online.jtmpl

Rose Whitepapers
http://www.rational.com/products/rose/prodinfo/whitepapers/index.jtmpl

Rose Architect E-Magazine http://www.rosearchitect.com/mag/index.shtml Visual modeling with Rational Rose and UML
Source Addison Wesley Object Technology Series Year of Publication: 1998 ISBN:0-201-31016-3 Author Terry Quatrani Publisher Addison-Wesley Longman Publishing Co., Inc. Boston, MA, USA

You might also like