SYS466 Casual Use Case Specifications. Systems Use Case Diagrams and Specifications Based on the dialog metaphor Based on the dialog metaphor The process.

Slides:



Advertisements
Similar presentations
SYS366 The Last Stage in Analysis: System Use Case Descriptions created through the Use Case Authoring Process.
Advertisements

OOAD Using the UML - Use-Case Analysis, v 4.2 Copyright  Rational Software, all rights reserved 1/18 Use Case Analysis – continued Control Classes.
Object-Oriented Analysis and Design
Drawing System Sequence Diagrams
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
Chapter 21 Object-Oriented Analysis
Use Cases Introduced by Ivar Jacobson in 1986 literal translation from Swedish ”usage case” - may be of use to you in the future “blackbox”
NJIT Drawing System Sequence Diagrams Chapter 10 Applying UML and Patterns Craig Larman Presented by Anuradha Dharani.
Slide 1 Chapter 8 Behavioral Modeling. Slide 2 Key Ideas Behavioral models describe the internal dynamic aspects of an information system that supports.
חוזים – Contracts 1. Larman – Chapter 10 – SSDs 10.2 What are System Sequence Diagrams? (introduction) Use cases describe how external actors interact.
TK2023 Object-Oriented Software Engineering CHAPTER 6 SYSTEM SEQUENCE DIAGRAMS.
Software Engineering 2003 Jyrki Nummenmaa 1 USE CASES In this lecture: Use cases - What are use cases? - Why to use use cases? - How to write.
SYS366 Systems Use Case Descriptions. SYS3662 Contents Review Systems Use Case Descriptions Systems Use Case Authoring.
Introduction To System Analysis and design
Requirements Elicitation. Requirement: a feature or constraint that the system must satisfy Requirements Elicitation: specification of the system that.
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 4: Detailing a Use Case.
Object Oriented Analysis By: Don Villanueva CS 524 Software Engineering I Fall I 2007 – Sheldon X. Liang, Ph. D.
Software Engineering – University of Tampere, CS DepartmentJyrki Nummenmaa USE CASES In this lecture: Use cases - What are use.
The Next Stage in Analysis: Systems Use Case Diagrams 1 SYS366.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
Prepared by Afra`a Sayah. Introduction. Weekly Tasks. Plane Phase. Analysis Phase. Design Phase. Report Rules. Conclusion. 2.
©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions.
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.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Chapter 7 System models.
Lecture 7: Requirements Engineering
Modified by Juan M. Gomez Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
Black Box Testing Techniques Chapter 7. Black Box Testing Techniques Prepared by: Kris C. Calpotura, CoE, MSME, MIT  Introduction Introduction  Equivalence.
Software Engineering, 8th edition Chapter 8 1 Courtesy: ©Ian Somerville 2006 April 06 th, 2009 Lecture # 13 System models.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Object-Oriented Analysis and Design Fall 2009.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Behavioral Modeling Chapter 8.
GRASP: Designing Objects with Responsibilities
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
® 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.
♦ Use Case Model  Detailled use case - Important  Use case diagram- Refactoring Use case diagram  > 1 Last Lectures.
SYS466 Systems Use Case Specifications. Systems Use Case Diagrams and Specifications  Based on the dialog metaphor.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
Chapter 1 Applying UML and Patterns. The Need for Software Blueprints Knowing an object-oriented language and having access to a library is necessary.
Drawing System Sequence Diagrams
COMP-350 Object-Oriented Analysis and Design Drawing System Sequence Diagrams Reference: Larman, Chapter 9.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
DOMAIN MODEL: ADDING ATTRIBUTES Identify attributes in a domain model. Distinguish between correct and incorrect attributes.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Winter 2007SEG2101 Chapter 31 Chapter 3 Requirements Specifications.
Requirement engineering & Requirement tasks/Management. 1Prepared By:Jay A.Dave.
Larman chapter 61 Use cases Larman chapter 6. 2 Fig. 6.1.
Summary from previous lectures
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
1 BTS330 Visual Modeling. What is Visual Modeling? 2 Copyright © 1997 by Rational Software Corporation Computer System Business Process Order Item Ship.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Wixom, and David Tegarden Chapter 8: Behavioral Modeling.
SYSTEM-LEVEL SEQUENCE DIAGRAMS Sys466. System-Level Sequence Diagrams  Use cases describe how external actors interact with the software system…  An.
Application Analysis. Application Interaction Model The purpose of analysis is to understand the problem so.
Object Oriented Analysis & Design By Rashid Mahmood.
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.
The Next Stage in Analysis: Systems Use Case Diagrams
The Next Stage in Analysis: Systems Use Case Diagrams
Unified Modeling Language
Software Design Lecture : 15.
Use Case Modeling.
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
Presentation transcript:

SYS466 Casual Use Case Specifications

Systems Use Case Diagrams and Specifications Based on the dialog metaphor Based on the dialog metaphor The process of designing the overall sequences that users follow to interact with an information system The process of designing the overall sequences that users follow to interact with an information system The sequence in which information is displayed to and obtained from the user The sequence in which information is displayed to and obtained from the user

Sequence understanding how the user will interact with the system understanding how the user will interact with the system clear understanding of user, task, technological and environmental characteristics clear understanding of user, task, technological and environmental characteristics

Systems Use Case Diagram Place holder for the Systems Use Case Specification Place holder for the Systems Use Case Specification A visual index, providing a context for the Specifications A visual index, providing a context for the Specifications * Systems Use Cases Modeling by Bittner & Spence, Pages

Systems Use Case Specifications The (systems) use case specifications provide the substance of the (systems) use case model and they are the basis for most of the …modeling work…More than 90% of the (systems) use-case model lies beneath the surface, in the textual use-case specifications themselves. * The (systems) use case specifications provide the substance of the (systems) use case model and they are the basis for most of the …modeling work…More than 90% of the (systems) use-case model lies beneath the surface, in the textual use-case specifications themselves. * *Use Case Modeling, Kurt Bittner & Ian Spence, Addison-Wesley, 2003, p. 30

Systems Use Case Specifications “(Systems) use cases are more than just a named ellipse and a brief Specification. For each (systems) use case there will also be a (systems) use-case specification where the full story of the use case is told.”* “(Systems) use cases are more than just a named ellipse and a brief Specification. For each (systems) use case there will also be a (systems) use-case specification where the full story of the use case is told.”* * Use Case Modeling, Kurt Bittner & Ian Spence, Addison-Wesley, 2003, p. 30

Systems Use Case Specifications “The use case specification tells a story of how a system and its actors collaborate to achieve a specific goal “The use case specification tells a story of how a system and its actors collaborate to achieve a specific goal This collaboration takes the form of a dialog between the system and its actors This collaboration takes the form of a dialog between the system and its actors It is a step-by-step description of a particular way of using a system”* It is a step-by-step description of a particular way of using a system”* * Use Case Modeling, Kurt Bittner & Ian Spence, Addison-Wesley, 2003, p. 24

Systems Use Case Specification Not a complete specification of all possible ways that some task is performed Not a complete specification of all possible ways that some task is performed Does not say how the system is designed or implemented Does not say how the system is designed or implemented Describes typical ways (or scenarios) of using the system* Describes typical ways (or scenarios) of using the system* *Use Case Modeling, Kurt Bittner & Ian Spence, Addison-Wesley, 2003, pp

WIKPEDIA EXPLANATION OF USE CASES AND USE CASE SPECIFICATIONS An excellent explanation of use cases and use case specifications An excellent explanation of use cases and use case specificationsexplanation

Systems Use Case Specifications “Use cases are a good way to help keep it simple, and make it possible for domain experts or requirement donors to themselves write (or participate in writing) use cases.” “Use cases are a good way to help keep it simple, and make it possible for domain experts or requirement donors to themselves write (or participate in writing) use cases.” “Another value of use cases is that they emphasize the user goals and perspective; we ask the question "Who is using the system, what are their typical scenarios of use, and what are their goals?" This is a more user-centric emphasis compared to simply asking for a list of system features.” “Another value of use cases is that they emphasize the user goals and perspective; we ask the question "Who is using the system, what are their typical scenarios of use, and what are their goals?" This is a more user-centric emphasis compared to simply asking for a list of system features.” Larman, Chapter 6, 6.4

Systems Use Case Specifications The systems use case specification must include: The systems use case specification must include: Who the actors are and how many of them are interacting with the system at any point in time Who the actors are and how many of them are interacting with the system at any point in time What data is used and how What data is used and how All normal logic All normal logic

Essential UI-free style “In an essential writing style, the narrative is expressed at the level of the user's intentions and system's responsibilities rather than their concrete actions. They remain free of technology and mechanism details, especially those related to the UI. “ “In an essential writing style, the narrative is expressed at the level of the user's intentions and system's responsibilities rather than their concrete actions. They remain free of technology and mechanism details, especially those related to the UI. “ Larman, Chapter 6, 6.11

Essential UI-free style “Write use cases in an essential style; keep the user interface out and focus on actor intent.” “Write use cases in an essential style; keep the user interface out and focus on actor intent.” Larman, Chapter 6, 6.11

Black-Box Use Cases “Black-box use cases are the most common and recommended kind; they do not describe the internal workings of the system, its components, or design. Rather, the system is described as having responsibilities, which is a common unifying metaphorical theme in object-oriented thinking— software elements have responsibilities and collaborate with other elements that have responsibilities.” “Black-box use cases are the most common and recommended kind; they do not describe the internal workings of the system, its components, or design. Rather, the system is described as having responsibilities, which is a common unifying metaphorical theme in object-oriented thinking— software elements have responsibilities and collaborate with other elements that have responsibilities.” Larman, Chapter 6, 6.13

Black-Box Use Cases “By defining system responsibilities with black-box use cases, one can specify what the system must do (the behavior or functional requirements) without deciding how it will do it (the design). Indeed, the definition of "analysis" versus "design" is sometimes summarized as "what" versus "how." This is an important theme in good software development: During requirements analysis avoid making "how" decisions, and specify the external behavior for the system, as a black box. Later, during design, create a solution that meets the specification.” “By defining system responsibilities with black-box use cases, one can specify what the system must do (the behavior or functional requirements) without deciding how it will do it (the design). Indeed, the definition of "analysis" versus "design" is sometimes summarized as "what" versus "how." This is an important theme in good software development: During requirements analysis avoid making "how" decisions, and specify the external behavior for the system, as a black box. Later, during design, create a solution that meets the specification.” Larman, Chapter 6, 6.13

Black-Box Style NOT The system records the sale. The system writes the sale to the database. Even worse: The system generates a SQL INSERT statement for the sale… Larman, Chapter 6, 6.13

The Use Case Specification One of the best checks of whether a use case specification is finished is to ask if you could use the use case to derive system tests. One of the best checks of whether a use case specification is finished is to ask if you could use the use case to derive system tests. The best way to tell if the use cases fit the purpose is to pass them along to the…test team for test design. The best way to tell if the use cases fit the purpose is to pass them along to the…test team for test design. If the team is satisfied that they can use the use cases to support this activity, then the use case specifications contain sufficient levels of detail. If the team is satisfied that they can use the use cases to support this activity, then the use case specifications contain sufficient levels of detail.