Embed Size (px)
Transcript of Unit 1
Software Quality ManagementJuly 27, 2011Author name : Selvapriyavadhana
SyllabusMC9277 : SOFTWARE QUALITY MANAGEMENT
UNIT I : FUNDAMENTALS OF SOFTWARE QUALITY ENGINEERINGConcepts Of Quality - Hierarchical Modeling - Quality Models - Quality Criteria And Its Interrelation - Fundamentals Of Software Quality Improvement Concepts Of Quality Improvement - Concepts Of Process Maturity - Improving Process Maturity.
UNIT II:DEVELOPMENTS IN MEASURING QUALITYSelecting Quality Goals And Measures - Principles Of Measurement - Measures And Metrics - Quality Function Deployment - Goal/Question/Measure Paradigm - Quality Characteristics Tree - The FURPS Model And FURPS+ - Gilb Approach -Quality Prompts.
UNIT III:QUALITY MANAGEMENT SYSTEMElements Of A Quality Engineering Program - Quality Control, Assurance And Engineering - Reliability, Maintainability, Veriability, Testability, Safety And Supportability - Historical Perspective Elements Of QMS - Human Factors Time Management - QMS For Software-Quality Assurance - ISO9000 Series-A Generic Quality Management Standard - Tools For Quality.
UNIT IV:PRINCIPLES AND PRACTICES IN QMSProcess-Product-Project-People In Software Development And Management Spectrum - Principle And Critical Practices In QMS - ISO 9001 And Capability Maturity Models -Six Sigma, Zero Defects And Statistical Quality Control.
UNIT V MEASURES AND METRICS IN PROCESS AND PROJECT DOMAINS Key Measures For Software Engineers - Defects - Productivity And Quality Measuring And Improving The Development Process - Assigning Measures To Process Elements And Events - Isikawa Diagrams - Metrics For Software Quality - Integrating Metrics Within Software Engineering Process - Metrics For Small Organizations.
Fundamentals of software quality engineering 1 Quality
Software quality In the context of software engineering, software quality measures how well software is designed (quality of design), and how well the software conforms to that design (quality of conformance), although there are several dierent denitions.Denition:
1. Conformance to specication: Quality that is dened as a matter of products and services whose measurable characteristics satisfy a xed specication that is conformance to an in beforehand dened specication. 2. Meeting customer needs: Quality that is identied independent of any measurable characteristics. That is quality is dened as the products or services capability to meet customer expectations explicit or not. 3. Quality is the degree of goodness of a product or service or perceived by the customer. The Department of Defense (DOD, 1985) in the USA denes software quality as the degree to which the attributes of the software enable it to perform its intended end use .
Characteristics of Quality:Quality is a multidimensional construct. It may therefore be considered using a polyhedron metaphor. Within this metaphor, a threedimensional solid represents quality. Each face represents a dierent aspect of quality such as correctness, reliability, and eciency.
Quality is not absolute. Quality is multidimensional. Quality is subject to constraints Quality is about acceptable compromises. Quality criteria are not independent, but interact with each other causing conicts. Views of Quality In an attempt to classify dierent and conicting views of quality,Garvin(1984) has suggested ve dierent views of quality: 1. The transcendent view Innate excellence Classical denition 2. The product-based view Higher the quality higher the cost Greater functionality Greater care in development 3. The user-based view Fitness for purpose Very hard to quantify
4. The manufacturing view Measures quality in terms of conformance Zero defects 5. The value-based view Provides the data with what the customer requires at a price. 2 HIERARCHICAL MODEL OF QUALITY
To compare quality in dierent situations, both qualitatively and quantitatively, it is necessary to establish a model of quality. Many model suggested for quality. Most are hierarchical in nature. A quantitative assessment is generally made, along with a more quantied assessment. Two principal models of this type, one by Boehm(1978) and one byMcCall in 1977. A hierarchical model of software quality is based upon a set of quality criteria, each of which has a set of measures or metrics associated with it. The issues relating to the criteria of quality are: What criteria of quality should be employed? How do they inter-relate? How may the associated metrics be combined into a meaningful overall measure of Quality?
THE HIERARCHICAL MODELS OF BOEHM AND MCCALL THE GE MODEL This model was rst proposed byMcCall in 1977. It was later revised as theMQmodel, and it is aimed by system developers to be used during the development process. In early attempt to bridge the gap between users and developers, the criteria were chosen in an attempt to reect user? s views as well as developer? s priorities. The criteria appear to be technically oriented, but they are described by a series of questions which dene them in terms to non specialist managers.
The three areas addressed by McCalls model (1977)
(basic operational characteristics) requires that it can be learnt easily, operated efciently And it results are those required by the users. The product operations perspective identies quality factors that inuence the extent to which the software fulls its specication:Product operation :
Correctness, the functionality matches the specication. Reliability, the extent to which the system fails. Eciency, system resource (including cpu, disk, memory, network) usage. Integrity, protection from unauthorized access. Usability, ease of use. (ability to change) it is concerned with error correction and adaptation Of the system and it is most costly part of software development. The product revision perspective identies quality factors that inuence the ability to change the software product, these factors are: Maintainability, the ability to nd and x a defect.Product revision :
Flexibility, the ability to make changes required as dictated by the business.SQM 7
Testability, the ability to Validate the software requirements. (adaptability to new environments) it is an important application and it is distributed processing and the rapid rate of change in hardware is Likely to increase. The product transition perspective identies quality factors that inuence the ability to adapt the software to new environments:Product transition :
Portability, the ability to transfer the software from one environment to another. Reusability, the ease of using existing software components in a dierent context. Interoperability, the extent, or ease, to which software components work together. McCalls criteria of quality dened 1. Eciency is concerned with the use of resources e.g. processor time, storage. It falls into two categories: execution eciency and storage eciency. 2. Usability is the ease of use of the software. 3. Integrity is the protection of the program from unauthorized access. 4. Correctness is the extent to which a program fulls its specication. 5. Reliability is its ability not to fail. 6. Maintainability is the eort required to locate and x a fault in the program within its operating environment.SQM 8
Figure 1: The GE model after McCall
7. Flexibility is the ease of making changes required by changes in the operating environment. 8. Testability is the ease of testing the programs, to ensure that it is error-free and meet its specication. 9. Portability is the eort required to transfer a program from one environment to another. 10. Reusability is the ease of refusing software in a dierent context. 11. Interoperability is the eort required to couple the system to another system.
The Boehm model (1978) It is to provide a set of well-dened, welldierentiated characteristics of software quality. It is hierarchical in nature but the hierarchy is extended, so that quality criteria are subdivided. According to the uses made of the system and they are classed into general or as is and the utilities are a subtype of the general utilities, to the product operation. There are two levels of actual quality criteria, the intermediate level being further split into primitive characteristics which are amenable to measurement. This model is based upon a much larger set of criteria than McCall s model, but retains the same emphasis on technical criteria. The two models share a number of common characteristics are, 1. The quality criteria are supposedly based upon the user s view. 2. The models focus on the parts that designers can more readily analyze. 3. Hierarchical models cannot be tested or validated. It cannot be shown that the metrics accurately reect the criteria. 4. The measurement of overall quality is achieved by a weighted summation of the characteristics.
Boehm talks of modiability where McCall distinguishes expandability from adaptability and documentation, understandability and clarity. 3 Quality Models
In the previous section we presented some quality management gurus as well as their ideas and views on quality primarily because this is a used and appreciated approach for dealing with quality issues in software d