Software Engineering Lecture # 17

Slides:



Advertisements
Similar presentations
More CMM Part Two : Details.
Advertisements

1 Brief Descriptions of CMM KPAs CEN 6070 Summer 2004.
Chapter 2 The Software Process
©2006 OLC 1 Process Management: The Foundation for Achieving Organizational Excellence Process Management Implementation Worldwide.
Copyright 2003 CMMI: Executive Briefing Presented by Kieran Doyle
CMMI Overview Dr. Korson Software Engineering. 2 Immature organizations can be successful on occasion, but ultimately run into difficulties because –Success.
CPIS 357 Software Quality & Testing I.Rehab Bahaaddin Ashary Faculty of Computing and Information Technology Information Systems Department Fall 2010.
18 th International Forum on COCOMO and Software Cost Modeling October 2003 Use of Historical Data by High Maturity Organizations Rick Hefner, Ph.D.
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.
Standardization. Introduction A standard is a document. It is a set of rules that control how people should develop and manage materials, products, services,
Lecture 11 CMM CSCI – 3350 Software Engineering II Fall 2014 Bill Pine.
Capability Maturity Model
SOFTWARE QUALITY ASSURANCE Asst. Prof. Dr. Selim BAYRAKLI Maltepe University Faculty of Engineering SE 410.
Using Six Sigma to Achieve CMMI Levels 4 and 5
CMMI Course Summary CMMI course Module 9..
1 The Continuous Representation. 2 UNIT 2 Topics covered in this unit include Additional terminology Practices – The fundamental building blocks Process.
Integrated Capability Maturity Model (CMMI)
Chapter 4 Interpreting the CMM. Group (3) Fahmi Alkhalifi Pam Page Pardha Mugunda.
Capability Maturity Model. Reflection Have you ever been a part of, or observed, a “difficult” software development effort? How did the difficulty surface?
Capability Maturity Model Part One - Overview. History Effort started by SEI and MITRE Corporation  assess capability of DoD contractors First.
N By: Md Rezaul Huda Reza n
1 The Continuous Representation. 2 UNIT 2 Topics covered in this unit include Additional terminology Practices – The fundamental building blocks Process.
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.
CMMi What is CMMi? Basic terms Levels Common Features Assessment process List of KPAs for each level.
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
NDIA Systems Engineering Supportability & Interoperability Conference October 2003 Using Six Sigma to Improve Systems Engineering Rick Hefner, Ph.D.
Capability Maturity Model. History Effort started by SEI and MITRE Corporation  assess capability of DoD contractors First version published in.
10/16/2015Bahill1 Organizational Innovation and Deployment Causal Analysis and Resolution 5 Optimizing 4 Quantitatively Managed 3 Defined 2 Managed Continuous.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 2 The Software Process Discussion of the Software Process: Process Framework,
University of Sunderland CIFM03Lecture 2 1 Quality Management of IT CIFM03 Lecture 2.
Adaptive Processes Overview Adaptive Processes©. Adaptive Processes © Adaptive ProcessesSimpler, Faster, Better2 Objective To provide an over view of.
Software Project Management Lecture 7A SEI - Capability Maturity Model.
1 ISO 9001:2000 ISO 9001 is the creation of the International Organisation for Standardisation (ISO), a Swiss-based federation of national standards bodies.ISO.
Georgia Institute of Technology CS 4320 Fall 2003.
1 © Mahindra Satyam 2009 Mahindra Satyam Confidential Welcome To CMMI Introduction.
IS Methodologies. Systems Development Life Cycle - SDLC Planning Planning define the system to be developed define the system to be developed Set the.
SWEN 5130 Requirements Engineering 1 Dr Jim Helm SWEN 5130 Requirements Engineering Requirements Management Under the CMM.
Software Engineering - I
Process Improvement. It is not necessary to change. Survival is not mandatory. »W. Edwards Deming Both change and stability are fundamental to process.
CMMI. 1.Initial - The software process is characterized as ad hoc, and occasionally even chaotic. Few processes are defined, and success depends on individual.
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.
Page 1 The Capability Maturity Model (CMM) distinguishes between immature and mature software organizations. Immature software organizations are typically.
Purpose: The purpose of CMM Integration is to provide guidance for improving your organization’s processes and your ability to manage the development,
COMP 6710 Course NotesSlide 3-0 Auburn University Computer Science and Software Engineering Course Notes Set 3: Software Process Maturity Computer Science.
An Introduction. Objective - Understand the difference between CMM & CMMI - Understand the Structure of CMMI.
Software Engineering (CSI 321) Software Process: A Generic View 1.
CMMI1 Capability Maturity Model Integration Eyal Ben-Ari 8/2006.
MSA Orientation – v203a 1 What’s RIGHT with the CMMI?!? Pat O’Toole
CMMI Overview Quality Frameworks. Slide 2 of 146 Outline Introduction High level overview of CMMI Questions and comments.
Capability Maturity Model. CS460 - Senior Design Project I (AY2004)2 Immature Organisations Software processes are often rigorously followed. Organisation.
1 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.
Cmpe 589 Spring Fundamental Process and Process Management Concepts Process –the people, methods, and tools used to produce software products. –Improving.
CMMI for Services, Version 1.3
Certification: CMMI Emerson Murphy-Hill. Capability Maturity Model Integration (CMMI) Creation of the Software Engineering Institute (SEI) at Carnegie.
Capability Maturity Model. What is CMM? n CMM: Capability Maturity Model n Developed by the Software Engineering Institute of the Carnegie Mellon University.
CS4311 Spring 2011 Process Improvement Dr
CMMI Overview Quality Frameworks.
Software Engineering (CSI 321)
Information Technology Project Management – Fifth Edition
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
CMMI – Staged Representation
Software Engineering Lecture 16.
Software Engineering I
Capability Maturity Model
Capability Maturity Model
Presentation transcript:

Software Engineering Lecture # 17 Tauqeer Ahmed Lecturer Federal Urdu University of Arts , Science & Technology , Islamabad

Software Process Improvement

Software Process a set of activities, methods, practices, and transformations that people use to develop and maintain software and the associated products (e.g., project plans, design documents, code, test cases, and user manuals).

Immature Versus Mature Software Organizations The immature software organization is reactionary, and managers are usually focused on solving immediate crises (better known as fire fighting). Schedules and budgets are routinely exceeded because they are not based on realistic estimates In an immature organization, there is no objective basis for judging product quality or for solving product or process problems.

Immature Versus Mature Software Organizations A mature software organization possesses an organization-wide ability for managing software development and maintenance processes. In a mature organization, managers monitor the quality of the software Schedules and budgets are based on historical performance and are realistic; the expected results for cost, schedule, functionality, and quality of the product are usually achieved.

Some definitions Software process capability describes the range of expected results that can be achieved by following a software process. Software process performance represents the actual results achieved by following a software process. Thus, software process performance focuses on the results achieved, while software process capability focuses on results expected. Software process maturity is the extent to which a specific process is explicitly defined, managed, measured, controlled, and effective. Maturity implies a potential for growth in capability and indicates both the richness of an organization's software process and the consistency with which it is applied in projects throughout the organization.

Steps in Software Process Improvement Examine organization's need - identify scope of SPI and priorities Initiate process improvement - preliminary plan Prepare and conduct process assessment Analyze results and derive action plan Implement improvements Confirm improvements and sustain improvement gains Monitor performance and initiate further improvements.

Capability Maturity Model base for Software Process Improvement The CMM is a description of the stages through which software organizations evolve as they define, implement, measure, control, and improve their software processes. The CMM is a guide for selecting process improvement strategies by facilitating: determination of current process capabilities, and identification of the issues most critical to software quality and process improvement. [CMM, developed by the Software Engineering Institute at Carnegie-Mellon University]

Goals of the CMM CMM supports setting goals for senior management identifying priorities for process improvement identifying process capabilities of organizations predicting future process performance of projects industry-wide comparisons of the state of practice CMM defines a series of evolutionary plateaus on the path to becoming a mature software organization, each level is a layer in the foundation for continuous process improvement.

The Five Maturity Levels Initial (1) - undisciplined process Repeatable (2) - disciplined process Defined (3) - standard, consistent process Managed (4) - predictable process Optimizing (5) - continuously improving process Organizations can progress from lower to higher levels as they carry out SPI.

The Five Levels of Software Process maturity

Level 1 - The Initial Level Level 1 organizations frequently develop products that work, even though they may be over the budget and schedule. Success in Level 1 organizations depends on the competence and heroics of the people in the organization and cannot be repeated unless the same competent individuals are assigned to the next project. Thus, at Level 1, capability is a characteristic of the individuals, not of the organization.

Level 2 - The Repeatable Level Software project standards are defined, and the organization ensures they are faithfully followed. Organizational requirement for achieving Level 2 is that there are policies that guide the projects in establishing the appropriate management processes. The software process capability of Level 2 organizations can be summarized as disciplined because planning and tracking of the software project is stable and earlier successes can be repeated. The project's process is under the effective control of a project management system, following realistic plans based on the performance of previous projects.

Level 3 - The Defined Level The software process capability of Level 3 organizations can be summarized as standard and consistent because both software engineering and management activities are stable and repeatable. Within established product lines, cost, schedule, and functionality are under control, and software quality is tracked. This process capability is based on a common, organization-wide understanding of the activities, roles, and responsibilities in a defined software process.

Level 4 - The Managed Level The software process capability of Level 4 organizations can be summarized as being quantifiable and predictable because the process is measured and operates within measurable limits. This level of process capability allows an organization to predict trends in process and product quality within the quantitative bounds of these limits. Because the process is both stable and measured, when some exceptional circumstance occurs, the "special cause“ of the variation can be identified and addressed. When the known limits of the process are exceeded, action is taken to correct the situation. Software products are of predictably high quality.

Level 5 - The Optimizing Level The software process capability of Level 5 organizations can be characterized as continuously improving because Level 5 organizations are continuously striving to improve the range of their process capability, thereby improving the process performance of their projects. Improvement occurs both by incremental advancements in the existing process and by innovations using new technologies and methods. Technology and process improvements are planned and managed as ordinary business activities.

Internal Structure of the Maturity Levels

Internal Structure of the Maturity Levels A 5-level process maturity continuum - where the uppermost (5th) level is a notional ideal state where processes would be systematically managed by a combination of process optimization and continuous process improvement. Key Process Areas: A Key Process Area (KPA) identifies a cluster of related activities that, when performed together. achieve a set of goals considered important.

Internal Structure of the Maturity Levels Goals: The goals of a key process area summarize the states that must exist for that key process area to have been implemented in an effective and lasting way. The extent to which the goals have been accomplished is an indicator of how much capability the organization has established at that maturity level. The goals signify the scope, boundaries, and intent of each key process area.

Internal Structure of the Maturity Levels Common Features: The common features include practices that implement and institutionalize a key process area. There are five types of common features: commitment to Perform, Ability to Perform, Activities Performed, Measurement and Analysis, Verifying Implementation.

Internal Structure of the Maturity Levels Key Practices: The key practices describe the elements of infrastructure and practice that contribute most effectively to the implementation and institutionalization of the KPAs.

The CMM Key Process Areas Identify a cluster of related activities that, when performed collectively, achieve a set of goals considered important for enhancing process capability Defined to reside at a single maturity level • Identify the issues that must be addressed to achieve a maturity level • 18 KPAs in the CMM

Four Categories of CMMI Process Areas Process areas can be grouped into four categories: Process Management Organizational Process Focus Organizational Process Definition +IPPD Organizational Training Organizational Process Performance Organizational Innovation and Deployment Project Management Project Planning Project Monitoring and Control Supplier Agreement Management Integrated Project Management +IPPD Risk Management Quantitative Project Management

Four Categories of CMMI Process Areas Process areas can be grouped into four categories: Engineering Requirements Development Requirements Management Technical Solution Product Integration Verification Validation Support Configuration Management Process and Product Quality Assurance Measurement and Analysis Decision Analysis and Resolution Causal Analysis and Resolution