RSM Tutorial - Software Engineering I

University of Southern California
Center for Systems and Software Engineering
Rational Software Modeler
Tutorial
Pongtip Aroonvatanaporn
University of Southern California
Center for Systems and Software Engineering
Outline
•
•
•
•
•
•
Setting up RSM environment
Activity Diagram
Use-case Diagram
Class Diagram
Sequence Diagram
Archiving
University of Southern California
Center for Systems and Software Engineering
RSM Environment
• Built on Eclipse environment
– Workspace
– Modeling perspective
• Comes with Eclipse 3.2
• Or installed as Eclipse plug-in
– Note: on Windows 7, use your own version of
Eclipse and JDK/JRE
– Download Eclipse 3.2.2 and latest JDK/JRE
– Choose “Extend Eclipse”
University of Southern California
Center for Systems and Software Engineering
Activity Diagram
• Captures a sequence of activities and
actions
• In CSCI577, used to model business
workflow or business process
University of Southern California
Center for Systems and Software Engineering
Components
•
•
•
•
Partitions
Actions
Control node (i.e. decision node)
Control flow
– Transfer of action
• Object node (i.e. data)
• Object flow
– Transfer of object
University of Southern California
Center for Systems and Software Engineering
Steps
• Create a new model called “Activity Model”
• Right click on the model
– Add Diagram  Activity Diagram
• On the right panel, select the following
–
–
–
–
Partition
Actions
Control node (decision node)
Control flow
University of Southern California
Center for Systems and Software Engineering
Use-Case Diagram
• Captures the interaction between actors
and system
• Shows the possible
capabilities/functionalities the system can
perform
• Association
– Roles and multiplicities do not apply
University of Southern California
Center for Systems and Software Engineering
Components
• Actor
– Show the hierarchy of users
• Use-case
– The actions that user can perform
• Relationships
– Association
– Dependencies
• “Includes”
– invocation of a use case by another one
• “Extends”
– Ultimately an alternate course of action
– Should avoid as it complicates the model
University of Southern California
Center for Systems and Software Engineering
Steps
• Create “System Analysis” model
• Right click on the model
– Add Diagram  Use-case Diagram
• Add an actor
• Add a few use-cases
– Association from actor to use-case
– “Include” relationship from 1 use-case to
another
– Right vs. wrong
– User inheritance (super user)
University of Southern California
Center for Systems and Software Engineering
Class Diagram
• Detailed designs of the classes
• Contains
– Attributes
– Operations
– Relations between classes
University of Southern California
Center for Systems and Software Engineering
Components
• Classes
– Boundary: pages, view
– Controller: logic
– Entity: model, data
• Relationships
– Association: “Has-a”
– Aggregation: “Part-of”
– Composition
• Stronger aggregation
• Lives and dies with parent
University of Southern California
Center for Systems and Software Engineering
Steps
• Create a new model called “Design Model”
• Create a package called “Design Classes”
• Add new classes:
–
–
–
–
–
<<boundary>> VolunteerPage
<<controller>> TimeController
<<entity>> Time
<<entity>> TimeSheet
<<entity>> VolunteerProfile
• Create relationships
– Composition
– Specialization
– Association
University of Southern California
Center for Systems and Software Engineering
Sequence Diagram
• Captures the detailed sequence of
operations when a use-case takes place
• Includes:
–
–
–
–
–
Actors
Components
Classes
Hardware
Software
University of Southern California
Center for Systems and Software Engineering
Steps
• Create a package called “Sequence”
• Right click on the model
– Add diagram  Sequence diagram
• Sequence diagrams are part of
“collaboration”. Each collaboration should
be named according to the use-case
• Different ways of creating “life-line” entity
– Select from existing
– Create new object
– Unspecified (defined later by drag and drop)
University of Southern California
Center for Systems and Software Engineering
Archiving
• Archiving the model to be transferred to
different computers
– Share among team members
– Submission
• Export as a RAS Asset
University of Southern California
Center for Systems and Software Engineering
Steps
1.
2.
3.
4.
Go to File -> Export
Choose RAS -> RAS Asset
Choose the location to save the file
Choose the project to export
–
Make sure that the option “Export as complete
Eclipse project” is checked
University of Southern California
Center for Systems and Software Engineering
Questions?