USE CASE MODELLING OBJECTIVES • • • • Document user requirements with a model Describe the purpose of an actor and a use case Construct a use.

Download Report

Transcript USE CASE MODELLING OBJECTIVES • • • • Document user requirements with a model Describe the purpose of an actor and a use case Construct a use.

USE CASE MODELLING
1
OBJECTIVES
•
•
•
•
Document user requirements with a model
Describe the purpose of an actor and a use case
Construct a use case model
Define use cases in detail
2
OBJECT-ORIENTATION
– WHY IS IT USED?
•
•
•
Has been in existence since the late nineteen
sixties
Covers all aspects of system development
Throughout development of a system there
is a key concept of an object
3
WHY OBJECT-ORIENTATION ?
•
•
•
•
•
An object is something within the problem domain
such as an Invoice or a Purchase Order
These real world objects become embodied in a
model during analysis and design stages
They eventually end up as part of the final code that
is produced
There is thus a continuity that exists throughout all
stages of development
An approach based on objects rather than functions
is more robust
4
OBJECT-ORIENTATION - SUMMARY
•
•
•
•
Key concept follows through all stages of
development - objects
Object - invoice, purchase order
Real world objects are placed in models at
an early stage and continue throughout
development to implementation
Approach based on objects (rather than
what the system will do) is more stable
5
STARTING A PROJECT
•
•
Imagine being asked to provide a new
system for a company.
What would you do first?
6
USE CASE MODELS
•
•
•
•
Use case models are a way of specifying user
requirements
They specify what the system will do for the
people/systems who will interact with it
They break a project down into the functions
that must be carried out by the system
The models produced will initially act as a
means of communication between developers
and users.
7
ACTORS
Actors are entities that interact with
system
•
the
Actors either provide or receive
information
• Actors are outside the system
• Names of actors are usually
discovered from dialogue with the
users or may be specified in the
problem statement
•
8
ROLES AND ACTORS
•
•
•
•
An actor plays a role
It is the role that interacts with the system
A person may play different roles
An role may have a number of interactions
with the system
9
UML REPRESENTATION OF AN ACTOR
Actor
Role
10
USE CASES
A use case
• describes the interaction between users
and an application system
• describes what a user does with the
system to produce a business event,
which forms part of a business process
• models a dialogue between the actor and
the system
11
USE CASES
A use case
• represents the functions which are made
available by the system to the actors
• is a sequence of transactions performed by a
system that produce a measurable result for
particular actors
12
REPRESENTATION OF A USE CASE IN
UML
13
SFU EXAMPLE
Stafford Free University (SFU) needs a new information
system for registration purposes. There are currently
problems with registering students on modules and
determining which modules their lecturers have elected
to teach.
The registration section of SFU decides the modules to be
offered in each semester of the coming year. This
information is made available to the lecturers on-line.
Each module has a number of credit points associated
with it. It has a code, title, and it may have a module prerequisite as well as a description.
14
SFU EXAMPLE (CONT)
It may be delivered in any of three modes of delivery (parttime, open learning, or full-time) in any semester. Every
time a module is delivered, the start and end date is
recorded and the total hours needed to study it.
The registration service adds, changes and removes the details
held on each lecturer. Details stored on each lecturer include
the highest qualification they have achieved and their
subject specialism. If a lecturer has had a formal teacher
training this is also recorded.
15
SFU EXAMPLE (CONT)
The lecturers may elect to teach any of the modules offered
in a particular semester by accessing the registration
system on-line. They may also change their minds and
decide not to teach a module after they have previously
elected to do so. At any time, they may wish to view the
module offerings they have chosen. The students fill out
a registration form on-line and indicate their choice of
modules.
16
SFU EXAMPLE (CONT)
Both students and lecturers have a name and an id to use
this registration service. The expiry date of their
account is also recorded. Students may register to take
up to any three modules in each semester. This
information is then entered into the information
system.
Students are then assigned to modules which, have a limit
on student numbers. If a student has elected to take a
module that is oversubscribed the Registration Service
contacts the student and another module is usually
substituted.
17
SFU EXAMPLE (CONT)
After the registration period each lecturer receives a module
student list with the student names for that module and
rooms and times for the module delivery they have elected
to teach. A schedule of modules is sent to the student for
confirmation of correct registration. This schedule shows
the modules and the start and end dates that the student has
registered for.
18
SFU EXAMPLE (CONT)
Any module offering with fewer than the minimum student
numbers will be cancelled. The registration service makes
the registration information available to a separate billing
system that will send out invoices to the students. An
invoice contains a date and amount together with a number.
19
USE CASE DIAGRAMS
•
•
A use case diagram is a picture of some or all
of the actors and their interactions with the
system.
Each system will have a main use case
diagram showing
•
•
•
the system boundary
the major functions provided by the system
Large systems may employ more than one
use case diagram
20
WHAT ARE THE USE CASES?
•
•
•
Look for verbs in the problem description
How much detail in a use case ? What about
the Registration Service? It must maintain
the registration by adding deleting and
modifying modules.
How many use cases are there here?
•
This is matter of judgement
21
USE CASES FOR SFU






Register for modules
Select modules to teach
Issue module student list
Maintain module information
Maintain student information
Maintain lecturer information
22
MAIN USE CASE DIAGRAM FOR SFU
23
REFERENCES
•
•
Bennett, S., McRobb, S. and Farmer,R. ObjectOriented Systems Analysis and Design using
UML, London: McGraw-Hill, (3rd Ed.) 2005
Britton, C. and Doake, J. Object-Oriented
Systems Development – a gentle introduction,
London: McGraw-Hill, 2000
24