COMP 2710 Software Construction Use Case Analysis Review

  • Slides: 25
Download presentation
COMP 2710 Software Construction Use Case Analysis - Review Dr. Xiao Qin Auburn University

COMP 2710 Software Construction Use Case Analysis - Review Dr. Xiao Qin Auburn University http: //www. eng. auburn. edu/~xqin@auburn. edu

What is the difference between includes and extends? 2

What is the difference between includes and extends? 2

Generalization vs. Extend A use case generalization shows that one use case is simply

Generalization vs. Extend A use case generalization shows that one use case is simply a special kind of another. An extend relationship indicates that one use case is a variation of another. Adding actions. 3

Extend vs. Include Extend is used when a use case conditionally adds steps to

Extend vs. Include Extend is used when a use case conditionally adds steps to another first class use case. e. g. , An ATM machine: “Assess Fee” extends “Withdraw Cash” and describe the conditional "extension point" that is instantiated when the ATM user is not a member. Basic "Withdraw Cash“ stands on its own, without the extension. Include is used to extract use case fragments that are duplicated in multiple use cases. The included use cannot stand alone and the original use case is not complete without the included one. 4

Extend vs. Include Wheels Car DVD players 5

Extend vs. Include Wheels Car DVD players 5

COMP 2710 Software Construction Project 1 – Phase 1: Analysis Dragons – A Simple

COMP 2710 Software Construction Project 1 – Phase 1: Analysis Dragons – A Simple Text-Based Game Dr. Xiao Qin Auburn University http: //www. eng. auburn. edu/~xqin@auburn. edu

Exercise 1. Design a level 1 data flow diagram • The game is a

Exercise 1. Design a level 1 data flow diagram • The game is a simple text-based adventure game concerning a student trying to navigate his way in a hall. • The goal of the player is to survive to the end of the hall with the highest combined total of the attributes as possible. • Each Turn: the player has 5 options to choose from • Encounters: there is a random change of various events happening. • Puzzles: require interaction from the user. Hints: (1) Three modules, (2) two external entities, (3) two internal data storage 7

Exercise 1. Design a level 1 data flow diagram User What’s Missing? choice, name

Exercise 1. Design a level 1 data flow diagram User What’s Missing? choice, name 1 answers Menus name 3 2 Score scores File Scoreboard Management Play a game score, name (name, score) pairs 1 Scoreboard attributes 2 Character Attributes

Exercise 1. Any suggestion to improve this data flow diagram? 9

Exercise 1. Any suggestion to improve this data flow diagram? 9

Exercise 2. Can you design a level 2 data flow diagram for the scoreboard-management

Exercise 2. Can you design a level 2 data flow diagram for the scoreboard-management module? User Hints: choice, name 1 • Three modules answers • One external entity Menus name • One internal data storage name 3 2 Score scores File Scoreboard Management Play a game score, name (name, score) pairs 1 Scoreboard attributes 2 Character Attributes 10

Exercise 2. The level 2 data flow diagram for the scoreboard-management module Score File

Exercise 2. The level 2 data flow diagram for the scoreboard-management module Score File Names, scores 2. 2 2. 1 Display high scores Load scores to the Scoreboard (name, score) pairs 1 Highest (name, score) pairs Scoreboard a new (name, score) pair 2. 3 Add a new score 11

Put it all together

Put it all together

Review: Goals of Use Case Analysis • Look at the system as a whole

Review: Goals of Use Case Analysis • Look at the system as a whole • • Express software requirements Identify all the major uses of the system Express computer application workflow It is a functional description of the entire system. Note: use cases are not design tools. Just functional descriptions not software structure. 13

Exercise 3. What are the steps of the login use case? A Sample Login,

Exercise 3. What are the steps of the login use case? A Sample Login, welcome, main menu Hints: There are five steps. 14

Exercise 3. Sample usage of the login use case Login, welcome, main menu Hints:

Exercise 3. Sample usage of the login use case Login, welcome, main menu Hints: What are the five steps in this use case? 15

Exercise 3. What are the steps of the login use case? Login, welcome, main

Exercise 3. What are the steps of the login use case? Login, welcome, main menu Steps 1. 2. 3. 4. 5. Print “what’s your name”? Input name Print welcome message Print main menu Choose an option 16

Exercise 4. (1) Can you split the login use case into two use cases?

Exercise 4. (1) Can you split the login use case into two use cases? (2) What are the steps of each use case? Login, welcome, main menu

Exercise 4. 1 Can you split the login use case into two use cases?

Exercise 4. 1 Can you split the login use case into two use cases? Login, welcome, main menu Login Welcome and main menu 18

Exercise 4. 2 The steps of the two use cases Login Welcome and main

Exercise 4. 2 The steps of the two use cases Login Welcome and main menu Steps of Login 1. Print “what’s your name”? 2. Input name Steps of Welcome/Main menu 1. Print welcome message 2. Print main menu 3. Choose an option 19

Exercise 5. Can you design three use cases for login/main menu? Login Welcome and

Exercise 5. Can you design three use cases for login/main menu? Login Welcome and main menu

Exercise 5. Can you use three cases for the login use case? <<include>> Login

Exercise 5. Can you use three cases for the login use case? <<include>> Login process <<include>> Welcome and main menu Steps of Login process 1. Include the login case 2. Include the welcome and main menu case Include vs. Extend 1 -21

Exercise 6. (6. 1) Add the view score case into the following use case

Exercise 6. (6. 1) Add the view score case into the following use case diagram. (6. 2) What are the steps of the view score case? Login Process 1 -22

Exercise 6. What are the steps of the view score case? Login Process Steps

Exercise 6. What are the steps of the view score case? Login Process Steps of View Score 1. Print the total number of top scores 2. 2. 1 get a score record from scoreboard 2. 2 print name in the record 2. 3 print score in the record 2. 4 repeat 2. 1 -2. 3 until no more record 3. Print “no more scores to show” View Score 1 -23

Exercise 7. The play game use case 24

Exercise 7. The play game use case 24

Exercise 8. The move use case 25

Exercise 8. The move use case 25