2131 Structured System Analysis and Design By Germaine Cheung Hong Kong Computer Institute Lecture 8 (Chapter 7) MODELING SYSTEM REQUIREMENTS WITH USE.

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

© 2010 Bennett, McRobb and Farmer1 Use Case Description Supplementary material to support Bennett, McRobb and Farmer: Object Oriented Systems Analysis.
Karolina Muszyńska Based on:
Chapter 4 - Object-Oriented Analysis and Design in a Nutshell1 Chapter 4 Object-Oriented Analysis and Design in a Nutshell.
Chapters 7 & 9 System Scope
Lecture 8- Analysis Modeling The Elements of Anaylsis Model The Elements of Anaylsis Model Data Modeling, Functional Modeling and Information Flow Data.
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
CS3773 Software Engineering Lecture 03 UML Use Cases.
MODELING SYSTEM REQUIREMENTS WITH USE CASES
Use-case Modeling.
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
Documenting Requirements using Use Case Diagrams
7.1 Dr. Honghui Deng Assistant Professor MIS Department UNLV MIS 370 System Analysis Theory.
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
MODELING SYSTEM REQUIREMENTS WITH USE CASES Pertemuan 07 – 08 Matakuliah: D0584/Analisis Sistem Informasi Tahun : 2008.
Bina Nusantara 7 C H A P T E R MODELING SYSTEM REQUIREMENTS WITH USE CASES.
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
Modeling System Requirements with Use Cases
Chapter 9 Using Data Flow Diagrams
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Use Case Diagram (UCD) Yong Choi BPA.
An Introduction to Use-Case Modeling
The chapter will address the following questions:
Chapter 6: The Traditional Approach to Requirements
USE Case Model.
Chapter 5: Modeling Systems Requirements: Events and Things
Modeling System Requirements:Events and Things
RUP Requirements RUP Artifacts and Deliverables
UML - Development Process 1 Software Development Process Using UML (2)
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
Chapter 7 Structuring System Process Requirements
Use Cases Todd S. Bacastow Professor of Practice John A. Dutton e-Education Institute The Pennsylvania State University.
7 MODELING SYSTEM REQUIREMENTS WITH USE CASES C H A P T E R
Requirement Engineering. Review of Last Lecture Problems with requirement Requirement Engineering –Inception (Set of Questions) –Elicitation (Collaborative.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Approaching a Problem Where do we start? How do we proceed?
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Requirements Capture. Four Steps of requirements capture List candidate requirements Understand system context Capture functional requirements Capture.
UML Use Case Diagramming Guidelines. What is UML? The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing,
Modeling System Requirements: Events and Things. Objectives Explain the many reasons for creating information system models Describe three types of models.
Systems Analysis and Design in a Changing World, 6th Edition
1 Capturing Requirements As Use Cases To be discussed –Artifacts created in the requirements workflow –Workers participating in the requirements workflow.
CIS 112 Exam Review. Exam Content 100 questions valued at 1 point each 100 questions valued at 1 point each 100 points total 100 points total 10 each.
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.
2 nd Knowledge Area : Project Scope Management. Importance of Good Project Scope Management 1995 CHAOS study cited user involvement, a clear project mission,
7-1 IS Development Project Track Record Source: The Standish Group International, Inc., “Chaos: A Recipe for Success” canceled before completion Over budget,
Information Systems Analysis and Management Modeling Sys. Requirements with Use Cases Arnie Lund, Jeffrey Kim May 5, 2009 INFO380.
Use Cases Todd S. Bacastow Professor of Practice John A. Dutton e-Education Institute The Pennsylvania State University.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
Prof. Hany H. Ammar, CSEE, WVU, and
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
ANALYSIS PHASE OF BUSINESS SYSTEM DEVELOPMENT METHODOLOGY.
UML - Development Process 1 Software Development Process Using UML.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Chapter 7 Part II Structuring System Process Requirements MIS 215 System Analysis and Design.
Defining and Managing Project Scope. MOV Scope Phases Time Estimates Resources Tasks Schedule Budget Sequence Project Planning Framework.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition Copyright © 2015 John Wiley & Sons, Inc. All rights.
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.
Is 581 assist Inspiring Minds/is581assistdotcom FOR MORE CLASSES VISIT
An Overview of Requirements Engineering Tools and Methodologies*
Chapter 4: Business Process and Functional Modeling, continued
Unified Modeling Language
An Introduction to Use-Case Modeling
Object Oriented Analysis and Design
An Introduction to Use-Case Modeling
Requirement Modeling System Analysis & Design Course
Presentation transcript:

2131 Structured System Analysis and Design By Germaine Cheung Hong Kong Computer Institute Lecture 8 (Chapter 7) MODELING SYSTEM REQUIREMENTS WITH USE CASES

2 An Introduction to Use-Case Modeling One of the primary challenges in a system design process is the ability to elicit the correct and necessary system requirements from the stakeholders and specify them in a manner understandable to them so those requirements can be verified and validated. – Data and process models, prototypes, requirement specifications. – Understood by designers but not by users. – Leads to scope creep, schedule creep, cost overruns.

3 User-Centered Development and Use-Case Modeling User-centered development – a process of systems development based on understanding the needs of the stakeholders and the reasons why the system should be developed. Use-case modeling – the process of modeling a system’s functions in terms of business events, who initiated the events, and how the system responds to those events. – Use-case modeling has roots in object-oriented modeling. – Gained popularity in nonobject development environments because of its usefulness in communicating with users. – Compliments traditional modeling tools.

4 Benefits of Use-Case Modeling Provides a tool for capturing functional requirements. Assists in decomposing system scope into more manageable pieces. Provides a means of communicating with users and other stakeholders concerning system functionality in a language that is easily understood. Provides a means of identifying, assigning, tracking, controlling, and management system development activities, especially incremental and iterative development. Provides an aid in estimating project scope, effort, and schedule.

5 Benefits of Use-Case Modeling Provides a baseline for testing in terms of defining test plans and test cases. Provides a baseline for user help systems and manuals as well as system development documentation. Provides a tool for requirements traceability. Provides a starting point for the identification of data objects or entities. Provides functional specifications for designing user and system interfaces. Provides a means of defining database access requirements. Provides a framework for driving the system development project.

6 System Concepts for Use-Case Modeling Use-case diagram – a diagram that depicts the interactions between the system and external systems and users. – It graphically describes who will use the system and in what ways the user expects to interact with the system. Use-case narrative – a textual description of the business even and how the user will interact with the system to accomplish the task. Use case – a behaviorally related sequence of steps, both automated and manual, for the purpose of completing a single business task.

7 Sample Use-Case Model Diagram

8 Basic Use-Case Symbols Use case – subset of the overall system functionality – Represented graphically by a horizontal ellipse with the name of the use case appearing above, below, or inside the ellipse. Actor – anything that needs to interact with the system to exchange information. – Could be a human, an organization, another information system, an external device, or even time. Temporal event – a system event triggered by time. – The actor is time.

9 Four Types of Actors Primary business actor – The stakeholder that primarily benefits from the execution of the use case. – e.g. the employee receiving the paycheck Primary system actor – The stakeholder that directly interfaces with the system to initiate or trigger the business or system event. – e.g. the bank teller entering deposit information

10 Four Types of Actors External server actor – The stakeholder that responds to a request from the use case. – e.g. the credit bureau authorizing a credit card charge External receiver actor – The stakeholder that is not the primary actor but receives something of value from the use case. – e.g. the warehouse receiving a packing slip

11 Use Case Association Relationship Association – a relationship between an actor and a use case in which an interaction occurs between them. – Association modeled as a solid line connecting the actor and the use case. – Association with an arrowhead touching the use case indicates that the use case was initiated by the actor. – Association lacking arrowhead indicates a receiver actor. – Associations may be bidirectional or unidirectional.

12 Use Case Association Relationship

13 Use Case Extends Relationship Extension use case – a use case consisting of steps extracted from a more complex use case in order to simplify the original case and thus extend its functionality. – Relationship between the extension use case and the use case it is extending is called an extends relationship. – Represented as an arrowheaded line beginning at the extension use case and point to the use case it is extending. – Each extends relationship line is labeled “ >.”

14 Use Case Extends Relationship

15 Use Case Uses Relationship Abstract use case – a use case that reduces redundancy among two or more other use cases by combining the common steps found in those cases. – An abstract case is available for use by any other use case that requires its functionality. – Relationship between the abstract use case and the use case that uses it is called a uses (or includes) relationship. – Depicted as an narrowheaded line beginning at the original use case and pointing to the use case it is using. – Each uses relationship line is labeled “ >.”

16 Use Case Uses Relationship

17 Use Case Depends On Relationship Depends On – a use case relationship that specifies which other use cases must be performed before the current use case. – Can help determine sequence in which use cases need to be developed. – Depicted as an arrowheaded line beginning at one use case and pointing to a use case it is dependent on. – Each depends on relationship line is labeled “ >.”

18 Use Case Depends On Relationship

19 Use Case Inheritance Relationship Inheritance – a use case relationship in which the common behavior of two actors initiating the same use case is extrapolated and assigned to a new abstract actor to reduce redundancy. – Other actors can inherit the interactions of the abstract actor. – Depicted as an arrowheaded line beginning at one actor and pointing to the abstract actor whose interactions the first actor inherits.

20 Use Case Inheritance Relationship

21 The Process of Requirements Use-Case Modeling Objective is to elicit and analyze enough requirements information to prepare a model that: – Communicates what is required from a user perspective. – Is free of specific details about how the system will be built or implemented. To effectively estimate and schedule project, may need to include preliminary “system implementation assumptions.” Steps 1. Identify business actors. 2. Identify business use cases. 3. Construct use-case model diagram. 4. Documents business requirements use-case narratives.

22 Step 1: identify Business Actors When looking for actors, ask the following questions: – Who or what provides inputs to the system? – Who or what receives outputs from the system? – Are interfaces required to other systems? – Are there events that are automatically triggered at a predetermined time? – Who will maintain information in the system?

23 Sample List of Actors

24 Step 2: Identify Business Requirements Use Cases During requirements analysis, strive to identify and document only the most critical, complex, and important use cases, often called essential use cases. When looking for use cases, ask the following questions: – What are the main tasks of the actor? – What information does the actor need form the system? – What information does the actor provide to the system? – Does the system need to inform the actor of any changes or events that have occurred? – Does the actor need to inform the system of any changes or events that have occurred?

25 Sample Context Diagram

26 Sample Use-Case Glossary continued

27 Sample Use-Case Glossary (continued) continued

28 Sample Use-Case Glossary (concluded)

29 Step 3: Construct Use-Case Model Diagram

30 Step 4: Document Business Requirements Use-Case Narratives Document first at high level to quickly obtain an understanding of the events and magnitude of the system. Then expand to a fully-documented business requirement narrative. – Include the use case’s typical course of events and its alternate courses.

31 Sample High-Level Version of a Use-Case Narrative

32 Sample Expanded Version of a Use-Case Narrative continued

33 Sample Expanded Version of a Use-Case Narrative (cont) continued

34 Sample Expanded Version of a Use-Case Narrative (cont)

35 Use Cases and Project Management Use-case model can drive the entire development effort. Project manager or systems analyst uses business requirements use cases to plan (estimate and schedule) the build cycles of the project. – Build cycles are scoped on the basis of the importance of the use case and the time it takes to implement the use case. To determine importance of the use cases, will create: – Use-case ranking and evaluation matrix – Use-case dependency diagram

36 Use-Case Ranking and Priority Matrix In most projects, the most important use cases are developed first. Use-case ranking and priority matrix – a tool used to evaluate use cases and determine their priority. – Evaluates use cases on a scale of 1 to 5 against six criteria. 1. Significant impact on the architectural design. 2. Easy to implement but contains significant functionality. 3. Includes risky, time-critical, or complex functions. 4. Involves significant research or new or risky technology. 5. Includes primary business functions. 6. Will increase revenue or decrease costs.

37 Sample Use-Case Ranking and Priority Matrix

38 Use-Case Dependency Diagram Use-case dependency diagram – a graphical depiction of the dependencies among use cases. – Provides the following benefits: Graphical depiction of the system’s events and their states enhances understanding of system functionality. Helps identify missing use cases. Helps facilitate project management by depicting which use cases are more critical.

39 Sample Use-Case Dependency Diagram

40 Discussion Time Discuss with your group(1.5%) – What are the four steps of “System implementation assumptions”? Briefly explain these steps. *Please write down your answers, it may be useful for assignment 1 *Time of discussion 20mins