You are on page 1of 16

Software Quality Control

1st lesson
Course Goals
• To understand why software quality control is
important.

• To know how software quality assurance and


control works in a project.

• To know how to set own standards and to stick


on them in a project.
Material
• Textbook:
-Daniel Galin, Software Quality Assurance: From Theory to
Implementation, Addison Wesley, 2003, ISBN: 0-201-70945-7
Software Quality Control

1st lesson
What is Quality?
Software Quality
Project Development Costs
• Around 63% of software projects exceed their
cost estimates. The top four reasons for this
are:
– Frequent requests for changes from users
– Users' lack of understanding of their own
requirements
– Insufficient user-analyst communication and
understanding
– Problems in the Project Management
Problems
• 62% of web shoppers give up looking for the item they want
to buy online
(Zona Research)

• 50% of the potential sales from a site are lost because people
cannot find the item they are looking for
(Forrester Research)

• 80% of software lifecycle costs occur after the product is


released, in the maintenance phase - of that work
(IEEE Software)
What is Quality?
Quality is meeting the (stated) requirements
of the customer- now and in the future
(Mike Robinson)
What is Quality?
• Popular Views about Quality:
– quality related to luxury, class and taste
– quality is related to quality of life.
– I know about quality when I see the product.

• Professional Views about Quality:


– Conformance to requirements.
– Fitness for use.
What is Quality?
• Quality, simplistically, means that a product
should meet its specification
Product quality attributes
• Efficiency
– Software should not make wasteful use of system
resources (disk and memory space, CPU time, etc.) and
should present appropriate response times
• Usability (ease of use)
– Software must be usable by the users for which it was
designed
• Dependability (reliability, availability, security, safety,…)
– Software must be trustworthy
• Maintainability (ease of maintenance)
– Software must evolve to meet changing needs
– Software costs more to maintain than it does to develop.
For systems with a long life, maintenance costs may be
several times development costs
• …
Other quality attributes
– Understandability
– Adaptability
– Simplicity
– Reusability
– Learn ability
Role of Customer
• Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
• You also, can only sell assurances – in other
words, Quality.
• Customer is in absolute position to judge the
quality.
Quality Assurance
• Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
SQA Responsibilities for a Project
• Review of documents developed by
development team.
• Track the compliance with standards.
• Development of QA Plan (test plan + test
cases).
• Implementation of test cases
• Participating in code and design reviews.
Other Responsibilities of SQA
• Participate in product and process audits.
• Initiate and participate in developing
standards.
• Develop SQA’s own standards, processes and
checklists.

You might also like