Recall The Team Skills Analyzing the Problem (with 5 steps)

Slides:



Advertisements
Similar presentations
Chapter 3 Requirements Analysis, Negotiation and Modeling Part 3 Dr. Eman Al-Maghary Requirements Engineering.
Advertisements

Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 1.Gain agreement on the problem definition. 2.Understand the root causes 3.Identify the.
Design by Contract.
Information System Engineering
Use-case Modeling.
WEEK 4 Material Lecture 4a (Wed.). Use Cases/Actors o What is a use case ? l A sequence of actions performed by a system that yields an observable result.
Functional Requirements – Use Cases Sriram Mohan/Steve Chenoweth (Chapters 14, 21 – Requirements Text) 1.
A use case describes one “case” of how a user can use the system.
Rose-Hulman Institute of Technology Sriram Mohan 18.September.2008 CSSE 497 Requirements Review.
Functional Requirements – Use Cases Steve Chenoweth & Chandan Rupakheti (Chapters 14, 21 – Requirements Text)  Quiz question 9 relates to this, when you’ve.
Recall The Team Skills Analyzing the Problem
Use Cases Why use ‘em? How do they work? UC diagrams Using them later in the software development cycle.
RUP Requirements RUP Artifacts and Deliverables
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 4: Detailing a Use Case.
Object-Oriented Analysis - Instructor Notes
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
Business Analysis and Essential Competencies
10/12/ Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 1. Interviews & questionnaires.
Chapter 6 Use Cases. Use Cases: –Text stories Some “actor” using system to achieve a goal –Used to discover and record requirements –Serve as input to.
Software Requirements (Advanced Topics) “Walking on water and developing software from a specification are easy if both are frozen.” --Edward V Berard.
Requirements Artifacts Precursor to A & D. Objectives: Requirements Overview  Understand the basic Requirements concepts and how they affect Analysis.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Requirements Analysis and Design Engineering Southern Methodist University CSE 7313.
1 Use Case Modeling Reference: RUP Doc. Use Case Example 2.
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 1: Introduction to Use-Case Modeling.
A Use Case Primer 1. The Benefits of Use Cases  Compared to traditional methods, use cases are easy to write and to read.  Use cases force the developers.
Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Engineering Lab Use Cases Faculty of Information system Technology.
Shanghai Jiao Tong University 上海交通大学软件工程中心 Object Oriented Analysis and Design Requirements Overview.
Functional Requirements – Use Cases (Chapters 14, 21) Sriram Mohan 1.
Use Case Model Use case diagram.
Use Case Diagram The purpose is to communicate the system’s functionality and behaviour to the customer or end user. Mainly used for capturing user requirements.
Use Case Driven Analysis Requirements Use Case Use Case Description System Sequence Diagram Chapter 5.
1 Version /05/2004 © 2004 Robert Oshana Requirements Engineering Use cases.
Use Case Model Use case diagram. Relevant Requirements Artifacts Use-Case Model Supplementary Specification Use-Case Specifications... Glossary Actors.
UML - Development Process 1 Software Development Process Using UML.
An Agile Requirements Approach 1. Step 1: Get Organized  Meet with your team and agree on the basic software processes you will employ.  Decide how.
Refining the Use Cases 1. How Use Cases Evolve  Early efforts typically define most of the major use cases.  The refining stages complete the process.
George Wang, Ph.D. COMP 380/L Lesson 2. Use Case Use cases are a way to capture system functionalities (i.e., functional requirements) Based on use case.
Lecture 5d: Systems Use Case Descriptions.  Review  Systems Use Case Descriptions  Systems Use Case Authoring SYS3662.
1 Team Skill 3 Defining the System Part 1: Use Case Modeling Noureddine Abbadeni Al-Ain University of Science and Technology College of Engineering and.
Engineering Quality Software Week02 J.N.Kotuba1 SYST Engineering Quality Software.
Digital Media & Interaction Design LECTURE 4+5. Lecture 4+5 Draw requirement + Prototyping.
Use Case Analysis Chapter 6.
Business Processes A business process describes a set of activities that are necessary to complete a response to a stimulus applied to an organization.
Using Use Case Diagrams
CMPE 280 Web UI Design and Development August 29 Class Meeting
Systems Analysis and Design in a Changing World, 6th Edition
Lec-5 : Use Case Diagrams
Chapter 5 유스케이스 개요 Introduction to Use Cases
Fundamentals of Information Systems, Sixth Edition
Storyboarding and Game Design SBG, MBG620 Full Sail University
Use Case Model.
Business Models Modeling.
Use Case Model Use case diagram.
Recall The Team Skills Analyzing the Problem
Object-Oriented Analysis Principles using UML
Requirements: Use Case Models and Narratives
Recall The Team Skills Analyzing the Problem (with 5 steps)
SAD ::: Spring 2018 Sabbir Muhammad Saleh
Systems Analysis and Design in a Changing World, 6th Edition
Use Case Model Use case diagram – Part 2.
Using Use Case Diagrams
Requirements Very High level specification of what system should do
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
Object-Oriented Software Engineering
Applying Use Cases (Chapters 25,26)
Applying Use Cases (Chapters 25,26)
Use Case Modeling Part of the unified modeling language (U M L)
Week 8 Lecture 1: Identifying Actors and Activities
Software Development Process Using UML Recap
Presentation transcript:

Recall The Team Skills Analyzing the Problem (with 5 steps) 5/30/2018 Analyzing the Problem (with 5 steps) Understanding User and Stakeholder Needs Interviews & questionnaires Workshops Brainstorming and idea reduction Storyboarding Defining the System Managing Scope Refining the System Definition Building the Right System S.Vidya, APCSE

Team Skill 3: Defining the System 5/30/2018 Team Skill 3: Defining the System Define the system by focusing more on the features and deal with the increased amount of information. Ch 14: A Use Case Primer Ch 15: Organizing Requirements Information Ch 16: The Vision Document Ch 17: Product Management S.Vidya, APCSE

A Use Case Primer Benefits of use cases 5/30/2018 Use cases basics Benefits of use cases Steps of building use case model Use cases, storyboarding, and user interface design S.Vidya, APCSE

5/30/2018 Use Case Basics A use case describes a sequence of actions the system performs that yield an observable result of value to a particular actor. An actor is someone or something that interacts with the system. Users, other systems, or devices Documenting use cases by using use case templates: Name, decscriptions, Covered in the labs (UML Notes) S.Vidya, APCSE

Use Case Basics Documenting use cases (Covered in the labs) by using 5/30/2018 Use Case Basics Documenting use cases (Covered in the labs) by using use case templates: Name Description Actor(s) Flow of events Pre-conditions Post-conditions Etc ... UML Diagrams S.Vidya, APCSE

5/30/2018 Example S.Vidya, APCSE

The Benefits of Use Cases 5/30/2018 The Benefits of Use Cases They are relatively easy to write and easier to read. They force developers to think through the design of a system from the perspective of a user. They engage the users in the requirements process: helping them understand the system that is being proposed. giving them a way to communicate and document their needs. They give context for the requirements of the system: One can understand why a requirement is what it is as well as how the system meets its objectives. S.Vidya, APCSE

The Benefits of Use Cases 5/30/2018 The Benefits of Use Cases They provide an ordering mechanism for requirements: one can tell what has to happen before the next thing happens, and so on. In most circumstances, developers write the use cases. That means not only that there actually are understood requirements but also that the developers know they are responsible for determining them. It is a critical tool in the analysis process, helping us understand what the system needs to do and how it might go about doing it. S.Vidya, APCSE

The Benefits of Use Cases 5/30/2018 The Benefits of Use Cases It is a critical tool in the design and implementation process, reducing the risk of transitioning from an expression of requirements to a differing implementation They carry over directly into the testing process, helping to assure that the system actually does what it was intended to do They serve as inputs to the user documentation, conveniently organized in a step-by-step format. S.Vidya, APCSE

5/30/2018 Use Case Model Individual use case describes how a particular actor interacts with the system to achieve a result of value to the specific actor. The set of all use cases together describes the complete behavior of the system. The complete set of use cases, actors, and their interactions constitutes the use-case model for the system. S.Vidya, APCSE

Building a uses case model 5/30/2018 Building a uses case model write individual use cases and then add them all .. Not a good idea. Instead, build a context model of the system and successively refine it. That’s better for understanding, communicating, and refining the behavior of the system in an iterative development. S.Vidya, APCSE

Building the Use-Case Model 5/30/2018 Building the Use-Case Model Step 1: Identify and Describe the Actors Step 2: Identify the Use Cases and Write a Brief Description Step 3: Identify the Actor and Use-Case Relationships Step 4: Outline the Individual Use Cases Step 5: Refine the Use Cases S.Vidya, APCSE

Step 1: Identify and Describe the Actors 5/30/2018 Step 1: Identify and Describe the Actors Who uses the system? Who gets info from the system? Who provides info to the system? Where in the company is the system used? Who supports the and maintain the system? What other systems use this system? S.Vidya, APCSE

Step 2: Identify the Use Cases and Write a Brief Description 5/30/2018 Step 2: Identify the Use Cases and Write a Brief Description Typically, the use-case name is a few words or a short phrase that starts with an action verb and communicates what the actor achieves with the use case. To identify the use cases, ask the following for each actor: S.Vidya, APCSE

Step 2: Identify the Use Cases and Write a Brief Description 5/30/2018 Step 2: Identify the Use Cases and Write a Brief Description What will the actor use the system for? Will the actor create, store, change, remove, or read data in the system? 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? S.Vidya, APCSE

Step 3: Identify the Actor and Use-Case Relationships 5/30/2018 Step 3: Identify the Actor and Use-Case Relationships Only one actor can initiate a use case However, many actors can be involved in a use case. Each use case is analyzed to see what actors interact with it and Each actor’s behavior is reviewed to make sure that all of the results he needs to see are achieved the system. If this becomes complex, uses diagrams. S.Vidya, APCSE

Step 4: Outline the Individual Use Cases 5/30/2018 Step 4: Outline the Individual Use Cases To understand the system more think about the flow of events (basic and alternatives) for each use case. Basic flow: the most common path from start to finish through the system Alternative flows: other possible paths based on regular or exceptional circumstances. S.Vidya, APCSE

Step 4: Outline the Individual Use Cases 5/30/2018 Step 4: Outline the Individual Use Cases To do that ask the following questions: Basic flow: What events start the use case? How does the use case end? How does the use case repeat some behavior? Alternative Flows: Are there optional situations in the use case? What odd cases might happen? What variants might happen? What may go wrong? ..etc S.Vidya, APCSE

Step 5: Refine the Use Cases 5/30/2018 Step 5: Refine the Use Cases When to refine and think about the next level of details? Depends on All alternative flows including exception conditions Pre- and post-conditions S.Vidya, APCSE

Use Case template Use case Accept Payment Brief description 5/30/2018 Use Case template Use case Accept Payment Brief description This use case allows an Employee to accept the payment from Customer for a video rental. Actors Employee, Customer. Preconditions Customer expresses readiness to rent the video and he/she possesses valid membership card and the video is available for rental. Main flow The use case begins when the Customer decides to pay for the video rental and offers cash or debit/credit card payment. The Employee requests the system to display the rental charge... Alternative flows The Customer does not have sufficient cash and does not offer the card payment. The Employee asks the system to verify ... Postconditions If the use case was successful, the payment is recorded in the system’s database. Otherwise, ... S.Vidya, APCSE

Use Cases and User Interfaces 5/30/2018 Use Cases and User Interfaces User interface design and use-case specification tend to be parallel. For example, inside the context of a specific use case, the team must decide: What choices the user makes given the screens, dialog boxes, and so on that we have presented to the user, what the system does based on those selections, and what screens, choices, and so on the system presents to the user. S.Vidya, APCSE

Use Cases and User Interfaces 5/30/2018 Use Cases and User Interfaces In other words, each step in a use case is achieved via the presentation of a GUI of some kind, followed by a user selection of some kind, followed by a presentation of a new GUI that moves the user to the next system context, and so on. S.Vidya, APCSE

Use Cases and Storyboarding 5/30/2018 Use Cases and Storyboarding A Use Case Storyboard Example S.Vidya, APCSE

Use Cases and Storyboarding 5/30/2018 Use Cases and Storyboarding You can use Microsoft PowerPoint as your storyboard presentation tool to build one PowerPoint slide for each of the steps in the use case to show the user how you intend the system to work. In this fashion, you can develop the use case and the GUIs in parallel while involving the user in the concept review process at the same time. S.Vidya, APCSE

Storyboard slide for step 1 of a use case 5/30/2018 Storyboard slide for step 1 of a use case S.Vidya, APCSE

Storyboard slide for step 4 of a use case 5/30/2018 Storyboard slide for step 4 of a use case S.Vidya, APCSE

5/30/2018 Reading Assignment Read the case study of the HOLIS use cases pages: 159-163 S.Vidya, APCSE

5/30/2018 Key Points Use cases carry the majority of the requirements for the system. The development team, with user involvement, writes the use cases. Use cases are built on a common, standard format. Use cases later drive test case development. S.Vidya, APCSE