Software Project Management Lecture # 12. Outline Chapter 26 – Quality Management What is Quality? Meaning of Quality in Various Context Software
Post on 02-Jan-2016
Embed Size (px)
Software Project ManagementLecture # 12
OutlineChapter 26 Quality ManagementWhat is Quality?Meaning of Quality in Various ContextSoftware QualityProject Quality ManagementQuality PlanningQuality AssuranceQuality ControlCost of Quality
What is Quality?British Standard Institutes definitionQuality is totality of features & characteristics of a product or service which relate on its ability to satisfy a given need.American Heritage Dictionary definitionQuality is characteristic or attribute of something.Quality of SoftwareQuality of Software is software that does what it is supposed to do.Customer dissatisfaction is lack of quality.
Quality in Various ContextIn Manufacturing ContextQuality means that the developed product should meet its specification.In Software Development ContextQuality would mean that a software product conforms to its specificationSoftware specification should be oriented towards customer requirements. There may be some implicit requirements like maintainability, usability, etc. but they are not included in the specification.
Quality in Various Context (Contd.)Practically, its very difficult to write complete software specifications/ characteristics. Therefore, although the product conforms to its specifications, it may not satisfy the customer as hence may not be considered as a high quality product.
Another School of Thought Quality can be achieved by defining standards & organizational quality procedures that check that these standards are followed by the software development teamBesides standards & procedures there are intangible aspects also involved in software quality like elegance, readability, etc.
Software Quality (All purpose definition)Although there are many definitions of quality but for our purposes, software quality is conformance to:the explicitly stated functional & performance requirements, explicitly documented development standards & implicit characteristics that are expected of all professionally developed software
Software Quality (All purpose definition)This definition emphasizes on 3 important pointsS/W requirements a foundation from which quality is measuredStandards define development criteria against which S/W is engineeredImplicit requirements often go unmentioned but if not met, can cause suspicion in quality
Project Quality Management PMBOKIt is a subset of project management.It includes the processes required to ensure that the project will satisfy the needs for which it was undertaken.It includes all the activities of the overall management function that determine the quality policy, objectives and responsibilities and implements them by means such as quality planning, quality assurance, quality control and quality improvement, within the quality system *
* International Organization for Standardization. ISO 8402.1994. Quality Management and Quality Assurance. Geneva, Switerland: ISO Press
Project Quality Management PMBOKHence the major project quality management processes are:Quality PlanningIdentifying quality standards relevant to project and determining how to satisfy themQuality AssuranceEvaluating overall project performance on a regular basis to ensure that project will satisfy the relevant quality standardsQuality ControlMonitoring specific project results to determine their compliance to relevant standards and identifying ways to eliminate causes of unsatisfactory performance
Project Quality Management Overview
Please note that PMBOK Guide describes the quality management compatible withQuality as defined by ISO (ISO 9000 and 10000 series of standards)Proprietary approaches recommended by Deming, Juran, Crosby and othersNon proprietary approaches such as Total Quality Management (TQM), Continuous Improvement and others
Project Quality Management Quality Planning
Project Quality ManagementQuality Planning InputsQuality PolicyOverall intentions & direction of organization with regard to quality, formally expressed by top management.Scope StatementDocuments major deliverables and project objectives as per stakeholders requirementsProduct descriptionContains details of tech. issues that may affect qualityStandards and regulationsApplication area specific standards and regulationsOther process outputsProcesses in other (PMBOK) knowledge areas may produce certain outputs that may be considered in quality planning
Project Quality ManagementQuality Planning Tools & TechniquesBenefit/cost analysisThis analysis must be considered in quality planning. Benefits mostly outweigh the costs.Primary benefit of meeting quality requirements is less rework. Primary cost of meeting quality requirements is expenses of project quality management.BenchmarkingComparing actual or planned project activities to those of other (appropriate) projects for improvement and performance measurement.FlowchartingDiagrams that show how various elements inter-relate. This may help project team to anticipate what and where quality problems may occur.
Design of experimentsStatistical method to help identify factors that may influence specific variables, applied to product of project.Cost of quality (discussed later in detail)Total cost of all efforts to achieve product/service quality
Project Quality ManagementQuality Planning OutputsQuality Management PlanDescribes how project team will implement the quality policy (organizational structure, responsibilities, procedures, processes, resources to implement quality management)Operational DefinitionsDescribe what something is and how it is measured by the quality control process. ChecklistsUsed to verify if a required set of steps has been performedInputs to other processesQuality planning may identify need for further activity in other areas
Project Quality Management Quality Assurance
Project Quality ManagementQuality Assurance InputQuality management planOutput of quality planningResults of quality control measurementsRecords of quality control testing and measurement in a format for comparison and analysisOperational definitionsOutput of quality planning
Project Quality ManagementQuality Assurance Tools & TechniquesQuality planning tools and techniquesAs discussed in quality planning sectionQuality auditsA structured review of quality management activities which can be random or scheduled. The objective is to identify lessons learned to improve performance this project and other projects within the organization.Auditors can be in-house or from third-party.
Project Quality ManagementQuality Assurance OutputsQuality ImprovementIncludes actions to increase effectiveness and efficiency of project.Implementing quality improvements include change requests, corrective actions, etc. and are handled according to procedures of change control.
Project Quality Management Quality Control
Project Quality Management Quality Control InputsWork resultsBoth process and product results information about the planned or expected results (from project plan) should be available along with information about actual results/Quality management planOutput of quality planningOperational definitionsOutput of quality planningChecklistsOutput of quality planning
Project Quality ManagementQuality Control Tools & TechniquesInspectionIncludes activities such as measuring, examining and testing to determine whether results conform to requirements. Inspections are also called reviews, audits, walkthroughs.Control chartsThese are graphic display of results, over time, of a process.They can be used to monitor any type of output variable, for example, cost and schedule variances, volume and frequency of scope changes, errors in projects, etc.Pareto diagramsIt is a histogram ordered by frequency of occurrence, that shows how many results were generated by type or category of identified cause.Problems causing greatest number of defects should be fixed first.Conceptually these diagrams are related to Pareto Principle (80/20 principle 80% of problems are due to 20% causes)
Statistical samplingIt involves choosing part of a population of interest for inspection, e.g., selecting 10 engg. drawings randomly from 75.Appropriate sampling (technique) can reduce cost of quality control.FlowchartingAs described earlier helps in problem analysisTrend analysisMathematical techniques to forecast future outcomes based on historical data. Trend analysis is used to monitor: technical performance how many errors or defects have been identified, how many remain uncorrectedCost and schedule performance how many activities per period were completed with significant variances
Project Quality ManagementQuality Control OutputsQuality improvementAs described earlierAcceptance decisionsItems inspected may be accepted or rejected. Rejected items may require rework.ReworkIt is to bring the defective or unconforming item in compliance with the requirements or specifications. Completed checklistsCompleted checklists become part of project record.Process adjustmentsInvolve immediate corrective or preventive action as a result of quality control measurements.
Project Quality ManagementQuality Management is an umbrella activity that is applied through out the software process.Every one involved in software engineering process is responsible for quality.Emphasis on quality in all software engineering activities reduces the amount of rework that the software engineering team must do this eventually lowers costs, improves time to marketThe team must identify SQA activities that will filter errors out of the work products before they are passed on. But before doi