Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 5 유스케이스 개요 Introduction to Use Cases

Similar presentations


Presentation on theme: "Chapter 5 유스케이스 개요 Introduction to Use Cases"— Presentation transcript:

1 Chapter 5 유스케이스 개요 Introduction to Use Cases
박 수 용 서강대학교 컴퓨터공학과

2 Chapters in This Course
Chap 8. CMM/CMMI의 요구관리 Chap 9. 문화적 측면에서의 요구사항 관리 Chap 10. 요구관리의 해외적용사례 분석

3 What is Use Case Modeling?
A means for capturing the desired behavior for the system under development A way to communicate the system's behavior Identifies who or what interacts with the system and what the system should do A way to verify all requirements are captured A planning instrument Actor 2 Use Case 2 Use Case 3 Use Case 1

4 Who Reads Use Cases? Client Team Developer Team Client Users Project
Manager Technical Writer Tester Requirements Specifier Designer

5 Benefits of Use Cases Give context for requirements
Are easy to understand Facilitate agreement with customers Illustrate why the system is needed Use cases: why the system is used Actors: who/what wants to interact with the system The idea behind use cases is to decide what the system will be used for before defining what the system is supposed to do.

6 Actors and Use Cases Actor
Someone/something outside the system that interacts with the system Use case What an actor wants to use the system to do Actor Use Case

7 What is a Use Case? Use Case Name
A use case defines a sequence of actions performed by a system that yields an observable result of value to an actor.

8 Use Cases Contain Software Requirements
Each Use Case Describes actions the system takes to deliver something of value to the actor Shows the system functionality an actor uses Models a dialog between the system and actors Is a complete and meaningful flow of events from the perspective of a particular actor

9 Instances of Actors Sam acts as a Student Jody acts as a Student
Register for Courses

10 A User Can Act as Several Actors
acts as a Student Student Charlie acts as a Professor Professor

11 Communicates-Association
Actor 1 Use Case Actor 2 A channel of communication between an actor and a use case A line is used to represent it An arrow indicates who initiates the communication

12 Each Communicates-Association is a Whole Dialog
Student logs on to system System approves log on Student requests course info Course Catalog System Student Register for Courses System displays course list Student select courses System confirms course availability System displays approved schedule System transmits request Course Catalog returns course info

13 A Scenario is a Use Case Instance
Course Catalog System Student Register for Courses Scenario 2 Log on to system Approve log on Enter subject in search Invalid subject Re-enter subject Get course list Display course list Select courses Confirm availability Display final schedule Scenario 1 Log on to system Approve log on Enter subject in search Get course list Display course list Select courses Confirm availability Display final schedule

14 Use Case Diagram Apply for Financial Trading Account Network
News System Trading Customer Market Trading System Broker Review Account Execute Trade Apply for Trading Account Distribute News Manage Portfolio Get Quote Quote Clock Financial Network

15 A Use Case Model Contains Diagrams and Text
The System Use-Case-Model Survey - survey description - list of all actors - list of all use cases Actor 1 Actor 2 Use Case 1 Use Case 2 Actor 3 Use Case 3 Use-Case 1 Spec - brief description - flow of events Use-Case 2 Spec - brief description - flow of events Use-Case 3 Spec - brief description - flow of events

16 Example: Online Course Registration System
Student Course Catalog System Register for Courses Another Use Case Actor X Actor Y Use Case 3

17 How Should I Name an Use Case?
Indicate the value or goal Use the active form: begin with a verb Imagine a to-do list Examples of variations Register for Courses Registering for Courses Acknowledge Registration Course Registration Use Registration System Which variations show the value to the actor? Which do not? Which would you choose as the use-case name? Why?

18 Use Case Tips Describe only the events visible to the actor:
What the actor does What the system does in response Make use cases provide value to an actor. Detail until everyone has a common understanding of the requirements, then stop. Sketch the user interface, but don’t detail it Use agreed-upon terms and vocabulary. Use precise language.

19 Steps for Creating a Use Case Model
1. Find actors and use cases Identify and describe actors Identify and describe use cases 2. Write the use cases Outline all use cases Prioritize and detail the use cases

20 Find Actors Who is pressing the keys (interacting with the system) ?
Student Registrar Registration System The student never touches this system; the registrar operates it. Or perhaps you are building an Internet application? Online Registration System Student

21 Identify Actors Who/what uses the system?
Who/what gets information from this system? Who/what provides information to the system? Where in the company is the system used? Who/what supports and maintains the system? What other systems use this system?

22 Description of an Actor
Text Name Brief description Relationship with use cases Example Student A person who signs up for a course Student Register for Courses

23 What goal am I trying to achieve by using the system?
Find Use Cases What goal am I trying to achieve by using the system? Goal 1 Actor Goal 2

24 Identify Use Cases What are the goals of each actor?
Why does the actor want to use the system? Will the actor create, store, change, remove, or read data in the system? If so, why? Will the actor need to inform the system about external events or changes? Will the actor need to be informed about certain occurrences in the system? Does the system supply the business with all of the correct behavior?

25 Description of a Use Case
Text description of a use case Name Brief description Relationship with actors Example Register for Courses The student registers for courses. The student obtains course information prior to registering. Student Register for Courses

26 Functional Decomposition
Is the breakdown of a problem into small isolated parts. The parts: Works together to provide the functionality of the system. Often do not make sense in isolation. Use Cases: Are NOT functional decomposition. Keep the functionality together to describe a complete use of the system. Provide context.

27 Avoid Functional Decomposition
Symptoms Very small use cases Too many use cases Uses cases with no result of value Names with low-level operations “Operation” + “object” “Function” + “data” Example: “Insert Card” Difficulty understanding the overall model Corrective Actions Search for larger context “Why are you building this system?” Put yourself in user’s role “What does the user want to achieve?” “Whose goal does this use case satisfy?” “What value does this use case add?” “What is the story behind this use case?”

28 Checkpoint for Use Cases (1/2)
The use-case model clearly presents the behavior of the system; it is easy to understand what the system does by reviewing the model. All use cases have been identified; the use cases collectively account for all required behavior. All functional requirements are mapped to at least one use case. The use-case model contains no superfluous behavior; all use cases can be justified by tracing  them back to a functional requirement.

29 Checkpoint for Use Cases (2/2)
Do the use cases have unique, intuitive, and explanatory names so that they cannot be mixed up at a later stage? If not, change their names. Do customers and users alike understand the names and descriptions of the use cases? Does the brief description give a true picture of the use case? Is each use case involved with at least one actor? Do any use cases have very similar behaviors or flows of events?

30 Checkpoint for Actors Have you found all the actors? That is, have you accounted for and modeled all roles in the system's environment? Is each actor involved with at least one use case? Can you name at least two people who would be able to perform as a particular actor? Do any actors play similar roles in relation to the system? If so, you should merge them into a single actor.

31 Diagram  Outline  Detail
Student Register for Courses Course Catalog System Register for Courses Outline -Brief description Flow of events Step-by-Step Register for Courses Use-Case Specification -Brief description Flow of events Special Requirements Pre/Post Conditions

32 Exercise 1: Identify Actors and Use Cases
Identify the actors who interact with the ATM (Automated Teller Machine) Following features should be considered. Withdraw, deposit, transfer, inquiry. Identify use cases for the system Sketch a use-case diagram Refer to use-case and actor checkpoint slides


Download ppt "Chapter 5 유스케이스 개요 Introduction to Use Cases"

Similar presentations


Ads by Google