1 Object-Oriented Static Modeling of the Banking System - II Lecture # 32.

Slides:



Advertisements
Similar presentations
GCSE ICT By the end of this session, you will be able to: Explain main features of ATM machines Identify features of credit cards, debit cards, smart cards.
Advertisements

What Are the Functions of ATM Machines?
Chapter 4: Requirements Engineering
Banking System Case Study Using COMET Alessandro Siena Università di Genova Dipartimento di Informatica e Scienze dellInformazione.
Use Case & Use Case Diagram
ATM Security Requirements & Specification Decomposition Team B: Martijn Christiaan Vasilis Benjamin.
Lecture 10 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.
1COM6030 Systems Analysis and Design © University of Sheffield 2005 COM 6030 Software Analysis and Design Lecture 7 – More on use cases and activity diagrams.
Introduction to Software Testing Chapter 2.6 Graph Coverage for Use Cases Paul Ammann & Jeff Offutt
Use Case Modeling SJTU. Unified Modeling Language (UML) l Standardized notation for object-oriented development l Needs to be used with an analysis and.
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.
1.2.2.G1 © Take Charge Today – Revised May 2010 – Electronic Banking Bonanza – Slide 1 Funded by a grant from Take Charge America, Inc. to the Norton School.
Warm-up: April 11 What’s the difference between a checking and savings account?
Debit Card Plastic card that looks like a credit card
ATM Case Study A Discussion.
What are the questions really asking?
CPSC 333: Foundations of Software EngineeringJ. Denzinger Small Test: Bank account manager System has to run on an automated teller machine. User must.
Introduction to Software Testing Chapter 2.6 Graph Coverage for Use Cases Paul Ammann & Jeff Offutt
Information System Design IT60105 Lecture 3 System Requirement Specification.
Sequence Diagrams. Introduction A Sequence diagram depicts the sequence of actions that occur in a system. The invocation of methods in each object, and.
CS3773 Software Engineering Lecture 03 UML Use Cases.
1 Classes. 2 Finding classes w Choosing classes is first step in defining essence of problem w If you can recognize an abstraction, you’ve found a candidate.
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.
PAYMENT WITH A DEBIT-CARD Merchant swipes debit card Debit rather than credit transaction like credit card.
Part 2: Computers used in Banking
{ How to Use An ATM A simple tutorial to teach how to use ATM Machines.
2.3 Examples: Ski resort information system
Members Ashley-Gail Wright Jade Mills Sami-Jo Bryant Ruth-Ann Robinson Kimberly Grey.
Merijn Benjamin Christina
Faculty of Computer & Information Software Engineering Third year
UML basics UML distilled, a brief guide to the standard Modeling language, by Martin Fowler, 2000.
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
ICT and Banks Banks use mainframe computers to maintain customer accounts. They store a record of each customer’s withdrawals and deposits. Each bank mainframe.
SFWR ENG 3KO4 Software Development Fall 2009 Instructor: Dr. Kamran Sartipi Software Requirement Specification (SRS) for the Automated Banking Machine.
SFWR ENG 3KO4 Software Development for Computer/Electrical Engineering Fall 2009 Instructor: Dr. Kamran Sartipi Software Requirement Specification (SRS)
Faculty of Computer & Information
1 Graph Coverage (6). Reading Assignment P. Ammann and J. Offutt “Introduction to Software Testing” ◦ Section
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.
GOALS BUSINESS MATH© Thomson/South-WesternLesson 3.2Slide 1 3.2Electronic Banking Record electronic banking transactions Find account balance when banking.
Business Math 3-2 Electronic Banking. Start up Marc uses his charge card to pay for almost everything he buys. Lenore pays for most of her purchases with.
Learning Intentions Explain what an ATM is and the facilities offered Identify the stages of withdrawing cash from an ATM List the advantages and disadvantages.
Checking & Savings Accounts Economics What is a Checking Account?  Common financial service used by many consumers (a place to keep money)  Funds.
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.
UC Diagram & Scenario RKPL C & D. Using Use Case Diagram Use case diagrams are used to visualize, specify, construct, and document the (intended) behavior.
Requirements Document for the Banking System
1 Object-Oriented Static Modeling of the Banking System - III Lecture # 33.
1 Case Study and Use Cases for Case Study Lecture # 28.
Introduction What would our society be like now if we did not have ATm’s? Not able to access money when we urgently want it. You will have to go to the.
DFD(Data Flow Diagram)
Paul Ammann & Jeff Offutt
Use Case Modeling - II Lecture # 27.
Structured Analysis and Design Technique
ATM OO Design and Implementation Case Study
Copyright © 2014 Hassan Gomaa and Robert Pettit
Dynamic Modeling of Banking System Case Study - I
SECURITY FEATURES OF ATM
Object-Oriented Static Modeling of the Banking System - I
Dynamic Modeling of Banking System Case Study - II
Discover the Boom in Electronic Banking!
Software Modeling Lecture # 11.
How An ATM Work's Prepaid by, kakani Dinesh.
Paul Ammann & Jeff Offutt
Object and class structuring
Using Use Case Diagrams
Muhammad Ahmad Kahloon
Real-Time Structured Analysis and Design Technique (RSTAD)
Uses of Telecommunications & ICT
Presentation transcript:

1 Object-Oriented Static Modeling of the Banking System - II Lecture # 32

2 Problem Description A bank has several automated teller machines (ATMs), which are geographically distributed and connected via a wide area network to a central server. Each ATM machine has a card reader, a cash dispenser, a keyboard/display, and a receipt printer. By using the ATM machine, a customer can withdraw cash from either checking or savings account, query the balance of an account, or transfer funds from one account to another. A transaction is initiated when a customer inserts an ATM card into the card reader. Encoded on the magnetic strip on the back of the ATM card are the card number, the start date, and the expiration date. Assuming the card is recognized, the system validates the ATM card to determine that the expiration date has not passed, that the user-entered PIN (personal identification number) matches the PIN maintained by the system, and that the card is not lost or stolen. The customer is allowed three attempts to enter the correct PIN; the card is confiscated if the third attempt fails. Cards that have been reported lost or stolen are also confiscated.

3 Problem Description If the PIN is validated satisfactorily, the customer is prompted for a withdrawal, query, or transfer transaction. Before withdrawal transaction can be approved, the system determines that sufficient funds exist in the requested account, that the maximum daily limit will not be exceeded, and that there are sufficient funds available at the local cash dispenser. If the transaction is approved, the requested amount of cash is dispensed, a receipt is printed containing information about the transaction, and the card is ejected. Before a transfer transaction can be approved, the system determines that the customer has at least two accounts and that there are sufficient funds in the account to be debited. For approved query and transfer requests, a receipt is printed and card ejected. A customer may cancel a transaction at any time; the transaction is terminated and the card is ejected. Customer records, account records, and debit card records are all maintained at the server.

4 Problem Description An ATM operator may start up and close down the ATM to replenish the ATM cash dispenser and for routine maintenance. It is assumed that functionality to open and close accounts and to create, update, and delete customer and debit card records is provided by an existing system and is not part of this problem. ‘Designing Concurrent, Distributed, and Real-Time Applications with UML’ by H. Gomaa, Addison-Wesley, 2000

5 Entity Classes in Banking System

6 Entity Classes in the Banking System Bank bankName: String bankAddress: String Customer customerName: String customerID: String customerAddress: String

7 Entity Classes in the Banking System DebitCard cardID: String PIN: String startDate: Date expirationDate: Date status: Integer limit: Real total: Real Account accountNumber: String balance: Real

8 Entity Classes in the Banking System CheckingAccount lastDepositAmount: Real SavingsAccount interest: Real

9 Entity Classes in the Banking System ATMTransaction PINValidationTransaction startDate: Date expirationDate: Date transactionID: String cardID: String PIN: String date: Date time: Time status: Integer

10 Entity Classes in the Banking System WithdrawalTransaction accountNumber: String amount: Real Balance: Real QueryTransaction accountNumber: String amount: Real lastDepositAmount: Real

11 Entity Classes in the Banking System TransferTransaction fromaccountNumber: String toAccountNumber: String amount: Real

12 Entity Classes in the Banking System CardAccount cardID: String accountNumber ATMInfo ATMID: String ATMLocation: String ATMAddress: String

13 Entity Classes in the Banking System ATMCash cashAvailable: Integer fiveHundreds: Integer oneThousands: Integer ATMCard cardID: String startDate: Date expirationDate: Date

14 Interface Classes for External Objects

15 Output Device Interface Classes in the Banking System CardReaderInterfaceReceiptPrinterInterface CashDispenserInterface

16 User Interface Classes in the Banking System OperatorInterface CustomerInterface

17 System and Subsystem Classes

18 System and Subsystem Classes in the Banking System ATMClient Subsystem BankServer Subsystem Banking System

19 A Bank Has Many ATMs BankATM Has11..*

20 An Operator Maintains an ATM ATMOperator Maintains 11

21 An ATM Has Other Objects ATM ATMCustomer 1 1 CardReaderCashDispenser ReceiptPrinter 1 1

22 Relation Between CardReader and ATMCard CardReader ATMCard 1 1 Reads

23 Relation Between CashDispenser and ATMCash CashDispenser ATMCash 1 1 Dispenses

24 Relation Between ReceiptPrinter and Receipt ReceiptPrinter Receipt 1 1 Prints

25 Relationship Between Account and CheckingAccount & SavingsAccount Account CheckingAccountSavingAccount

26 ATMTransaction and its Subclasses ATMTransaction Withdrawal Transaction Query Transaction Transfer Transaction PIN Validation Transaction

27 Summary We identified different classes in the Banking System Case Study We identified different relationships among those classes

28 References ‘The Unified Modeling Language User Guide’ by G. Booch, J. Rambaugh, & I. Jacobson, Addison- Wesley, 1998 ‘The Unified Modeling Language Reference Guide’ by J. Rambaugh, I. Jacobson, & G. Booch, Addison-Wesley, 1998 ‘Designing Concurrent, Distributed, and Real- Time Applications with UML’ by H. Gomaa, Addison-Wesley, 2000