0% found this document useful (0 votes)
6 views

Unit- 11 Software Quality and Project Closeout-slides

spm
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

Unit- 11 Software Quality and Project Closeout-slides

spm
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

Course Title:

BIT401: Software Project Management

Unit 11: Software Quality and Project Closeout


Unit 11: Software Quality and Project Closeout (3 Hrs.)

 Introduction;
 Importance of Software Quality;
 Defining Software Quality,
 ISO 9126,
 Techniques to Enhance Software Quality;
 Project Closure Process,
 Project Closeout Report
Unit 11: Software Quality and Project Closeout
Introduction:
We need to define precisely what qualities we require of a system. Further, we need to
judge objectively whether a system meets our quality requirements and this needs
measurement. For a software developer, delaying measurement until the system is
already in place would be considered a tardy approach(not timely).
We might want to assess the likely quality of the final system while it was still under
development, and also to make sure that the development methods used would
produce that quality. This leads to a different emphasis – rather than concentrating on
the quality of the final system, a potential customer for software might check that the
suppliers were using the best development methods.
We will discuss these issues in this chapter.

“ Quality measurement in the development process rather in final product.”

Unit 11: Software Quality and Project Closeout


Importance of Software Quality:
We would expect quality to be a concern of all producers of goods and services.
However, the special characteristics of software create special demands.
 Increasing criticality of software - The final customer or user is naturally anxious
about the general quality of software, especially its reliability. This is increasingly so
as organizations rely more on their computer systems and software is used in more
safety-critical applications, for example to control aircraft.
 Intangibility of software - The intangibility of software can make it difficult to know
that a project task was completed satisfactorily. Task outcomes can be made tangible
by demanding that the developer produce ‘deliverables’ that can be examined for
quality.
 Accumulating errors during software development - As computer system
development comprises steps where the output from one step is the input to the next,
the errors in the later deliverables will be added to those in the earlier steps, leading
to an accumulating detrimental effect. In general, the later in a project that an error is
found the more expensive it will be to fix. In addition, because the number of errors
in the system is unknown, the debugging phases of a project are particularly difficult
to control.
Unit 11: Software Quality and Project Closeout
Defining Software Quality:
A system has functional, quality and resource requirements. Functional
requirements define what the system is to do, the resource requirements specify
allowable costs and the quality requirements state how well this system is to
operate.
Defining quality is not enough. we need to be able to measure its qualities. A good
measure must relate the number of units to the maximum possible. Trying to fi nd
measures for a particular quality helps to clarify and communicate what that quality
really is.
The measures may be direct, where we can measure the quality directly, or indirect,
where the thing being measured is not the quality itself but an indicator that the
quality is present. For example, the number of enquiries by users received by a help
desk about how one operates a particular software application might be an indirect
measurement of its usability.
When project managers identify quality measurements they effectively set targets for
project team members, so care has to be taken that an improvement in the measured
quality is always meaningful.

Unit 11: Software Quality and Project Closeout


Defining Software Quality:
Software quality specification details should be:
 definition/description: definition of the quality characteristic;
 scale: the unit of measurement;
 test: the practical test of the extent to which the attribute quality exists;
 minimally acceptable: the worst value which might be acceptable if other
characteristics compensated for it, and below which the product would have to be
rejected out of hand;
 target range: the range of values within which it is planned the quality
measurement value should lie;
 now: the value that applies currently
Unit 11: Software Quality and Project Closeout
Defining Software Quality:
There could be several measurements applicable to a quality characteristic. For
example, in the case of reliability, this might be measured in terms of:
 availability: the percentage of a particular time interval that a system is usable;
 mean time between failures: the total service time divided by the number of
failures;
 failure on demand: the probability that a system will not be available at the time
required or the probability that a transaction will fail;
 support activity: the number of fault reports that are generated and processed.
Associated with reliability is maintainability, which is how quickly a fault, once
detected, can be corrected. A key component of this is changeability, which is the ease
with which the software can be modified. However, before an amendment can be
made, the fault has to be diagnosed. Maintainability can therefore be seen as
changeability plus a new quality, analyzability, which is the ease with which causes of
failure can be identified.

Unit 11: Software Quality and Project Closeout


Defining Software Quality:

Defining Software Quality,


Unit 11: Software Quality and Project Closeout
ISO 9126:
ISO 9126 is a set of international standards for the evaluation of software quality. It
provides a framework for defining and measuring the quality of software products.
The ISO 9126 standard was first introduced in 1991 to tackle the question of the
definition of software quality. The original 13-page document was designed as a
foundation upon which further, more detailed, standards could be built. The ISO 9126
standards documents are now very lengthy. Partly this is because people with
differing motivations might be interested in software quality, namely:
 acquirers who are obtaining software from external suppliers
 developers who are building a software product
 independent evaluators who are assessing the quality of a software product, not
for themselves but for a community of users – for example, those who might use
a particular type of software tool as part of their professional practice.
ISO 9126 has separate documents to cater for these three sets of needs.

Unit 11: Software Quality and Project Closeout


ISO 9126:
ISO 9126 is a set of international standards for the evaluation of software quality. It
provides a framework for defining and measuring the quality of software products.
The ISO 9126 standard was first introduced in 1991 to tackle the question of the
definition of software quality. The original 13-page document was designed as a
foundation upon which further, more detailed, standards could be built. The ISO 9126
standards documents are now very lengthy. Partly this is because people with
differing motivations might be interested in software quality, namely:
 acquirers who are obtaining software from external suppliers
 developers who are building a software product
 independent evaluators who are assessing the quality of a software product, not
for themselves but for a community of users – for example, those who might use
a particular type of software tool as part of their professional practice.
ISO 9126 has separate documents to cater for these three sets of needs.
Unit 11: Software Quality and Project Closeout
ISO 9126:
Besides internal and external quality attributes measurement procedure, ISO 9126
also introduces another type of quality – quality in use – for which the following
elements have been identified:
 effectiveness: the ability to achieve user goals with accuracy and completeness;
 productivity: avoiding the excessive use of resources, such as staff effort, in
achieving user goals;
 safety: within reasonable levels of risk of harm to people and other entities such
as business, software, property and the environment;
 satisfaction: smiling users.

Unit 11: Software Quality and Project Closeout


ISO 9126:
ISO 9126 identifies six major external software quality characteristics:
 functionality, which covers the functions that a software product provides to
satisfy user needs;
 reliability, which relates to the capability of the software to maintain its level of
performance;
 usability, which relates to the effort needed to use the software;
 efficiency, which relates to the physical resources used when the software is
executed;
 maintainability, which relates to the effort needed to the make changes to the
software;
 portability, which relates to the ability of the software to be transferred to a
different environment.
Unit 11: Software Quality and Project Closeout
ISO 9126:
ISO 9126 suggests sub-characteristics for each of the primary characteristics. They
are useful as they clarify what is meant by each of the main characteristics.
‘Functionality compliance’ refers to the degree to which the software adheres to
application-related standards or legal requirements. Sub-characteristic called
‘compliance’ has been added to all six ISO external characteristics. In each case, this
refers to any specific standards that might apply to the particular quality attribute.

Unit 11: Software Quality and Project Closeout


ISO 9126:
ISO 9126 provides guidelines for the use of the quality characteristics. Once the
requirements for the software product have been established, the following steps are
suggested:
1. Judge the importance of each quality characteristic for the application :
2. Select the external quality measurements within the ISO 9126 framework
relevant to the qualities prioritized.
3. Map measurements onto ratings that reflect user satisfaction.
4. Identify the relevant internal measurements and the intermediate products in
which they appear
5. Overall assessment of product quality
Unit 11: Software Quality and Project Closeout
ISO 9126:
Map measurements onto ratings that reflect user satisfaction:

Finally, a quality assessment can be made on behalf of a user community as a whole. For example, a
professional body might assess software tools that support the working practices of its members. Unlike
the selection by an individual user/purchaser, this is an attempt to produce an objective assessment of the
software independently of a particular user environment. It is clear that the result of such an exercise
would vary considerably depending on the weightings given to each software characteristic, and
different users could have different requirements. Caution would be needed here.

Unit 11: Software Quality and Project Closeout


Software Quality:
Product and Process Metrics
Product versus Process Quality Management
Quality Management Systems
BS EN ISO 9001:2000
An overview of BS EN ISO 9001:2000 QMS requirements
Process Capability Models
A historical perspective
SEI CMM (SEI (Software Engineering Institute) Capability Maturity Model (CMM))
Key process areas
CMMI (Capability Maturity Model Integration)
ISO 15504 Process assessment
Implementing process improvement
Six Sigma
Unit 11: Software Quality and Project Closeout
Software Quality:
Software quality can be enhanced from two keys aspects
1. Product Quality Management -This focuses on the quality of the final output or
deliverable. It involves ensuring that the products or services meet or exceed the
specified requirements and standards. Product quality is often measured by
factors such as reliability, durability, performance, and customer satisfaction.
Concentrates on the end result, evaluating the features and characteristics of the
final product or service to meet customer expectations.
2. Process Quality Management - This concentrates on the quality of the processes
involved in creating a product or delivering a service. It emphasizes establishing
and maintaining effective and efficient processes to consistently produce high-
quality products. The idea is that a well-controlled and optimized process will
naturally result in high-quality outputs.
Focuses on the methods, procedures, and systems used to create a product. It's
about improving and optimizing the processes to ensure that the end product
consistently meets quality standards.

Unit 11: Software Quality and Project Closeout


Software Quality:
Product and Process Metrics:
Users assess the quality of a software product based on its external attributes,
whereas during development, the developers assess the product’s quality based on
various internal attributes. During development, the developers can ensure the
quality of a software product based on a measurement of the relevant internal
attributes. The internal attributes may measure either some aspects of the product
(called product or of the development process (called process metrics).
Product Metrics: Product metrics help measure the characteristics of a product being
developed. Metrics may include defect rates, customer satisfaction scores, reliability
measures, and other characteristics specific to the end product.
Process Metrics: Process metrics help measure how a development process is
performing. Metrics involve process efficiency, effectiveness, cycle times, adherence to
procedures, and the capability of the process to consistently produce high-quality outputs.
Examples of process metrics are review effectiveness, average number of defects found
per hour of inspection, average defect correction time, productivity, average number of
failures detected during testing per LOC, and the number of latent defects per line of code
in the developed product.
Unit 11: Software Quality and Project Closeout
Techniques to Enhance Software Quality:
Some specific techniques.
The push towards more visibility has been dominated by the increasing use of walk-
throughs, inspections and reviews. The movement towards a more procedural
structure inevitably leads to discussion of structured programming techniques and to
its later manifestation in the ideas of ‘clean-room’ software development.
The improvements made by the Japanese in product quality has led to much
discussion of the quality techniques they have adopted, such as the use of quality
circles, and these will be looked at briefly. Some of these ideas are variations on the
theme of inspection and clean-room development.

Unit 11: Software Quality and Project Closeout


Project Closure Process:

Project Closure Process,


Unit 11: Software Quality and Project Closeout
Project Closeout Report:

Defining Software Quality,

You might also like