SlideShare ist ein Scribd-Unternehmen logo
1 von 49
Downloaden Sie, um offline zu lesen
Rational Rose
Tutorial
Anis Yousefi
Teaching Assistant
SE3KO4 / SE3MO4
Software Development for Computer and
Electrical Engineering
Email: yousea2@mcmaster.ca

Introduction to Rational Rose

1
Objectives





Get to know Rational Rose
Get Familiar with general functions of
Rational Rose for Modeling
Create UML Diagrams with Rational
Rose

Introduction to Rational Rose

2
Assumption


You are familiar with Unified Modeling
Language (UML)

• Either

• Read a book on UML
• Been trained in UML
• Used UML on work project



You are familiar with object oriented software

Introduction to Rational Rose

3
Access To Rational Rose



Available at student lab
Can download full version from Rational

• 15-day trial license

Introduction to Rational Rose

4
What is Rational Rose?





ROSE = Rational Object Oriented Software Engineering
Rational Rose is a set of visual modeling tools for
development of object oriented software.
Visual Modeling is the process of graphically depicting the
system to be developed

•
•
•

Presenting essential details
Filtering out non-essential details
Viewing the system from different perspectives

Introduction to Rational Rose

5
Why Model?



The UML models act as an architectural
blueprint for software development.
Good models:

•
•
•
•

Identify requirements and communicate information
Allows focus on how system components interact,
without get bogged out in specific details
Allows you to see relationships among design
components
Improves communication across your team through
the use of common graphical language

Introduction to Rational Rose

6
Visual Modeling Tools May Help
Mitigate these Problems







Software that poorly fits user needs
Inability to deal with changing requirements
Software integration problems
Discovery of serious flaws too late in the
project
Software that is hard to maintain and extend

Introduction to Rational Rose

7
When Should ROSE be Used?



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
Spend your time dealing with issues such as the planned
uses of software system and how you will implement a
programming environment to address these issues--not
where and how you are going to place the buttons on
your first screen.
Introduction to Rational Rose

8
When Should ROSE be Used?



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

Introduction to Rational Rose

9
Rose




Rose Enterprise:

•

Supports multiple languages, including VC++, VB,
Java, CORBA

Rose GUI:

•
•
•
•
•
•
•

Standard ToolBar
Diagram ToolBox
Browser
Diagram Window
Documentation Window
Specifications
Log Window

Introduction to Rational Rose

10
Diagram Toolbox

Browser Window
Your model is
Really in HERE!

Diagram Window

Documentation Window
Log Window
Introduction to Rational Rose

11
Rational Rose Interface




The Rose standard toolbar (near the top of the window)

•
•

is always displayed - independent of the current diagram type.
While in Rose, place your cursor over the toolbar to display a
tooltip for each icon.

The browser

•
•
•
•

a hierarchical navigational tool allowing you to view the names and
icons representing diagrams and model elements.
The plus (+) sign next to an icon indicates the item is collapsed
and additional information is located under the entry. Click on the +
sign and the tree is expanded.
Conversely, a minus (-) sign indicates the entry is fully expanded.
If the browser is not displayed, select Browser from the View
menu.

Introduction to Rational Rose

12
Rational Rose Interface




Diagram window

•

Allows you to create, update, and model different
diagrams, that are, graphical views of the model

Diagram toolbar

•
•
•
•

Is unique to each diagram type and can be
customized.
Is active only when a diagram is displayed.
May be visible or hidden; docked or floating.
As with the standard toolbar, placing your cursor on an
icon displays the tooltip for that icon.

Introduction to Rational Rose

13
Toolbar for Class Diagrams


Any element of a diagram can be created by
• placing the mouse pointer over a Tool in the Toolbar
• Drag&Drop over the diagram canvas

text
interface

Note

class
Pointer

Note Anchor

asociation

generalization
package
dependency or instantiation

Association class
Introduction to Rational Rose

realization
14
Rational Rose Interface


The Specification window –

(right click on Use Case View

Package; Open Specification…)

•
•



Is a textual representation of a model element that allows
you to view and manipulate the element's properties.
Note that information added to the documentation window
is automatically added to the documentation field in the
specification window.

The Log window –

•
•

(down at very bottom)

Reports progress, results, and errors
Right-click on Log window to see available actions
Introduction to Rational Rose

15
Models, Views, Diagrams


Models themselves are constructed using different views and diagrams to
accurately depict different stakeholder perspectives and the system’s building
blocks, respectively.



Models are complete representations of the system.



Views allow different stakeholders to see the system from their own
perspectives

•

Views contain Models…

•

Models generally contain a number of diagrams – some of these terms are
‘used’ interchangeably…

•
•



E.g. Logical View contains analysis model, business object model, design model
(Sometimes models can contain ‘views’ too…)

E.g. Design model contains class diagrams, sequence diagrams, and a number of
others….

Diagrams: means by which we view of the system.

•
•

Different building blocks (model elements) for different types.
E.g.: classes, interfaces, collaborations, components, nodes,
dependencies, generalizations, and associations.
Introduction to Rational Rose

16
Views


Just as there are many views of a house under construction the floor plan, the wiring diagram, the elevation plan, there are
many views of a software project under development.



Rational Rose is organized around the following views of a
software project:

•
•
•
•

Use Case
Logical
Component
Deployment

Each of these views presents a different aspect of the model
and is explained in subsequent slides.

Introduction to Rational Rose

17
The use-case view




The use-case view helps you to understand and use the
system. This view looks at how actors and use cases
interact.
The diagrams in this view are:

•
•
•
•

Use-case diagrams
Sequence diagrams
Collaboration diagrams
Activity diagrams

This view contains a Main diagram by default. Additional
diagrams can be added throughout the analysis and
design process.

Introduction to Rational Rose

18
Introduction to Rational Rose

19
The logical view




The logical view addresses the functional
requirements of the system.
This view looks at classes and their
relationships.
The diagrams in this view are:

•
•

Class diagrams
Statechart diagrams

This view contains a Main diagram by default.
Additional diagrams can be added throughout
the analysis and design process.
Introduction to Rational Rose

20
Lect 1: Rational Rose Tutorial
Introduction to Rational Rose

21
The component view





The component view addresses the software
organization of the system.
This view contains information about the
software, executable and library components
for the system.
This view contains only component diagrams.
The component view contains a Main diagram
by default. Additional diagrams can be added
to this view throughout the analysis and design
process.
Introduction to Rational Rose

22
Introduction to Rational Rose

23
The deployment view





The deployment view shows the
mapping of processes to hardware.
This type of diagram is most useful in a
distributed architecture environment
where you might have applications and
servers at different locations.
This view contains only one diagram -the
deployment diagram.
Introduction to Rational Rose

24
Introduction to Rational Rose

25
Diagrams




Simply put, a diagram is a graphical representation of the
elements of your system.
Different diagram types allow you to view your system from
multiple perspectives.
You can create various types of diagrams in Rational Rose.
The diagram types include:

•
•
•
•
•
•

Use-Case
Class
Activity
Statechart
Component
Deployment

Each of these diagram types is explained in subsequent slides.

Introduction to Rational Rose

26
Use-case diagrams








Use-case diagrams present a high-level view of system
usage as viewed from an outsider's (actor's) perspective.
These diagrams show the functionality of a system or a
class and how the system interacts with the outside
world.
Use-case diagrams can be used during analysis to
capture the system requirements and to understand how
the system should work.
During the design phase, use-case diagrams specify the
behavior of the system as implemented.
Rose automatically creates a Main use-case diagram in
the use-case view. There are typically many use-case
diagrams in a single model.

Introduction to Rational Rose

27
UC Diagram example

Introduction to Rational Rose

28
Class diagrams






A class diagram helps you visualize the
structural or static view of a system and is one
of the most common diagram types.
Class diagrams show the relationships among
and details about each class.
Class diagrams are also the foundation for
component and deployment diagrams.
Rose automatically creates a Main class
diagram in the logical view. There are typically
many class diagrams in a single model.

Introduction to Rational Rose

29
Class Diagram Sample

Introduction to Rational Rose

30
Sequence diagrams







A sequence diagram illustrates object interactions
arranged in a time sequence.
These diagrams are typically associated with use cases.
Sequence diagrams show you step-by-step what has to
happen to accomplish something in the use case.
This type of diagram emphasizes the sequence of events,
whereas collaboration diagrams (an alternative view of
the same information) emphasize the relationship.
This type of diagram is best used early in the design or
analysis phase because it is simple and easy to
comprehend.

Introduction to Rational Rose

31
Sequence Diagram Example

Introduction to Rational Rose

32
Collaboration diagrams







Collaboration diagrams provide a view of the interactions
or structural relationships between objects in the current
model.
This type of diagram emphasizes the relationship
between objects whereas sequence diagrams emphasize
the sequence of events.
Collaboration diagrams contain objects, links, and
messages.
Use collaboration diagrams as the primary vehicle to
describe interactions that express decisions about system
behavior.

Introduction to Rational Rose

33
Collaboration Diagram Example

Introduction to Rational Rose

34
Activity diagrams







Activity diagrams model the workflow of a business process
and the sequence of activities in a process.
These diagrams are very similar to a flowchart because you
can model a workflow from activity to activity or from activity to
state.
It is often beneficial to create an activity diagram early in the
modeling of a process to help you understand the overall
process.
Activity diagrams are also useful when you want to describe
parallel behavior or illustrate how behaviors in several use
cases interact.

Introduction to Rational Rose

35
Activity Diagram Example

Introduction to Rational Rose

36
Component diagrams





Component diagrams provide a physical
view of the current model.
They show the organization and
dependencies among software components,
including source code, binary code, and
executable components.
You can create one or more component
diagrams to depict components and
packages or to represent the contents of
each component package.

Introduction to Rational Rose

37
Component Diagram Example

Introduction to Rational Rose

38
Deployment diagrams


Each model contains a single
deployment diagram that shows the
mapping of processes to hardware.

Introduction to Rational Rose

39
Deployment Diagram Example

Introduction to Rational Rose

40
Statechart diagrams





You can use statechart diagrams to model the dynamic
behavior of individual classes or objects.
Statechart diagrams show the sequences of states that
an object goes through, the events that cause a transition
from one state or activity to another, and the actions that
result from a state or activity change.
A statechart diagram is typically used to model the
discrete stages of an object's lifetime, whereas an activity
diagram is better suited to model the sequence of
activities in a process.

Introduction to Rational Rose

41
Statechart Diagram Example

Introduction to Rational Rose

42
Specifications


Specifications are dialog boxes
that allow you to set or change
model element properties.



Changes made to a model
element either through the
specification or directly on the
icon are automatically updated
throughout the model.

Introduction to Rational Rose

43
Start Rational Rose


Start Rose

• Start → Programs → Rational Rose

Introduction to Rational Rose

44
Create a New Model






When Rose is started
When Rose has been
started: File → New
From Scratch: New
From File System:

Existing OR Recent

Introduction to Rational Rose

45
To Save a Model


File → Save o Save As

Introduction to Rational Rose

46
Delete an Element


Shallow Delete

•
•

Edit Delete
Select element in diagram → key DEL

It is not deleted from the MODEL!! (only from the diagram, not from Browser)



Deep Delete

•
•

Select element in Browser → click right button →
Delete
Select element in diagram → Click CTRL+D

It is deleted from the MODEL!! (It will disapear from the diagram and from the Browser)

Introduction to Rational Rose

47
Move Elements across Packages


Drag&Drop in each Package Browser
from one to another

• One to One
• Pay attention: by moving the classes it does

not mean that associations will move as well!!
(Rational Rose 2000>)

• They are elements with Identity

Introduction to Rational Rose

48
More Information



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/ind
ex.jtmpl


Rose Architect E-Magazine

http://www.rosearchitect.com/mag/index.shtml


Visual Modeling with Rational Rose and UML,
by Terry Quatrani
Introduction to Rational Rose

49

Weitere ähnliche Inhalte

Was ist angesagt?

CIS110 Computer Programming Design Chapter (13)
CIS110 Computer Programming Design Chapter  (13)CIS110 Computer Programming Design Chapter  (13)
CIS110 Computer Programming Design Chapter (13)Dr. Ahmed Al Zaidy
 
Unit 1- OOAD ppt
Unit 1- OOAD  pptUnit 1- OOAD  ppt
Unit 1- OOAD pptPRIANKA R
 
Chapter 12 Lecture: GUI Programming, Multithreading, and Animation
Chapter 12 Lecture: GUI Programming, Multithreading, and AnimationChapter 12 Lecture: GUI Programming, Multithreading, and Animation
Chapter 12 Lecture: GUI Programming, Multithreading, and AnimationNicole Ryan
 
RSC Oracle ERP capabilities matrix
RSC Oracle ERP capabilities matrixRSC Oracle ERP capabilities matrix
RSC Oracle ERP capabilities matrixRoman Havrylyak
 
Uml with detail
Uml with detailUml with detail
Uml with detailHamza Khan
 
13 si(systems analysis and design )
13 si(systems analysis and design )13 si(systems analysis and design )
13 si(systems analysis and design )Nurdin Al-Azies
 
An Automatic Approach to Translate Use Cases to Sequence Diagrams
An Automatic Approach to Translate Use Cases to Sequence DiagramsAn Automatic Approach to Translate Use Cases to Sequence Diagrams
An Automatic Approach to Translate Use Cases to Sequence DiagramsMohammed Misbhauddin
 
UML and Case study
UML and Case study UML and Case study
UML and Case study Mihika-QA
 
Lab # 06
Lab # 06Lab # 06
Lab # 06Mr SMAK
 

Was ist angesagt? (17)

SMD Unit i
SMD Unit iSMD Unit i
SMD Unit i
 
4+1
4+14+1
4+1
 
UML Design
UML DesignUML Design
UML Design
 
CIS110 Computer Programming Design Chapter (13)
CIS110 Computer Programming Design Chapter  (13)CIS110 Computer Programming Design Chapter  (13)
CIS110 Computer Programming Design Chapter (13)
 
Unit 1- OOAD ppt
Unit 1- OOAD  pptUnit 1- OOAD  ppt
Unit 1- OOAD ppt
 
Fundamentals of-algorithm
Fundamentals of-algorithmFundamentals of-algorithm
Fundamentals of-algorithm
 
Case stydy cs701
Case stydy cs701 Case stydy cs701
Case stydy cs701
 
Flowchart
FlowchartFlowchart
Flowchart
 
Chapter 12 Lecture: GUI Programming, Multithreading, and Animation
Chapter 12 Lecture: GUI Programming, Multithreading, and AnimationChapter 12 Lecture: GUI Programming, Multithreading, and Animation
Chapter 12 Lecture: GUI Programming, Multithreading, and Animation
 
CS8592-OOAD Lecture Notes Unit-3
CS8592-OOAD Lecture Notes Unit-3CS8592-OOAD Lecture Notes Unit-3
CS8592-OOAD Lecture Notes Unit-3
 
RSC Oracle ERP capabilities matrix
RSC Oracle ERP capabilities matrixRSC Oracle ERP capabilities matrix
RSC Oracle ERP capabilities matrix
 
Uml with detail
Uml with detailUml with detail
Uml with detail
 
Cte 113 slides
Cte 113 slidesCte 113 slides
Cte 113 slides
 
13 si(systems analysis and design )
13 si(systems analysis and design )13 si(systems analysis and design )
13 si(systems analysis and design )
 
An Automatic Approach to Translate Use Cases to Sequence Diagrams
An Automatic Approach to Translate Use Cases to Sequence DiagramsAn Automatic Approach to Translate Use Cases to Sequence Diagrams
An Automatic Approach to Translate Use Cases to Sequence Diagrams
 
UML and Case study
UML and Case study UML and Case study
UML and Case study
 
Lab # 06
Lab # 06Lab # 06
Lab # 06
 

Andere mochten auch (13)

Introducing visual studio_2010_v1.0--chappell
Introducing visual studio_2010_v1.0--chappellIntroducing visual studio_2010_v1.0--chappell
Introducing visual studio_2010_v1.0--chappell
 
Lec 04e microprocessor_generations_w03
Lec 04e microprocessor_generations_w03Lec 04e microprocessor_generations_w03
Lec 04e microprocessor_generations_w03
 
Classical cryptography
Classical cryptographyClassical cryptography
Classical cryptography
 
android_development_environment
android_development_environmentandroid_development_environment
android_development_environment
 
Jaxws 2 0-fr-spec
Jaxws 2 0-fr-specJaxws 2 0-fr-spec
Jaxws 2 0-fr-spec
 
Access control matrix
Access control matrixAccess control matrix
Access control matrix
 
Rstutorialbook
RstutorialbookRstutorialbook
Rstutorialbook
 
Cloud based database
Cloud based databaseCloud based database
Cloud based database
 
Other public key systems
Other public key systemsOther public key systems
Other public key systems
 
Oose lab notes
Oose lab notesOose lab notes
Oose lab notes
 
Attacks1
Attacks1Attacks1
Attacks1
 
Trends in marketing
Trends in marketingTrends in marketing
Trends in marketing
 
Cdn cs6740
Cdn cs6740Cdn cs6740
Cdn cs6740
 

Ähnlich wie Rational rosetutorial

the Modeling is a way of thinking about the
the Modeling is a way of thinking about thethe Modeling is a way of thinking about the
the Modeling is a way of thinking about thesaman zaker
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with umlsabin kafle
 
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdfdo_2013
 
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdfdo_2013
 
Software-Architecture_Course-Notes.pdf
Software-Architecture_Course-Notes.pdfSoftware-Architecture_Course-Notes.pdf
Software-Architecture_Course-Notes.pdfdo_2013
 
Arch06 1
Arch06 1Arch06 1
Arch06 1nazn
 
Design and Implementation in Software Engineering
Design and Implementation in Software EngineeringDesign and Implementation in Software Engineering
Design and Implementation in Software EngineeringKourosh Sajjadi
 
Object oriented sad-5 part i
Object oriented sad-5 part iObject oriented sad-5 part i
Object oriented sad-5 part iBisrat Girma
 

Ähnlich wie Rational rosetutorial (20)

Lab 2
Lab 2Lab 2
Lab 2
 
the Modeling is a way of thinking about the
the Modeling is a way of thinking about thethe Modeling is a way of thinking about the
the Modeling is a way of thinking about the
 
Chapter9
Chapter9Chapter9
Chapter9
 
Software Design Methodologies and Testing
Software Design Methodologies and Testing Software Design Methodologies and Testing
Software Design Methodologies and Testing
 
Uml
UmlUml
Uml
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
 
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
 
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
 
Software-Architecture_Course-Notes.pdf
Software-Architecture_Course-Notes.pdfSoftware-Architecture_Course-Notes.pdf
Software-Architecture_Course-Notes.pdf
 
4+1 view model
4+1 view model4+1 view model
4+1 view model
 
SE UML.ppt
SE UML.pptSE UML.ppt
SE UML.ppt
 
Sdlc
SdlcSdlc
Sdlc
 
Sdlc
SdlcSdlc
Sdlc
 
Arch06 1
Arch06 1Arch06 1
Arch06 1
 
02intro
02intro02intro
02intro
 
Design and Implementation in Software Engineering
Design and Implementation in Software EngineeringDesign and Implementation in Software Engineering
Design and Implementation in Software Engineering
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
Innoslate Overview
Innoslate OverviewInnoslate Overview
Innoslate Overview
 
Week 6
Week 6Week 6
Week 6
 
Object oriented sad-5 part i
Object oriented sad-5 part iObject oriented sad-5 part i
Object oriented sad-5 part i
 

Kürzlich hochgeladen

UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 

Kürzlich hochgeladen (20)

UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 

Rational rosetutorial

  • 1. Rational Rose Tutorial Anis Yousefi Teaching Assistant SE3KO4 / SE3MO4 Software Development for Computer and Electrical Engineering Email: yousea2@mcmaster.ca Introduction to Rational Rose 1
  • 2. Objectives    Get to know Rational Rose Get Familiar with general functions of Rational Rose for Modeling Create UML Diagrams with Rational Rose Introduction to Rational Rose 2
  • 3. Assumption  You are familiar with Unified Modeling Language (UML) • Either • Read a book on UML • Been trained in UML • Used UML on work project  You are familiar with object oriented software Introduction to Rational Rose 3
  • 4. Access To Rational Rose   Available at student lab Can download full version from Rational • 15-day trial license Introduction to Rational Rose 4
  • 5. What is Rational Rose?    ROSE = Rational Object Oriented Software Engineering Rational Rose is a set of visual modeling tools for development of object oriented software. Visual Modeling is the process of graphically depicting the system to be developed • • • Presenting essential details Filtering out non-essential details Viewing the system from different perspectives Introduction to Rational Rose 5
  • 6. Why Model?   The UML models act as an architectural blueprint for software development. Good models: • • • • Identify requirements and communicate information Allows focus on how system components interact, without get bogged out in specific details Allows you to see relationships among design components Improves communication across your team through the use of common graphical language Introduction to Rational Rose 6
  • 7. Visual Modeling Tools May Help Mitigate these Problems      Software that poorly fits user needs Inability to deal with changing requirements Software integration problems Discovery of serious flaws too late in the project Software that is hard to maintain and extend Introduction to Rational Rose 7
  • 8. When Should ROSE be Used?   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 Spend your time dealing with issues such as the planned uses of software system and how you will implement a programming environment to address these issues--not where and how you are going to place the buttons on your first screen. Introduction to Rational Rose 8
  • 9. When Should ROSE be Used?   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 Introduction to Rational Rose 9
  • 10. Rose   Rose Enterprise: • Supports multiple languages, including VC++, VB, Java, CORBA Rose GUI: • • • • • • • Standard ToolBar Diagram ToolBox Browser Diagram Window Documentation Window Specifications Log Window Introduction to Rational Rose 10
  • 11. Diagram Toolbox Browser Window Your model is Really in HERE! Diagram Window Documentation Window Log Window Introduction to Rational Rose 11
  • 12. Rational Rose Interface   The Rose standard toolbar (near the top of the window) • • is always displayed - independent of the current diagram type. While in Rose, place your cursor over the toolbar to display a tooltip for each icon. The browser • • • • a hierarchical navigational tool allowing you to view the names and icons representing diagrams and model elements. The plus (+) sign next to an icon indicates the item is collapsed and additional information is located under the entry. Click on the + sign and the tree is expanded. Conversely, a minus (-) sign indicates the entry is fully expanded. If the browser is not displayed, select Browser from the View menu. Introduction to Rational Rose 12
  • 13. Rational Rose Interface   Diagram window • Allows you to create, update, and model different diagrams, that are, graphical views of the model Diagram toolbar • • • • Is unique to each diagram type and can be customized. Is active only when a diagram is displayed. May be visible or hidden; docked or floating. As with the standard toolbar, placing your cursor on an icon displays the tooltip for that icon. Introduction to Rational Rose 13
  • 14. Toolbar for Class Diagrams  Any element of a diagram can be created by • placing the mouse pointer over a Tool in the Toolbar • Drag&Drop over the diagram canvas text interface Note class Pointer Note Anchor asociation generalization package dependency or instantiation Association class Introduction to Rational Rose realization 14
  • 15. Rational Rose Interface  The Specification window – (right click on Use Case View Package; Open Specification…) • •  Is a textual representation of a model element that allows you to view and manipulate the element's properties. Note that information added to the documentation window is automatically added to the documentation field in the specification window. The Log window – • • (down at very bottom) Reports progress, results, and errors Right-click on Log window to see available actions Introduction to Rational Rose 15
  • 16. Models, Views, Diagrams  Models themselves are constructed using different views and diagrams to accurately depict different stakeholder perspectives and the system’s building blocks, respectively.  Models are complete representations of the system.  Views allow different stakeholders to see the system from their own perspectives • Views contain Models… • Models generally contain a number of diagrams – some of these terms are ‘used’ interchangeably… • •  E.g. Logical View contains analysis model, business object model, design model (Sometimes models can contain ‘views’ too…) E.g. Design model contains class diagrams, sequence diagrams, and a number of others…. Diagrams: means by which we view of the system. • • Different building blocks (model elements) for different types. E.g.: classes, interfaces, collaborations, components, nodes, dependencies, generalizations, and associations. Introduction to Rational Rose 16
  • 17. Views  Just as there are many views of a house under construction the floor plan, the wiring diagram, the elevation plan, there are many views of a software project under development.  Rational Rose is organized around the following views of a software project: • • • • Use Case Logical Component Deployment Each of these views presents a different aspect of the model and is explained in subsequent slides. Introduction to Rational Rose 17
  • 18. The use-case view   The use-case view helps you to understand and use the system. This view looks at how actors and use cases interact. The diagrams in this view are: • • • • Use-case diagrams Sequence diagrams Collaboration diagrams Activity diagrams This view contains a Main diagram by default. Additional diagrams can be added throughout the analysis and design process. Introduction to Rational Rose 18
  • 20. The logical view    The logical view addresses the functional requirements of the system. This view looks at classes and their relationships. The diagrams in this view are: • • Class diagrams Statechart diagrams This view contains a Main diagram by default. Additional diagrams can be added throughout the analysis and design process. Introduction to Rational Rose 20
  • 21. Lect 1: Rational Rose Tutorial Introduction to Rational Rose 21
  • 22. The component view    The component view addresses the software organization of the system. This view contains information about the software, executable and library components for the system. This view contains only component diagrams. The component view contains a Main diagram by default. Additional diagrams can be added to this view throughout the analysis and design process. Introduction to Rational Rose 22
  • 24. The deployment view    The deployment view shows the mapping of processes to hardware. This type of diagram is most useful in a distributed architecture environment where you might have applications and servers at different locations. This view contains only one diagram -the deployment diagram. Introduction to Rational Rose 24
  • 26. Diagrams    Simply put, a diagram is a graphical representation of the elements of your system. Different diagram types allow you to view your system from multiple perspectives. You can create various types of diagrams in Rational Rose. The diagram types include: • • • • • • Use-Case Class Activity Statechart Component Deployment Each of these diagram types is explained in subsequent slides. Introduction to Rational Rose 26
  • 27. Use-case diagrams      Use-case diagrams present a high-level view of system usage as viewed from an outsider's (actor's) perspective. These diagrams show the functionality of a system or a class and how the system interacts with the outside world. Use-case diagrams can be used during analysis to capture the system requirements and to understand how the system should work. During the design phase, use-case diagrams specify the behavior of the system as implemented. Rose automatically creates a Main use-case diagram in the use-case view. There are typically many use-case diagrams in a single model. Introduction to Rational Rose 27
  • 28. UC Diagram example Introduction to Rational Rose 28
  • 29. Class diagrams     A class diagram helps you visualize the structural or static view of a system and is one of the most common diagram types. Class diagrams show the relationships among and details about each class. Class diagrams are also the foundation for component and deployment diagrams. Rose automatically creates a Main class diagram in the logical view. There are typically many class diagrams in a single model. Introduction to Rational Rose 29
  • 30. Class Diagram Sample Introduction to Rational Rose 30
  • 31. Sequence diagrams      A sequence diagram illustrates object interactions arranged in a time sequence. These diagrams are typically associated with use cases. Sequence diagrams show you step-by-step what has to happen to accomplish something in the use case. This type of diagram emphasizes the sequence of events, whereas collaboration diagrams (an alternative view of the same information) emphasize the relationship. This type of diagram is best used early in the design or analysis phase because it is simple and easy to comprehend. Introduction to Rational Rose 31
  • 33. Collaboration diagrams     Collaboration diagrams provide a view of the interactions or structural relationships between objects in the current model. This type of diagram emphasizes the relationship between objects whereas sequence diagrams emphasize the sequence of events. Collaboration diagrams contain objects, links, and messages. Use collaboration diagrams as the primary vehicle to describe interactions that express decisions about system behavior. Introduction to Rational Rose 33
  • 35. Activity diagrams     Activity diagrams model the workflow of a business process and the sequence of activities in a process. These diagrams are very similar to a flowchart because you can model a workflow from activity to activity or from activity to state. It is often beneficial to create an activity diagram early in the modeling of a process to help you understand the overall process. Activity diagrams are also useful when you want to describe parallel behavior or illustrate how behaviors in several use cases interact. Introduction to Rational Rose 35
  • 37. Component diagrams    Component diagrams provide a physical view of the current model. They show the organization and dependencies among software components, including source code, binary code, and executable components. You can create one or more component diagrams to depict components and packages or to represent the contents of each component package. Introduction to Rational Rose 37
  • 39. Deployment diagrams  Each model contains a single deployment diagram that shows the mapping of processes to hardware. Introduction to Rational Rose 39
  • 41. Statechart diagrams    You can use statechart diagrams to model the dynamic behavior of individual classes or objects. Statechart diagrams show the sequences of states that an object goes through, the events that cause a transition from one state or activity to another, and the actions that result from a state or activity change. A statechart diagram is typically used to model the discrete stages of an object's lifetime, whereas an activity diagram is better suited to model the sequence of activities in a process. Introduction to Rational Rose 41
  • 43. Specifications  Specifications are dialog boxes that allow you to set or change model element properties.  Changes made to a model element either through the specification or directly on the icon are automatically updated throughout the model. Introduction to Rational Rose 43
  • 44. Start Rational Rose  Start Rose • Start → Programs → Rational Rose Introduction to Rational Rose 44
  • 45. Create a New Model     When Rose is started When Rose has been started: File → New From Scratch: New From File System: Existing OR Recent Introduction to Rational Rose 45
  • 46. To Save a Model  File → Save o Save As Introduction to Rational Rose 46
  • 47. Delete an Element  Shallow Delete • • Edit Delete Select element in diagram → key DEL It is not deleted from the MODEL!! (only from the diagram, not from Browser)  Deep Delete • • Select element in Browser → click right button → Delete Select element in diagram → Click CTRL+D It is deleted from the MODEL!! (It will disapear from the diagram and from the Browser) Introduction to Rational Rose 47
  • 48. Move Elements across Packages  Drag&Drop in each Package Browser from one to another • One to One • Pay attention: by moving the classes it does not mean that associations will move as well!! (Rational Rose 2000>) • They are elements with Identity Introduction to Rational Rose 48
  • 49. More Information   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/ind ex.jtmpl  Rose Architect E-Magazine http://www.rosearchitect.com/mag/index.shtml  Visual Modeling with Rational Rose and UML, by Terry Quatrani Introduction to Rational Rose 49