Rose Basics

24
13 of 24 13 of 24 1 Rose Basics Rose Basics

description

Rose Basics. What is Visual Modeling. Helps organize, visualize, and understand complexity . Is the mapping of real processes of a system to a graphical representation . Is a proven and accepted engineering technique. Has a common vocabulary, the Unified Modeling Language (UML). Models. - PowerPoint PPT Presentation

Transcript of Rose Basics

Page 1: Rose Basics

13 of 2413 of 24 11

Rose BasicsRose Basics

Page 2: Rose Basics

13 of 2413 of 24 22

What is Visual ModelingWhat is Visual Modeling Helps organize, visualize, and Helps organize, visualize, and

understand complexityunderstand complexity.. Is the Is the mapping of real processesmapping of real processes of a of a

system to a system to a graphical representationgraphical representation.. Is a Is a proven and accepted engineering proven and accepted engineering

technique.technique. Has a common vocabulary, the Unified Has a common vocabulary, the Unified

Modeling Language (UML).Modeling Language (UML).

Page 3: Rose Basics

13 of 2413 of 24 33

ModelsModels Models themselves are constructed using Models themselves are constructed using different different

viewsviews and diagramsand diagrams to accurately depict different to accurately depict different stakeholder perspectives and the system’s building stakeholder perspectives and the system’s building blocks, respectively.blocks, respectively.

ModelsModels are are complete representationscomplete representations of the system. of the system. Views Views allow different stakeholders to see the system allow different stakeholders to see the system

from their own perspectives from their own perspectives Views contain Models… Views contain Models… Models contain diagrams – some of these terms are ‘used’ Models contain diagrams – some of these terms are ‘used’

interchangeably…interchangeably…

Diagrams: Diagrams: means by which we view of the system.means by which we view of the system. Different building blocks (model elements) for different types. Different building blocks (model elements) for different types.

classes, interfaces, collaborations, components, classes, interfaces, collaborations, components, nodes, nodes, dependencies, generalizations, and dependencies, generalizations, and associations.associations.

The 4 + 1 Architectural Views: how they work in Rose.The 4 + 1 Architectural Views: how they work in Rose.

Page 4: Rose Basics

13 of 2413 of 24 44

Process View Deployment View

Logical View

Use-Case View

Implementation View

End-user Functionality

Programmers Software management

PerformanceScalabilityThroughput

System integratorsSystem topology

Delivery, installationcommunication

System engineering

Analysts/DesignersStructure / Behaviors

Very Important: 4 + 1 Architectural View

Page 5: Rose Basics

13 of 2413 of 24 55

4+1 Architectural View4+1 Architectural ViewUse Case View - Use Case View - represents the system’s represents the system’s

intended functions and environment intended functions and environment as seen as seen by its end usersby its end users..

Serves as a Serves as a contractcontract between customer and between customer and developer.developer.

Is Is essentialessential to analysis, design and test to analysis, design and test activities. activities.

Includes use case diagrams, use case flow Includes use case diagrams, use case flow of events, and supplemental documentation. of events, and supplemental documentation.

It can also include It can also include activity diagramsactivity diagrams.. Is the heart of and drives all other viewsIs the heart of and drives all other views.. Used for Used for requirements capturerequirements capture and analysis… and analysis…

and and much, much moremuch, much more

Page 6: Rose Basics

13 of 2413 of 24 66

4+1 Architectural View4+1 Architectural ViewLogical ViewLogical View Supports modeling the Supports modeling the functionalfunctional requirements of the requirements of the

systemsystem, meaning the services the system should , meaning the services the system should provide its end users.provide its end users.

Includes analysis class modeling, use case realizations, Includes analysis class modeling, use case realizations, and interaction diagrams. and interaction diagrams.

It can also include state-chart and activity diagrams. – It can also include state-chart and activity diagrams. – discuss. discuss.

Much Much analysis and designanalysis and design involve elements in this involve elements in this view.view. In fact, ‘most’ analysis and design in done here…In fact, ‘most’ analysis and design in done here…

Much of this work is done in Elaboration and some in Much of this work is done in Elaboration and some in ConstructionConstruction

Page 7: Rose Basics

13 of 2413 of 24 77

4+1 Architectural View = 4+1 Architectural View = RoseRose

Implementation View (Component View in Rose) Implementation View (Component View in Rose) Describes Describes organization of static software modules (source organization of static software modules (source

code,code,data files, components, executables, and suchdata files, components, executables, and such) in terms of) in terms of packaging and layering and configuration management. packaging and layering and configuration management.

Addresses issues of ease of development, management ofAddresses issues of ease of development, management ofsoftware assets, reuse, sub-contracting, and off-the-shelf software assets, reuse, sub-contracting, and off-the-shelf components.components.

Used in programming and testingUsed in programming and testing.. Most (almost all) of this work is done during Construction Most (almost all) of this work is done during Construction

phase. (Some done – clean up, rework… in Transition…)phase. (Some done – clean up, rework… in Transition…)

Page 8: Rose Basics

13 of 2413 of 24 88

4+1 Architectural View4+1 Architectural ViewProcess ViewProcess View Includes the threads and processes that form the system’s Includes the threads and processes that form the system’s

concurrencyconcurrency and and synchronizationsynchronization mechanisms. mechanisms. Addresses the Addresses the performance, scalability, and throughputperformance, scalability, and throughput of the of the

system. system. (Several of the ‘non-functional’ requirements are often addressed (Several of the ‘non-functional’ requirements are often addressed

here.)here.) Is not necessary for Is not necessary for single processing environmentsingle processing environment..

Deployment ViewDeployment View This ‘View’ is used for distributed systems onlyThis ‘View’ is used for distributed systems only.. Shows how the various executables and other runtime components Shows how the various executables and other runtime components

are are mappedmapped to the to the underlying platforms or computing nodes.underlying platforms or computing nodes.

Do not confuse the Deployment View with ‘deployment’ and Do not confuse the Deployment View with ‘deployment’ and deployment artifacts as found in the Transition phase….deployment artifacts as found in the Transition phase….

This here is an This here is an architectural Viewarchitectural View not a development Phase! not a development Phase!

Page 9: Rose Basics

13 of 2413 of 24 99

State Chart DiagramsState Chart Diagrams State Diagrams specify the sequences of states that State Diagrams specify the sequences of states that

an object can be in; an object can be in; events and conditions that cause events and conditions that cause transitiontransition from from

one state to another; one state to another; and and actionsactions that take place that take place whenwhen the next state is the next state is

reached; reached; Can be attached to use cases to model a scenario.Can be attached to use cases to model a scenario.

Model the Model the dynamic aspectsdynamic aspects of the system. of the system. Particularly useful in modeling complex Particularly useful in modeling complex

interactions that may be difficult to capture in a interactions that may be difficult to capture in a Use Case – or to supplement the textual Use Case Use Case – or to supplement the textual Use Case Description.Description.

Page 10: Rose Basics

13 of 2413 of 24 1010

State Chart DiagramsState Chart DiagramsShould be created Should be created only when neededonly when needed to to represent state-controlled class represent state-controlled class behavior.behavior.

Statechart diagrams Statechart diagrams model the behavior model the behavior of a single object over its lifetime.of a single object over its lifetime.

Statechart diagrams model the flow of Statechart diagrams model the flow of control from event to event.control from event to event.

Page 11: Rose Basics

13 of 2413 of 24 1111

Activity DiagramsActivity Diagrams Model the Model the workflowworkflow of a business process or a class operation. of a business process or a class operation. Sometimes considered a Sometimes considered a visual descriptionvisual description of a use case…. of a use case…. Often Often accompanyaccompany a Use Case description. a Use Case description. Some Modelers prefer Activity Diagrams…Some Modelers prefer Activity Diagrams…

Are Are similar to a flowchartsimilar to a flowchart because you can model a workflow because you can model a workflow from to activity or from activity to state. Really, model is much from to activity or from activity to state. Really, model is much more…more…

Are considered a special case of a state machine where most of Are considered a special case of a state machine where most of the states are the states are activitiesactivities and most the and most the transitionstransitions are are implicitlyimplicitlytriggered by completion of the actions in the source activitiestriggered by completion of the actions in the source activities..

Models the Models the dynamic aspectsdynamic aspects of the system. of the system.

Key elementsKey elements • • Start and end states • Synchronization • StatesStart and end states • Synchronization • States

DecisionsDecisions • • TransitionsTransitions • Activities • Swimlanes • Activities • Swimlanes

Page 12: Rose Basics

13 of 2413 of 24 1212

Component ViewComponent ViewComponent Diagrams:Component Diagrams:Sometimes called the Implementation ViewSometimes called the Implementation ViewContains:Contains:

source code (.cpp, …)source code (.cpp, …).dlls.dlls.exes.exes.h files.h files.java files.java files

Typically configured into Typically configured into packagespackages of source of source code modules, data base entities, tables, code modules, data base entities, tables, files, etc.files, etc.

Page 13: Rose Basics

13 of 2413 of 24 1313

Deployment ViewDeployment ViewDeployment diagramsDeployment diagrams Are modeled in the Deployment View.Are modeled in the Deployment View. Show the Show the allocation of processes to processors in allocation of processes to processors in

the physical design of a systemthe physical design of a system.. Represent all or part of the process architecture Represent all or part of the process architecture

of a system.of a system. Deployment diagrams are Deployment diagrams are requiredrequired for for

distributeddistributed systems only. systems only. Show the physical aspects of the system.Show the physical aspects of the system.

Key elementsKey elements • • Processors • Connections • Devices • SpecificationsProcessors • Connections • Devices • Specifications

Page 14: Rose Basics

13 of 2413 of 24 1414

Use of Rational Rose …Use of Rational Rose …Do the following on your own – in Do the following on your own – in

conjunction with the Visual Modeling conjunction with the Visual Modeling Text.Text.

This text steps you through your This text steps you through your diagramming efforts step by step.diagramming efforts step by step.

Page 15: Rose Basics

13 of 2413 of 24 1515

The Rational Rose 2000 The Rational Rose 2000 InterfaceInterface

Browser: (see next slide)Browser: (see next slide) Think of the browser as Rose’s Windows Explorer.Think of the browser as Rose’s Windows Explorer. Displays the elements that you’ve modeled.Displays the elements that you’ve modeled. If an element doesn’t appear in the browser, it is If an element doesn’t appear in the browser, it is not not a part of a part of

your modeled system.your modeled system. May be visible or hidden; docked or floating.May be visible or hidden; docked or floating.

Documentation windowDocumentation window Used to create, view, or modify text explaining a selected item.Used to create, view, or modify text explaining a selected item. May visible or hidden; docked or floating.May visible or hidden; docked or floating. Note that information added to the documentation window is Note that information added to the documentation window is

automatically added to the Documentation field for the the automatically added to the Documentation field for the the appropriate specification selected in the main windowappropriate specification selected in the main window. .

Page 16: Rose Basics

13 of 2413 of 24 1616

Page 17: Rose Basics

13 of 2413 of 24 1717

The Rational Rose 2000 The Rational Rose 2000 InterfaceInterface

Diagram windowDiagram window Allows you to create, update, and model Allows you to create, update, and model

graphical views of the current model.graphical views of the current model.

Diagram toolbar (show)Diagram toolbar (show) Is unique to each diagram type and can be Is unique to each diagram type and can be

customized. customized. Is active only when a diagram is displayed.Is active only when a diagram is displayed. May be visible or hidden; docked or floating.May be visible or hidden; docked or floating.

Page 18: Rose Basics

13 of 2413 of 24 1818

The Rational Rose 2000 The Rational Rose 2000 InterfaceInterface

The Specification window – The Specification window – (right click on Use Case (right click on Use Case Package; Open Specification…)Package; Open Specification…)

Is a Is a textual representation of a model elementtextual representation of a model element that that allows you to view and manipulate the element's allows you to view and manipulate the element's model properties. model properties.

Note that information added to the documentation Note that information added to the documentation window is automatically added to the window is automatically added to the documentation field in the specification window.documentation field in the specification window.

The Log window – The Log window – (down at very bottom)(down at very bottom) Reports progress, results, and errorsReports progress, results, and errors Right-click on Log window to see available actions. Right-click on Log window to see available actions.

Page 19: Rose Basics

13 of 2413 of 24 1919

The Rational Rose 2000 The Rational Rose 2000 InterfaceInterface

The Options window (Select: view, toolbar, configure)The Options window (Select: view, toolbar, configure) Allows you to Allows you to customizecustomize Rose to suit your needs. Rose to suit your needs. For specific topic information, click ? in the upper right corner, then For specific topic information, click ? in the upper right corner, then

click the field. click the field. Selections made in Options are your defaultsSelections made in Options are your defaults. . Make sure they are set up to your liking before you modelMake sure they are set up to your liking before you model Changing this information after a model is created does not alter Changing this information after a model is created does not alter

existing information. For example, changing the default fill color existing information. For example, changing the default fill color applies to future additions. You would have to change existing applies to future additions. You would have to change existing elements manually. elements manually. General General Can customize fonts, use of backup files, save setting.Can customize fonts, use of backup files, save setting. Browser - Browser - Can show stereotypes in the browserCan show stereotypes in the browser Notation – Notation – Can customize the notation and select a default language.Can customize the notation and select a default language. Diagram - Diagram - Can customize features specific to display of Rose diagrams. Can customize features specific to display of Rose diagrams.

Let’s talk about the Stereotype display of this tab.Let’s talk about the Stereotype display of this tab.

Page 20: Rose Basics

13 of 2413 of 24 2020

Rational Rose 2000 Rational Rose 2000 InterfaceInterface

The Stereotype displayThe Stereotype display Click on Use Case View; Main; (2C) Click on Use Case View; Main; (2C)

Actor from toolbar; Actor from toolbar; Put into diagram; Put into diagram; Select <<actor>>; Select <<actor>>; right click for Open Specification…right click for Open Specification…

This option lets you select This option lets you select how you how you want stereotypes to appear on your want stereotypes to appear on your diagramsdiagrams. .

Page 21: Rose Basics

13 of 2413 of 24 2121

Rational Rose 2000 Rational Rose 2000 DiagramsDiagrams DiagramsDiagrams - -

the means to view the system’s building blocks: the means to view the system’s building blocks: classes, interfaces, collaborations, components, nodes, classes, interfaces, collaborations, components, nodes, dependencies, generalizations, and associations.dependencies, generalizations, and associations.

Eight diagrams can be modeled in Rose. Eight diagrams can be modeled in Rose. Will use four for Requirements Gathering, Analysis and Will use four for Requirements Gathering, Analysis and

Design.Design. We will be dealing with these quite a bit.We will be dealing with these quite a bit.

Use Case Use Case Collaboration Collaboration Sequence Sequence ClassClass

We will briefly discuss the other We will briefly discuss the other remainingremaining four on the four on the following slides.following slides.

Page 22: Rose Basics

13 of 2413 of 24 2222

Basic Tool Techniques Basic Tool Techniques Add Model ElementsAdd Model Elements

EitherEither the browser or diagram toolbar the browser or diagram toolbar.. Browser: Right click on Use Case Diagram; Browser: Right click on Use Case Diagram;

Select New; Select Model element.Select New; Select Model element. Toolbar: Double Click element; Place on diagram Toolbar: Double Click element; Place on diagram

window; document…(See browser)window; document…(See browser) Elements added from the toolbar are Elements added from the toolbar are

automatically added to the browser.automatically added to the browser. Elements added to the browser must be Elements added to the browser must be

dragged and dropped on to the diagram.dragged and dropped on to the diagram. You can also drag and drop existing elements You can also drag and drop existing elements

from the browser to other diagrams.from the browser to other diagrams.

Page 23: Rose Basics

13 of 2413 of 24 2323

Basic Tool TechniquesBasic Tool TechniquesDelete Model ElementsDelete Model Elements

Deleting from a diagramDeleting from a diagram Removes the selected icon from the current diagram BUT does Removes the selected icon from the current diagram BUT does

not change the model unless:not change the model unless: Deleted icon is unnamed, Deleted icon is unnamed, oror Icon appears once in the current diagram and in no other diagram. Icon appears once in the current diagram and in no other diagram.

Note that all relationships associated with the deleted element Note that all relationships associated with the deleted element are also deleted.are also deleted.

Delete from a diagramDelete from a diagram Click the element in the diagram, then press Delete on your keyboard.Click the element in the diagram, then press Delete on your keyboard. Click the element in the diagram. From the Edit menu, click Delete.Click the element in the diagram. From the Edit menu, click Delete.

Delete from the browserDelete from the browser Removes the selected element from the Removes the selected element from the modelmodel. . Removes Removes all icons representing the element from all diagramsall icons representing the element from all diagrams on which on which

they appear. they appear. Other ways too.Other ways too.

Page 24: Rose Basics

13 of 2413 of 24 2424

Basic Tool TechniquesBasic Tool TechniquesRight Clicking – Short Cut Right Clicking – Short Cut

MenuMenu The right-click featureThe right-click feature Displays actions that can be taken on Displays actions that can be taken on

the selection.the selection. Is the alternative to selecting from the Is the alternative to selecting from the

standard menu bar.standard menu bar. Can be used for all toolbars, diagram Can be used for all toolbars, diagram

elements, browser and elements, browser and browser browser elements, and documentation windowelements, and documentation window