Rational ROSE

44
Rational ROSE An introduction

description

Rational ROSE. An introduction. Why modeling ?. 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 - PowerPoint PPT Presentation

Transcript of Rational ROSE

Page 1: Rational ROSE

Rational ROSEAn introduction

Page 2: Rational ROSE

Why modeling ?

Page 3: Rational ROSE

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

Page 4: Rational ROSE

U M LUnified Modeling Language

Page 5: Rational ROSE

Why UML ?

• Large enterprise applications

• a way that enables • Scalability• security• robust execution under stressful conditions

• code reuse

Page 6: Rational ROSE

RATIONAL ROSEWHAT WHY AND HOW !!!

Page 7: Rational ROSE

•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 non-programmers 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.

History

Page 8: 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

Page 9: 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

When to use Rational ROSE

Page 10: Rational ROSE

Rational ROSE INTERFACE

Diagram window

Diagramtoolbar

Browser

Documentation Windowdocked/floating

* Locked and unlocked modes of icons** Customizing the tool bar Overview

Page 11: Rational ROSE

Views and Diagrams ???

Diagrams

Views

Page 12: Rational ROSE

The different Views

Page 13: Rational ROSE

Rational Rose Interface

Specificationwindow

Log window

Page 14: Rational ROSE

Options window

Options window

Stereotype display

Page 15: Rational ROSE

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 ModelIf 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.

Saving in various format

Page 16: Rational ROSE

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)

Add IN Manager

Page 17: Rational ROSE

• 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

Using the browser

Page 18: Rational ROSE

• Use Case

• Collaboration

• Sequence

• Class

• Statechart

• Activity

• Component

• Deployment

Rational ROSE DIAGRAMS

Page 19: Rational ROSE

• 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

Rational ROSE DIAGRAMS

Page 20: 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

Deleting in Rational ROSE

Page 21: Rational ROSE

•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

Page 22: Rational ROSE

• 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

How to use Rational ROSE modeling in real life

Page 23: Rational ROSE

RATIONAL ROSEDiagrams in detail

Page 24: 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

How to use Rational ROSE

Page 25: Rational ROSE

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.

Use Case Diagram

Page 26: Rational ROSE

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 diagrams

Page 27: Rational ROSE

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.

Page 28: Rational ROSE

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.

Object Diagram

Page 29: Rational ROSE

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.

Sequence Diagram

Page 30: Rational ROSE
Page 31: Rational ROSE

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.

Collaboration Diagrams

Page 32: Rational ROSE
Page 33: Rational ROSE

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.

StateChart Diagrams

Page 34: Rational ROSE
Page 35: Rational ROSE

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

• Object flows, which represent the utilization of objects by action states and the influence of action states on objects.

Activity Diagrams

Page 36: Rational ROSE
Page 37: Rational ROSE

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.

Component Diagrams

Page 38: Rational ROSE
Page 39: Rational ROSE
Page 40: Rational ROSE

Deployment Diagram

Page 41: Rational ROSE

Deployment Diagram

Page 42: Rational ROSE

RATIONAL ROSEA DEMO

Page 43: Rational ROSE

Contact the tech support at the help desk in the labs.• Or elseContact rational ROSE at 18880 Homestead RoadCupertino, CA 95014Telephone: 800-433-5444 or 408-863-4000E-mail: [email protected]

• Or else• Mail me at [email protected]

When in doubt contact :-

Page 44: Rational ROSE

• 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

More References