Define Actors

advertisement
What are Requirements?
• Functional requirements describe a list of
functions that the system must accomplish.
• Nonfunctional requirements describe other
constraints such as performance expectations or
standards to be used.
• This discussion centers around functional
requirements. Knowing what is to be built is one
of the most important aspects of a software
development process.
• Getting the requirements in line with what the
actual users need is also a very important
aspect.
Use Cases
• Requirements are often based on use cases.
• A use case can be used to describe a systems functional
requirements.
• A use case treats the system which is to be built as a
black box. A user (Actor) does something and the system
responds.
• The use case is not described in terms of GUI
components or specific systems. Instead it is described
in more generic terms as simple user actions.
• For example, entering data, viewing the results of a
query to the database, etc..
How can Requirements be
Described?
• SRS
– The IEEE and many government agencies
describe requirements through the use of
Software Requirements Specifications (SRS).
Each has a definition for the required
contents.
• Use Cases
– Requirements can be described as use
cases.
• The two traditionally haven’t been related.
Use Cases and Requirements
Example
• Actor:Auctioneer
• UseCase:EnterBidInformation
– Requirement:InputPerson
The system shall allow the Auctioneer to enter the
contents of the city, name, useCreditCard associated
with the Person
– Requirement:ProcessCreditCard
The system shall allow the Auctioneer to run the
VerifyWithBank algorithm described as: Go out to the
Bank server, process the credit card transaction
How can Requirements be
Described? Cont’d
• Simulation
– A mechanism which can be used to communicate the
requirements as use cases.
– The simulation shows how the user interacts with the
system and how the system responds.
• Modeling
– UML tools such as Together™ enable you to create
requirements by creating use cases. They provide
diagrams to chose from which you can drag and drop.
RequireMentor™ Tool
• Guides you to describe use cases for a system
which you are specifying
– you pick and choose forms and fill in blanks
•
•
•
•
Creates simulations of use cases
Relates requirements and use cases
Creates SRS
Creates a model
class diagrams sequence, activity, use cases
1. Define Actors
• Start by creating Actors and Job Titles
• Create separate types of Actors.
• They are distinguished by the Jobs that
they do using the computer.
• Each Actor belongs to an organization
• Create all your known Actors and assign
only the ‘Jobs’ for now. Job’s are optional.
Actors and Job Titles
• Attempting to answer the question:
• Who will be using the system and what
types of activites do their jobs include?
2. Create Roles
• For each Actor, define one or more Roles.
• Roles are distinct interactions that an Actor
has with the computer to accomplish a
meaningful unit of work
• Later, you will define a Use Case for each
role.
3.Create Use Cases
• Create Use Cases for each Actor, one for
each of its Roles.
• For now, just fill out the Use Case name,
select an Actor, and select one of its
Roles.
4. Define a Story for each use case
• A Story is a sequence of screens which
simulate how the Actor will interact with
the system.
• A Story has an initial Screen.
• Each Screen is associated with a
Requirement in the form:
– The system shall …
• Choose from a fixed collection of Screen
types
Five Screen Types
•
•
•
•
•
Input Data
View Data
View and Select from Data
Input from a Device
Run Processing
5. Enter Info for the Screen Type
• Enter the Screen name
• Select a previously defined Data Entity (or
define one on the fly
• Do not link Screen into a sequence by
filling out Select Next screen at this time.
6. Define a Data Entity
• A Data Entity is named and has a
collection of fields
• Each field has a type
• The type may be another Data Entity
Add Additional Screens
• Create another Screen for each of the
Requirements within the Story
• The initial screen must be so designated
4. Link Screens Together
• Link a screen to another Screen defined
for the story or to another story
• If you like to another Story, you can reuse
it.
• For example, may want to always verify
the user’s name and password from
several different places.
• Link the Password Story as a next screen
6. View the Documentation
• As an Software Requirements Spec
• As a running simulation in html
• As an XMI(eye) file which can be imported
into a UML tool
• Can also export the project as XML(el) or
just save it
Together™ Import XMI
• Open Together 6.0
• Create a new Project using the Project
Wizard
• Select File->Import->Model from XMI
• Class, Use Case, Sequence, and Activity
Diagrams will be created
Guided Generation of Software
Requirements
• RequireMentor™ was used to discover
classes and methods
• Together™ was used to create the UML
models
• RequireMentor™ provided guidance for
– defining the contents of a use case
– defining the format of requirements
– generating many descriptions of the
requirements
Download