Produce a quality assurance plan for the java atm project


Assignment Problem: An ATM Project Quality Assurance and Testing

Course Learning Outcomes:

A) Understand software processes and software quality topics deeply;

B) Apply software quality assurance activities, methods, and techniques for an industrial project;

C) Analyze and evaluate software quality and it models, in terms of change, configuration and quality management;

D) Understand and apply advanced knowledge of testing, testing techniques and the role of formal methods in the testing process;

E) Design and perform effective software testing with tool support in structured and managed ways;

F) Analyze or develop testing methods using new (e.g. formal methods) and conventional software testing techniques.

An ATM Project Quality Assurance and Testing

Automated Teller Machines (ATMs) are cardholder-activated terminals that provide clients of financial institutions with access to their accounts and the ability to process financial transactions without the need for a bank clerk. Customers identify themselves at an ATM by inserting an ATM card into the terminal and entering a preselected personal identification number (PIN). The information is then verified with the card issuer and the cardholder is allowed to proceed with the transaction. An ATM is a safety-critical and real-time system that is highly complicated in its design and implementation.

The function of the ATM is to support a computerized banking network. The ATM network doesn't work independently. It has to work together with the computers and software owned by banks. Each bank provides its own computer to maintain its own accounts and process transactions against them. ATMs communicate with the banks' computers. An ATM accepts a cash card, interacts with the user, communicates with the bank computer to carry out the transaction dispenses cash, and prints receipts. The system requires appropriate record keeping and security provisions. The banks will provide their own software for their own computers. There are clearly defined interfaces for the different systems.

1. Quality Assurance (1200 words)

Imagine a department of 10 programmers (4 of them will be the testers and maintainers at a later stage) and 6 analysts (one leader), working on developing a new generation Automated Teller Machine (ATM) in the UK with new hardware and operating system. The proposed project is planning to complete the software development portion with the following assumptions and constraints:

a) This project is an ATM component of a larger ATM network project

b) This project will deliver only the software components of the ATM

c) The ATM hardware is being handled as a separate project and will be available in time for the installation phase

d) All hardware and platform documentation will be available

They have tended to follow a traditional path of gathering user requirements. The project will be developed in Java by using Object-Oriented Analysis and Development methodology. The project shall use the waterfall software development process to deliver the software products. The project will kick off on 14 Oct 2019 and will go live on 12 Oct 2020 in 12-months' time. A budget of 1 million pounds has been agreed for the project. Based on a similar project in other bank, the LOC is about 48K and each developer can write about 800 lines of code in one month on average. The staff rate is about £400/per day, per person and each function has 50 lines of code.

Task 1: Produce a quality assurance plan for the Java ATM Project

You are required to follow IEEE Standard 730 to produce a quality assurance plan for the Java ATM Project.

Task 2: Software Quality Model

You are required to use ISO/IEC 9126 to discuss 2 quality characteristics and their sub-characteristics you might wish to address for the ATM project. Explain each of these and suggest how you might attempt to measure these.

Task 3: Software Quality Management

You are required to identify the issues you think as relevant in setting up a quality management system (QMS) in this department, and recommend an appropriate QMS.

2. Software Testing (800 words)

In this section, we will give you a complete example of object-oriented analysis, design, and programming applied to a moderate size problem: the simulation of an Automated Teller Machine. All the Java source code and documents are available. These source code and documents are copyrighted by Russell C. Bjork. Permission for non-commercial reproduction for educational use is granted. You need to understand the requirements (customer and user needs) and read the material of system analysis, overall design, and detailed design. Set up the environment, review the source code, run and play with the ATM simulation program provided.

For testing purpose, we will change some parts of original program and provide you with the source code with errors. You should import the project into the Eclipse environment for further testing tasks.

Task 4: Produce a test plan for the Java ATM Project

You are required to test this ATM simulation application (all functions) and produce a detailed test plan following the IEEE Standard 829. The test plan is designed to prescribe the scope, approach, resources (constraints), and schedule of all testing activities.

Task 5: Testing Practice

Imagine that you are required to test ATM PIN functions of this ATM simulation application:

a) Critically analyze the testing methods of black box, Junit and formal method for ATM simulation program. Select and justify your testing method.

b) Write a test case specification and conduct your testing. Discuss the method used, how the testing went and lessons learned.

3. Literature review (2000 words)

The world's increased dependence on software-enabled systems has raised major concerns about software quality. Software Quality Assurance and Testing are becoming more and more important to ensure considerable flexibility to accommodate various business needs. In the last section of the coursework, you are required to investigate trends in testing with new technologies, methodologies, and tools. You should use the knowledge you learned from this module to classify the literature and identify the knowledge gaps. You can combine your current work experience or research interests to carry out a review on one of following topics (You can adjust the title to reflect your review content).

Task 6: review

a) Cloud based testing

b) Mobile testing

c) Testing of context aware systems/embedded systems/cyber physical systems

d) Testing of Cloud computing/Edge computing/IOTs

e) Agile testing

f) Testing automation/tools

g) Quality assurance and testing on an open source project

h) AI & software testing

Whenever you get stuck in any of your assignments related to the Software Quality Assurance and testing, you can come to our Software Quality Assurance and Testing Assignment Help service and get assured top-notch grades at competitive prices.

Tags: Software Quality Assurance and Testing Assignment Help, Software Quality Assurance and Testing Homework Help, Software Quality Assurance and Testing Coursework, Software Quality Assurance and Testing Solved Assignments, ATM Project Quality Assurance and Testing Assignment Help, ATM Project Quality Assurance and Testing Homework Help, Software Quality Model Assignment Help, Software Quality Model Homework Help, Software Quality Management Assignment Help, Software Quality Management Homework Help, Cloud Computing Assignment Help, Cloud Computing Homework Help

Request for Solution File

Ask an Expert for Answer!!
Computer Engineering: Produce a quality assurance plan for the java atm project
Reference No:- TGS03029601

Expected delivery within 24 Hours