Part 1
Part 1
trends (6 hours)
• By adding value for both the producer and user of a software product, high-quality
software provides benefits for the software organization and the end-user
community. The software organization gains added value because high-quality
software requires less maintenance effort, fewer bug fixes, and reduced customer
support. This enables software engineers to spend more time creating new
applications and less on rework. The user community gains added value because the
application provides a useful capability in a way that expedites some business
process.
1 SOFTWARE QUALITY
• High-quality software provides benefits for the software organization and the
end-user community.
• The end result is
• (1) greater software product revenue,
• (2) better profitability when an application supports a business process, and/or
• (3) improved availability of information that is crucial for the business.
1.1GARVIN’S QUALITY DIMENSIONS
• Performance quality. Does the software deliver all content, functions, and features that are
specified as part of the requirements model in a way that provides value to the end user?
• Feature quality. Does the software provide features that surprise and delight first-time end
users?
• Reliability. Does the software deliver all features and capability without failure? Is it available
when it is needed? Does it deliver functionality that is error free?
• Conformance. Does the software conform to local and external software standards that are
relevant to the application? Does it conform to de facto Design and coding conventions? For
example, does the user interface conform to accepted design rules for menu selection or data
input?
• Durability. Can the software be maintained (changed) or corrected (debugged) without the
inadvertent generation of unintended side effects? Will changes cause the error rate or reliability
to degrade with time?
1.1GARVIN’S QUALITY DIMENSIONS
• Appraisal costs include activities to gain insight into product condition the “first
time through” each process. Examples of appraisal costs include:
• (1) the cost of conducting technical reviews for software engineering work products,
• (2) the cost of data collection and metrics evaluation and
• (3) the cost of testing and debugging
2.1THE COST OF QUALITY
• Failure costs are those that would disappear if no errors appeared before shipping
a product to customers. Failure costs may be subdivided into internal failure costs
and external failure costs. Internal failure costs are incurred when you detect an
error in a product prior to shipment.
• Internal failure costs include:
• (1) the cost required to perform rework (repair) to correct an error,
• (2) the cost that occurs when rework inadvertently generates side effects that must be
mitigated, and
• (3) the costs associated with the collection of quality metrics that allow an organization to
assess the modes of failure
• External failure costs are associated with defects found after the product has been
shipped to the customer
3 ACHIEVING SOFTWARE QUALITY
• Management and practice are applied within the context of four broad activities
that help a software team achieve high software quality
• Software engineering methods
• To build high-quality software, you must understand the problem to be solved.
• Quality control
• Quality control encompasses a set of software engineering actions that help to ensure that each work
product meets its quality goals. Models are reviewed to ensure that they are complete and consistent.
Code may be inspected in order to uncover and correct errors before testing commences
3 ACHIEVING SOFTWARE QUALITY
• Quality assurance
• Quality assurance establishes the infrastructure that supports solid software engineering
methods, rational project management, and quality control actions—all pivotal if you intend
to build high-quality software
• The goal of quality assurance is to provide management and technical staff with the data
necessary to be informed about product quality, thereby gaining insight and confidence that
actions to achieve product quality are working