Software Quality Engineering: Week-1

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 18

Software Quality Engineering

Week-1
What is Software?

According to the IEEE Software is:


“Computer programs, procedures, and possibly
associated documentation and data pertaining to the
operation of a computer system”.
QUALITY

• the standard of something as measured against other


things of a similar kind; the degree of excellence of
something.
What is Software Quality ?

According to the IEEE


•Software quality is:
1. The degree to which a system, component, or process meets
specified requirements.
2. The degree to which a system, component, or process meets
customer or user needs or expectations.
According to Pressman
“Conformance to explicitly stated functional and performance requirements,
explicitly documented development standards, and implicit characteristics that
are expected of all professionally developed software”.
What is Software Quality?

• “Achieving high levels of user satisfaction, portability,


maintainability, robustness, and fitness for use” by Dr.
Barry Boehm.
• Quality means “conformance to user requirements” by
Phil Crosby.
• Edwards Deming considers quality to be “striving for
excellence” in reliability and functions by continuous
improvement in the process of development, support by
statistical analysis of the causes of failure.
What is Software Quality?

• Watts Humphrey, of the SEI, tends to speak of quality as


“achieving excellent levels of fitness for use,
conformance to requirements, reliability and
maintainability.”
• James Martin said that software quality means being on
time, within budget and meeting user needs
• Tom McCabe, the software complexity specialist, defines
quality as “high level of user satisfaction and low defect
levels, often associated with low complexity
What is Software Quality?

• John Musa of Bell Laboratories states that quality means


combination of “low defect levels, adherence (tenacity.)of
software functions to users needs, and high reliability”
• Bill Perry, head of Quality Assurance Institute has
defined quality as “high levels of user satisfaction and
adherence (tenacity.) to requirements”.
Why Quality is Important?

• Quality is critical for survival and success.


• Customers demand quality.
• Everybody seems to understand quality.
• Everybody wants quality
• Everybody has a different perception of quality.
• Essentially quality means satisfying customer.
Why Quality is Important?

• Why business should be concerned with


quality:
– Quality is competitive issue now Quality is a must
– for survival Quality gives you the global reach
– Quality is cost effective
– Quality helps retain customers and increase profits
– Quality is the hallmarks of world-class business


Importance of Software Quality


Software is a major component of computer systems (about

80% of the cost) – used for
–communication (e.g. phone system, email system)
–health monitoring,
–transportation (e.g. automobile, aeronautics),
–economic exchanges (e.g. ecommerce),
 –entertainment,
–etc.
Software defects are extremely costly in term of
–money
–reputation
–loss of life
McCall’s Quality Factors

• McCall has 11 factors; Groups them into categories.

• Three categories:
– Product Operation Factors
• How well it runs….
• Correctness, reliability, efficiency, integrity, and usability
– Product Revision Factors
• How well it can be changed, tested, and redeployed.
• Maintainability; flexibility; testability
– Product Transition Factors
• How well it can be moved to different platforms and interface with
other systems
• Portability; Reusability; Interoperability
McCall's software quality
factors model

Software quality factors

Product operation factors


Product revision factors
Product transition factors
McCalls factor model tree
Software Quality Factors

 Correctness

accuracy, completeness of required output upto-dateness,

availability of the information
 Reliability

Minimum failure rate
 Efficiency
resources needed to perform software function

Integrity

software system security, access rights
 Usability

ability to learn, perform required task
Software Quality Factors

 Maintainability
– effort to identify and fix software failures (modularity, documentation, etc)

Flexibilit
– degree of adaptability (to new customers, tasks, etc)
y
 Testability
– support for testing (e.g. log files, automatic diagnostics, etc)
 Portability
– adaptation to other environments (hardware, software)
 Reusability
– use of software components for other projects
 Interoperability
– ability to interface with other components/systems
Software Quality Challenges

• The measures for quality differ from project to project and


organization to organization
Quality
– measures used for small systems may not be
appropriate for the large ones.
• Criteria for quality vary as a function of the specific
characteristics of the project, the needs of the users
and stakeholders, and the application requirements of
the system and software.

Software Quality Challenges

• Quality criteria vary dramatically depending on the phase


of the project at which the evaluation takes place
• The measures of the quality must be specific to the
project being evaluated and must assess the effectiveness
of the entire development process, not just individual
segments.
Software Quality Challenges

• Quality cannot be directly checked in the product; it


must planned right from the beginning.
• Quality goals must be clearly defined, effectively
monitor.
• The project must focus on the quality issues of the
project from the beginning, ensuring that quality criteria
are consistent with defined requirements.
• Quality must be planed into the project structure,
constantly evaluated, and corrections applied when
deficiencies are identified.

You might also like