Lecture 1
Lecture 1
Lecture 1
Dr. Isma Hamid
Department of Computer Science
National Textile University, Faisalabad, Pakistan.
Course Information
• Course Code:
SEC-5073
• Course Name
Advanced Software Quality Assurance
• Course Objective:
The objective of the course is to make students aware about
Software Quality Assurance and testing since many jobs and
opportunities are available in this area. The course covers
both technical foundations and tools, as well as managerial
and organizational aspects.
2
Course Learning Objectives
3
Instructor’s Information
• Dr. Isma Hamid
• Professional Education
– PHD in Computer Science (2017)
Chongqing University of posts and Telecommunications, China.
– MS (SE) (2008)
University of Agriculture, Faisalabad.
– BS (CS) (2006)
University of Agriculture, Faisalabad.
Instructor’s Information
• Professional Experience
• Working as Assistant Professor (27 th September 2018 to Current)
College of Computer Science and Information Technology, Department of Computer Science, National Textile
University, Faisalabad, Pakistan.
• Final 40%
6
Books and Reading Materials
• Relevant Material will be provided as Slides and Notes.
• Course Books
– Software Quality Engineering: Testing, Quality Assurance, and
Quantifiable Improvement, Jeff Tian, Wiley-IEEE Computer Society
Press, 1 st Edition, 2005(or Latest Edition).
– “Mastering Software Quality Assurance: Best Practices, Tools and
Techniques for Software Developers”, Murali Chemuturi, J. Ross
Publishing, 2010 (or Latest Edition).
– Software Quality Analysis and Guidelines for success, Capers Jones,
International Thomson Computer Press. (Latest Edition)
7
General Course Objectives:
• This course is a study of the following topics:
• Quality Assurance,
• Defect Prevention and Removal,
• Testing techniques,
• Inspections,
• Formal specification and verification methods,
• Quality Improvement
8
Lecture 1
9
What is Quality
10
Software Quality
11
Some Principles of Quality
12
Software Quality Assurance
13
Software Quality Assurance (Cont…..)
14
Software Quality
• Conformance to explicitly stated functional and
performance requirements, explicitly documented
standards , and implicit characteristics that are expected
of all professionally developed software.
• Thus in the above definition , There are important points:
1. Quality will be measured with software requirements i.e. lack of confidence to these
requirements will mean lack of quality.
2. Specified standards define a set of development criteria that guide the manner in
which software is engineered. If the criteria are not followed , lack of quality will
result .
3. Set of implicit requirements e.g., good maintainability must still be followed . If these
are not met, software quality is suspect.
15
Note: Software quality is thus a mix of factors that will
vary across different applications and different customer.
We have two sections:
• Appraisal Cost
– In-Process and interposes inspection
– Equipment calibration and maintenance
– Testing
Cost of Quality (Cont….)
• Internal Failure Costs: are the cost incurred when we detect errors
or defect in our product prior to shipment. Internal costs include:
• Rework
• Repair
• Failure mode analysis
• External failure costs: are associated with defects found after the
product has been shipped to the customer e.g.,
• Compliant resolution
• Product return and replacement
• Helpline Support
• Warranty Work
• Product Transition
– Portability:
• The effort required to transfer the program from one
H/W and or S/W system environment to another.
– Reusability:
• The extent to which a program (or a part of a program)
can be reused in other applications-related to the
packaging and scope of the functions that the program
performed.
– Interoperability:
• The effort required to couple one system to another.
24
SQA Major Activities
• SQA Activities:
Seven activities related to SQA .
– Application of technical methods:
• SQA begins with a set of technical methods and tools that help the analyst to achieve a high quality
specification and a designer to develop a high quality design.
25
SQA Major Activities (Cont…..)
26
SQA Major Activities (Cont…..)
• Control of Change:
– Every change to s/w has the potential of introducing errors or creating
side effects that propagate errors. The change control process thus
contributing directly to s/w quality by formalizing requests for change ,
evaluating the nature of change , and controlling impact of change .
• Measurement :
– Track SQ and assess the impact of methodological and procedural
change on improved s/w quality.
• Record Keeping and recording:
– Collection and dissemination of SQA information . The results of
reviews, change control , testing and other SQA activities must become
part of a historical record for a project and should be disseminated to
the development staff on a need to know basis.
27