SlideShare a Scribd company logo
1 of 41
Rational Rose
Getting Started with Use Cases
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 2
Introduction to Rational Rose
 Rational Rose is a Computer Aided
Software Engineering (CASE) tool.
 It is a graphical component modeling and
development tool.
 CASE modeling tools shift the emphasis
from coding to requirements and conceptual
design.
 It provides limited code generation from the
models created in Rational Rose.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 3
Example: Course Registration System
 Registrar maintains in the system the list of valid
courses, students, and professors, and the course
schedule.
 Professors indicate the courses they will teach.
 Students register for the open registration period.
 When a student registers,
the billing system is updated.
 Professors can request a course roster.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 4
Open Rational Rose
 Open Rational Rose from your start menu.
 Click Close on the Create New Model dialog.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 5
Process of Requirements Use-Case Modeling
From Whitten Textbook Chapter 7.
 Objective is to elicit and analyze enough requirements
information to prepare a model that:
• Communicates what is required from a user perspective.
• Is free of specific details about how the system will be built or
implemented.
 To effectively estimate and schedule project, may need to
include preliminary “system implementation assumptions.”
 Steps
1. Identify business actors.
2. Identify business use cases.
3. Construct use-case model diagram.
4. Documents business requirements use-case narratives.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 6
Select Use Case View
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 7
Create an Actor – e.g., Student Actor
 Right-click on Use Case View icon to open the
context sensitive menu and select NewActor
 Change Actor name to Student
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 8
4 Types of Actors
 Primary business actor
• The stakeholder that primarily benefits from the execution of the use case.
• e.g. the employee receiving the paycheck
 Primary system actor
• The stakeholder that directly interfaces with the system to initiate or
trigger the business or system event.
• e.g. the bank teller entering deposit information
 External server actor
• The stakeholder that responds to a request from the use case.
• e.g. the credit bureau authorizing a credit card charge
 External receiver actor
• The stakeholder that is not the primary actor but receives something of
value from the use case.
• e.g. the warehouse receiving a packing slip
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 9
Add Actor Specifications
 Right-click on Actor and select Open Specification.
 Enter Documentation for the Actor.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 10
Add Other Actors (see below)
Actor Actor Description Documentation
Student
A person who is registered to take
classes at the University.
Professor
a person who is certified to teach
classes at the University
Registrar
the person who is responsible for the
maintenance of the Registration system
Billing System
the external system responsible for the
student billing system.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 11
Identify Business Requirements
Use Cases
 During requirements analysis, document only the
most important use cases, often called essential
use cases.
 When looking for use cases, ask the following
questions:
• What are the main tasks of the actor?
• What information does the actor need form the system?
• What information does the actor provide to the system?
• Does the system need to inform the actor of any
changes or events that have occurred?
• Does the actor need to inform the system of any
changes or events that have occurred?
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 12
Create a Use Case –
 Right-click on Use Case View icon to open the context sensitive menu
and select NewUse Case
 Change use case name to Register for Courses
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 13
Add Use Case Documentation
 Right-click the use case; open it's specification; Add Documentation.
 E.g.: This use case is initiated by the Student. It provides the capability to create,
modify, and/or review a student schedule for a specified semester.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 14
What makes a good Use Case?
 What level of detail should be included?
How big or little should they be?
 For example: Registration includes:
• Student selects courses
• Student selections update the course-offering
• Student's fee charges are assessed
 Is that 1 use case, or 3 use cases ? ? ?
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 15
What makes a good Use Case?
 Terry Quatrani's Guideline:
A use case typically represents a major piece of
functionality that is complete from beginning to end.
A use case must deliver something of value to an actor.
 In the registration example, all three
functions belong in one use case.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 16
Add Use Case Glossary to Model
Use-Case Glossary
Use-Case Name Use-Case Description
Participating
Actors and Roles
Register for courses Allows student to create, update, review,
delete schedule entries.
Student,
Registrar
Maintain Course
Information
Allows Registrar to create, update, review,
delete course information in the catalog and
schedule of classes.
Registrar
Maintain Professor
Information
Allows Registrar to create, update, review,
delete professor information.
Registrar
Maintain Student
Information
Allows Registrar to create, update, review,
delete student information.
Registrar,
Student
Create Course Catalog Allows Registrar to create a course
schedule from the catalog for a semester,
with input from professors.
Registrar,
Professor
Select courses to teach Allows Professors to indicate which
courses they will teach in a semester.
Professor,
Registrar
Request course roster Professors can request and get a roster for
the courses they teach.
Professor
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 17
Create a Use Case Narrative
 Use the Use Case Templates in MS Word (from Templates)
 Copy to model use case sub-directory and rename.
 Link it to the Use Case.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 18
Link Model Use Case to Narrative
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 19
Use Case Relationships
Association – a relationship between an actor and a use
case in which an interaction occurs between them.
• Association modeled as a solid line connecting the actor and the
use case.
• Association with an arrowhead touching the use case indicates
that the use case was initiated by the actor.
• Association lacking arrowhead indicates a receiver actor.
• Associations may be bidirectional or unidirectional.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 20
Extension Use Case
Extension use case – a use case consisting of steps extracted
from a more complex use case in order to simplify the original
case and thus extend its functionality.
• Relationship between the extension use case and the use case it is
extending is called an extends relationship.
• Represented as an arrowheaded line beginning at the extension use
case and point to the use case it is extending.
• Each extends relationship line is labeled “<<extends>>.”
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 21
Use Case Includes a use case
Abstract use case – a use case that reduces
redundancy among two or more other use cases by
combining the common steps found in those cases.
• An abstract case is available for use by any other use case
that requires its functionality.
• Relationship between the abstract use case and the use case
that uses it is called a
uses (or includes)
relationship.
• Depicted as an
arrowheaded line
beginning at the
original use case
and pointing to the
use case it is using.
• Each uses
relationship line is
labeled “<<uses>>.”
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 22
Creating the Main Use Case Diagram
in Rational Rose
1. Double-click on the Main diagram in the Use
Case view to open the diagram [blank].
2. Click to select an actor in the browser and drag
the actor onto the diagram.
3. Repeat step 2 for each additional actor.
4. Click to select a use case in the browser and
drag the use case onto the diagram.
5. Repeat step 4 as necessary.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 23
Adding Relationships/Associations
 You may need to customize the Rational Rose tool
bar to see all relationship icons. Right-click on
tool bar to customize it.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 24
Adding Relationships/Associations
1. Click to select the Association icon or the Unidirectional
Association icon on the tool bar
2. Click on an actor initiating a communication and
drag the association line to the desired use case.
(See next slide for example diagram.)
Unidirectional Association
Association
Dependency Association
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 25
Associations / Relationships
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 26
Other Relationship Types
Include Use Case
 Click to select the Dependency Icon from the toolbar.
 Click on the base use case and drag the dependency icon to the
target use case. 
 Double-click on the dependency arrow to open the specification.
 In the Stereotype field, select include, and close the specification.
Extends Use Case
1. Click to select the Dependency Icon from the toolbar.
2. Click on the extending use case and drag the dependency icon to
the base use case. 
3. Double-click on the dependency arrow to open the specification.
4. In the Stereotype field, select extend, and close the specification.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 27
Activity Diagrams
 Represent the Dynamics or Flow a the
system.
 They are like Flow Charts.
 Represents flow across Use Cases, or
 Represents flow within a Use Case
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 28
UML Notation for an Activity Diagram
 Activity
 Transition
 Decision
 Synchronization bars
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 29
Creating Activity Diagrams in Rational Rose
 Right-Click on the Use Case View in the Model Browser to open the
context menu.
 Select NewActivity Diagram. Give the diagram a name.
 Double click it to open it up.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 30
Place Activities on the Diagram
 Select the Activity Icon from the toolbar, and place it on the diagram
 Name the the activity.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 31
Add Flows and Decision Points
1. Draw Flow lines between activities.
2. Add a decision point (diamond).;
and name it.
3. Create a "guarded transition" by right
clicking the transition, opening the
specification; selecting the Detail
tab; and fill in the Guard Condition.
4. You can straighten the lines out by
selecting the line and clicking:
FormatLine StypeRectilinear
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 32
Add Syncronization
Bars,
And Activities
Note: Swim-lanes can be
added to show
responsibilities, but I have
not had good luck with
them in Rose.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 33
Use Case Modeling Tips
 Association between actors and use cases
indicate the need for interfaces.
• Actor – User : Screens/Forms or Reports
• Actor – System: data file transfer or a real-time
data update.
 Write use cases under the assumption that you
can exit at any time without worry.
• Assume that some how the system will handle it.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 34
Use Case Modeling Tips
 Do not over use re-use or get hung-up on
<<include>> and <<extend>
Guidelines:
• Do not try to do functional decomposition in a
use case. Purpose is to describe a series of
actions that offer value to the actors.
• If a use case is 1 sentence,
level of detail too low.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 35
Use Case Modeling Tips
 Write use cases from the point of view of
the actor in the active voice.
• Point is to understand how the users will use
your system.
 Write scenario text, not functional
requirements. There are other models for
defining functional requirements.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 36
Use Case Modeling Tips
 A Use Case is neither a Class specification
nor a Data specification.
• Use a Class Model or a Data Model for that
 Create a Use Case Template
• Customized for your company and your
development process.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 37
Use Case Modeling Tips
 Organize Use Case Diagrams Consistently
• Common practice to draw inheritance and
extend relationships vertically.
• Include relationships are typically drawn
horizontally.
 System should respond to actions of actors.
• Receiver actors? (the exception)
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 38
Use Case Modeling Tips
 Alternative courses of action are important.
• Start with the “happy path” – the basic course
of action.
• Alternate courses are introduced to describe
potential usage errors, as well as business logic
errors and/or exceptions.
 Use Cases drive User Documentation –
which describes how to work with the
system. Use cases are a great starting point.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 39
Use Case Modeling Tips
 Use Cases drive Presentations
Part of software development is communicating
your work efforts with project stakeholders.
Because use cases are written from the point of
view of your users, they contain valuable insight
to how they interact with the system.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 40
Summary
 Use Cases are a great tool for recording the
requirements of a system
 Clients / End-users find them easy to
understand.
 Use case pictures give a good overview of
the system and use case narratives provide
more details about a specific use case.
 Activity Diagrams are useful for noting the
flow between and within use cases.
11/2/2003
Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by
Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips
from The Object Primer 3rd Ed. by Scott Ambler
Page 41
MS Visio Also Supports UML
 Explore Visio's UML Capabilities
 Open Visio and select UML
 Select the Use Case tab on the left side.
 Build a Use Case diagram.
 Can you link a Use Case Narrative?

More Related Content

Similar to Rational Rose is a Computer Aided Software Engineering (CASE) tool. It is a graphical component modeling and development tool. CASE modeling tools shift the emphasis from coding to requirements and conceptual design.

Quality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White BoxQuality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White BoxKimberly Jones
 
Software Project Management: Software Requirement Specification
Software Project Management: Software Requirement SpecificationSoftware Project Management: Software Requirement Specification
Software Project Management: Software Requirement SpecificationMinhas Kamal
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case DiagramAshesh R
 
CIS 348 Effective Communication - tutorialrank.com
CIS 348 Effective Communication - tutorialrank.comCIS 348 Effective Communication - tutorialrank.com
CIS 348 Effective Communication - tutorialrank.comBartholomew20
 
Cis 348 Education Organization / snaptutorial.com
Cis 348  Education Organization / snaptutorial.comCis 348  Education Organization / snaptutorial.com
Cis 348 Education Organization / snaptutorial.comBaileya82
 
Use case modelling for beginner in Higher education
Use case modelling for beginner in Higher educationUse case modelling for beginner in Higher education
Use case modelling for beginner in Higher educationBANNISATRIAANDOKO
 
Estimation and planning with smart use cases
Estimation and planning with smart use casesEstimation and planning with smart use cases
Estimation and planning with smart use casesRobert de Wolff
 
Cis 348 Enhance teaching / snaptutorial.com
Cis 348    Enhance teaching / snaptutorial.comCis 348    Enhance teaching / snaptutorial.com
Cis 348 Enhance teaching / snaptutorial.comDavis104
 
Placement management system
Placement management systemPlacement management system
Placement management systemSurya Teja
 
Use Case Workshop
Use Case WorkshopUse Case Workshop
Use Case Workshopelkensteyin
 
Cis 348 Education Redefined - snaptutorial.com
Cis 348    Education Redefined - snaptutorial.comCis 348    Education Redefined - snaptutorial.com
Cis 348 Education Redefined - snaptutorial.comDavisMurphyC76
 
Evolutionary Architecture And Design
Evolutionary Architecture And DesignEvolutionary Architecture And Design
Evolutionary Architecture And DesignNaresh Jain
 
OOSE Unit 3 PPT.ppt
OOSE Unit 3 PPT.pptOOSE Unit 3 PPT.ppt
OOSE Unit 3 PPT.pptitadmin33
 
Analysis random org nist2005
Analysis random org nist2005Analysis random org nist2005
Analysis random org nist2005eliecerherrera
 
Cis 505 Education Specialist / snaptutorial.com
Cis 505 Education Specialist / snaptutorial.comCis 505 Education Specialist / snaptutorial.com
Cis 505 Education Specialist / snaptutorial.comMcdonaldRyan74
 
As Applied ICT term 3 Ex 10
As Applied ICT term 3 Ex 10As Applied ICT term 3 Ex 10
As Applied ICT term 3 Ex 10Jordan_0009
 
Unit2 Software engineering UPTU
Unit2 Software engineering UPTUUnit2 Software engineering UPTU
Unit2 Software engineering UPTUMohammad Faizan
 

Similar to Rational Rose is a Computer Aided Software Engineering (CASE) tool. It is a graphical component modeling and development tool. CASE modeling tools shift the emphasis from coding to requirements and conceptual design. (20)

Quality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White BoxQuality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White Box
 
Lec-9.ppt
Lec-9.pptLec-9.ppt
Lec-9.ppt
 
Software Project Management: Software Requirement Specification
Software Project Management: Software Requirement SpecificationSoftware Project Management: Software Requirement Specification
Software Project Management: Software Requirement Specification
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
 
CIS 348 Effective Communication - tutorialrank.com
CIS 348 Effective Communication - tutorialrank.comCIS 348 Effective Communication - tutorialrank.com
CIS 348 Effective Communication - tutorialrank.com
 
Cis 348 Education Organization / snaptutorial.com
Cis 348  Education Organization / snaptutorial.comCis 348  Education Organization / snaptutorial.com
Cis 348 Education Organization / snaptutorial.com
 
Use case modelling for beginner in Higher education
Use case modelling for beginner in Higher educationUse case modelling for beginner in Higher education
Use case modelling for beginner in Higher education
 
Estimation and planning with smart use cases
Estimation and planning with smart use casesEstimation and planning with smart use cases
Estimation and planning with smart use cases
 
Cis 348 Enhance teaching / snaptutorial.com
Cis 348    Enhance teaching / snaptutorial.comCis 348    Enhance teaching / snaptutorial.com
Cis 348 Enhance teaching / snaptutorial.com
 
Placement management system
Placement management systemPlacement management system
Placement management system
 
Use Case Workshop
Use Case WorkshopUse Case Workshop
Use Case Workshop
 
Cis 348 Education Redefined - snaptutorial.com
Cis 348    Education Redefined - snaptutorial.comCis 348    Education Redefined - snaptutorial.com
Cis 348 Education Redefined - snaptutorial.com
 
Evolutionary Architecture And Design
Evolutionary Architecture And DesignEvolutionary Architecture And Design
Evolutionary Architecture And Design
 
OOSE Unit 3 PPT.ppt
OOSE Unit 3 PPT.pptOOSE Unit 3 PPT.ppt
OOSE Unit 3 PPT.ppt
 
Analysis random org nist2005
Analysis random org nist2005Analysis random org nist2005
Analysis random org nist2005
 
Cis 505 Education Specialist / snaptutorial.com
Cis 505 Education Specialist / snaptutorial.comCis 505 Education Specialist / snaptutorial.com
Cis 505 Education Specialist / snaptutorial.com
 
As Applied ICT term 3 Ex 10
As Applied ICT term 3 Ex 10As Applied ICT term 3 Ex 10
As Applied ICT term 3 Ex 10
 
xCP Pattern Library 3.3
xCP Pattern Library 3.3xCP Pattern Library 3.3
xCP Pattern Library 3.3
 
Unit2 Software engineering UPTU
Unit2 Software engineering UPTUUnit2 Software engineering UPTU
Unit2 Software engineering UPTU
 
3Requirements.ppt
3Requirements.ppt3Requirements.ppt
3Requirements.ppt
 

More from saman zaker

Enterprise Unified Process and rup methodology
Enterprise Unified Process and rup methodologyEnterprise Unified Process and rup methodology
Enterprise Unified Process and rup methodologysaman zaker
 
Rational: The Platform for Software Development
Rational: The Platform for Software DevelopmentRational: The Platform for Software Development
Rational: The Platform for Software Developmentsaman zaker
 
Steps for System Design Realize all Use Cases Use Sequence Diagram
Steps for System Design Realize all Use Cases Use Sequence DiagramSteps for System Design Realize all Use Cases Use Sequence Diagram
Steps for System Design Realize all Use Cases Use Sequence Diagramsaman zaker
 
Business Use Case Diagrams The diagrams to divide the workflow as smaller uni...
Business Use Case Diagrams The diagrams to divide the workflow as smaller uni...Business Use Case Diagrams The diagrams to divide the workflow as smaller uni...
Business Use Case Diagrams The diagrams to divide the workflow as smaller uni...saman zaker
 
Dr Deepak B Phatak Subrao Nilekani Chair Professor
Dr Deepak B Phatak Subrao Nilekani Chair ProfessorDr Deepak B Phatak Subrao Nilekani Chair Professor
Dr Deepak B Phatak Subrao Nilekani Chair Professorsaman zaker
 
Florida International University School of Computing and Information Sciences...
Florida International UniversitySchool of Computing and Information Sciences...Florida International UniversitySchool of Computing and Information Sciences...
Florida International University School of Computing and Information Sciences...saman zaker
 
Automated generation of DRM instances from models
Automated generation of DRM instances from modelsAutomated generation of DRM instances from models
Automated generation of DRM instances from modelssaman zaker
 
Outsourcing is the movement of computer-based functions
Outsourcing is the movement of computer-based functionsOutsourcing is the movement of computer-based functions
Outsourcing is the movement of computer-based functionssaman zaker
 
SA Definition: An abstract view of a system
SA Definition: An abstract view of a systemSA Definition: An abstract view of a system
SA Definition: An abstract view of a systemsaman zaker
 
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
 
Visual Modeling for Java Developers 方俊賢 Ken Fang Software Engineering Sp...
Visual Modeling for Java Developers方俊賢    Ken Fang Software Engineering Sp...Visual Modeling for Java Developers方俊賢    Ken Fang Software Engineering Sp...
Visual Modeling for Java Developers 方俊賢 Ken Fang Software Engineering Sp...saman zaker
 
Acquaint you with WIM Why produce WIM in the military Describe Rational Ro...
Acquaint you with WIM  Why produce WIM in the military   Describe Rational Ro...Acquaint you with WIM  Why produce WIM in the military   Describe Rational Ro...
Acquaint you with WIM Why produce WIM in the military Describe Rational Ro...saman zaker
 
Unified Modeling Language Object Oriented Analysis and Design
Unified Modeling Language Object Oriented Analysis and DesignUnified Modeling Language Object Oriented Analysis and Design
Unified Modeling Language Object Oriented Analysis and Designsaman zaker
 
A Live Virtual Simulator for Teaching Cybersecurity
A Live Virtual Simulator for Teaching CybersecurityA Live Virtual Simulator for Teaching Cybersecurity
A Live Virtual Simulator for Teaching Cybersecuritysaman zaker
 

More from saman zaker (14)

Enterprise Unified Process and rup methodology
Enterprise Unified Process and rup methodologyEnterprise Unified Process and rup methodology
Enterprise Unified Process and rup methodology
 
Rational: The Platform for Software Development
Rational: The Platform for Software DevelopmentRational: The Platform for Software Development
Rational: The Platform for Software Development
 
Steps for System Design Realize all Use Cases Use Sequence Diagram
Steps for System Design Realize all Use Cases Use Sequence DiagramSteps for System Design Realize all Use Cases Use Sequence Diagram
Steps for System Design Realize all Use Cases Use Sequence Diagram
 
Business Use Case Diagrams The diagrams to divide the workflow as smaller uni...
Business Use Case Diagrams The diagrams to divide the workflow as smaller uni...Business Use Case Diagrams The diagrams to divide the workflow as smaller uni...
Business Use Case Diagrams The diagrams to divide the workflow as smaller uni...
 
Dr Deepak B Phatak Subrao Nilekani Chair Professor
Dr Deepak B Phatak Subrao Nilekani Chair ProfessorDr Deepak B Phatak Subrao Nilekani Chair Professor
Dr Deepak B Phatak Subrao Nilekani Chair Professor
 
Florida International University School of Computing and Information Sciences...
Florida International UniversitySchool of Computing and Information Sciences...Florida International UniversitySchool of Computing and Information Sciences...
Florida International University School of Computing and Information Sciences...
 
Automated generation of DRM instances from models
Automated generation of DRM instances from modelsAutomated generation of DRM instances from models
Automated generation of DRM instances from models
 
Outsourcing is the movement of computer-based functions
Outsourcing is the movement of computer-based functionsOutsourcing is the movement of computer-based functions
Outsourcing is the movement of computer-based functions
 
SA Definition: An abstract view of a system
SA Definition: An abstract view of a systemSA Definition: An abstract view of a system
SA Definition: An abstract view of a system
 
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
 
Visual Modeling for Java Developers 方俊賢 Ken Fang Software Engineering Sp...
Visual Modeling for Java Developers方俊賢    Ken Fang Software Engineering Sp...Visual Modeling for Java Developers方俊賢    Ken Fang Software Engineering Sp...
Visual Modeling for Java Developers 方俊賢 Ken Fang Software Engineering Sp...
 
Acquaint you with WIM Why produce WIM in the military Describe Rational Ro...
Acquaint you with WIM  Why produce WIM in the military   Describe Rational Ro...Acquaint you with WIM  Why produce WIM in the military   Describe Rational Ro...
Acquaint you with WIM Why produce WIM in the military Describe Rational Ro...
 
Unified Modeling Language Object Oriented Analysis and Design
Unified Modeling Language Object Oriented Analysis and DesignUnified Modeling Language Object Oriented Analysis and Design
Unified Modeling Language Object Oriented Analysis and Design
 
A Live Virtual Simulator for Teaching Cybersecurity
A Live Virtual Simulator for Teaching CybersecurityA Live Virtual Simulator for Teaching Cybersecurity
A Live Virtual Simulator for Teaching Cybersecurity
 

Recently uploaded

%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024Mind IT Systems
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...Nitya salvi
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfayushiqss
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfkalichargn70th171
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 

Recently uploaded (20)

%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 

Rational Rose is a Computer Aided Software Engineering (CASE) tool. It is a graphical component modeling and development tool. CASE modeling tools shift the emphasis from coding to requirements and conceptual design.

  • 2. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 2 Introduction to Rational Rose  Rational Rose is a Computer Aided Software Engineering (CASE) tool.  It is a graphical component modeling and development tool.  CASE modeling tools shift the emphasis from coding to requirements and conceptual design.  It provides limited code generation from the models created in Rational Rose.
  • 3. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 3 Example: Course Registration System  Registrar maintains in the system the list of valid courses, students, and professors, and the course schedule.  Professors indicate the courses they will teach.  Students register for the open registration period.  When a student registers, the billing system is updated.  Professors can request a course roster.
  • 4. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 4 Open Rational Rose  Open Rational Rose from your start menu.  Click Close on the Create New Model dialog.
  • 5. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 5 Process of Requirements Use-Case Modeling From Whitten Textbook Chapter 7.  Objective is to elicit and analyze enough requirements information to prepare a model that: • Communicates what is required from a user perspective. • Is free of specific details about how the system will be built or implemented.  To effectively estimate and schedule project, may need to include preliminary “system implementation assumptions.”  Steps 1. Identify business actors. 2. Identify business use cases. 3. Construct use-case model diagram. 4. Documents business requirements use-case narratives.
  • 6. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 6 Select Use Case View
  • 7. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 7 Create an Actor – e.g., Student Actor  Right-click on Use Case View icon to open the context sensitive menu and select NewActor  Change Actor name to Student
  • 8. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 8 4 Types of Actors  Primary business actor • The stakeholder that primarily benefits from the execution of the use case. • e.g. the employee receiving the paycheck  Primary system actor • The stakeholder that directly interfaces with the system to initiate or trigger the business or system event. • e.g. the bank teller entering deposit information  External server actor • The stakeholder that responds to a request from the use case. • e.g. the credit bureau authorizing a credit card charge  External receiver actor • The stakeholder that is not the primary actor but receives something of value from the use case. • e.g. the warehouse receiving a packing slip
  • 9. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 9 Add Actor Specifications  Right-click on Actor and select Open Specification.  Enter Documentation for the Actor.
  • 10. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 10 Add Other Actors (see below) Actor Actor Description Documentation Student A person who is registered to take classes at the University. Professor a person who is certified to teach classes at the University Registrar the person who is responsible for the maintenance of the Registration system Billing System the external system responsible for the student billing system.
  • 11. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 11 Identify Business Requirements Use Cases  During requirements analysis, document only the most important use cases, often called essential use cases.  When looking for use cases, ask the following questions: • What are the main tasks of the actor? • What information does the actor need form the system? • What information does the actor provide to the system? • Does the system need to inform the actor of any changes or events that have occurred? • Does the actor need to inform the system of any changes or events that have occurred?
  • 12. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 12 Create a Use Case –  Right-click on Use Case View icon to open the context sensitive menu and select NewUse Case  Change use case name to Register for Courses
  • 13. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 13 Add Use Case Documentation  Right-click the use case; open it's specification; Add Documentation.  E.g.: This use case is initiated by the Student. It provides the capability to create, modify, and/or review a student schedule for a specified semester.
  • 14. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 14 What makes a good Use Case?  What level of detail should be included? How big or little should they be?  For example: Registration includes: • Student selects courses • Student selections update the course-offering • Student's fee charges are assessed  Is that 1 use case, or 3 use cases ? ? ?
  • 15. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 15 What makes a good Use Case?  Terry Quatrani's Guideline: A use case typically represents a major piece of functionality that is complete from beginning to end. A use case must deliver something of value to an actor.  In the registration example, all three functions belong in one use case.
  • 16. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 16 Add Use Case Glossary to Model Use-Case Glossary Use-Case Name Use-Case Description Participating Actors and Roles Register for courses Allows student to create, update, review, delete schedule entries. Student, Registrar Maintain Course Information Allows Registrar to create, update, review, delete course information in the catalog and schedule of classes. Registrar Maintain Professor Information Allows Registrar to create, update, review, delete professor information. Registrar Maintain Student Information Allows Registrar to create, update, review, delete student information. Registrar, Student Create Course Catalog Allows Registrar to create a course schedule from the catalog for a semester, with input from professors. Registrar, Professor Select courses to teach Allows Professors to indicate which courses they will teach in a semester. Professor, Registrar Request course roster Professors can request and get a roster for the courses they teach. Professor
  • 17. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 17 Create a Use Case Narrative  Use the Use Case Templates in MS Word (from Templates)  Copy to model use case sub-directory and rename.  Link it to the Use Case.
  • 18. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 18 Link Model Use Case to Narrative
  • 19. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 19 Use Case Relationships Association – a relationship between an actor and a use case in which an interaction occurs between them. • Association modeled as a solid line connecting the actor and the use case. • Association with an arrowhead touching the use case indicates that the use case was initiated by the actor. • Association lacking arrowhead indicates a receiver actor. • Associations may be bidirectional or unidirectional.
  • 20. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 20 Extension Use Case Extension use case – a use case consisting of steps extracted from a more complex use case in order to simplify the original case and thus extend its functionality. • Relationship between the extension use case and the use case it is extending is called an extends relationship. • Represented as an arrowheaded line beginning at the extension use case and point to the use case it is extending. • Each extends relationship line is labeled “<<extends>>.”
  • 21. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 21 Use Case Includes a use case Abstract use case – a use case that reduces redundancy among two or more other use cases by combining the common steps found in those cases. • An abstract case is available for use by any other use case that requires its functionality. • Relationship between the abstract use case and the use case that uses it is called a uses (or includes) relationship. • Depicted as an arrowheaded line beginning at the original use case and pointing to the use case it is using. • Each uses relationship line is labeled “<<uses>>.”
  • 22. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 22 Creating the Main Use Case Diagram in Rational Rose 1. Double-click on the Main diagram in the Use Case view to open the diagram [blank]. 2. Click to select an actor in the browser and drag the actor onto the diagram. 3. Repeat step 2 for each additional actor. 4. Click to select a use case in the browser and drag the use case onto the diagram. 5. Repeat step 4 as necessary.
  • 23. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 23 Adding Relationships/Associations  You may need to customize the Rational Rose tool bar to see all relationship icons. Right-click on tool bar to customize it.
  • 24. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 24 Adding Relationships/Associations 1. Click to select the Association icon or the Unidirectional Association icon on the tool bar 2. Click on an actor initiating a communication and drag the association line to the desired use case. (See next slide for example diagram.) Unidirectional Association Association Dependency Association
  • 25. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 25 Associations / Relationships
  • 26. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 26 Other Relationship Types Include Use Case  Click to select the Dependency Icon from the toolbar.  Click on the base use case and drag the dependency icon to the target use case.   Double-click on the dependency arrow to open the specification.  In the Stereotype field, select include, and close the specification. Extends Use Case 1. Click to select the Dependency Icon from the toolbar. 2. Click on the extending use case and drag the dependency icon to the base use case.  3. Double-click on the dependency arrow to open the specification. 4. In the Stereotype field, select extend, and close the specification.
  • 27. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 27 Activity Diagrams  Represent the Dynamics or Flow a the system.  They are like Flow Charts.  Represents flow across Use Cases, or  Represents flow within a Use Case
  • 28. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 28 UML Notation for an Activity Diagram  Activity  Transition  Decision  Synchronization bars
  • 29. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 29 Creating Activity Diagrams in Rational Rose  Right-Click on the Use Case View in the Model Browser to open the context menu.  Select NewActivity Diagram. Give the diagram a name.  Double click it to open it up.
  • 30. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 30 Place Activities on the Diagram  Select the Activity Icon from the toolbar, and place it on the diagram  Name the the activity.
  • 31. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 31 Add Flows and Decision Points 1. Draw Flow lines between activities. 2. Add a decision point (diamond).; and name it. 3. Create a "guarded transition" by right clicking the transition, opening the specification; selecting the Detail tab; and fill in the Guard Condition. 4. You can straighten the lines out by selecting the line and clicking: FormatLine StypeRectilinear
  • 32. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 32 Add Syncronization Bars, And Activities Note: Swim-lanes can be added to show responsibilities, but I have not had good luck with them in Rose.
  • 33. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 33 Use Case Modeling Tips  Association between actors and use cases indicate the need for interfaces. • Actor – User : Screens/Forms or Reports • Actor – System: data file transfer or a real-time data update.  Write use cases under the assumption that you can exit at any time without worry. • Assume that some how the system will handle it.
  • 34. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 34 Use Case Modeling Tips  Do not over use re-use or get hung-up on <<include>> and <<extend> Guidelines: • Do not try to do functional decomposition in a use case. Purpose is to describe a series of actions that offer value to the actors. • If a use case is 1 sentence, level of detail too low.
  • 35. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 35 Use Case Modeling Tips  Write use cases from the point of view of the actor in the active voice. • Point is to understand how the users will use your system.  Write scenario text, not functional requirements. There are other models for defining functional requirements.
  • 36. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 36 Use Case Modeling Tips  A Use Case is neither a Class specification nor a Data specification. • Use a Class Model or a Data Model for that  Create a Use Case Template • Customized for your company and your development process.
  • 37. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 37 Use Case Modeling Tips  Organize Use Case Diagrams Consistently • Common practice to draw inheritance and extend relationships vertically. • Include relationships are typically drawn horizontally.  System should respond to actions of actors. • Receiver actors? (the exception)
  • 38. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 38 Use Case Modeling Tips  Alternative courses of action are important. • Start with the “happy path” – the basic course of action. • Alternate courses are introduced to describe potential usage errors, as well as business logic errors and/or exceptions.  Use Cases drive User Documentation – which describes how to work with the system. Use cases are a great starting point.
  • 39. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 39 Use Case Modeling Tips  Use Cases drive Presentations Part of software development is communicating your work efforts with project stakeholders. Because use cases are written from the point of view of your users, they contain valuable insight to how they interact with the system.
  • 40. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 40 Summary  Use Cases are a great tool for recording the requirements of a system  Clients / End-users find them easy to understand.  Use case pictures give a good overview of the system and use case narratives provide more details about a specific use case.  Activity Diagrams are useful for noting the flow between and within use cases.
  • 41. 11/2/2003 Developed by Bruce La Plante - Examples from "Visual Modeling w/ Rational Rose 2002 by Terry Quatrani and from "Systems Analysis Design Methods" by Whitten 6th Ed. Use Case Tips from The Object Primer 3rd Ed. by Scott Ambler Page 41 MS Visio Also Supports UML  Explore Visio's UML Capabilities  Open Visio and select UML  Select the Use Case tab on the left side.  Build a Use Case diagram.  Can you link a Use Case Narrative?