Rose Basics
description
Transcript of Rose Basics
13 of 2413 of 24 11
Rose BasicsRose 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).
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.
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
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
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
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…)
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!
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.
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.
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
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.
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
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.
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. .
13 of 2413 of 24 1616
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.
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.
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.
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. .
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.
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.
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.
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