Topic 14Summer 2003 1 ICS 52: Introduction to Software Engineering Lecture Notes for Summer Quarter, 2003 Michele Rousseau Topic 14.

Slides:



Advertisements
Similar presentations
How ISO9001 Compares with CMM Mark C. Paulk JAN,1995 CMM version 1.1 ISO9001 July 1994 presented by Zhilan Zhou.
Advertisements

Chapter 2 The Software Process
ISO 9001 : 2000.
CPIS 357 Software Quality & Testing I.Rehab Bahaaddin Ashary Faculty of Computing and Information Technology Information Systems Department Fall 2010.
Process Improvement.
The ISO 9002 Quality Assurance Management System
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 28 Slide 1 Process Improvement.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 28 Slide 1 Process Improvement.
Software Development Process Models. The Waterfall Development Model.
Planning a measurement program What is a metrics plan? A metrics plan must describe the who, what, where, when, how, and why of metrics. It begins with.
Capability Maturity Model (CMM) in SW design
1 R&D SDM 1 Software Project Management Capability Maturity Model 2009 Theo Schouten.
Chapter 3 The Structure of the CMM
CMMI Overview Quality Frameworks.
Software Process CS 414 – Software Engineering I Donald J. Bagert Rose-Hulman Institute of Technology December 17, 2002.
Chapter 24 - Quality Management 1Chapter 24 Quality management.
ISO 9000 Certification ISO 9001 and ISO
How ISO 9001 Fits Into The Software World? Management of Software Projects and Personnel CIS 6516 March 6, 2006 Prepared by Olgu Yilmaz Swapna Mekala.
Using A Defined and Measured Personal Software Process Watts S. Humphrey CS 5391 Article 8.
Chapter 24 - Quality Management
Capability Maturity Model
Chapter : Software Process
CS 4310: Software Engineering
Quality Management Systems P.Suriya Prakash Final Mech Vcet
Final ReviewSummer ICS 52: Introduction to Software Engineering Lecture Notes for Summer Quarter, 2003 Michele Rousseau Final Review.
UNIT-II Chapter : Software Quality Assurance(SQA)
Chapter 4 Interpreting the CMM. Group (3) Fahmi Alkhalifi Pam Page Pardha Mugunda.
N By: Md Rezaul Huda Reza n
Software Quality Assurance Activities
Software Quality Assurance Lecture 4. Lecture Outline ISO ISO 9000 Series of Standards ISO 9001: 2000 Overview ISO 9001: 2008 ISO 9003: 2004 Overview.
1 Chapter 2 The Process. 2 Process  What is it?  Who does it?  Why is it important?  What are the steps?  What is the work product?  How to ensure.
J. R. Burns, Texas Tech University Capability Maturity Model -- CMM n Developed by the Software Engineering Institute (SEI) in 1989 –SEI is a spinoff.
OHT 23.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The benefits of use of standards The organizations involved in standards.
Introduction to ISO 9001:2000.
©Ian Sommerville 1995 Software Engineering, 5th edition. Chapter 31 Slide 1 Process Improvement u Understanding, Modelling and Improving the Software Process.
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
SQA System Overview Chapter 4. Where we have been so far, Where we are going Where do software errors come from? What is quality? How can quality be measured?
Software Engineering - Spring 2003 (C) Vasudeva Varma, IIITHClass of 39 CS3600: Software Engineering: Standards in Process Modeling CMM and PSP.
Capability Maturity Models Software Engineering Institute (supported by DoD) The problems of software development are mainly caused by poor process management.
Software Engineering Lecture # 17
Software Project Management Lecture # 10. Outline Quality Management (chapter 26)  What is quality?  Meaning of Quality in Various Context  Some quality.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 25 Slide 1 Process Improvement l Understanding, Modelling and Improving the Software Process.
This chapter is extracted from Sommerville’s slides. Text book chapter
University of Sunderland CIFM03Lecture 2 1 Quality Management of IT CIFM03 Lecture 2.
Quality Concepts within CMM and PMI G.C.Reddy
Georgia Institute of Technology CS 4320 Fall 2003.
Quality Management Managing the quality of the software process and products.
1 Chapter 3 1.Quality Management, 2.Software Cost Estimation 3.Process Improvement.
Ch-1 Introduction The processes used for executing a software project have major effect on quality of s/w produced and productivity achieved in project…
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
1 SEI Capability Maturity Model Advanced Software Engineering COM360 University of Sunderland © 2000.
COMP 6710 Course NotesSlide 3-0 Auburn University Computer Science and Software Engineering Course Notes Set 3: Software Process Maturity Computer Science.
Making knowledge work harder Process Improvement.
SOFTWARE PROCESS IMPROVEMENT
Software Engineering (CSI 321) Software Process: A Generic View 1.
SE513 Software Quality Assurance Lecture12: Software Reliability and Quality Management Standards.
Capability Maturity Model. CS460 - Senior Design Project I (AY2004)2 Immature Organisations Software processes are often rigorously followed. Organisation.
1 Software Engineering Muhammad Fahad Khan Software Engineering Muhammad Fahad Khan University Of Engineering.
Chapter 25 Process Improvement.
Software Engineering (CSI 321)
UNIT V QUALITY SYSTEMS.
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
A possible solution: Personal Software Process (PSP)
Quality management standards
Software Engineering Lecture 16.
Software Engineering I
Capability Maturity Model
Chapter # 8 Quality Management Standards
Capability Maturity Model
Software Verification and Validation
Presentation transcript:

Topic 14Summer ICS 52: Introduction to Software Engineering Lecture Notes for Summer Quarter, 2003 Michele Rousseau Topic 14

Summer Process Improvement l Capability Maturity Model l ISO 9000 l PSP

Topic 14Summer l Understanding existing processes l Introducing process changes to achieve organisational objectives l usually focused on: quality improvement cost reduction schedule acceleration l Most work so far has focused on defect reduction to improve Quality l Testing can’t do it all Process improvement

Topic 14Summer l Process analysis Model and analyse (quantitatively if possible) existing processes l Improvement identification Identify quality, cost or schedule bottlenecks l Process change introduction Modify the process to remove identified bottlenecks l Process change training Train staff involved in new process proposals l Change tuning Evolve and improve process improvements Process improvement stages

Topic 14Summer The process improvement process

Topic 14Summer l Process quality  product quality These are closely related l A good process is usually required to produce a good product l For manufactured goods, process is the principal quality determinant l For design-based activity, other factors are also involved especially the capabilities of the designers Process and product quality

Topic 14Summer Principal product quality factors

Topic 14Summer What is CMM? l Capability Maturity Model l Developed by the software community in 1986 with leadership from the SEI. l Has become a de facto standard for assessing and improving processes related to software development l Has evolved into a process maturity framework l Provides guidance for measuring software process maturity l Helps establish process improvement programs

Topic 14Summer What is the Software CMM? l “A common-sense application of process management and quality improvement concepts to the software development and maintenance” l A model for organizational improvement

Topic 14Summer Software Capability Maturity Model. Maturity Levels Process Capability Indicate Key Process Areas Goals Contain Achieve Common Features Implementation Organized by Address Key Practices Activities Contain Describe CMU/SEI-93-TR-24 p. 29

Topic 14Summer What makes up the CMM? l The CMM is organized into five maturity levels: l Initial l Repeatable l Defined l Manageable l Optimizing l Except for Level 1, each maturity level decomposes into several key process areas that indicate the areas an organization should focus on to improve its software process.

Topic 14Summer Each Maturity Level l 1. Initial : »ad hoc process. Success depends on individual effort. l 2. Repeatable : »Basic management processes: cost, schedule and functionality l 3. Defined : »Activities are documented, standardized and integrated into an organization-wide software process. l 4. Managed : »Detailed measures are collected: software and product quality. l 5. Optimizing : »Continuous process improvement: quantitative feedback from the process and from testing new ideas and technologies.

Topic 14Summer Five Levels of Software Process Maturity Initial Optimizing Managed Defined Repeatable Unpredictable and poorly controlled Focus on process improvement Process measured and controlled Process characterized, fairly well understood Can repeat previously mastered tasks Disciplined process Continually improving process Predictable process Standard, consistent process Level 1 Level 2 Level 3 Level 4 Level 5

Topic 14Summer Key Process Areas KPAs associated with each maturity level describe functions that must be present to satisfy good practice at a particular level. (Except Level 1) Each KPA is described by: Goals – Overall objectives Commitments – Requirements that must be met to achieve the goals. Abilities – Things that must be in place to enable the organization to meet the commitment. Activities – Specific tasks required to achieve the KPA function Methods for monitoring implementation Methods for verifying implementation Each KPA is defined by a set of key practices that contribute to satisfying its goals. (ie policies, procedures, and activities)

Topic 14Summer Level 2 KPAs - Purpose * Paraphrased

Topic 14Summer Level 2 KPAs - Purpose (Cont.) * Paraphrased Changes in commitments are agreed to by affected groups All activities are planned and tracked

Topic 14Summer Level 3 KPAs - Purpose * Paraphrased

Topic 14Summer Level 3 KPAs - Purpose (Cont.) * Paraphrased

Topic 14Summer Level 4 KPAs - Purpose * Paraphrased

Topic 14Summer Level 5 KPAs - Purpose * Paraphrased

Topic 14Summer Interesting CMM Facts  The number of companies using CMM to assess their software management practices more than doubles every five years (since 1987).  Software Quality Assurance is the biggest obstacle for organizations trying to move from level 1 to level 2.  Organization Process Definition is one of the biggest obstacles for organization trying to move from level 2 to level 3.

Topic 14Summer … more interesting facts  On average, it takes an organization: »25 months to move from level 1 to 2 »22 months to move from level 2 to 3 »36.5 months to move from level 3 to 4  About a third of companies engaged in CMM are located overseas (primarily India), and are 3 times more likely to reach CMM level 4 or 5 than US organizations.  Only about 23% of organizations surveyed eventually move from level 2 to level 3 or higher.

Topic 14Summer What improved maturity provides Source: Master Systems, Inc. Based on data from 1300 applications, average 200,000 LOC

Topic 14Summer Characteristics of Immaturity l Software process improvised during the course of a project. l Even if process is specified, it is not rigorously followed or enforced. l Reactionary, focus on solving immediate crises. l Hard deadlines often mean a compromise in functionality and/or quality. l No objective basis for judging product quality or for solving process problems. l Quality is difficult if not impossible to predict.

Topic 14Summer Characteristics of Maturity l Able to manage software development and maintenance organization/project wide. l There is a prescribed, mandated, and enforced process. l Process is consistent with the way that work actually gets done. l Process is updated and improved as necessary. l Roles and responsibilities within the process are clear. l Quality is measured and monitored, and an objective basis for judgment exists. l The necessary infrastructure for supporting the process exists. l Workers see the value in the process.

Topic 14Summer Greater Maturity Can Bear Fruit l SE division of Hughes aircraft over a three year period for assessment and improvement programs. By the end of the three year period, assessed at CMM Level 3. Estimated savings annually as a result (less overtime, less rework, greater productivity, etc.) l Equipment Division of Raytheon rise to CMM Level 3, at an estimated cost resulted in 2-fold increase in productivity along with savings in rework costs. l Motorola GED (CMM Level 4) documented significant reduction in cycle time reduction in defect rates increase in productivity

Topic 14Summer ISO Background l International set of standards for quality management (ISO 9000:2000, ISO 9001:2000, ISO 9004:2000, etc.) l ISO is name adopted by the International Organization for Standardization (not an acronym) – comes from isos “equal” l ISO 9000 is the most popular quality standard in the world l Over 13,000 standards issued since 1946 l Made up of representative bodies from over 140 countries l It applies to almost all types of organizations regardless of their function or product.

Topic 14Summer From “The Dilbert Principle”

Topic 14Summer ISO 9000 – What is it? l ISO 9000 is primarily concerned with "quality management". l ISO 9001:2000 specifies requirements for a quality management system for any organization that needs to demonstrate its ability to consistently provide product that meets customer and applicable regulatory requirements and aims to enhance customer satisfaction, in all business sectors l It involves the development of a quality system that meets the quality requirements of the ISO standards.

Topic 14Summer Contents of Software Quality Plan from ISO9000 l Management responsibility l Quality system l Contract review l Design control l Quality control l Purchasing l Customer supplied info l Configuration management l Process control l Inspection and testing l Inspection and testing equipment l Control of non-conforming product l Corrective action l Handling, storage, packing and delivery l Quality records l Internal quality audits l Training l Software maintenance l Statistical techniques l Control of the development environment

Topic 14Summer ISO 9000 series of standards: l represents an international consensus on good management practices l guidelines on what constitutes an effective quality management system l serves as framework for continuous improvement

Topic 14Summer ISO 9000 and quality management

Topic 14Summer ISO Certification l Quality standards and procedures should be documented in an organisational quality manual l External body may certify that an organisation’s quality manual conforms to ISO 9000 standards (namely ISO 9001) l Customers are, increasingly, demanding that suppliers are ISO 9000 certified

Topic 14Summer ISO vs CMM l CMM and the ISO 9000 series of standards share common concerns with quality and process management. l CMM emphasizes continuous improvement l ISO deals with minimum criteria of quality systems l There is a clear correlation between the key processes in the CMM and the quality management processes in ISO 9000 l ISO 9000 has little explicit support for continuous improvement

Topic 14Summer ISO vs CMM (2) l The CMM is more detailed and prescriptive and includes a framework for improvement l An ISO 9001-compliant organization would not necessarily satisfy all of the CMM level 2 key process areas (it would satisfy most of the level 2 goals and many level 3 goals. l Organisations rated as level 2 in the CMM are likely to be ISO 9000 compliant

Topic 14Summer ISO9000 and CMM compared CMMISO 9001 l Specific to software developmentIntended for most industries l Used in USA, less widely Recognised and accepted in most elsewhere countries l Provides detailed and specific Specifies concepts, principles and definition of what is required safeguards that should be in place for given levels l Assesses on 5 levelsEstablishes one acceptable level l CMM Level  ISO 9000 l Relevant to Stabilises the customer - supplier s/w development processrelationship l No time limit on certificationCertification valid for three years l No ongoing auditAuditors may return for spot checks during the lifetime of the certificate

Topic 14Summer 2003 Personal Software Process (PSP) l Developed by SEI in 1994 l A measurement and analyses framework to help you characterize your process l A defined procedure to help you to improve your performance l PSP principles System quality depends on the quality of its worst components Component quality depends on individual developers

Topic 14Summer Overview of CMM and PSP l CMM sets out the principal practices for managing the processes in large-scale software development l PSP sets out the principal practices for defining, measuring and analysing an individual’s own processes

Topic 14Summer PSP l PSP applies a CMM-like assessment for individual work Measurement & analysis framework to help you characterize your process »Self-assessment and self-monitoring Prescribes a personal process for developing software »defined steps »Forms »Standards Assumes individual scale & complexity »Well-defined individual tasks of short duration

Topic 14Summer 2003 PSP Overview l The PSP is introduced in 7 upward compatible steps (4 levels) l Write 1 or 2 small programs at each step Assume that you know the programming language l Gather and analyze data on your work Many standard forms & spreadsheet templates l Use these analyses to improve your work Note patterns in your work

Topic 14Summer 2003 PSP Evolution PSP0 Current process Time recording Defect recording Defect type standard PSP1 Size estimating Test report PSP2 Code reviews Design reviews PSP3 Cyclic development PSP2.1 Design templates PSP1.1 Task planning Schedule planning PSP0.1 Coding standard Size measurement Process improvement proposal (PIP) Baseline Personal Process Cyclic Personal Process Personal Quality Management Personal Planning Process

Topic 14Summer 2003 PSP Evaluation l Humphrey has used in SE courses Improvements in time-to-compile, quality and productivity l Patchy, but promising use in industry E.g. Nortel (Atlanta) l Still immature l Requires large overhead for data gathering Not clear that you should use permanently or continually

Topic 14Summer PSP/TSP/CMM