Vending Machine Project Pair up with another student and then you will address the following items in the Programmer’s Plan of Action (Software Design Process). The final product must be typed and professional looking. You will not be presenting this work to the class. The checklist and rubric are for me to fill out and for you to follow as a guideline. Problem Analysis- Identify the problem Design – Provide Solutions and choose the best Pseudo-Code / Flowchart – Create a logical flow for your Solution Testing the Algorithm / Solution - Test the logic in the flowchart – how do you know your algorithm will work? Testing / Verification- What three situations are to be tested? Maintenance- What to do when things change (i.e.: $5 coin is introduced) Obsolescence- When would your solution longer work? (Digital Cash Card) Due Date: Friday Sept.30 The PROBLEM At the Vending Machine a can of pop sells for $1.25. The pop machine needs to return the coin(s) if the amount (for example $1.00, Loonie) is not enough. The Coin(s) are kept when the correct amount or more is given. The machine is to calculate the change to be given and release a can of pop. Problem AnalysisIdentify the problem using the Problem Definition Table found in Handouts/Dunford/TIK/problem_definition_template.doc. Known Facts User Requirements Necessary Processing - 1 of 4 Alternative Solutions Design – Provide Solutions and choose the best using the Input, Output, Processing Chart found in Handouts/Dunford/TIK/IPOchart_template.doc. Input Data Processing Steps/Pseudo-code Output Data Flowchart – Create a logical flow for your Solution using Inspiration Software Testing the Algorithm / Solution - Follow the logical progression of the flowchart with three different scenarios. MaintenanceWhat to do when $5 coin is introduced? State algorithm changes required. ObsolescenceWhen Digital Cash Card are used in pop machines would your solution work? - 2 of 4 Vending Machine Project Summative Evaluation Rubric Name: Category Knowledge Criteria Followed software design stages Level 1 Level 2 Emerging signs Some signs of of knowledge of knowledge of software design software design stages stages Partially Completely filled Thinking Skills Usage of Problem(incompletely the problemDefinition and/or definition table Tables and IPO erroneously) and IPO charts charts filled the but has some problemerroneous definition table information and IPO charts Solving the Little sign of Some sign of problem problem problem solution solution due to due to some limited ability to unresolved clearly identify ambiguities and the problem and inability to arrive requirements, to at clarity at each resolve stage ambiguities and arrive at clarity at each stage Verifying the Verified Verified solution solutions solutions with superficially only one set of with no specific test data and/or set of test data other tools and/or other tools Communication Presentation of Below 60% in 60 – 70% in of Information the project presentation presentation checklist checklist Application of Documentation Partially Complete with software design complete with some ambiguities stages ambiguities and and sometimes often does not does not adhere adhere to design to design Making Group 1 yes out of 4 in 2 yes out of 4 in Connections cooperation, last section of last section of time/resource presentation presentation management checklist checklist - 3 of 4 Level 3 Substantial signs of knowledge of software design stages Completely filled the problemdefinition table and IPO charts with minor erroneous information Level 4 Ample evidence of knowledge of software design stages Completely filled the problemdefinition table and IPO charts free of erroneous information Most of the problem is solved due to lack of clarity at each stage Solved the problem to full user requirements and satisfaction, clarity and insight at each stage Verified Verified solutions with solutions more than one set superficially with of test data an exhaustive set and/or other tools of test data and/or other tools 70 – 80% in presentation checklist Complete, clear, and mostly adheres to program design Over 80% in presentation checklist Complete, very clear and adheres totally to specific program design 3 yes out of 4 in 4 yes out of 4 in last section of last section of presentation presentation checklist checklist Vending Machine Project Report Name: Item The Problem Definition Table is: a. Correct with given or known facts b. Correct with user requirements c. Complete with processing steps d. Complete with alternative solution(s) The Input/Processing/Output chart is: a. Complete with input, output and processing steps at each task b. Correct in its input at each task c. Correct in its output at each task d. Correct in its processing steps at each task Where applicable, the pseudo-code is a. clearly written and unambiguous b. easy to follow Where applicable, the flowchart is: a. clearly laid out with clear flow lines b. without ambiguities c. correct with the right symbols at the appropriate stages The pseudo-code clearly represents the algorithm/solution selected The pseudo-code has been traced to test if the algorithm works The flowchart clearly represents the algorithm/solution selected The flowchart has been traced to test if the algorithm works The algorithm has been tested against set(s) of suitable test data The selected algorithm/solution produces the desired results to meet user requirements. There is sufficient documentation for program specifications The wording of the documentation is unambiguous There are no spelling mistakes and no grammatical mistakes in the documentation The report is appealing in the following ways: a. The text is legible b. The colours and/or graphics are aesthetically appealing to the target audience c. The language used is appropriate for the target audience Group cooperation and time/resource management skills: a. Every member contributed equally to the project b. Every member delivered their share of work on time c. Every member communicated well with each other d. Every member used resources wisely Summary of group’s report (total all # of yes / TOTAL) - 4 of 4 Yes No