Question: SE 3 1 7 : Lab 6 Testing Distributed Systems The ATM Machine and the Utility Company In this assignment you will build and test
SE : Lab Testing Distributed Systems The ATM Machine and the Utility Company In this assignment you will build and test a distributed system of multiple subsystems, a bank system made of a checking and a saving account, and an external utility company system. You will start with an ATM machine. The machine will allow users access to their bank accounts and manage their money transfer and bill payment. The bank has the following rules: Checking Account: The user can have one checking account. The user can deposit up to $ per day to this account using one or more transactions. The user can withdraw a maximum of $ per day using one or more transactions. The user can transfer any amount of money from their checking account to their saving account. The user can use this checking account to pay bills to their utility company. The user can check the balance of their checking account. The bank does not allow overdraft, the balance can NOT be negative. Saving Account: The user can have one saving account. The user can deposit up to $ per day using one or more transactions. The user can NOT withdraw any money from this account. The user can transfer up to $ per day from their saving account to their checking account using one or more transactions. The user can NOT use this account to pay bills. The user can check the balance of their saving account. The bank does not allow overdraft, the balance can NOT be negative. The Utility Company The user will create a new account at the utility company using a username and a password. The utility company will give the user a new account number digit generated automatically. The user has access to their utility company account using their username or utility account number and a password. The user can log on to their utility account at any time and check their bill payment history, including the last paid bills. The user can also check the next bill payment amount and due date. All three accounts are persistent. Testing and Deliverables: A schematic diagram of the three subsystems Bank Checking, Bank Saving, and Utility Source code: a Use exception handling and add appropriate comments to your code. b Use appropriate persistent storage structures for the bank and the utility company accounts. c Interaction IO will be done using command line. d Add a ReadMe file of how to deploy and use your assignment. e Use your own software code components, do not use any existing application. Screenshots showing the steps of user actions and the corresponding output. Code Testing: a A comprehensive teat plan of your software, including: i Test designs and execution of your project functions and algorithms, storage structures, and user actions for handling the functionalities of their two bank accounts and the utility company valid and invalid transactions shall be covered in your tests ii iii. For data storage: Test null storage, null element with multiple elements, null single element, incompatible types, empty elements as well as two normal cases single and multiple elements Test outcomes screen shots and description iv Sufficient transactions for testing UI Testing: For the requirements given above, develop an experiment to evaluate the UI i Use two testing methods: functionality and boundary. ii iii. Provide one test criterion for each method. Design a suitable Test Requirement TR set for each criterion. iv Provide all test cases for your TR set. v Run your test cases and collect results of your UI tests using the following table: Test method, test criterion, test input values, test expected output, test actual output, successfail vi Take screenshots of your test results vii. Analyze your results and identify any unexpected behavior or wrong results. viii. Provide a report interpreting your test results. Notes: There is some overlap between code testing and UI testing, but they are done from a different perspective. You can reuse some tests from in if it applies. Additional details and Q&A will be discussed in class. Good luck,
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
