J. R. Burns, Texas Tech University Capability Maturity Model -- CMM n Developed by the Software Engineering Institute (SEI) in 1989 –SEI is a spinoff of Carnegie Mellon University in Pittsburgh
J. R. Burns, Texas Tech University Immature Organizations n Processes are ad hoc, and occasionally chaotic. n Processes improvised by practitioners. n Testing and reviews usually curtailed under stress. n Quality is unpredictable.
J. R. Burns, Texas Tech University Immature Organizations, Cont’d n Costs and schedules are usually exceeded. n Reactionary management is usually firefighting. n Success rides on individual talent and heroic effort. n Technology benefits are lost in the noise.
J. R. Burns, Texas Tech University Mature Organizations n Processes are defined and documented. n Management plans, monitors, and communicates. n Roles and responsibilities are clear. n Product and process are measured.
J. R. Burns, Texas Tech University Mature Organizations, Cont’d n Quality, costs, and schedules are predictable n Management committed to continuous improvement. n Technology used effectively within defined process.
J. R. Burns, Texas Tech University Process Definition n Project Planning n Project Management n Software Engineering Procedures n Software standards n Software Quality Evaluation n Software Configuration management
J. R. Burns, Texas Tech University The Five Levels of Process Maturity n INITIAL n REPEATABLE n DEFINED n MANAGED n OPTIMIZING
J. R. Burns, Texas Tech University Five Levels
J. R. Burns, Texas Tech University Initial n The process is ad hoc, even chaotic n The processes are not defined n Success depends on individual effort n The environment is not stable
J. R. Burns, Texas Tech University Initial, Continued n The benefits of software engineering practices are undermined n Planning is nonexistent or ineffective n Process capability is unpredictable because the software process is constantly changed or modified as the work progresses
J. R. Burns, Texas Tech University Repeatable n Basic project management policies and procedures are established n Cost, schedule and functionality are tracked by module and task n A process discipline is put in place to repeat earlier successes n Managing new projects is based on experience with similar projects
J. R. Burns, Texas Tech University Repeatable, Continued n Basic software management controls are installed n Estimations of cost and time to complete are based on history for similar projects n Problems are identified and documented n Software requirements are baselined
J. R. Burns, Texas Tech University Repeatable, Continued n Project standards are defined n Project teams work with their customers and subcontractors to establish stable, managed working environments n Process is under the control of a project management system that is driven by performance on previous projects n A project performance database is defined and populated
J. R. Burns, Texas Tech University Defined n The process is documented n The process is standardized and integrated organization-wide-- institutionalized n All projects use a documented and approved version of the organization’s process n A software engineering process group facilitates process definition and improvement efforts
J. R. Burns, Texas Tech University Defined, Continued n Organization-wide training programs are implemented n The organization-wide standard software process can be refined to encompass the unique characteristics of the project n A peer review process is used to enhance product quality n Process capability is stable and based on a common understanding of processes, roles, and responsibilities in a defined process
J. R. Burns, Texas Tech University Managed n Quantitative quality goals are defined n Product quality and productivity are measured and collected n Both processes and products are quantitatively understood n Both processes and products are controlled using detailed measures n A productivity and quality database is defined
J. R. Burns, Texas Tech University Managed, Continued n Projects achieve control by narrowing the variation in performance to within acceptable boundaries n Process variation is controlled by use of a strategic business plan that details which product lines to pursue n Risks associated with moving up the learning curve of a new application domain are known and carefully managed n Process capability is measured and operating within measurable limits
J. R. Burns, Texas Tech University Optimizing n Continuous process improvement is enabled by quantitative feedback n Continuous process improvement is assessed from testing innovative ideas and technologies n Weak process elements are identified and strengthened n Defect prevention is explicit
J. R. Burns, Texas Tech University Optimizing, Cont’d n Statistical evidence is available on process effectiveness n Innovations that exploit the best software engineering practices are identified n Improvement occurs from –INCREMENTAL ADVANCEMENTS IN EXISTING PROCESSES –INNOVATIONS USING NEW TECHNOLOGIES AND METHODS
J. R. Burns, Texas Tech University