IS0514 Lecture Week 3 Use Case Modelling IS0514 Slide 1 Today's Lecture • • • • IS0514 What is a use case? How to draw a use case diagram? Relationships between Actors Use case stereotypes Slide 2 UML Framework Initiation Requirements Capture Feasibilty Study Scope of Development UML Framework - domain description - boundaries Use Cases Use Case Diagram Requirements Analysis System Design Domain Model Design Model Implementation Software Architecture * sub-systems * layers & partitioning Domain Model Use Cases Use Case Diagram Class Diagram Data Dictionary static CRCs Interaction Sequence Diagram Collaboration Diagram Operation Specifications Statecharts Object Design view dynamic view Use Cases Use Case Diagram Class Diagram Data Dictionary CRCs Interaction Sequence Diagram Collaboration Diagram Operation Specifications Statecharts redrawn/extended class diagram to reflect design decisions: addition of interface and control objects; addition of constraints, etc. Interface Design * Presentation Layer Data Management * Storage mechanisms IS0514 Slide 3 System Requirements • Functional Requirements • What Systems do • Inputs, Outputs, Process • Non-Functional Requirements • Constraints on system • Performance, Volume, Security etc • Usability Requirements • User effectiveness, efficiency, comfort • => Use Cases Primarily Model Functional Requirements IS0514 Slide 4 Traditional Approach to requirements • • • • Documentation detailing description of system Document forms “contract” with client Discussions focus upon document Result: • • • • Large legalistic documents Easy to misinterpret Changes hard to manage Easy to miss / omit requirements • Modern approach – Model using UML • Use cases are used to capture functional requirements IS0514 Slide 5 Use Case Modeling • Models the ‘actors’ outside a system and their interactions with that system • Every way that an ‘actor’ uses a system is called a Use Case • Model: • Desired functionality • Constraints on functionality • Hence build what client wants! IS0514 Slide 6 Reasons for Use Cases • No information system exists in isolation • Most systems interact with humans or other automated systems (actors) that use the system for some purpose • Actors expect the system to behave in a predictable way • Use Cases specify the behavior of the system • Helps visualize the system IS0514 Slide 7 Use Case Modelling • Use Case diagram – Diagram illustrating • Actors • Use cases In the system • Use Case Description – Specification of what happens in each use case • Textural description • Diagrams IS0514 Slide 8 Example of a Use Case Diagram Telephone catalogue Check status Salesperson Place order Customer Fill orders Shipping Clerk Establish credit Supervisor IS0514 Slide 9 Elements of Use Case Models • • • • • • • IS0514 Use Case Actor Relationship Use Case Diagram Scenario System Boundary Use case description • More next week Slide 10 Use Case • A Use Case is an interaction between the system and a person or another system to achieve a result • A required “bit” of functionality • It yields an observable result of value to an actor (and hence a developer) • Typically named with a verb than a noun • “Do something to something” View Timetable IS0514 Slide 11 Actors • A coherent set of roles that users of Use Cases play when interacting with Use Cases • Roles not users or people • User may have more than one role Smith IS0514 Lecturer Slide 12 Relationships • A semantic connection among elements • Used to show: • A function required by an actor • Relationships between actors • More later • Relationships between use cases • More later • Some people also use external relationships • Relationships between things that do not directly interact with the system – Out of scope? IS0514 Slide 13 Use Case Diagram • A diagram that shows a set of Use Cases and Actors and their relationships • Use Case diagrams address a user-centric view of a system • Show a required “bit” of functionality Person IS0514 View Timetable Slide 14 Scenario / System Boundary • Scenario • A single path through a Use Case • Use case is usually a collection of scenarios • Included as part of use case description • More next week • System Boundary • A high level indication of the domain • Limit to investigation • System • Part of system in focus IS0514 Slide 15 Exercise 1 – Use Case Diagram • In groups of 3-4 spend 5 minutes attempting to draw a use case diagram for the space invader game below: http://www. neave.com/ games/inva ders/ IS0514 Slide 16 Exercise 1 Solution Move Left Move Right Fire Laser Player View High Scores Play Game IS0514 Slide 17 Relationships in use cases • Between actor and use case – Actor uses • Generalisation of actors – Types of users • Use case stereotypes – <<extend>> • Optional – <<include>> • Mandatory • Stereotype is a UML extension mechanism to indicate a type of behaviour IS0514 Slide 18 Generalisation of Actors Blackboard Gradebook Question: Is Login part of this system? Blackboard User Login View Grade Student View Gradebook for all students Lecturer Update Gradebook IS0514 Slide 19 Use case variants : include and extend • include relationship occurs when you have a chunk of behavior that is similar across more than one Use Case – use in two or more separate Use Cases to avoid repetition – a significant part of a use case – <<include>> • extend relationship where you have one Use Case which adds functionality to another Use Case – any Use Case can have more than one extend – use when describing a variation on or in addition to normal behavior – OPTIONAL BEHAVIOUR • Otherwise part of use case or • <<include>> – <<extend>> IS0514 Slide 20 Example of Use Case Variants additional functionality Place order Open account <<extend>> Extension Point Place back order <<include>> <<include>> Supply Customer Data Place back order <<include>> Arrange delivery shared functionality IS0514 Slide 21 Consider Sonic the hedgehog. 1. What can sonic do? 2. What are the use cases? 3. Are there any relationships 4. Draw the use case diagram 1. 2. 3. 4. 5. 6. 7. IS0514 Move left Move right Jump Jump left Jump right Spin Dash Pause Exercise 2 http://www.ebaumsworld.com/games/play/1108/ Slide 22 Exercise 2 – Possible Solution Sonic the hedgehog Move Left Move Right <<extend>> Player Jump Left Jump What about: New game Choose character etc IS0514 Spin Dash <<extend>> Jump Right Pause Game Slide 23 This weeks reading ESSENTIAL READING Dennis A, Wixom B, and Tegarden D (2005) System Analysis and Design with UML version 2 second edition, Wiley Pages 178-186 Further reading Bennett, S., McRobb, S. and Farmer, R. (2002) ObjectOriented Systems Analysis and Design using UML, 2nd Edition, McGraw-Hill Pages 134-146 IS0514 Slide 24 Summary • • • • • What is a use case How to draw a use case diagram Use case stereotypes Relationships between Actors Next Week – Use case descriptions IS0514 Slide 25
© Copyright 2026 Paperzz