CPSC 333: Foundations of Software EngineeringJ. Denzinger Small Test: Bank account manager System has to run on an automated teller machine. User must.

Slides:



Advertisements
Similar presentations
Context Diagram Yong Choi BPA CSUB.
Advertisements

Chapter 4: Requirements Engineering
Withdrawal Transaction Use Case Primary Actor: Customer Pre-conditions: The customer must have a valid ATM card and PIN. Post-conditions: The customer.
Use Case Diagrams Damian Gordon.
CPSC 333: Foundations of Software EngineeringJ. Denzinger 2.2. Use Cases: Scenario based requirements modeling Recommended: Booch, Rumbaugh, Jacobson:
Use Case & Use Case Diagram
Introduction to Software Testing Chapter 2.6 Graph Coverage for Use Cases Paul Ammann & Jeff Offutt
USE CASE – ATM EXAMPLE Actors: ATM Customer ATM Operator Use Cases: The customer can withdraw funds from a checking or savings account query the balance.
SWE 214 (071) Use Case Diagrams Slide 1 Use Case Diagrams Examples.
Extending the Requirements Model - techniques for detailing use cases
UML and Systems Analysis MIS3502: Application Integration and Evaluation David Schuff
Introduction to Software Testing Chapter 2.6 Graph Coverage for Use Cases Paul Ammann & Jeff Offutt
Lecture 8 Electronic Commerce Modelling Techniques
ATM – requirements Team B Tom Hastjarjanto Martijn Nijenhof Ales Sturala Paul van der Ende.
Sequence Diagrams. Introduction A Sequence diagram depicts the sequence of actions that occur in a system. The invocation of methods in each object, and.
Software Modeling Jerry Lebowitz.
Use Case Diagrams - UML (Thanks to Helen Albanese for the starting point for this brief presentation)
Tutorial 2. What is a UML Use Case Diagram? Use case diagrams model the functionality of a system using actors and use cases. Use cases are services or.
Interaction Diagrams Activity Diagram State Machine Diagram
January Ron McFadyen1 Ch 9. Use-case model: drawing System Sequence Diagrams Elaboration Iteration 1: a simple cash-only success scenario of.
Data Flow Diagram Notations
{ How to Use An ATM A simple tutorial to teach how to use ATM Machines.
1 Lab Beginning Analysis and Design 4 Completion of first version of use case diagram initiates the processes of analysis and design. 4 UML provides.
INTERACTION DIAGRAMS Example Kingdom of Saudi Arabia Ministry of Higher Education Princess Noura bint Abdulrahman University College of Computer & Information.
Use Case Modeling. Use case diagram For each use case we develop  Object class diagram (with attributes only)  System sequence diagram (analysis) 
2.3 Examples: Ski resort information system
Use Cases 2 ENGR ♯10 Peter Andreae
Requirements Spec Revisited Dan Fleck. Responsibility - if you don’t do well in class, who’s problem is it?
Merijn Benjamin Christina
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 25. Review Design Level Class Diagram Identifying classes/Operations/Attributes Associations – Simple associations.
Faculty of Computer & Information Software Engineering Third year
Chapter 3, Section 3 ELECTRONIC BANKING.
USE CASE Bayu Adhi Tama, MTI Faculty of Computer Science, University of Sriwijaya Slides are adapted from Petrus Mursanto
SFWR ENG 3KO4 Software Development Fall 2009 Instructor: Dr. Kamran Sartipi Software Requirement Specification (SRS) for the Automated Banking Machine.
Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 3. Defining the System 4. Managing Scope 5.
SFWR ENG 3KO4 Software Development for Computer/Electrical Engineering Fall 2009 Instructor: Dr. Kamran Sartipi Software Requirement Specification (SRS)
Payroll System Bank System Any bank(s) to which direct deposit transactions are sent. Employee A person that works for the company that owns and operates.
Faculty of Computer & Information
1 Use Case Modeling Reference: RUP Doc. Use Case Example 2.
January Ron McFadyen1 January 2004 Assignment 1 Due: Friday Jan 23, Implement the ProductSpecification and Payment classes in any OO.
1 Graph Coverage (6). Reading Assignment P. Ammann and J. Offutt “Introduction to Software Testing” ◦ Section
ATM Adv. SW Engineering
Unit 3 Functional Requirements. Syllabus Introduction Features and usecases Use case Scenarios Documenting use cases Levels of details SRS Document.
CS212: Object Oriented Analysis and Design Lecture 32: Use case and Class diagrams.
1 Requirements Engineering From System Goals to UML Models to Software Specifications Axel Van Lamsweerde.
25/2/16. 2 DVD MovieVHS MovieVideo Game Rental Item Rental Invoice 1..* 1 Customer Checkout Screen CusID Name Address Phonenumber Transactionlist.
Lecture Outline Monday 23 rd February (Week 4) 3 – 3:10pm Review of Requirements Eng. and use cases 3:10 – 3:40pm Exercise on Use Case 3:40-4:40 Class.
Chapter 3: Software Design –Use case Diagram Nouf Alghanmi.
UC Diagram & Scenario RKPL C & D. Using Use Case Diagram Use case diagrams are used to visualize, specify, construct, and document the (intended) behavior.
1 Object-Oriented Static Modeling of the Banking System - III Lecture # 33.
Daar is geen woord Chinees bij. Follows the push model, messages are not initiated by the software 2.
1 Case Study and Use Cases for Case Study Lecture # 28.
Using Use Case Diagrams
Paul Ammann & Jeff Offutt
Requirements Spec Revisited
CMPE 280 Web UI Design and Development August 29 Class Meeting
Structured Analysis and Design Technique
How does it work? What is it made of? What is it made of?
Storyboarding and Game Design SBG, MBG620 Full Sail University
Dynamic Modeling of Banking System Case Study - I
Use Case Model.
Object-Oriented Static Modeling of the Banking System - I
Use Case Modeling - techniques for detailing use cases
Concepts, Specifications, and Diagrams
SAD ::: Spring 2018 Sabbir Muhammad Saleh
Paul Ammann & Jeff Offutt
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
Using Use Case Diagrams
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
Real-Time Structured Analysis and Design Technique (RSTAD)
Presentation transcript:

CPSC 333: Foundations of Software EngineeringJ. Denzinger Small Test: Bank account manager System has to run on an automated teller machine. User must be able to deposit checks into the account. User must be able to draw money from the account. User should be able to query the balance of his/her account. The user should get a receipt for a transaction on request. The transaction type (withdrawal or deposit), the transaction date, the account number, the amount, and the new balance should be visible on the receipt. After each transaction the new balance should be displayed to the user.

CPSC 333: Foundations of Software EngineeringJ. Denzinger Errors regarding arrows (connections) connection between actors and use cases have no direction Connections between use cases are dotted () and should be labeled > or > >: arrow points from use case describing the alternative event flow to the “standard” case >: arrow points from “calling” use case to use case that describes actions to include

CPSC 333: Foundations of Software EngineeringJ. Denzinger Errors regarding relation graphics and description If use cases are connected then in the textual description we have to “mirror” this: > … - include (verify user) … > … - (print receipt)...

CPSC 333: Foundations of Software EngineeringJ. Denzinger Errors regarding textual descriptions of use cases Preconditions not given No connection to graphical representation Different names in graphical and textual representation: user vs visitor use case name different bank info vs user info But also: use case name appearing several time in diagram

CPSC 333: Foundations of Software EngineeringJ. Denzinger Other often occuring errors Flow charts instead of use cases remember: use case = sequence of actions achieving a goal not: action = use case Exceptional flow: not only exception condition, but also actions if it occurs Exceptional flow: indicate in main flow at which point to check for this exception (if not obvious)!

CPSC 333: Foundations of Software EngineeringJ. Denzinger Good solution (1): User withdraw deposit check balance Verify user > withdraw with receipt deposit with receipt > ( print receipt)

CPSC 333: Foundations of Software EngineeringJ. Denzinger Good solution (2): Use case: withdraw Precondition: User has selected withdraw option Main flow: Include (Verify user) Prompt user for amount to withdraw Check available funds of user Check available money of ATM Remove amount from account Give money (print receipt) Print current balance Exceptional flow If not sufficient funds or money available, prompt user for lower amount

CPSC 333: Foundations of Software EngineeringJ. Denzinger Good solution (3): Use case: deposit Precondition: User has selected deposit option Main flow: Include (Verify user) Prompt user for amount of deposit Open slot Get check (print receipt) Print (balance + deposited amount)

CPSC 333: Foundations of Software EngineeringJ. Denzinger Good solution (4): Use case: check balance Precondition: User has selected balance option Main flow: Include (Verify user) Print balance

CPSC 333: Foundations of Software EngineeringJ. Denzinger Good solution (5) (not required in test): Use case: verify user Precondition: none Main flow: User enters ID card User enters PIN number System checks validity of card and number Exceptional flow: If combination is not valid, reject user

CPSC 333: Foundations of Software EngineeringJ. Denzinger Good solution (6) (not required in test): Use case: withdraw with receipt Precondition: User has selected withdraw option and print receipt option … Use case: deposit with receipt Precondition: User has selected deposit option and print receipt option...

CPSC 333: Foundations of Software EngineeringJ. Denzinger Acceptable solution (1): User withdraw deposit check balance withdraw with receipt deposit with receipt > ( print receipt)

CPSC 333: Foundations of Software EngineeringJ. Denzinger Acceptable solution (2): Use case: withdraw Precondition: User is verified and has selected withdraw option … Similar for other use cases