Use Case Modeling Part of the unified modeling language (U M L)

Slides:



Advertisements
Similar presentations
IT Requirements Capture Process. Motivation for this seminar Discovering system requirements is hard. Formally testing use case conformance is hard. We.
Advertisements

Chapters 7 & 9 System Scope
Systems Analysis and Design, 7e Kendall & Kendall
Object-Oriented Analysis and Design
CS3773 Software Engineering Lecture 03 UML Use Cases.
Kendall & KendallCopyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 2 Kendall & Kendall Systems Analysis and Design, 9e Understanding.
Use-case Modeling.
Chapter 18 Object-Oriented Systems Analysis and Design Using UML
Systems Analysis and Design in a Changing World, Fourth Edition
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall Understanding and Modeling Organizational Systems Systems Analysis and Design, 8e.
Documenting Requirements using Use Case Diagrams
Use Case Analysis Chapter 6.
Use Case Modeling.
USE Case Model.
IS 320 Systems Analysis and Design Notes for Textbook Chapter 2
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
Systems Analysis and Design in a Changing World, 6th Edition
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.
UML The Unified Modeling Language A Practical Introduction Al-Ayham Saleh Aleppo University
Software Requirements (Advanced Topics) “Walking on water and developing software from a specification are easy if both are frozen.” --Edward V Berard.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 20. Review Software Requirements Requirements Engineering Process.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
® 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.
Object Oriented Analysis & Design & UML (Unified Modeling Language) 1 Part II: Requirements The requirements workflow Use case modeling Advanced.
1 Use Case Diagrams Use Case Actor Use case description Use case realization (Scenario) Use case relationships –Extends –Uses.
1 Structuring Systems Requirements Use Case Description and Diagrams.
Systems Analysis and Design in a Changing World, 6th Edition
Use Cases Use Cases are employed to describe the functionality or behavior of a system. Each use case describes a different capability that the system.
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.
1 Modeling System Requirements with Use Cases. 2 Why Do We Need Use Cases? Primary challenge in a system design process –ability to elicit correct and.
1 Version /05/2004 © 2004 Robert Oshana Requirements Engineering Use cases.
Unified Modeling Language User Guide Section 4 - Basic Behavioral Modeling Chapter 16 - Use Cases Chapter 17 - Use Case Diagrams.
Systems Analysis and Design in a Changing World, Fourth Edition
UML - Development Process 1 Software Development Process Using UML.
Use Case Diagrams. Introduction In the previous Lecture, you saw a brief review of the nine UML diagrams. Now that you have the clear, you'll start to.
Chapter 7 Part II Structuring System Process Requirements MIS 215 System Analysis and Design.
7 Systems Analysis – ITEC 3155 The Object Oriented Approach – Use Cases.
Kendall & KendallCopyright © 2014 Pearson Education 2 Kendall & Kendall Systems Analysis and Design, Global Edition, 9e Understanding and Modeling Organizational.
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.
Use Cases. 2 A use case... –Specifies the behavior of a system or some subset of a system. –Is a system-level function. –Does not indicative how the specified.
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.
Use Cases Discuss the what and how of use cases: Basics Examples Benefits Parts Stages Guidelines.
Class 11 Outline Business – Qs on artifact model assignment? – Qs on draft project models? Activities – Card Sorting – Use Cases.
Engineering Quality Software Week02 J.N.Kotuba1 SYST Engineering Quality Software.
Use Case Analysis Chapter 6.
CompSci 280 S Introduction to Software Development
Systems Analysis and Design in a Changing World, Fourth Edition
Welcome to M301 P2 Software Systems & their Development
Chapter 7 Appendix A Object-Oriented Analysis and Design: Use Cases
Chapter 5 System modeling
CMPE 280 Web UI Design and Development August 29 Class Meeting
Systems Analysis and Design in a Changing World, 6th Edition
Use Cases Discuss the what and how of use cases: Basics Benefits
Recall The Team Skills Analyzing the Problem (with 5 steps)
Use Case Model.
Requirements: Use Case Models and Narratives
IMPORTANT NOTICE TO STUDENTS:
Systems Analysis and Design in a Changing World, 6th Edition
Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer
Chapter 9 Use Cases.
Object Oriented Analysis and Design
Use Cases.
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
Engineering Quality Software
Object-Oriented Software Engineering
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Software Development Process Using UML Recap
Presentation transcript:

Use Case Modeling Part of the unified modeling language (U M L) Describes what a system does without describing how the system works A view of the system requirements Analyst works with business experts to develop requirements Originally, introduced as a diagram for use in the object-oriented UML, use cases are now used regardless of the approach to systems development. They can be used as part of the SDLC or in agile modeling.

Use Case Diagram Actor Refers to a particular role of a user of the system Similar to external entities; they exist outside of the system Use case symbols An oval indicating the task of the use case Connecting lines Arrows and lines used to diagram behavioral relationships A use case always describes three things: an actor that initiates an event the event that triggers a use case the use case that performs the actions triggered by the event

Actor Divided into two groups Primary actors: Supply data or receive information from the system Provide details on what the use case should do Supporting actors: Help to keep the system running or provide help The people who run the help desk, the analysts, programmers, and so on Sometimes a table is created with actor profiles that list the actors, their background, and their skills. These profiles can be useful to understand how the actor interacts with the system.

A Use Case Always Provides Three Things An actor that initiates an event The event that triggers a use case The use case that performs the actions triggered by the event A use case documents a single transaction or event. An event is an input to the system that happens at a specific time and place and causes the system to do something.

Use Case Relations Behavioral relationships Communicates Used to connect an actor to a use case Includes Describes the situation in which a use case contains behavior that is common to more than one use case Extends Describes the situation in which one use case possesses the behavior that allows the new case to handle a variation or exception from the basic use case Generalizes Implies that one thing is more typical than the other thing

Four Types of Behavioral Relationships and the Lines Used to Diagram Each

Actors, Use Cases, and Relationships for a Student Enrollment Example Communicates—used to connect an actor to a use case. The task of the use case is to give some sort of result that is beneficial to the actor in the system. Includes—describes the situation in which a use case contains behavior that is common to more than one use case. Extends—describes the situation in which one use case possesses the behavior that allows the new use case to handle a variation or exception from the basic use case. Generalizes—implies that one thing is more typical than the other thing.

Scope System scope defines its boundaries: What is in or outside the system Project has a budget that helps to define scope Project has a start and an end time Actors are always outside of scope Communication lines are the boundaries and define the scope

Developing Use Case Diagrams Review the business specifications and identify the actors involved Identify the high-level events and develop the primary use cases that describe those events and how the actors initiate them Review each primary use case to determine the possible variations of flow through the use case The context-level data flow diagram could act as a starting point for creating a use case When diagramming a use case, start by asking the users to list everything the system should do for them.

A Use Case Diagram Representing a System Used to Plan a Conference Example of a use case diagram representing a system used to plan a conference.

Developing the Use Case Scenarios The description of the use case Three main areas: Use case identifiers and initiators Steps performed Conditions, assumptions, and questions I have a Use Case template on the web site under the projects page in the Assignment 3 group http://dtucker.cs.edinboro.edu/CSCI423/Spring2019/TeamProject.html Each use case has a description referred to as the use case scenario.

A Use Case Scenario is Divided into Three Sections (First area) Use case identifiers and initiators—orients the reader and contains: 1. The use case name and a unique ID 2. The application area or system that this use case belongs to 3. The actors involved in the use case 4. A brief description of what the use case accomplishes 5. The triggering event 6. Type of trigger: external or temporal external—those started by an actor temporal—triggered or started by time 7. May list stakeholders (Second area) Includes the steps performed, and the information required for each of the steps. (Third area) Preconditions Post conditions Assumptions Outstanding issues Statement of priority (optional) Statement of risk (optional)

Use Case Header Area Has a name and a unique I D Include application area List actors Include stakeholders Has a brief description of the use case

Use Case Footer Area Preconditions—need to be met before use case can be performed Postconditions or the state of the system after the use case has finished Assumptions Minimal guarantee Success guarantee Outstanding issues

Four Steps Used to Create Use Cases Use agile stories, problem definition objectives, user requirements, or a features list Ask about the tasks that must be done Determine if there are any iterative or looping actions The use case ends when the customer goal is complete

Why Use Case Diagrams Are Helpful Identify all the actors in the problem domain Actions that need to be completed are also clearly shown on the use case diagram The use case scenario is also worthwhile Simplicity and lack of technical detail Identify all the actors in the problem domain—the systems analyst can concentrate on what humans want and need to use the system, extend their capabilities, and enjoy their interaction with technology. Actions that need to be completed are also clearly shown on the use case diagram—this makes it easy for the analyst to identify processes and aids in communication with other analysts on the team and business executives The use case scenario is also worthwhile—because a lot of the information the users impart to the analysts are in story form, it is easy to capture on the use case scenario form. Simplicity and lack of technical detail—used to show the scope of a system, along with the major features of the system and the actors that work with those major features.

The Main Reasons for Writing Use Cases are Their Effectiveness in Communicating with Users and Their Capturing of User Stories Use cases effectively communicate systems requirements because the diagrams are kept simple. Use cases allow people to tell stories. Use case stories make sense to nontechnical people. Use cases do not depend on a special language. Use cases can describe most functional requirements (such as interactions between actors and applications). Use cases can describe nonfunctional requirements (such as performance and maintainability) through the use of stereotypes. Use cases help analysts define boundaries. Use cases can be traceable, allowing analysts to identify links between use cases and other design and documentation tools.