Capability maturity model cmm lecture 8

1,592 views

Published on

Published in: Education, Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,592
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
108
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Papers presented in class and your term project should be provide practical answers or insights to the following questions: What personnel skills are required for a given KPA at a given level? How many (what subset) of the organization's personnel are required to support a given KPA at a given level? What tool support is necessary for a given KPA at a given level? What are the training requirements (tools and methods) for a given KPA at a given level? What project metrics/data should be collected for a given KPA at a given level? What product metrics/data should be collected for a given KPA at a given level?
  • Capability maturity model cmm lecture 8

    1. 1. Software Process Improvement: SEI Capability Maturity Model
    2. 2. Fundamental Concepts The CMM focuses on the capability of software organizations to produce high-quality products consistently and predictably. Software process capability is the inherent ability of a software process to produce planned results. • DEFINITION (Process) A sequence of steps performed for a given purpose. The process integrates people, tools, and procedures. • DEFINTION (Software Process) A set of activities, methods, practices, and transformations that people employ to develop and maintain software and the associated products (documents, etc.) • DEFINTION (Software Process Capability)decribes the range of expected results that can be achieved by following a software process. 2
    3. 3. Fundamental Concepts The CMM focuses on the capability of software organizations to produce high-quality products consistently and predictably. Software process capability is the inherent ability of a software process to produce planned results. • DEFINITION (Software Process Performance) the actual results achieved by following a software process. • DEFINTION (Software Process Maturity) the extent to which a specific process is explicitly defined, managed, measured, controlled, and effective. As a software organization matures, it needs an infrastructure and culture to support its methods, practices, and procedures so that they endure after those who originally defined them have gone. • DEFINTION (Institutionalization) is the building of infrastructure and culture to support methods, practices, and procedures so that they are the ongoing way of doing business. 3
    4. 4. Software Process Maturity Framework Five Maturity Levels: • Initial: The software process is characterized by ad hoc, and occasionally even chaotic. Few processes are defined, and success depends on individual effort and heroics. • Repeatable: Basic project management processes are established to track cost, schedule, and functionality. The necessary process discipline is in place to repeat earlier successes on projects with similar applications. • Defined: The software process for both management and engineering activities is documented, standardized, and integrated into a standard software process for the organization. All projects use an approved, tailored version of the organization’s standard software process for developing and maintaining software. 4
    5. 5. Software Process Maturity Framework Five Maturity Levels (continued): • Managed: Detailed measures of the software process and product quality are collected. Both the software process and products are quantitatively understood and controlled. • Optimizing: Continuous process improvement is enabled by quantitative feedback from the process and from piloting innovative ideas and technologies. 5
    6. 6. The CMM Level Structure 6 Maturity Levels Process Capability Goals Implementation/ Institutionalization Activities or Infrastructure Key Process Areas Common Features Key Practices Indicate Contains Achieves Organized by Address Contain Describe
    7. 7. Key Process Areas • Definition Except for level 1, each maturity level is decomposed into several key process areas that indicate where an organization should focus to improve its software process. KPAs identify the issues that must be addressed to achieve a desired maturity level. If an organization is at level K+1 then it has addressed all of the KPAs at levels ≤ K. Each KPA identifies a cluster of activities that, when performed collectively, achieve a set of goals considered important for enhancing process capability. The KPAs may be considered to be the requirements for achieving a particular maturity level. 7
    8. 8. KPAs – Level 2 • Focus: project concerns related to establishing basic project management controls. 1. Requirements Management (establish customer & user repoire, involve customer & users in the process) 2. Software Project Planning: (establish project management and engineering procedures) 3. Software Project Tracking and Oversight (make visible to the organization) 4. Software Subcontract Management (qualified subcontractors)(avoid disconnect in management and engineering maturity and capability) 5. Software Quality Assurance (make SQA visible to management) 6. Software Configuration Management (control access and change to engineering work products and project deliverables) 8
    9. 9. KPAs – Level 3• Focus: project and organizational issues leading toward the infrastructure that institutionalizes effective software engineering across all projects. 1. Organization Process focus: coordinate and integrate process across all projects. 2. Organization Process definition: develop a reusable set of process assets (documents, training materials) defining the organization’s standard software process (includes a tool set) 3. Training program: train personnel in the various process procedures and roles 4. Integrated Software Management: 5. Software Product engineering: 6. Inter-group coordination: 7. Peer Reviews: 9
    10. 10. KPAs – Level 4 • Focus: establishing a quantitative understanding of both the software process and the software products being built (process and product metrics and measures). 1. Quantitative Process Management: develop the quantitative measures necessary to control process performance of software projects. 2. Software Quality Management: develop quantitative measures necessary to control the quality of software products. – Software Quality Metrics – Metrics Validation Process (IEEE Standard 1061) 10
    11. 11. KPAs – Level 5• Focus: addressing issues concerning organization and projects relating to continuous and measurable software process improvement. 1. Defect Prevention: detect causes of defects and prevent them from recurring. 2. Technology Change Management: identify beneficial new technologies (tools, methods, and processes) and transfer them into the organization in an orderly manner. 3. Process Change Management: continually improve software processes in the organization with the intent of improving software quality, increasing productivity, and decreasing the cycle time for product development. 11

    ×