Uploaded by hasindushanuka666

L1 - Introduction to quality

advertisement
BSCS 22033
Software Quality Assurance
Lecture 1 - Introduction
Kumudini Sarathchandra
(Reading DBA, PMP, MBA, Dip in BA, BSc)
Senior Lecturer – Informatics Institute of Technology
Course Aim/Intended Learning Outcomes
• Principles of software quality process and its
role in software development
• Approaches to assure software quality
• How to choose metrics to collect and use
them for testing strategies and develop test
cases.
Course Contents
•
•
•
•
Software Quality
Quality Assurance
Quality Engineering
Software testing
METHOD OF TEACHING AND
LEARNING
• 1 Session per week – 3 hours (Total 30 hours)
– Lecture
– 2 hours
- Tutorial
- 1 hour
• Individual Study - 70 hours
ASSESMENT
• Course work
50%
• Final Exam
50%
References/Reading Materials
• Jeff, T., John, W., (2005), Software Quality
Engineering: Testing, Quality Assurance and
Quantifiable Improvement.
• Ammann, P. and Offutt, J. (2008), Introduction to
Software Testing, Cambridge University Press.
• Daniel, G., (2003), Software Quality Assurance:
From Theory to Implementation, Addison Wesley.
• Stephen, K., (2002), Metrics and Models in
Software Quality Engineering, 2nd Edition,
Addison Wesley.
Lecture 1 - Learning Outcomes
• To review the Historical Perspective of Quality
• To understand the uniqueness of software
development projects compared to other
projects
• To define software quality
• To identify quality perspectives and
expectations
History of Quality
•
More details: https://asq.org/quality-resources/history-of-quality
Quality 4.0 provides a data-driven approach to managing quality, so that production is not
just measured according to how quickly products are produced, but on their level of quality,
along with the quality of every related item and transaction across the supply chain.
A Quality 4.0 approach integrates new technologies, such as digital twins, simulation testing,
AI, mobile solutions, SaaS and the Industrial Internet of Things (IoT) into traditional quality
management strategies. It leverages key technologies to collect data enterprise-wide, from
various sources to provide visibility and manage workflows, processes and protocols. It also
leverages analytics to find meaning behind the data and use it to anticipate or solve business
challenges.
Evolving perceptions of quality
• Quality has long been
associated with physical
objects or systems or
services:
– Cars, tools, radio and
television receivers, etc.
– Hospitality, banking, etc
• The focus is on ensuring
that the products or
services conform to their
specifications /
expectations.
Evolving perceptions of quality
• Dynamically shifting expectations of
customers, with the focus of quality control
shifting from
– zero defect in products to
– zero defection of customers
The uniqueness of the software
development process
• High complexity, as
compared to other
industrial products
• Invisibility of the
product
• Flexibility in SWD
process hence less
opportunities to detect
defects (“bugs”)
WHAT IS SOFTWARE QUALITY?
• What is software?
- a program or software package
- usually referred to as the “code”
Is it enough to take care of the code
in order to assure the quality of the
services provided by the software
program?
Software Quality Expectations
• The software systems must do what they are
supposed to do - the right things.
– Eg. Online booking system,
• Allow to book items online
• Allow cancel or update items (otherwise not
practical!)
• Allow booking using mobile phones
How important
Software quality to
different stakeholders?
Software Quality Expectations
• They must perform specific tasks correctly or
satisfactorily - the things right.
– Eg. Calculate average of two values a and b
Add a and b then divide by 2
Software Quality Perspectives
• transcendental view, quality is hard to define
or describe in abstract terms. It is generally
associated with some intangible properties
that delight users
• user view, quality is fitness for purpose or
meeting user’s needs.
Software Quality Perspectives
• manufacturing view, quality means
conformance to process standards that satisfy
customers
• product view, the focus is on inherent
characteristics in the product itself in the hope
that controlling these internal quality
indicators
• value-based view, quality is the customers’
willingness to pay for a software
•
Is this possible to happen?
•
•
More Terms: Failure, Fault, Error
The IEEE Standard 610.12 (IEEE,1990) defines
the following terms related to defects:
• Failure: The inability of a system or
component to perform its required functions
within specified performance requirements.
• Fault: An incorrect step, process, or data
definition in a computer program.
• Error: A human action that produces an
incorrect result.
Failure, Fault, Error
Bugs
• Software problems or defects, are also
commonly referred to as “bugs”.
• The term “debug” general means “get rid of
the bugs”. Sometimes, it also includes
activities related to detecting the presence of
bugs and dealing with them.
Identify the correct procedure to do
this calculation
Home work
• Read Chapter 2 - Daniel, G., (2003), Software
Quality Assurance: From Theory to
Implementation, Addison Wesley
Tutorial – Friday 9.00 am
• Zoom link to join:
• https://us04web.zoom.us/j/7382367581?pwd
=K2JkWk04RCthWmM3ZWNIMU1iRW5ZZz09
• Meeting ID: 738 236 7581
• Passcode: 460143
Download