Follow the Instruction

IVY TECH COMMUNITY COLLEGE

SDEV120 – M08 Evaluate: Final Project

Project Description: This project will allow students to evaluate a given scenario then use skills such as problem-solving and logic to develop an algorithm using basic program code (pseudo code/Raptor) to support the problem. This project will be due 10/12/2019

This project should satisfy the following scenario as worked on from Prelude to Programming Concepts and Design Six Edition by Stewart Venit|Elizabeth Drake :

You are writing a program that will act as an ATM machine by the end of this program. In order to access the ATM, the customer must enter their user name and their passcode. After 3 incorrect attempts at entering the user name and password, the program will end. The list of legitimate users along with their user ID, passcode and account balance will be provided to you.

There are only 5 functions that can be carried out by the ATM:

1 – Deposit (adding money to the account)

2 – Withdrawal (removing money from the account)

3 – Balance Inquiry (check current balance)

4 – Transfer Balance (transfer balance from one account to another)

5 – Log Out (exits/ends the program)

Allow the user to make up to a maximum of 3 transactions at a time. After 3 transactions, the program will terminate. After a transaction is completed, the program will update the running balance and give the customer a detailed description of the transaction. A customer cannot overdraft on their account; if they try to withdraw more money than there is, a warning will be given to the customer. Also, note that the ATM doesn’t distribute or collect coins – all monetary values are in whole dollars (e.g. an integer is an acceptable variable type). Any incorrect transaction types will display an appropriate message and count as a transaction.

Follow the Instruction 1

Project Part 1: The Raptor program should do the following:

  • Create an executable flowchart using Raptor to support your solution to the problem. Your flowchart must use a modular design. (This should be saved M07 Evaluate – Progress Report 5.)

  • Implement a menu-driven program to help assist the customer.

  • Incorporate defensive programming to make sure that the user is inputting valid data.

  • Use at least one array to capture the account information for each customer. Use correctly nested loops to allow customers to do multiple transactions.

  • With good programming style, code the program using Raptor in a way that enhances readability and ease of use, including the appropriate use of internal documentation (comments) and external documentation (user-friendly outputs).

Project Part 2: The Analysis portion of your program should do the following:

  • Use the Problem-Solving Strategy discussed in section 6.5 (pages 374 to 382) in the Prelude to Programming book to address solving the problem that has been given. Use section 6.5 (pages 374 to 382) as a guide to what your documentation should include. This portion should be completed in a Word Document not exceeding 3 pages.

    • Discuss your approach to securing your code from invalid data.

    • Create and document test data to ensure it is error-free.

  • Using draw.io., create a Use Case Diagram for your ATM machine. 

Your Final Project submission will include the following files:

  • Raptor program for the ATM Machine

  • Word document containing an analysis of the ATM machine, including a section for securing code and testing data

  • A Use Case diagram for the ATM machine created on draw.io