Sie sind auf Seite 1von 3

To achieve this unit a student must: 1. Design and develop code using structured programming methods 2.

Use modularization appropriate to the chosen programming language 3. Create and apply appropriate test schedules CASE STUDY A bank has cash machines (ATM) that allow customers to check their balances, deposit money, and withdraw cash (for this case study the maximum amount that can be withdrawn by our banks ATM machine is 200 and only if there are sufficient funds in the users account). Customers can choose to overdraw money; however, the withdrawal amount must not exceed the debit account or the 200 draft limit imposed by this ATM. Every customer has the same limit. The user must enter two codes their PIN and a Card Entered code (which represents the card being placed in the machine). The codes must match. If the codes do not match the customer has one more chance to enter the correct codes and then the machine must refuse further access. Customers can also request a balance to be displayed on screen, without cash withdrawal. Customers must be given the chance to take out their card after entering their codes. After the transaction is completed, a thank you message should be displayed and the machine made ready for the next customer. A welcome message should be displayed. The Company has established a Quality Specification stating that the software will have an accepted Failure Rate of 10% Task 1 Week 2-5 Individual Activity You have been hired by the bank as an External Consultant in order to develop that application for them using 3GL like Pascal or preferably C (ANSI 74), or Visual Basic. They are running Transaction Processing Monitors Services (TUXEDO for their ATM machine) 1. Apply an algorithmic approach for the development of a solution to the problem. Use pseudo code and flow charts to produce a program design that meets given specifications. Select appropriate constructs and concrete data types for implementing the algorithm Explain the programming language you are going to use. Identify and select appropriate data types for the above project (arrays, floating pointers, variables, files) and justify your choices (Outcome 1.1) Design using storyboard techniques to show layouts of inputs/outputs, operators of your application, and show where loops would exist (Outcome 1.2) Identify appropriate selection structures and loop structures for the ATM application (Outcome 1.3) Develop the necessary program to the desired standards requested by the bank from the case study (Outcome 1.4) Task2 Week 6-8 Individual Activity The customer has requested that the application is build in a modular way so that it can be managed and deployed easily. Further more he looks forward to establishing component reuse software policy thus enabling him to reuse software modules when developing other applications or newer programs.

1. Reengineer the above design to become a modular approach. Demonstrate the conversion of code blocks in an non-modular program into function /procedures in a modular one (outcome 2.1) Identify system variables , document their functionality and specify their scope (outcome 2.2)

Demonstrate inter-module communication by passing data-arguments between modules. By Using comments, explain the passing of variables between functions, structures, global variables, local variables. Be very careful with the data types of module variables (outcome 2.3)

Task 3 Week 9-10 Individual Activity 1. Produce a Test Plan Schedule where every functional module of the system is being tested. Provide sufficient evidence that no errors occur: Technically (through compiler, debugger e.t.c) Functionally (every functionality is being carried out and is marked as "Fail" or "Pass"(preferable) 2. Categorize and Document on error findings(semantic,syntax,run time), (Outcome 3.1 and 3.2) Task 4 Week 10-12 Individual Activity The customer requested an acceptance testing (Black Box, White Box, Dry Testing, ect) to be done on the application you programmed. 1.You are requested to produce an Acceptance Testing document (every functionality is being carried out and is marked as "Fail" or "Pass"(preferable) (outcome 3.3) 2. Test your program against the Testing Document. Provide a walk through to detect errors (using techniques as compilers, linkers, builders, debugging tools) to measure your programs performance. (Outcome 3.4) EVALUATION CRITERIA FOR PASS 1. Identify and select appropriate pre-defined data types 2. Use simple input/output and appropriate operators with the above 3. Identify and use appropriate selection structures and loop structures for the given task 4. Produce programs to desired standards 5. Construct a program from a design and use appropriate functions/procedures 6. Demonstrate the effect of scope and life time of variables 7. Pass data effectively between modules 8. Demonstrate discrimination between semantic and syntax errors 9. Produce test documentation 10. Successfully construct and use test data and schedules to detect logic errors 11. Use appropriate techniques for detecting errors Evaluation Criteria for MERIT/DISTINCTION 1. Demonstrate that you have used a wide range of pre-defined data types correctly and that appropriate input/output and that operators bind well with data types.

2. Demonstrate the use of wide range of program flow control structures

and selection

structures in a correct way 3. Demonstrate that it is very clear to you the issues of variable scope and life time are clear to you 4. Demonstrate passing data effectively and converting data types at the same time

Das könnte Ihnen auch gefallen