CS341 Software Quality Assurance and Testing - Tutorial2-Solution
CS341 Software Quality Assurance and Testing - Tutorial2-Solution
Tutorial 2 - Solution
Objectives
At the end of this tutorial activity you should be able to:
2. According to the IEEE definition of SQA, quality control (QC) is not equated with
quality assurance (QA).
a. In what respects does QC vary from QA?
b. Why can QC be considered part of QA?
Solution
a. Both QC and QA have a common objective, namely to bring the quality of a software product
to a required controlled level. However QA has an additional important objective – to achieve
the aforementioned basic objective, while minimizing the costs of quality. Thus, QC varies
from QA by the scope of tools applied. QC focuses on evaluating the quality of a developed
product by inspection and testing, and withholding of the software product until the detected
errors are repaired and the software product qualifies.
The objective of quality assurance is to minimize the cost of guaranteeing quality by a variety
of activities performed throughout the development and maintenance processes, and by adding
activities that prevent the causes of errors and extensively applying them to detection and
correction activities early in the development process.
1|Page
Course Coordinator: Dr.Vani Vasudevan
b. As evaluation activities of the software product that comprise QC are a major part of QA
(the other major part being prevention activities), consequently QC is a part of QA.
3. A programmer claims that because only a small proportion of software errors turn
into software failures, it is unnecessary to make substantial investments in the
prevention and elimination of software errors.
1. Do you agree with this view?
2. Discuss the outcome of accepting these views.
Solution
1. No. Considering the damage caused by software errors, one must invest as much effort
as possible in eliminating software errors to reduce these damages to a minimum. Like
the manufacturing industries, the target and aspiration of the software industry is to
achieve “zero defect” quality.
2. Some possible outcomes of the “no investments in errors prevention and detection”
policy:
– Lack of control over the extent of possible failures especially of severe failures.
– A software failure may threaten a patient’s life or a soldier in combat.
– Software failures are not limited to user’s waste of time until the failure is repaired, but
cause damage to other systems. An example: failure of the software system that processes
shipping documents not only causes loss of time of the shipping clerk but also loss of time
of the warehouse team, truck drivers and others.
– Software failures occur at unexpected times and can cause maximum damage. In addition
to failures that occur during the running-in of the software system and during the first period
of operation of the new software system, a situation causing an increase in software failures
may occur even after a few years.
4. George Wise is an exceptional programmer. Testing his software modules reveals very
few errors, far fewer than the team’s average. He keeps his schedule promptly, and only
rarely is he late in completing his task. He always finds original ways to solve
programming difficulties, and uses an original, individual version of the coding style. He
dislikes preparing the required documentation, and rarely does he do it according to the
team’s templates.
A day after completing a challenging task, on time, he was called to the office of the
department’s chief software engineer. Instead of being praised for his accomplishments
(as he expected), he was warned by the company’s chief software engineer that he would
be fired unless he began to fully comply with team’s coding and documentation
instructions.
1. Do you agree with the position taken by the department’s chief software engineer?
2. If yes, could you suggest why his/her position was so decisive?
Solution
1. Yes.
2. The use of non-standard coding and documentation methods by George Wise cause:
– Extra difficulties to other programmers who have to develop software modules that need to
interface with George’s module that may result in errors.
2|Page
Course Coordinator: Dr.Vani Vasudevan
– Extra difficulties to an inspection team and testing team that may result in lower than regular
rates of error detecting.
Students have to form a group of 4 members and choose a quality standard to research on. The
findings of the research will need to be presented to the class using presentation software.
Outline of the presentation should include
1. Introduction on the Standard chosen
a. What does it cover?
2. Where & how is it applied?
3. Its Applicability in ensuring quality in software.
4. Pros and Cons of the standard
3|Page
Course Coordinator: Dr.Vani Vasudevan