350 likes | 376 Views
Capability Maturity Model. ฝ่ายประยุกต์เทคโนโลยี (APD) ศูนย์เทคโนโลยีอิเล็กทรอนิกส์และคอมพิวเตอร์แห่งชาติ (NECTEC) สำนักงานพัฒนาวิทยาศาสตร์และเทคโนโลยีแห่งชาติ (NSTDA). Introduction. 1980s, realization about the inability to manage the software process
E N D
Capability Maturity Model ฝ่ายประยุกต์เทคโนโลยี (APD) ศูนย์เทคโนโลยีอิเล็กทรอนิกส์และคอมพิวเตอร์แห่งชาติ (NECTEC)สำนักงานพัฒนาวิทยาศาสตร์และเทคโนโลยีแห่งชาติ (NSTDA)
Introduction • 1980s, realization about the inability to manage the software process • Project late, over budget, or plain failures • 1986-1987 : Software Engineering Institute (SEI) • Began developing a process maturity framework • 1991 : CMM-SW1.0 • 1993 : CMM-SW1.1
Definition • What is CMM? • Capability Maturity Model (CMM ) is a framework that describes the key elements of an effective software process • It describes an evolutionary improvement path from an ad hoc, immature process to mature, disciplined process • When followed, these key practice improve the ability of organizations to meet goals for cost, schedule, functionality and product quality
Definition (cont’) • Software process maturity • Is the extent to which a specific process is explicitly defined, managed, measures, 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 projects throughout the organization.
Definition (cont’) • Software Process Capability • Describes the range of expected results that can be achieved by following a software process. • The software process capability of an organization provides one means of predicting the most likely outcomes to be expected from the next software project the organization undertakes.
CMM Structure The CMM has five maturity levels. • Each maturity level is composed of several key process areas (except level 1). • Each key process area is organized into five section called common features. • The common features specify the key practices that, when collectively addressed, accomplish the goals of key process area.
indicate Process Capability Maturity Levels contain achieve Key Process Areas Goals Organized by address Implementation/Institutionalization Common Features contain describe Infrastructure/Activities Key Practices CMM Structure (cont’)
Maturity Level • Level 1 - Initial, Process unpredictable and poorly controlled • Level 2 - Repeatable, Projects can repeat previously mastered task • Level 3 - Defined, Process characterized, fairly well understood • Level 4 - Managed, Process measured and controlled • Level 5 - Optimizing, Focus on process improvement
Key Process Area • Structure of KPA • Goals - Process objects that, when achieved, enhance process capability • Summarized the key practices of a key process area • Can be use to determine whether an organization or project has effectively implemented the key process area • Signify the scope, boundaries, and intent of each key process area • Common features – use organize the key practices in each key process area • Indicate whether the implement and institutionalization of key process area is effective, repeatable, and lasting
Common Features • Commitment to perform • Describes the actions the organization must task to ensure that the process is established and will endure • Typically includes policies and leadership • Ability to perform • Describes the preconditions that must exist in project or organization to implement the software process • Involves resources, organizational structure, and training
Common Features (cont’) • Activities performed • Describes the roles and procedures necessary to implement a key process area • Typically involve establishing plans, procedures, performing the work, tracking it, and tacking corrective actions as necessary • Measurement and analysis • Describes the need to measure the process and analyze the measurements • Typically includes example of measurement that could be taken to determine the status and effectiveness of the Activities Performed
Common Features (cont’) • Verifying implementation • Describes the steps to ensure that the activities are performed in compliance with the process that has been established • Typically includes reviews and audits by senior management, project management, and software quality assurance
KPA of CMM Level 1 • Initial Level - No KPA • None that can be observed
KPA of CMM Level 2 • Repeatable Level – 6 KPAs • Requirements Management (RM) • Software Project Planning (SPP) • Software Project Tracking and Oversight (SPTO) • Software Subcontract Management (SSM) • Software Quality Assurance (SQA) • Software Configuration Management (SCM)
KPA of CMM Level 3 • Defined Level – 7 KPAs • Organization Process Focus (OPF) • Organization Process Definition (OPD) • Training Program (TP) • Integrated Software Management (ISM) • Software Product Engineering (SPE) • Intergroup Coordination (IC) • Peer Review (PR)
KPA of CMM Level 4 • Managed Level – 2 KPAs • Quantitative Process Management (QPM) • Software Quality Management (SQM)
KPA of CMM Level 5 • Optimizing Level – 3 KPAs • Defect Prevention (DP) • Technology Change Management (TCM) • Process Change Management (PCM)
5 CMM Maturity Levels 2 6 5 4 7 3 1 2 3 0-7 KPA per MaturityLevels 0 = 18 total KPAs 52 Goals 5 Common Features per KPA with 1..n practices each = 316 total key practice area 1..n Summary
CMM Level 2(The Repeatable Level) • The key process areas at level 2 focus on the software project’s concerns related to establishing basic project management controls. • There are 6 KPAs
CMM Level 2(The Repeatable Level) • RM (Requirement Management) • The purpose of RM is to establish a common understanding between the customer and the software project of the customer’s requirements that will be addressed by the software project managing the software project.
CMM Level 2(The Repeatable Level) • RM (Requirement Management) • Goal 1 : System requirements allocated to software are controlled to establish a baseline for software engineering and management use. • Goal 2 : Software plans, products and activities are kept consistent with the system requirements allocated to software.
CMM Level 2(The Repeatable Level) • RM (Requirement Management) • Examples of Key Practices for RM: • ศึกษา/กำหนด/ทบทวนนโยบายของหน่วยงานเรื่องการบริหารและจัดการความต้องการระบบ/ซอฟต์แวร์ และดำเนินการตามนโยบาย (Commitment) • จัดสรรทรัพยากรที่สนับสนุนงาน RM ้ (Ability) • รวบรวมความต้องการเปลี่ยนแปลงความต้องการระบบ/ซอฟต์แวร์ (Activity) • ติดตามผลการดำเนินงานตามความต้องการใช้งาน (Measurement) • ทบทวนการดำเนินงานโดย PM/SQA/SM (verification)
CMM Level 2(The Repeatable Level) • SPP (Software Project Planning) • The purpose of SPP is to establish reasonable plans for performing the software engineering and for managing the software. These plans are the necessary foundation for managing the software project.
CMM Level 2(The Repeatable Level) • SPP (Software Project Planning) • Goal 1 : Software estimates are documented for use in planning and tracking the software project. • Goal 2 : Software project activities and commitments are planned and documented. • Goal 3 : Affected groups and individuals agree to their commitments related to the software project.
CMM Level 2(The Repeatable Level) • SPP (Software Project Planning) • Examples of Key Practices for SPP: • PM จัดทำแผนงานโครงการ (Commitment) • วางแผนทรัพยากรและเงินงบประมาณของโครงการ รวมทั้งจัดหา Tool ที่จะใช้ในโครงการ (Ability) • พัฒนา SDP ตามขั้นตอนการปฏิบัติ(Activity) • กำหนดลักษณะของกิจกรรมตามแผน (Measurement) • ทบทวนกิจกรรมตาม SDP ที่กำหนดไว้ (verification)
CMM Level 2(The Repeatable Level) • SPTO (Software Project Tracking and Oversight) • The purpose of SPTO is to establish adequate visibility into actual progress so that management can take effective actions when the software project’s performance deviates significantly from the software plans.
CMM Level 2(The Repeatable Level) • SPTO (Software Project Tracking and Oversight) • Goal 1 : Actual results and performance are tracked against the software plans. • Goal 2 : Corrective actions are taken and managed to closure when actual results and performance deviate significantly from the software plans. • Goal 3 : Changes to software commitments are agreed to by the affected groups and individuals.
CMM Level 2(The Repeatable Level) • SPTO (Software Project Tracking and Oversight) • Examples of Key Practices for SPTO: • ศึกษา/กำหนด/ทบทวนนโยบายของหน่วยงานเรื่องการบริหารและติดตามงานโครงการ และดำเนินการตามนโยบาย (Commitment) • จัดสรรทรัพยากรเพื่อใช้ในการดำเนินงาน SPTO (Ability) • ติดตามผลการดำเนินงานโดยใช้ SDP(Activity) • ประเมินผลการดำเนินกิจกรรม SPTO(Measurement) • ทบทวนการดำเนินงานโดย PM/SQA/SM (verification)
CMM Level 2(The Repeatable Level) • SQA (Software Quality Assurance) • The purpose of SQA is to provide management with appropriate visibility into the process being used by the software project and of the products being built.
CMM Level 2(The Repeatable Level) • SQA (Software Quality Assurance) • Goal 1 : Software quality assurance activities are planned. • Goal 2 : Adherence of software products and activities to the applicable standards, procedures, and requirements is verified objectively. • Goal 3 : Affected groups and individuals are informed of software quality assurance activities and results. • Goal 4 : Noncompliance issues that cannot be resolved within the software project are addressed by senior management.
CMM Level 2(The Repeatable Level) • SQA (Software Quality Assurance) • Examples of Key Practices for SQA: • ศึกษา/กำหนด/ทบทวนนโยบายของหน่วยงานเรื่องการควบคุมคุณภาพงานโครงการ และดำเนินการตามนโยบาย (Commitment) • จัดสรรทรัพยากรเพื่อใช้ในการดำเนินงาน SQA (Ability) • ดำเนินกิจกรรมของ SQA ตามแผน SQA (Activity) • วัดผล cost และ Schedule ของกิจกรรม SQA(Measurement) • ทบทวนการดำเนินงาน SQA โดย PM/SQA/SM (verification)
CMM Level 2(The Repeatable Level) • SCM (Software Configuration Management) • The purpose of SCM is to establish and maintain the integrity of the products of the software project throughout the project’s software life cycle.
CMM Level 2(The Repeatable Level) • SCM (Software Configuration Management) • Goal 1 : Software configuration management activities are planned. • Goal 2 : Selected software work products are identified, controlled, and available. • Goal 3 : Changes to identified software work products are controlled. • Goal 4 : Affected groups and individuals are informed of the status and content of software baselines.
CMM Level 2(The Repeatable Level) • SCM (Software Configuration Management) • Examples of Key Practices for SCM: • ศึกษา/กำหนด/ทบทวนนโยบายของหน่วยงานเรื่องการจัดการองค์ประกอบของซอฟต์แวร์ และดำเนินการตามนโยบาย (Commitment) • กำหนด CI ของโครงการ (Ability) • จัดทำแผน SCM ตามขั้นตอนการปฏิบัติ (Activity) • วัดผลสถานะของกิจกรรม SCM(Measurement) • ทบทวนการดำเนินงาน SCM โดย PM/SQA/SM (verification)