Use Case Models Roman Kontchakov Birkbeck, University of London - - PowerPoint PPT Presentation

use case models
SMART_READER_LITE
LIVE PREVIEW

Use Case Models Roman Kontchakov Birkbeck, University of London - - PowerPoint PPT Presentation

Information Systems Concepts Use Case Models Roman Kontchakov Birkbeck, University of London Based on Chapters 3 and 6 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design Using UML, (4th Edition), McGraw Hill, 2010 1


slide-1
SLIDE 1

1

Information Systems Concepts Use Case Models Roman Kontchakov

Birkbeck, University of London

Based on Chapters 3 and 6 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design Using UML, (4th Edition), McGraw Hill, 2010

slide-2
SLIDE 2

2  Use Case Modelling

 Section 6.6 – 6.6.2 (pp. 154 – 159)

 Prototyping

 Section 3.3.2 (pp. 73 – 76)  Section 6.6.3 (pp. 159 – 161)

Outline

slide-3
SLIDE 3

3

Use Cases

 Use Cases – descriptions of the functionality of the

system from the users’ perspective.

 Use Case diagrams

 show which users will communicate with the system  define the scope of the system

 Use Case descriptions

 specify the interaction between the users (actors) and the

system for each use case as the users see it

 could be further elaborated by communication/sequence

diagrams.

What are the key activities that make this business work?

slide-4
SLIDE 4

4

Use Case Diagrams

System or subsystem boundary Actor Use case Communication association Staff Contact Change a client contact

slide-5
SLIDE 5

5

Use Case Diagrams: Actor

 describe the role that people, other systems or devices take

when communicating with a particular use case or use cases

 not the same as job title or specific person  one job title may play the roles of several actors  one actor may represent several job titles

 drawn as a stick figure with a name

Role: Admission Tutor Lecturer Dell Zhang Professor Mark Levene Role: Research Tutor Staff Contact

slide-6
SLIDE 6

6

Use Case Diagrams: Use Case

 describe a sequence of actions that the system performs to

achieve an observable result of value to an actor

 drawn as a bubble (ellipse) with a name in or below

 the name is usually an active verb and a noun phrase

Change a client contact

slide-7
SLIDE 7

7

Use Case Diagrams: Communication Association

 describes the communication link between an instance of

the use case and an instance of the actor

 drawn as a line between the actor and the use case

Staff Contact Change a client contact

slide-8
SLIDE 8

8

Use Case Diagrams: Sub-system

 drawn as a rectangle around a group of use cases that

belong to the same sub-system

 When use cases for different sub-system are placed in separate

use case diagrams, such rectangles are redundant

Change a client contact

slide-9
SLIDE 9

9

Use Case Diagrams: Extend and Include relationships

The extend and include relationships between Use Cases are shown as stereotyped dependencies: «extend» and «include» (text strings in guillemets)

slide-10
SLIDE 10

10

Use Case Diagrams: «extend»

 One use case provides additional functionality that

may be required in another use case

 There may be multiple ways of extending a use case,

which represent variations in the way that actors interact with the use case

 The extension points show when the extension

  • ccurs

 A condition can be placed in a note joined to the

dependency arrow (Note that it is not put in square brackets, unlike conditions in other diagrams.)

slide-11
SLIDE 11

11

Use Case Diagrams: «extend»

Campaign Manager Check campaign budget summary

«extend»

Print campaign Summary print extension points Condition {print

  • ption selected}

extension point: Summary print

slide-12
SLIDE 12

12

Use Case Diagrams: «include»

 One use case always includes the functionality of

another use case

 A use case may include more than one other  Can be used to separate out a sequence of behaviour

that is used in many use cases

 Should not be used to create a hierarchical functional

decomposition of the system

slide-13
SLIDE 13

13

Use Case Diagrams: «include»

Campaign Manager «include» Find campaign Assign staff to work on a campaign

slide-14
SLIDE 14

14

Use Case Diagrams: Generalization

 Between use cases: shows that one use case

provides all the functionality of the more specific use case and some additional functionality

 Between actors: shows that one actor can participate

in all the associations with use cases that the more specific actor can plus some additional use cases

slide-15
SLIDE 15

15

Staff Contact Record completion

  • f an advert

Campaign Manager Change a client contact Assign individual staff to work on a campaign Assign team of staff to work on a campaign Assign staff to work

  • n a campaign

Use Case Diagrams: Generalization

slide-16
SLIDE 16

16

Use Case Diagrams: Exercise

 Vending machine

slide-17
SLIDE 17

17

Use Case Descriptions

 Using a simple paragraph

Assign staff to work on a campaign

The campaign manager wishes to record which staff are working on a particular campaign. This information is used to validate timesheets and to calculate staff year-end bonuses.

slide-18
SLIDE 18

18

Use Case Descriptions

 Using a step-by-step breakdown of interaction

between actor and system

Assign staff to work on a campaign

Actor Action System Response

  • 1. The actor enters the client name.
  • 2. Lists all campaigns for that

client.

  • 3. Selects the relevant campaign.
  • 4. Displays a list of all staff

members not already allocated to this campaign.

  • 5. Highlights the staff members

6.Presents a message confirming to be assigned to this campaign. that staff have been allocated. Alternative Courses Steps 1–3. The actor knows the campaign name and enters it directly.

slide-19
SLIDE 19

19

Use Case Descriptions

 Using a template

 name of use case  pre-conditions  post-conditions  purpose  description  alternative courses (routes)  errors

slide-20
SLIDE 20

20

Use Case Descriptions

 Case Study Problem 7.A

 Use Case Description Example

Stop line When the production line stops for a routine reason, e.g., for a break, to restock or to reload equipment, the line supervisor records the time the run stopped and the reason.

slide-21
SLIDE 21

21

Use Case Descriptions

 Case Study Problem 7.A

 Use Case Description Example

Record employee leaving the line Normally employees are recorded as leaving the line when they clock

  • ff at the end of a working shift. Although there are breaks in the
  • peration of the line during a shift (e.g., lunch breaks and downtime

due to faults), when this happens employees are not normally recorded as leaving the line. In all circumstances, date, time and location are recorded.

slide-22
SLIDE 22

22

Prototyping

 A prototype is a system or a partially complete

system that is built quickly to explore some aspects

  • f the system requirements and that is not intended

as the final working system.

 Prototyping can be used to support use case

modelling

 Help elicit functional requirements  Test out system architectures based on the use cases in

  • rder to meet the non-functional requirements
slide-23
SLIDE 23

23

Prototyping

slide-24
SLIDE 24

24

Advantages of prototyping

 Early demonstrations of system functionality help

identify any misunderstandings between developer and client

 Client requirements that have been missed can be

identified

 Difficulties in the interface can be identified  The feasibility and usefulness of the system can be

tested, even though, by its very nature, the prototype is incomplete

slide-25
SLIDE 25

25

Disadvantages of prototyping

 The client may perceive the prototype as part of the

final system

 The prototype may divert attention from functional to

solely interface issues

 Prototyping requires significant user involvement  Managing the prototyping life cycle requires careful

decision making

slide-26
SLIDE 26

26

User Interface prototypes

 For user interface prototypes, storyboarding can be

used with hand-drawn designs

slide-27
SLIDE 27

27

User Interface prototypes

 User interface prototypes can be implemented using

languages other than the one that the system will be developed in, for example, Visual Basic.

OK Quit Campaign: Campaign Selection Holborn Motors Lynch Properties Yellow Partridge Zeta Systems Client: Spring Jewellery Campaign 2003 Spring Jewellery Campaign 2004 Spring Jewellery Campaign 2005 Summer Collection 2004 OK Quit Campaign: Campaign Selection Holborn Motors Lynch Properties Yellow Partridge Zeta Systems Client: Yellow Partridge Spring Jewellery Campaign 2003 Spring Jewellery Campaign 2004 Spring Jewellery Campaign 2005 Summer Collection 2004 OK Quit Campaign: Campaign Selection Holborn Motors Lynch Properties Yellow Partridge Zeta Systems Client: Yellow Partridge Spring Jewellery Campaign 2002

Dialogue initialized. User selects Client. Campaigns listed. User selects Campaign.

slide-28
SLIDE 28

28

Take Home Messages

 Use Case Modelling

 Use Case Diagrams  Use Case Descriptions

 Prototyping