Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 1 G S T Understanding.

Similar presentations


Presentation on theme: "Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 1 G S T Understanding."— Presentation transcript:

1 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 1 G S T Understanding the Repeatable Level of Process Maturity Global Systems Technology, Inc. REQUIREMENTS MANAGEMENT SOFTWARE PROJECT PLANNING SOFTWARE PROJECT TRACKING AND OVERSIGHT SOFTWARE SUBCONTRACT MANAGEMENT SOFTWARE QUALITY ASSURANCE SOFTWARE CONFIGURATION MANAGEMENT

2 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 2 G S T Repeatable Level Overview 6 Key Process Areas 6 Key Process Areas Requirements ManagementRequirements Management Project PlanningProject Planning Project Tracking and OversightProject Tracking and Oversight Subcontract ManagementSubcontract Management Software Quality AssuranceSoftware Quality Assurance Configuration ManagementConfiguration Management Focus is on the project Focus is on the project Project management processes are established to track cost, schedule, and functionality Project management processes are established to track cost, schedule, and functionality Discipline is in place to repeat earlier successes Discipline is in place to repeat earlier successes Process discipline is in place to repeat earlier project successes It worked, It worked. Global Systems Technology, Inc.

3 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 3 G S T Moving from Level 1 to Level 2 At Level 1, an organization gets the job done by the skill and efforts of individuals At Level 1, an organization gets the job done by the skill and efforts of individuals At Level 2, a software project management system is in place and used throughout the organization At Level 2, a software project management system is in place and used throughout the organization The Level 2 organization sets expectations via management policies and directives The Level 2 organization sets expectations via management policies and directives Level 2 projects have disciplined processes, but they are often not common processes Level 2 projects have disciplined processes, but they are often not common processes Global Systems Technology, Inc.

4 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 4 G S T Global Systems Technology, Inc. REQUIREMENTS MANAGEMENT SOFTWARE PROJECT PLANNING SOFTWARE PROJECT TRACKING AND OVERSIGHT SOFTWARE SUBCONTRACT MANAGEMENT SOFTWARE QUALITY ASSURANCE SOFTWARE CONFIGURATION MANAGEMENT The Repeatable Level Key Process Areas (KPAs) are all interrelated and tied together to provide the fundamental needs of a cohesive Project Management Capability. The Repeatable Level Key Process Areas (KPAs) are all interrelated and tied together to provide the fundamental needs of a cohesive Project Management Capability. As a group, the Repeatable Level KPAs provide a basis for building and managing a common software engineering process. As a group, the Repeatable Level KPAs provide a basis for building and managing a common software engineering process. Repeatable Level of Process Maturity

5 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 5 G S T The Project Management System Is In Place Global Systems Technology, Inc. The process of building software is a series of black boxes with defined checkpoints (milestones). The process of building software is a series of black boxes with defined checkpoints (milestones). The predominant need is to establish effective software project management The predominant need is to establish effective software project management Software project management processes are documented and followed Software project management processes are documented and followed Organizational policies guide the projects in establishing management processes Organizational policies guide the projects in establishing management processes Successful practices developed on earlier projects can be repeated Successful practices developed on earlier projects can be repeated

6 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 6 G S T Requirements Management (RM) Purpose is to establish a common understanding (agreement) between the customer and the software project of the customer’s requirements that will be addressed Purpose is to establish a common understanding (agreement) between the customer and the software project of the customer’s requirements that will be addressed Involves Involves document and control of customer specified requirementsdocument and control of customer specified requirements Developing a mutual understanding of requirements (both technical and non technical)Developing a mutual understanding of requirements (both technical and non technical) plans, products and activities to be kept consistent with the requirementsplans, products and activities to be kept consistent with the requirements Global Systems Technology, Inc. You Client

7 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 7 G S T Agreement forms the basis for: Agreement forms the basis for: estimatingestimating planningplanning performingperforming trackingtracking Changes to requirements are documented and controlled. Changes to requirements are documented and controlled. Management reviews project commitments before project initiation. Management reviews project commitments before project initiation. Changes to system requirements drive changes in the project plan, estimate, and activities. Changes to system requirements drive changes in the project plan, estimate, and activities. Global Systems Technology, Inc.

8 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 8 G S T Goal 1: System Requirements allocated to software are controlled to establish a baseline for software engineering and management. Goal 1: System Requirements allocated to software are controlled to establish a baseline for software engineering and management. Goal 2: Software plans, products, and activities are kept consistent with the system requirements allocated to software Goal 2: Software plans, products, and activities are kept consistent with the system requirements allocated to software Global Systems Technology, Inc. Requirements Management Goals

9 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 9 G S T customer end user customer requirements system engineering other groups software engineering Global Systems Technology, Inc. What Does the CMM Mean by Requirements? system requirements allocated to software system requirements not allocated to software

10 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 10 G S T Global Systems Technology, Inc. What Does the CMM Mean by Requirements? Software Requirements User and Customer Needs System Requirements Allocated to Software Client determines what his functional need is, and defines that need in the context of operational change in the organization. Needs are understood by the vendor. The Client and the vendor agree on what is required to satisfy the business needs that have been identified. Stated in terms of what the system must do. (Performance and Functionality) The functionality that is to be satisfied by the software is “allocated” to the software project for development of that segment of the system. The allocated require- ments are restated in terms of what software must do to achieve the desired functionality. CMM Point of Control

11 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 11 G S T What Is Meant by Customer? Customers may be external or internal: Customers may be external or internal: systems engineeringsystems engineering marketingmarketing OperationsOperations The customer and/or end user identifies the problem that software will address The customer and/or end user identifies the problem that software will address Global Systems Technology, Inc.

12 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 12 G S T Software Requirements Versus Allocated Requirements The scope of Requirements Management is control of the requirements allocated to software The scope of Requirements Management is control of the requirements allocated to software Software requirements are not the same as requirements allocated to software Software requirements are not the same as requirements allocated to software Requirements allocated to software come from systems engineering Requirements allocated to software come from systems engineering Software requirements are derived from requirements allocated to software Software requirements are derived from requirements allocated to software Global Systems Technology, Inc.

13 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 13 G S T Requirements are Documented The system requirements assigned to software engineering must be documented The system requirements assigned to software engineering must be documented Documenting system requirements can be as simple as a memo or as elaborate as a multi-volume specification Documenting system requirements can be as simple as a memo or as elaborate as a multi-volume specification If requirements change, the changes must be documented and all resulting necessary changes in other documents must be tracked and verified. If requirements change, the changes must be documented and all resulting necessary changes in other documents must be tracked and verified. Global Systems Technology, Inc.

14 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 14 G S T Requirements Management Activities Activity 1: The software engineering group reviews the allocated requirements (allocated requirements to software) before they are incorporated into the software project. Activity 1: The software engineering group reviews the allocated requirements (allocated requirements to software) before they are incorporated into the software project. Activity 2: The software engineering group uses the allocated requirements as the basis for software plans, work products, and activities. (Project activities are based on requirements.) Activity 2: The software engineering group uses the allocated requirements as the basis for software plans, work products, and activities. (Project activities are based on requirements.) Activity 3: Changes to the allocated requirements are reviewed and incorporated into the software project. (CMM recognizes change will happen) Activity 3: Changes to the allocated requirements are reviewed and incorporated into the software project. (CMM recognizes change will happen) Global Systems Technology, Inc.

15 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 15 G S T Summarizing Requirements Management Global Systems Technology, Inc. Commitments In place Organization Has the Ability PrepareDoMeasure Measurements Verifying implementation Requirements allocated to software are reviewed by software engineers Requirements allocated to software are used as basis for software project plans, products, and activities Changes to allocated requirements are reviewed and incorporated

16 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 16 G S T Barriers to Requirements Management Requirements will change Requirements will change Insufficient domain knowledge of developer Insufficient domain knowledge of developer Insufficient understanding of “software systems” by the client Insufficient understanding of “software systems” by the client Insufficient time analyzing the client needs (vs what the client states as what he wants) Insufficient time analyzing the client needs (vs what the client states as what he wants) Customers do not always want to document the requirements Customers do not always want to document the requirements Requirements change without proper approval Requirements change without proper approval customer changescustomer changes staff changesstaff changes Global Systems Technology, Inc.

17 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 17 G S T Software Project Planning (SPP) Establish Commitments Develop Estimates Define Plan Project Global Systems Technology, Inc.

18 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 18 G S T Software Project Planning (PP, SPP) Purpose is to establish reasonable plans for performing the software engineering and for managing the software project Purpose is to establish reasonable plans for performing the software engineering and for managing the software project Involves Involves developing estimates for the work to be performeddeveloping estimates for the work to be performed establishing the necessary commitments (such as the contract with the client)establishing the necessary commitments (such as the contract with the client) defining the plan to perform the workdefining the plan to perform the work Global Systems Technology, Inc.

19 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 19 G S T Software Project Planning (PP, SPP) Goals Goal 1: Software Estimates are documented for use in planning and tracking the software project. 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 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 Goal 3: Affected groups and individuals agree to their commitments related to the software project Global Systems Technology, Inc.

20 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 20 G S T Commitment to Perform A project software manager is designated to be responsible (and has authority and accountability) for negotiating commitments and developing the project’s software development plan. A project software manager is designated to be responsible (and has authority and accountability) for negotiating commitments and developing the project’s software development plan. WHY IS THIS IMPORTANT? Project Plan Customer Needs Global Systems Technology, Inc.

21 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 21 G S T Managing Based on a Plan The plan provides the basis for initiating the software effort and managing the work. The plan provides the basis for initiating the software effort and managing the work. Common names for this plan include: Common names for this plan include: Software Development PlanSoftware Development Plan Software Project Management PlanSoftware Project Management Plan Software Project PlanSoftware Project Plan Project Management PlanProject Management Plan Software Engineering Management PlanSoftware Engineering Management Plan Plans should be tailored to the needs of the project, but also comply with organizational requirements. Plans should be tailored to the needs of the project, but also comply with organizational requirements. Global Systems Technology, Inc.

22 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 22 G S T Packaging the Software Project Plan All-in-One plan or separate plans which include: All-in-One plan or separate plans which include: Software Development PlanSoftware Development Plan Software Quality Assurance PlanSoftware Quality Assurance Plan Software Configuration Management PlanSoftware Configuration Management Plan Project Training PlanProject Training Plan Software Test PlanSoftware Test Plan Risk ManagementRisk Management Global Systems Technology, Inc.

23 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 23 G S T What is in a Software Development Plan? A software development plan specifies many or all of the following: A software development plan specifies many or all of the following: the project’s chosen software life cycle modelthe project’s chosen software life cycle model a list of the products to be developeda list of the products to be developed criteria for peer reviewscriteria for peer reviews estimates for level of effort (number of people (and skills), cost, schedules, etc.)estimates for level of effort (number of people (and skills), cost, schedules, etc.) facilities, support tools, and hardwarefacilities, support tools, and hardware project risksproject risks Global Systems Technology, Inc.

24 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 24 G S T Plans Are Based on Estimates In creating estimates for size, effort, cost, schedule, and/or computer resources: In creating estimates for size, effort, cost, schedule, and/or computer resources: historical data is used, when availablehistorical data is used, when available assumptions and estimates are documentedassumptions and estimates are documented Good estimating depends on the experience, skills, and judgment of the estimator. Good estimating depends on the experience, skills, and judgment of the estimator. Global Systems Technology, Inc.

25 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 25 G S T Software Project Planning (PP, SPP) Activities Activity 1: The software engineering group participates on the project proposal team. Activity 1: The software engineering group participates on the project proposal team. Activity 2: Software project planning is initiated in the early stages of, and in parallel with, the overall project plan. Activity 2: Software project planning is initiated in the early stages of, and in parallel with, the overall project plan. Activity 3: The software engineering group participates with the other affected groups in the overall project planning throughout the project’s life. Activity 3: The software engineering group participates with the other affected groups in the overall project planning throughout the project’s life. Activity 4: Software project commitments made to individuals and groups external to the organization are reviewed with senior management according to a documented procedure. Activity 4: Software project commitments made to individuals and groups external to the organization are reviewed with senior management according to a documented procedure. Activity 5: A software lifecycle with predefined stages of manageable size is identified or defined. Activity 5: A software lifecycle with predefined stages of manageable size is identified or defined. Global Systems Technology, Inc.

26 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 26 G S T Software Project Planning (PP, SPP) Activities Activity 6: The project’s software development plan is developed according to a documented procedure. Activity 6: The project’s software development plan is developed according to a documented procedure. Activity 7: The plan for the software project is documented. Activity 7: The plan for the software project is documented. Activity 8: Software work products that are needed to establish and maintain control of the software project are identified. Activity 8: Software work products that are needed to establish and maintain control of the software project are identified. Activity 9-11: Estimates are derived according to a documented procedure. Estimates include: Activity 9-11: Estimates are derived according to a documented procedure. Estimates include: Size of the software work productsSize of the software work products Efforts (time to complete project activities) and costEfforts (time to complete project activities) and cost Critical computer resourcesCritical computer resources Activity 12: The projects software schedule is derived according to a documented procedure. Activity 12: The projects software schedule is derived according to a documented procedure. Global Systems Technology, Inc.

27 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 27 G S T Software Project Planning (PP, SPP) Activities Activity 13: The software risks associated with the cost, resources, schedule, and technical aspects of the project are identified, assessed, and documented. Activity 13: The software risks associated with the cost, resources, schedule, and technical aspects of the project are identified, assessed, and documented. Activity 14: Plans for the project’s software engineering facilities and support tools are prepared. Activity 14: Plans for the project’s software engineering facilities and support tools are prepared. Activity 15: Software planning data recorded. Activity 15: Software planning data recorded. Caution! Why do you want to record the data that is used to establish the project plan? After all, you have the plan. When should you change your project plan? Global Systems Technology, Inc.

28 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 28 G S T Summarizing Project Planning Global Systems Technology, Inc. Commitments In place Organization Has the Ability PrepareDoMeasure Measurements Verifying implementation Participate on the proposal effort ensure that software requirements are appropriately understood. Plan software project (estimates, efforts, tools, risks, schedule, facilities, and critical resources). Establish external commitments, approved by management Maintain data used as basis of planning

29 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 29 G S T Barriers to Software Project Planning Planning takes time - - and commitment Planning takes time - - and commitment Lack of specific domain knowledge or experience Lack of specific domain knowledge or experience Uncertainty of the ability of the resources to be applied Uncertainty of the ability of the resources to be applied Estimating takes experience and data Estimating takes experience and data Unrealistic demands or expectations Unrealistic demands or expectations Organizational ManagementOrganizational Management CustomerCustomer Global Systems Technology, Inc.

30 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 30 G S T Software Project Tracking and Oversight (PT, PTO) Global Systems Technology, Inc. Actual Performance Planned Performance = 1. Actual Performance Planned Performance = 2. This is the desired state When this, corrective action

31 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 31 G S T Software Project Tracking and Oversight (PT, PTO) Purpose of Software Project Tracking and Oversight is to provide adequate visibility into actual progress so that management can take effective actions when software project’s performance deviates significantly from the plan. Purpose of Software Project Tracking and Oversight is to provide adequate visibility into actual progress so that management can take effective actions when software project’s performance deviates significantly from the plan. Involves Involves adjusting plans based on actual accomplishments and resultsadjusting plans based on actual accomplishments and results tracking and reviewing software accomplishments and results and comparing the results against documented estimates, commitments, and plans.tracking and reviewing software accomplishments and results and comparing the results against documented estimates, commitments, and plans. Global Systems Technology, Inc.

32 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 32 G S T Software Project Tracking and Oversight (PT, PTO) Goals Goal 1: Actual results and performance are tracked against the software plans. 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 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. Goal 3: Changes to software commitments are agreed to by the affected groups and individuals. Global Systems Technology, Inc.

33 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 33 G S T Manage to a Plan Progress is tracked against plans and specifications, including: Progress is tracked against plans and specifications, including: product sizeproduct size project effort, cost, and scheduleproject effort, cost, and schedule activitiesactivities RisksRisks Mechanisms to track progress against plans include both internal reviews and formal reviews with the customer. Mechanisms to track progress against plans include both internal reviews and formal reviews with the customer. Global Systems Technology, Inc.

34 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 34 G S T Taking Corrective Action If, and when, discrepancies between plans and actual progress occur, a judgment must be made about whether to: If, and when, discrepancies between plans and actual progress occur, a judgment must be made about whether to: change the way the work is being done, orchange the way the work is being done, or adjust the planadjust the plan This judgment results in corrective action to determine the root cause of the required changes This judgment results in corrective action to determine the root cause of the required changes Archives of original and adjusted plans should be kept Archives of original and adjusted plans should be kept Global Systems Technology, Inc.

35 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 35 G S T Software Project Tracking and Oversight (PTO, SPTO) Activities Activity 1: The documented software development plan is used for tracking the software activities and communicating status. Activity 1: The documented software development plan is used for tracking the software activities and communicating status. Activity 2: The project’s software development plan is revised according to a documented procedure. Activity 2: The project’s software development plan is revised according to a documented procedure. Activity 3: Software project commitments and changes to commitments made to individuals and groups external to the organization are reviewed with senior management according to a documented procedure. Activity 3: Software project commitments and changes to commitments made to individuals and groups external to the organization are reviewed with senior management according to a documented procedure. Activity 4: Approved changes to commitments that affect the software project are communicated to the members of the software engineering group and other software-related groups. Activity 4: Approved changes to commitments that affect the software project are communicated to the members of the software engineering group and other software-related groups. Global Systems Technology, Inc.

36 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 36 G S T Software Project Tracking and Oversight (PTO, SPTO) Activities Activity 5-10: Project attributes that have been documented in the plan are tracked and corrective actions are taken, as necessary (to maintain consistency between actuals and plan). These attributes are: Activity 5-10: Project attributes that have been documented in the plan are tracked and corrective actions are taken, as necessary (to maintain consistency between actuals and plan). These attributes are: Size of software work products (or changes)Size of software work products (or changes) Effort and costsEffort and costs Critical computer resourcesCritical computer resources Project scheduled milestonesProject scheduled milestones Software engineering activitiesSoftware engineering activities Project risks associated with cost, resource, schedule, and technical aspectsProject risks associated with cost, resource, schedule, and technical aspects Activity 11: Actual measurement data and replanning data for the software project are recorded. Activity 11: Actual measurement data and replanning data for the software project are recorded. Global Systems Technology, Inc.

37 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 37 G S T Software Project Tracking and Oversight (PTO, SPTO) Activities Activity 12: The software engineering group conducts periodic internal reviews to track technical progress, plans, performance, and issues against the software development plan. Activity 12: The software engineering group conducts periodic internal reviews to track technical progress, plans, performance, and issues against the software development plan. Activity 13: Formal reviews to address the accomplishments and results of the software project are conducted at selected project milestones according to a documented procedure. Activity 13: Formal reviews to address the accomplishments and results of the software project are conducted at selected project milestones according to a documented procedure. Caution! What is a “formal” review? Where in a project would you expect to have a “formal” review? How often should the project plan be changed? Global Systems Technology, Inc.

38 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 38 G S T Summarizing Project Tracking and Oversight Global Systems Technology, Inc. Commitments In place Organization Has the Ability PrepareDoMeasure Measurements Verifying implementation Compare the projects actual results to the documented software development and project plans. Conduct internal reviews, determine actuals, and conduct formal reviews to maintain relevance to objectives. Changes happen, drive changes to planning and commitments. Maintain data used for the basis of changes and corrective actions

39 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 39 G S T Barriers to Project Tracking and Oversight Plans may not be realistic Plans may not be realistic Manager may not be adequately trained Manager may not be adequately trained When fighting one set of fires, it is difficult to be proactive in preventing the next set When fighting one set of fires, it is difficult to be proactive in preventing the next set Too busy working. No time to manage Too busy working. No time to manage Rework happens Rework happens Customer intervention Customer intervention Global Systems Technology, Inc.

40 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 40 G S T Software Subcontract Management Selecting a software subcontractor, establishing commitments with the subcontractor, and tracking and reviewing performance of the subcontractor. Your Sub contractor You Global Systems Technology, Inc.

41 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 41 G S T Software Subcontract Management (SSM) Global Systems Technology, Inc. Subcontract Commitment 1 2 3 4 5 6 Product

42 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 42 G S T Software Subcontract Management (SSM) Purpose of Software Subcontract Management is to select qualified software subcontractors and manage them effectively. Purpose of Software Subcontract Management is to select qualified software subcontractors and manage them effectively. Involves: Involves: selecting a software subcontractorselecting a software subcontractor establishing commitments with the subcontractorestablishing commitments with the subcontractor tracking and reviewing the subcontractor’s performance and resultstracking and reviewing the subcontractor’s performance and results Global Systems Technology, Inc.

43 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 43 G S T Software Subcontract Management (SSM) Goals Goal 1: The prime contractor selects qualified software subcontractors Goal 1: The prime contractor selects qualified software subcontractors Goal 2: The prime contractor and the software subcontractor agree to their commitments to each other Goal 2: The prime contractor and the software subcontractor agree to their commitments to each other Goal 3: The prime contractor and the software subcontractor maintain ongoing communications Goal 3: The prime contractor and the software subcontractor maintain ongoing communications Goal 4: The prime contractor tracks the software subcontractor’s actual results and performance against its commitments Goal 4: The prime contractor tracks the software subcontractor’s actual results and performance against its commitments Global Systems Technology, Inc.

44 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 44 G S T Prime Versus Subcontractor The Prime Contractor is the organization responsible for building a system The Prime Contractor is the organization responsible for building a system The prime contractor may contract out part of the work to another contractor, the subcontractor The prime contractor may contract out part of the work to another contractor, the subcontractor Performance of the prime contractor may critically depend on the performance of the subcontractor Performance of the prime contractor may critically depend on the performance of the subcontractor Global Systems Technology, Inc.

45 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 45 G S T Planning for Subcontracts In selecting and managing subcontractors, prime contractors must perform activities additional to the ordinary project management effort: In selecting and managing subcontractors, prime contractors must perform activities additional to the ordinary project management effort: specify the work to be performed and the procedures to be followed by the subcontractspecify the work to be performed and the procedures to be followed by the subcontract –statements of work –requirements –products to be delivered –standards –procedures specify criteria for selecting and evaluating subcontractorsspecify criteria for selecting and evaluating subcontractors Global Systems Technology, Inc.

46 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 46 G S T Selecting Subcontractors The qualifications of a subcontractor may depend on many factors The qualifications of a subcontractor may depend on many factors process capabilityprocess capability software engineering expertisesoftware engineering expertise application domain knowledgeapplication domain knowledge Strategic business alliance Strategic business alliance Achieve corporate goals, meet commitments Achieve corporate goals, meet commitments Global Systems Technology, Inc.

47 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 47 G S T Managing Subcontracts The prime contractor must manage the subcontract The prime contractor must manage the subcontract ensure subcontractors follow agreed to software development plans, standards, and proceduresensure subcontractors follow agreed to software development plans, standards, and procedures track progress viatrack progress via –periodic technical and formal reviews –monitor the subcontractor’s SQA activities –monitor software configuration management by the subcontractor The subcontract is an extension of the project, just as if it was a group within the organization, and must be managed accordingly. The subcontract is an extension of the project, just as if it was a group within the organization, and must be managed accordingly. Global Systems Technology, Inc.

48 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 48 G S T What About Commercial-Off-the-Shelf (COTS)? COTS items and non-developmental items (NDI) are not explicitly addressed in the CMM COTS items and non-developmental items (NDI) are not explicitly addressed in the CMM Planning for COTS is mentioned in Activity 6 of Integrated Software Management: “Off-the-shelf or reusable software components are identified.” Planning for COTS is mentioned in Activity 6 of Integrated Software Management: “Off-the-shelf or reusable software components are identified.” Acceptance testing aspects of Software Subcontract Management should be used for COTS product evaluations Acceptance testing aspects of Software Subcontract Management should be used for COTS product evaluations Global Systems Technology, Inc.

49 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 49 G S T Software Subcontract Management (SM, SSM) Activities Activity 1: The work to be subcontracted is defined and planned according to a documented procedure. Activity 1: The work to be subcontracted is defined and planned according to a documented procedure. Activity 2: The software subcontractor is selected based on an evaluation of the subcontract bidders’ ability to perform the work, according to a documented procedure. Activity 2: The software subcontractor is selected based on an evaluation of the subcontract bidders’ ability to perform the work, according to a documented procedure. Activity 3: The contractual agreement between the prime contractor and the software subcontractor is used as the basis for managing the subcontract. Activity 3: The contractual agreement between the prime contractor and the software subcontractor is used as the basis for managing the subcontract. Activity 4: A documented subcontractor’s software development plan is reviewed and approved by the prime contractor. Activity 4: A documented subcontractor’s software development plan is reviewed and approved by the prime contractor. Global Systems Technology, Inc.

50 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 50 G S T Software Subcontract Management (SM, SSM) Activities Software Subcontract Management (SM, SSM) Activities Activity 5: A documented and approved subcontractor’s software development plan is used for tracking the software activities and communication status. Activity 5: A documented and approved subcontractor’s software development plan is used for tracking the software activities and communication status. Activity 6: Changes to the software subcontractor’s statement of work subcontract terms and conditions, and other commitments are resolved according to a documented procedure. Activity 6: Changes to the software subcontractor’s statement of work subcontract terms and conditions, and other commitments are resolved according to a documented procedure. Activity 7: The prime contractor’s management conducts periodic status/coordination reviews with the subcontractor’s management. Activity 7: The prime contractor’s management conducts periodic status/coordination reviews with the subcontractor’s management. Activity 8: Periodic technical reviews and interchanges are held with the software subcontractor. Activity 8: Periodic technical reviews and interchanges are held with the software subcontractor. Global Systems Technology, Inc.

51 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 51 G S T Software Subcontract Management (SM, SSM) Activities Software Subcontract Management (SM, SSM) Activities Activity 9: Formal reviews to address the subcontractor’s software engineering accomplishments and results are conducted at selected milestones according to a documented procedure. Activity 9: Formal reviews to address the subcontractor’s software engineering accomplishments and results are conducted at selected milestones according to a documented procedure. Activity 10: The prime contractor’s software quality assurance group monitors the subcontractor’s software quality assurance activities according to a documented procedure. Activity 10: The prime contractor’s software quality assurance group monitors the subcontractor’s software quality assurance activities according to a documented procedure. Activity 11: The prime contractor’s software configuration management group monitors the subcontractor’s software configuration management activities according to a documented procedure. Activity 11: The prime contractor’s software configuration management group monitors the subcontractor’s software configuration management activities according to a documented procedure. Global Systems Technology, Inc.

52 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 52 G S T Software Subcontract Management (SM, SSM) Activities Activity 12: The prime contractor conducts acceptance testing as part of the delivery of the subcontractor’s software products according to a documented procedure. Activity 12: The prime contractor conducts acceptance testing as part of the delivery of the subcontractor’s software products according to a documented procedure. Activity 13: The software subcontractor’s performance is evaluated on a periodic basis, and the evaluation is reviewed with the subcontractor. Activity 13: The software subcontractor’s performance is evaluated on a periodic basis, and the evaluation is reviewed with the subcontractor. Caution! The subcontractor is an extension of the capability of the prime contractor. The subcontractor CMM activities parallel the organization’s activities for their own software projects. Global Systems Technology, Inc.

53 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 53 G S T Summarizing Subcontract Management Global Systems Technology, Inc. Commitments In place Organization Has the Ability PrepareDoMeasure Measurements Verifying implementation The work to be subcontracted is planned and documented. subcontractor is selected Prime contractor and subcontractor reach a mutual understanding as to the work to be performed. Prime and subcontractor maintain communications and work is monitored by informal and formal reviews Subcontractor performance is evaluated by the prime contractor.

54 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 54 G S T Barriers to Software Subcontract Management Difference between prime and subcontractor Difference between prime and subcontractor organization vernacularorganization vernacular organizational cultureorganizational culture proprietary informationproprietary information Lack of communication Lack of communication Oversight perceived as meddling Oversight perceived as meddling Promotion of technical staff without appropriate training Promotion of technical staff without appropriate training Global Systems Technology, Inc.

55 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 55 G S T Software Quality Assurance (SQA) Provide management with appropriate visibility into the process being used by the software project and of the products being built. Provide management with appropriate visibility into the process being used by the software project and of the products being built. Global Systems Technology, Inc.

56 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 56 G S T Software Quality Assurance (SQA) Review & Audit Software Products & Activities Verify Compliance Management Visibility Corrective Actions Global Systems Technology, Inc.

57 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 57 G S T Software Quality Assurance (QA, SQA) Purpose is to provide management with appropriate visibility in the process being used and the products being built Purpose is to provide management with appropriate visibility in the process being used and the products being built Involves: Involves: reviewing and auditing the software products and activities to ensure that they conform to the applicable procedures and standardsreviewing and auditing the software products and activities to ensure that they conform to the applicable procedures and standards providing the software project and other appropriate managers with the results of those reviews and auditsproviding the software project and other appropriate managers with the results of those reviews and audits Global Systems Technology, Inc.

58 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 58 G S T Software Quality Assurance Goals Goal 1: Software quality assurance activities are planned. 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 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 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. Goal 4: Noncompliance issues that cannot be resolved within the software project are addressed by senior management. Global Systems Technology, Inc.

59 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 59 G S T SQA Role The value of SQA is that it provides an independent view of the project’s progress - both of process implementation and utilization and product development The value of SQA is that it provides an independent view of the project’s progress - both of process implementation and utilization and product development SQA serves as the “eyes and ears” of management, and serves as risk mitigation activity by identifying deviation from the project plan so timely corrective action can be taken SQA serves as the “eyes and ears” of management, and serves as risk mitigation activity by identifying deviation from the project plan so timely corrective action can be taken Almost every key process area contains SQA practices in Verifying Implementation Almost every key process area contains SQA practices in Verifying Implementation Global Systems Technology, Inc.

60 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 60 G S T Resolving Noncompliance Make the product or process satisfy the agreed to standard, procedure or requirement Make the product or process satisfy the agreed to standard, procedure or requirement Make and document a decision, at the appropriate level, not to satisfy the standard, procedure, or requirement Make and document a decision, at the appropriate level, not to satisfy the standard, procedure, or requirement Change the standard, procedure or requirement to make it usable for the given circumstance Change the standard, procedure or requirement to make it usable for the given circumstance Global Systems Technology, Inc.

61 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 61 G S T Independent Versus Objective Commitment 1, Sub practice 2 (“The SQA group has an independent reporting channel to senior management) indicates that an independent SQA group is normally expected Commitment 1, Sub practice 2 (“The SQA group has an independent reporting channel to senior management) indicates that an independent SQA group is normally expected Goal 2 of SQA (verify adherence objectively) provides latitude in defining SQA Goal 2 of SQA (verify adherence objectively) provides latitude in defining SQA Without an independent SQA group, how does the organization demonstrate objective means of adherence? Without an independent SQA group, how does the organization demonstrate objective means of adherence? Global Systems Technology, Inc.

62 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 62 G S T SQA Evolves Proactive SQA functions as a value-adding member of the project team Proactive SQA functions as a value-adding member of the project team SQA starts early in the projectSQA starts early in the project SQA helps prepare and review procedures, plans and standardsSQA helps prepare and review procedures, plans and standards At higher levels, the CMM provides flexibility for SQA to function pro-actively to drive improvements in the software process and product At higher levels, the CMM provides flexibility for SQA to function pro-actively to drive improvements in the software process and product Global Systems Technology, Inc.

63 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 63 G S T Software Quality Assurance (QA, SQA) Activities Activity 1: The SQA plan is prepared for the software project according to a documented procedure. Activity 1: The SQA plan is prepared for the software project according to a documented procedure. Activity 2: The SQA group’s activities are performed in accordance with the SQA plan. Activity 2: The SQA group’s activities are performed in accordance with the SQA plan. Activity 3: The SQA group participates in the preparation and review of the project’s software development plan, standards, and procedures. Activity 3: The SQA group participates in the preparation and review of the project’s software development plan, standards, and procedures. Activity 4: The SQA group reviews the software engineering activities to verify compliance. Activity 4: The SQA group reviews the software engineering activities to verify compliance. Activity 5: The SQA group audits designated software work products to verify compliance. Activity 5: The SQA group audits designated software work products to verify compliance. Global Systems Technology, Inc.

64 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 64 G S T Software Quality Assurance (QA, SQA) Activities Activity 6: The SQA group periodically reports the results of its activities the the software engineering group. Activity 6: The SQA group periodically reports the results of its activities the the software engineering group. Activity 7: Deviations identified in the software activities and software work products are documented and handled according to a documented procedure. Activity 7: Deviations identified in the software activities and software work products are documented and handled according to a documented procedure. Activity 8: The SQA group conducts periodic reviews of its activities and findings with the customer’s SQA personnel, as appropriate. Activity 8: The SQA group conducts periodic reviews of its activities and findings with the customer’s SQA personnel, as appropriate. Caution! The CMM is a model, and the word “group” is not intended to imply any constraint on the way the organization staffs and accomplishes the SQA, or any other, function. Global Systems Technology, Inc.

65 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 65 G S T Summarizing Quality Assurance Global Systems Technology, Inc. Commitments In place Organization Has the Ability PrepareDoMeasure Measurements Verifying implementation Software Quality Assurance activities are planned with the other activities of the project. Software Quality Assurance activities are conducted according to the SQA plan. The results of the Software Quality Assurance activities are reported to the appropriate group or persons. Deviations that are identified are resolved accordingly.

66 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 66 G S T Barriers to Software Quality Assurance Disbelief in the value of SQA Disbelief in the value of SQA Standards and procedures that don’t add value Standards and procedures that don’t add value Lack of respect of SQA by the software engineering group Lack of respect of SQA by the software engineering group Unqualified SQA staff members Unqualified SQA staff members Shoot the messenger Shoot the messenger Global Systems Technology, Inc.

67 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 67 G S T Software Configuration Management (SCM) Establish and maintain the integrity of the products of the software project throughout the project’s software lifecycle. Establish and maintain the integrity of the products of the software project throughout the project’s software lifecycle. Currently defined and approved requirements Product specification and Design Final product characteristics == Global Systems Technology, Inc.

68 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 68 G S T Software Configuration Management (SCM) Identify Configuration Project Life Cycle Maintain Integrity & Traceability Configuration Change Control Global Systems Technology, Inc.

69 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 69 G S T Software Configuration Management (SCM) Goals Goal 1: Software configuration management activities are planned. Goal 1: Software configuration management activities are planned. Goal 2: Selected software work products are identified, controlled, and available. Goal 2: Selected software work products are identified, controlled, and available. Goal 3: Changes to identified software work products are controlled. 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. Goal 4: Affected groups and individuals are informed of the status and content of software baselines. Global Systems Technology, Inc.

70 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 70 G S T Software Configuration Management (CM, SCM) Purpose is to establish and maintain the integrity of the products of the software project throughout the software life cycle Purpose is to establish and maintain the integrity of the products of the software project throughout the software life cycle Involves Involves identifying configuration items/unitsidentifying configuration items/units systematically controlling changessystematically controlling changes maintaining integrity and traceability of the configuration throughout the software life cyclemaintaining integrity and traceability of the configuration throughout the software life cycle Global Systems Technology, Inc.

71 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 71 G S T Using Baselines for Product Control SCM relies on baselining work products SCM relies on baselining work products A baseline is a specification or product that: A baseline is a specification or product that: has been formally reviewed and agreed tohas been formally reviewed and agreed to serves as the basis for further workserves as the basis for further work can be changed only through formal change control procedures (which leads to a new baseline)can be changed only through formal change control procedures (which leads to a new baseline) There are three common baselines (not defined in CMM): There are three common baselines (not defined in CMM): Functional Baseline (Established by requirements)Functional Baseline (Established by requirements) Allocated Baseline (Established by the high level design)Allocated Baseline (Established by the high level design) Product Baseline (Established by the finished code)Product Baseline (Established by the finished code) Global Systems Technology, Inc.

72 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 72 G S T Using Baselines for Product Control Global Systems Technology, Inc. Requirements (Functional) Design (Allocated) Code (Product) Baseline Control (Control of Product Defining Items) Managed and Controlled Project Plans Methods Documents Manuals (User) Test Documentation Other Work Products Project Reports PROJECTLIBRARYPROJECTLIBRARY What in the difference in control?

73 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 73 G S T Controlling Change SCM provides a stable, controlled, working environment SCM provides a stable, controlled, working environment Uncontrolled change of work products is a chaotic process Uncontrolled change of work products is a chaotic process SCM provided a “memory” of the status of work products by using version control, and baselines SCM provided a “memory” of the status of work products by using version control, and baselines When many individuals are working on the same product, SCM coordinates access to and change of the software work products. When many individuals are working on the same product, SCM coordinates access to and change of the software work products. Global Systems Technology, Inc.

74 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 74 G S T Software Product and Software Work Product Software product - the complete set, or any of the individual items of the set of computer programs, procedures, associated documentation, and data designated for delivery to a customer or end user. Software product - the complete set, or any of the individual items of the set of computer programs, procedures, associated documentation, and data designated for delivery to a customer or end user. Software work product - any artifact created as part of defining, maintaining, or using a software process including process descriptions, plans, procedures, computer programs, and associated documents, which may or may not be intended for delivery to a customer or end user. Software work product - any artifact created as part of defining, maintaining, or using a software process including process descriptions, plans, procedures, computer programs, and associated documents, which may or may not be intended for delivery to a customer or end user. Global Systems Technology, Inc.

75 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 75 G S T Developmental SCM Some work products do not require the formal change control of baseline configuration management Some work products do not require the formal change control of baseline configuration management Developmental SCM Developmental SCM used for non-baselined items that define the evolving configuration of a software work product during developmentused for non-baselined items that define the evolving configuration of a software work product during development applies to software and associated documentationapplies to software and associated documentation under the direct control of the developerunder the direct control of the developer Global Systems Technology, Inc.

76 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 76 G S T Baseline Versus Developmental Configuration Management In baseline CM, baselines for identified software work products are established at predetermined points. In baseline CM, baselines for identified software work products are established at predetermined points. In developmental CM, configuration control is exercised by the developers as they perform their work. In developmental CM, configuration control is exercised by the developers as they perform their work. The SCM Key Process Area can be satisfied with baseline configuration management The SCM Key Process Area can be satisfied with baseline configuration management Global Systems Technology, Inc.

77 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 77 G S T Managed and Controlled Some software work products do not need the formality of configuration management but do need to be placed under some form of: Some software work products do not need the formality of configuration management but do need to be placed under some form of: version controlversion control change controlchange control This control is referred to as “managed and controlled” in the key practices. This control is referred to as “managed and controlled” in the key practices. Global Systems Technology, Inc.

78 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 78 G S T Configuration Audits Functional Configuration Audit (FCA): Conducted to verify the configured product functions as appropriate to satisfy the agreed to requirements. Includes both functionality and performance. Generally done by tracing the requirements to the test activity. Functional Configuration Audit (FCA): Conducted to verify the configured product functions as appropriate to satisfy the agreed to requirements. Includes both functionality and performance. Generally done by tracing the requirements to the test activity. Physical Configuration Audit (PCA): Conducted to verify the design and physical properties (code structure) of the software product that has successfully been tested is appropriately defined by its technical definition (documentation). Usually conducted as part of the acceptance activity. Physical Configuration Audit (PCA): Conducted to verify the design and physical properties (code structure) of the software product that has successfully been tested is appropriately defined by its technical definition (documentation). Usually conducted as part of the acceptance activity. Global Systems Technology, Inc.

79 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 79 G S T Software Configuration Management (CM, SCM) Activities Activity 1: The SCM plan is prepared for the software project according to a documented procedure. Activity 1: The SCM plan is prepared for the software project according to a documented procedure. Activity 2: A documented and approved SCM plan is used as the basis for performing the SCM activities. Activity 2: A documented and approved SCM plan is used as the basis for performing the SCM activities. Activity 3: A configuration management library is established as a repository for the software baselines. Activity 3: A configuration management library is established as a repository for the software baselines. Activity 4: The software work products to be placed under configuration management are identified. Activity 4: The software work products to be placed under configuration management are identified. Activity 5: Change requests and problem reports for all configuration items/units are initiated, recorded, reviewed, approved, and tracked according to a documented procedure. Activity 5: Change requests and problem reports for all configuration items/units are initiated, recorded, reviewed, approved, and tracked according to a documented procedure. Global Systems Technology, Inc.

80 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 80 G S T Software Configuration Management (CM, SCM) Activities Activity 6: Changes to a baseline are controlled according to a documented procedure. Activity 6: Changes to a baseline are controlled according to a documented procedure. Activity 7: Products from the software baseline library are created and their release is controlled according to a documented procedure. Activity 7: Products from the software baseline library are created and their release is controlled according to a documented procedure. Activity 8: The status of configuration items/units is recorded according to a documented procedure. Activity 8: The status of configuration items/units is recorded according to a documented procedure. Activity 9: Standard Reports documenting the SCM activities and the contents of the software baseline library are developed and made available to affected groups and individuals. Activity 9: Standard Reports documenting the SCM activities and the contents of the software baseline library are developed and made available to affected groups and individuals. Activity 10: Software baseline audits are conducted according to a documented procedure. Activity 10: Software baseline audits are conducted according to a documented procedure. Global Systems Technology, Inc.

81 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 81 G S T Summarizing Configuration Management Global Systems Technology, Inc. Commitments In place Organization Has the Ability PrepareDoMeasure Measurements Verifying implementation The Configuration Management activities are planned and integrated into the software project. The configuration items and work products that are to be controlled are identified. The identified items are controlled, providing a consistent view and understanding of the product. Results of Configuration Management activities are monitored and reported.

82 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 82 G S T Barriers to SCM Schedule pressure Schedule pressure fixes being incorporated as the product is going out the doorfixes being incorporated as the product is going out the door Lack of automated support Lack of automated support Individual’s belief that they don’t need CM Individual’s belief that they don’t need CM Global Systems Technology, Inc.

83 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 83 G S T Global Systems Technology, Inc. REQUIREMENTS MANAGEMENT SOFTWARE PROJECT PLANNING SOFTWARE PROJECT TRACKING AND OVERSIGHT SOFTWARE SUBCONTRACT MANAGEMENT SOFTWARE QUALITY ASSURANCE SOFTWARE CONFIGURATION MANAGEMENT The Repeatable Level Key Process Areas (KPAs) are all interrelated and tied together to provide the fundamental needs of a cohesive Project Management Capability. The Repeatable Level Key Process Areas (KPAs) are all interrelated and tied together to provide the fundamental needs of a cohesive Project Management Capability. As a group, the Repeatable Level KPAs provide a basis for building and managing a common software engineering process. As a group, the Repeatable Level KPAs provide a basis for building and managing a common software engineering process. Repeatable Level of Process Maturity Review

84 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 84 G S T Review of Repeatable Level Requirements Management Requirements Management control of system requirements allocated to software to establish baselinecontrol of system requirements allocated to software to establish baseline software plans, products and activities kept consistent with the system requirements allocated to softwaresoftware plans, products and activities kept consistent with the system requirements allocated to software Software Project Planning Software Project Planning estimates documentedestimates documented plans developed and documentedplans developed and documented commitments establishedcommitments established Software Project Tracking and Oversight Software Project Tracking and Oversight managed according to plan(s)managed according to plan(s) corrective actions takencorrective actions taken re-negotiates commitments and adjusts plan(s)re-negotiates commitments and adjusts plan(s) Global Systems Technology, Inc.

85 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 85 G S T Review of Repeatable Level Software Subcontractor Management Software Subcontractor Management defines the work to be subcontracteddefines the work to be subcontracted establishes commitment between prime and subcontractorestablishes commitment between prime and subcontractor selects and monitors the subcontractorselects and monitors the subcontractor maintains ongoing communicationmaintains ongoing communication Software Quality Assurance Software Quality Assurance plans SQA activitiesplans SQA activities reviews and/or audits software products and processesreviews and/or audits software products and processes reports resultsreports results escalates noncompliance issues that cannot be resolvedescalates noncompliance issues that cannot be resolved Software Configuration Management Software Configuration Management plans SCM activitiesplans SCM activities identifies and maintains configuration itemsidentifies and maintains configuration items systematically controls changessystematically controls changes maintains integrity and traceability of baseline throughout the software life cyclemaintains integrity and traceability of baseline throughout the software life cycle Global Systems Technology, Inc.

86 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 86 G S T Understanding the Defined Level of Process Maturity Global Systems Technology, Inc. INTERGROUP COORDINATION ORGANIZATION PROCESS DEFINITION SOFTWARE PROCESS ENGINEERING TRAINING PROGRAM INTEGRATED SOFTWARE MANAGEMENT PEER REVIEW ORGANIZATION PROCESS FOCUS

87 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 87 G S T Defined Level of Process Maturity Builds on the software project management foundation Builds on the software project management foundation Processes are controlled, i.e., defined, documented, and understood Processes are controlled, i.e., defined, documented, and understood Outputs of one task flow smoothly into the inputs of the next task Outputs of one task flow smoothly into the inputs of the next task Processes empower the individuals doing the work Processes empower the individuals doing the work Global Systems Technology, Inc.

88 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 88 G S T Global Systems Technology, Inc. REQUIREMENTS MANAGEMENT SOFTWARE PROJECT PLANNING SOFTWARE PROJECT TRACKING AND OVERSIGHT SOFTWARE SUBCONTRACT MANAGEMENT SOFTWARE QUALITY ASSURANCE SOFTWARE CONFIGURATION MANAGEMENT Defined Level of Process Maturity ORGANIZATION PROCESS FOCUS ORGANIZATION PROCESS DEFINITION TRAINING PROGRAM INTEGRATED SOFTWARE MANAGEMENT SOFTWARE PRODUCT ENGINEERING INTERGROUP COORDINATION PEER REVIEW

89 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 89 G S T Projects Are Managed According To A Well-Defined Process In Out Global Systems Technology, Inc. Roles and responsibilities in the process are understood Roles and responsibilities in the process are understood The production of the software product is visible throughout the software process The production of the software product is visible throughout the software process

90 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 90 G S T Moving from Level 2 to Level 3 At Level 2 the focus is on projects At Level 2 the focus is on projects At Level 3 the emphasis shifts to the organization At Level 3 the emphasis shifts to the organization best practices are gathered across the organizationbest practices are gathered across the organization processes are tailored as appropriateprocesses are tailored as appropriate The organization supports the projects by establishing: The organization supports the projects by establishing: common processescommon processes common measurementscommon measurements trainingtraining Global Systems Technology, Inc.

91 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 91 G S T Organization Process Focus (PF, OPF) Purpose is to establish the organizational responsibility for software process activities that improve the organization’s overall software process capability Purpose is to establish the organizational responsibility for software process activities that improve the organization’s overall software process capability Involves: Involves: developing and maintaining an understanding of organization and project software processesdeveloping and maintaining an understanding of organization and project software processes coordinating the activities to assess, develop, maintain, and improve organizational processescoordinating the activities to assess, develop, maintain, and improve organizational processes Global Systems Technology, Inc.

92 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 92 G S T Organization Process Focus (PF, OPF) Global Systems Technology, Inc. Policy Procedure & Work aids Vol. 1 Your Project’s Documentation (subset of organization, tailored to project) 2 Monitored and Controlled By Management through the SEPG

93 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 93 G S T Organization Process Focus (PF, OPF) Goals Goal 1: Software process development and improvement activities are coordinated across the organization. Goal 1: Software process development and improvement activities are coordinated across the organization. Goal 2: The strengths and weakness of the software processes are identified relative process standard. Goal 2: The strengths and weakness of the software processes are identified relative process standard. Goal 3: Organizational-level process development and improvement activities are planned. Goal 3: Organizational-level process development and improvement activities are planned. Global Systems Technology, Inc.

94 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 94 G S T Dedicating People to Process A dedicated group of people is responsible for the organization’s software process activities A dedicated group of people is responsible for the organization’s software process activities appraisalsappraisals software process improvement planssoftware process improvement plans Includes maintaining a database and providing training about the organization's software process Includes maintaining a database and providing training about the organization's software process Varies with organization’s size Varies with organization’s size Watts Humphrey's recommendation is 4-6% of software development staff (is this realistic?)Watts Humphrey's recommendation is 4-6% of software development staff (is this realistic?) Activity can be by dedicated staff or by task assignmentActivity can be by dedicated staff or by task assignment Global Systems Technology, Inc.

95 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 95 G S T Dedicated Groups May Vary A Software Engineering Process Group (SEPG) is the typical means of providing a process focus for the organization. A Software Engineering Process Group (SEPG) is the typical means of providing a process focus for the organization. Other ways of focusing on Process are possible: Other ways of focusing on Process are possible: process review boardsprocess review boards quality circlesquality circles process steering committeesprocess steering committees software quality assurancesoftware quality assurance The above mechanisms may work in conjunction with, or in place of, the SEPG The above mechanisms may work in conjunction with, or in place of, the SEPG Global Systems Technology, Inc.

96 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 96 G S T Relation of OPF to Organization Process Definition (PD, OPD) OPF and OPD are tightly coupled OPF and OPD are tightly coupled Organization Process Focus centers on the “who” controls and manages the process Organization Process Focus centers on the “who” controls and manages the process Organization Process Definition focuses the “what” aspects of the documented process Organization Process Definition focuses the “what” aspects of the documented process Global Systems Technology, Inc.

97 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 97 G S T Organization Process Focus (PF, OPF) Activities Activity 1: The software process is assessed periodically, and action plans developed to address the assessment findings. Activity 1: The software process is assessed periodically, and action plans developed to address the assessment findings. Activity 2: The organization develops and maintains a plan for its software process development and improvement activities. Activity 2: The organization develops and maintains a plan for its software process development and improvement activities. Activity 3: The organization’s and projects’ activities for developing and improving their software process are coordinated at the organization level. Activity 3: The organization’s and projects’ activities for developing and improving their software process are coordinated at the organization level. Activity 4: The use of the organization’s software process database is coordinated at the organization level. Activity 4: The use of the organization’s software process database is coordinated at the organization level. Activity 5: New processes, methods and tools in limited use in the organization are monitored, evaluated, and, where appropriate, transferred to other parts of the organization. Activity 5: New processes, methods and tools in limited use in the organization are monitored, evaluated, and, where appropriate, transferred to other parts of the organization. Global Systems Technology, Inc.

98 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 98 G S T Organization Process Focus (PF, OPF) Activities Activity 6: Training for the organization’s and projects’ processes is coordinated across the organization. Activity 6: Training for the organization’s and projects’ processes is coordinated across the organization. Activity 7: The groups involved in implementing the software processes are informed of the organization’s and projects’ activities for software process development and improvement. Activity 7: The groups involved in implementing the software processes are informed of the organization’s and projects’ activities for software process development and improvement. Global Systems Technology, Inc. Organization Process Focus deals with the “Who” issues of organization processes

99 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 99 G S T Barriers of OPF Respect of the SEPG members Respect of the SEPG members Dedicated resources Dedicated resources Mis-scoping the improvement effort Mis-scoping the improvement effort Senior management sponsorship Senior management sponsorship Middle management black hole Middle management black hole Skeptical staff Skeptical staff Global Systems Technology, Inc.

100 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 100 G S T Organization Process Definition (PD, OPD) Purpose is to develop and maintain a usable set of software process assets that improve process performance and provide a basis for cumulative, long-term benefits Purpose is to develop and maintain a usable set of software process assets that improve process performance and provide a basis for cumulative, long-term benefits Involves Involves developing and maintaining the organization’s standard software process and related process assets.developing and maintaining the organization’s standard software process and related process assets. Global Systems Technology, Inc.

101 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 101 G S T Organization Process Definition (PD, OPD) Global Systems Technology, Inc. Policy Procedure & Work aids Vol. 1 2 Tailoring Process (Adaptation to the needs of the project) P R O J E C T S

102 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 102 G S T Organization Process Definition (PD, OPD) Goals Goal 1: A standard software process for the organization is developed and maintained. Goal 1: A standard software process for the organization is developed and maintained. Goal 2: Information related to the use of the organization’s standard software process by the software project is collected, reviewed, and made available. Goal 2: Information related to the use of the organization’s standard software process by the software project is collected, reviewed, and made available. Global Systems Technology, Inc.

103 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 103 G S T Software Process Assets A collection of entities, maintained by an organization, for use by projects, in developing, tailoring, maintaining, and implementing their software practices. A collection of entities, maintained by an organization, for use by projects, in developing, tailoring, maintaining, and implementing their software practices. Software process assets include: Software process assets include: descriptions of software life cycles approved for usedescriptions of software life cycles approved for use guidelines and criteria for tailoring the organization's standard software processguidelines and criteria for tailoring the organization's standard software process the organization's software process databasethe organization's software process database a library of software process-related documentationa library of software process-related documentation the organization’s standard software processthe organization’s standard software process Global Systems Technology, Inc.

104 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 104 G S T Process Building Blocks The organization’s standard software process includes process elements for activities such as: The organization’s standard software process includes process elements for activities such as: software estimatingsoftware estimating designdesign codingcoding peer reviewpeer review Process elements are described in terms of standards, procedures, templates, abstractions, etc., which can be “assembled” to form a process. Process elements are described in terms of standards, procedures, templates, abstractions, etc., which can be “assembled” to form a process. Global Systems Technology, Inc.

105 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 105 G S T Relating Process Elements Process elements have: Process elements have: an order in which they can be connected (perhaps more than one order)an order in which they can be connected (perhaps more than one order) interfacesinterfaces InterdependenciesInterdependencies These relationships are sometimes referred to as a software process architecture. These relationships are sometimes referred to as a software process architecture. Many different software processes can be built using the architecture of the organization’s standard software process. Many different software processes can be built using the architecture of the organization’s standard software process. Global Systems Technology, Inc.

106 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 106 G S T Software Life Cycles The organization may support several software life cycle models, such as: The organization may support several software life cycle models, such as: waterfallwaterfall spiralspiral incrementalincremental serialserial The needs of the specific project should determine the life cycle model applied The needs of the specific project should determine the life cycle model applied Global Systems Technology, Inc.

107 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 107 G S T Tailoring Guidelines (or, How to use the Standard Software Process) Guidelines for tailoring the organization's standard software process are available to individual projects. Guidelines for tailoring the organization's standard software process are available to individual projects. What can be tailored out? What cannot? What can be tailored out? What cannot? How much can a process element be modified? How much can a process element be modified? What parts of a process element should be considered for tailoring? What parts of a process element should be considered for tailoring? Global Systems Technology, Inc.

108 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 108 G S T Organization’s Software Process Database: Measurement Data A central repository for organization measurement data. A central repository for organization measurement data. Contains: Contains: actual measurement data (the numbers from individual projects)actual measurement data (the numbers from individual projects) the related information needed to understand the measurement data and to apply it to new projects.the related information needed to understand the measurement data and to apply it to new projects. This is the repository where planning and replanning data for the organization resides This is the repository where planning and replanning data for the organization resides Global Systems Technology, Inc.

109 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 109 G S T Library of Software Process-Related Information The library where “best documents” used on past projects are kept The library where “best documents” used on past projects are kept Contains lessons learned reports, example documents, and fragments of documents. Contains lessons learned reports, example documents, and fragments of documents. In general, contains any documents that may be used as models or examples for future projects. In general, contains any documents that may be used as models or examples for future projects. Global Systems Technology, Inc.

110 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 110 G S T Organization Process Definition (PD, OPD) Activities Activity 1: The organizations standard software process is developed and maintained according to a documented procedure. Activity 1: The organizations standard software process is developed and maintained according to a documented procedure. Activity 2: The organization’s standard software process is documented according to established organization standards. Activity 2: The organization’s standard software process is documented according to established organization standards. Activity 3: Descriptions of software lifecycles that are approved for use by the projects are documented and maintained. Activity 3: Descriptions of software lifecycles that are approved for use by the projects are documented and maintained. Activity 4: Guidelines and criteria for the projects tailoring of the organization’s standard software process are developed and maintained. Activity 4: Guidelines and criteria for the projects tailoring of the organization’s standard software process are developed and maintained. Global Systems Technology, Inc.

111 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 111 G S T Organization Process Definition (PD, OPD) Activities Activity 5: The organization’s software process database is established and maintained. Activity 5: The organization’s software process database is established and maintained. Activity 6: A library of software process related documentation is established and maintained. Activity 6: A library of software process related documentation is established and maintained. Global Systems Technology, Inc. Organization Process Definition deals with the “What” issues of organization processes

112 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 112 G S T Barriers to OPD Level of detail in the process descriptions Level of detail in the process descriptions Notations for representing the process Notations for representing the process Best practices are not defined and documented Best practices are not defined and documented Process definition is not understood Process definition is not understood Global Systems Technology, Inc.

113 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 113 G S T Training Program (TP) Purpose is to develop the skills and knowledge of individuals so they can perform their roles effectively and efficiently Purpose is to develop the skills and knowledge of individuals so they can perform their roles effectively and efficiently Involves: Involves: identifying the training needs of the organization, the projects, and individualsidentifying the training needs of the organization, the projects, and individuals developing and/or procuring training to address these needsdeveloping and/or procuring training to address these needs Global Systems Technology, Inc.

114 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 114 G S T Training Program (TP) Global Systems Technology, Inc.

115 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 115 G S T Training Program (TP) Goal 1: Training activities are planned Goal 1: Training activities are planned Goal 2: Training for developing the skills and knowledge needed to perform software management and technical roles is provided. Goal 2: Training for developing the skills and knowledge needed to perform software management and technical roles is provided. Goal 3: Individuals in the software engineering group and software related groups receive the training necessary to perform their roles. Goal 3: Individuals in the software engineering group and software related groups receive the training necessary to perform their roles. Global Systems Technology, Inc. Role based training is the objective!

116 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 116 G S T Training Software training is identified, developed, and established by an organization training group Software training is identified, developed, and established by an organization training group The training group The training group begins by reviewing each software project’s training needs and plansbegins by reviewing each software project’s training needs and plans analyzes the skills needed by the organization and how and when needed training will occuranalyzes the skills needed by the organization and how and when needed training will occur prepares, develops and maintains training coursesprepares, develops and maintains training courses maintains training recordsmaintains training records Global Systems Technology, Inc.

117 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 117 G S T Organizational Training Organizational training needs are identified based on the: Organizational training needs are identified based on the: organization’s standard software processorganization’s standard software process project needs (customer focused domain)project needs (customer focused domain) organization’s cultureorganization’s culture individual needsindividual needs Global Systems Technology, Inc.

118 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 118 G S T Waivers The purpose of training is to import skills and knowledge The purpose of training is to import skills and knowledge Individuals want to build their professional skills Individuals want to build their professional skills Individuals already possessing a skill do not need training in that skill Individuals already possessing a skill do not need training in that skill A waiver procedure should exist to waive the training requirement when a skill is already possessed. A waiver procedure should exist to waive the training requirement when a skill is already possessed. Global Systems Technology, Inc.

119 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 119 G S T Required Training At level 2 the phrase “receive training” is used At level 2 the phrase “receive training” is used training at Level 2 may not be institutionalized across the organizationtraining at Level 2 may not be institutionalized across the organization objective is to have the basic skills to accomplish the task at handobjective is to have the basic skills to accomplish the task at hand At Levels 3 and above the phrase “receive required training” is used At Levels 3 and above the phrase “receive required training” is used institutionalization of training is expected (role-based)institutionalization of training is expected (role-based) skills of the individuals become a known organization assetskills of the individuals become a known organization asset Global Systems Technology, Inc.

120 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 120 G S T Alternative Vehicles Training may include informal as well as formal instruction to impart skills and knowledge Training may include informal as well as formal instruction to impart skills and knowledge Informal Training, such as mentors and on-the-job training, can be very effective when implemented properly Informal Training, such as mentors and on-the-job training, can be very effective when implemented properly Caution! Informal training vehicles are easily abused Global Systems Technology, Inc.

121 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 121 G S T Training Program (TP) Activities Activity 1: Each software project develops and maintains a training plan that specifies its training needs. Activity 1: Each software project develops and maintains a training plan that specifies its training needs. Activity 2: The organization’s training plan is developed and revised according to a documented procedure. Activity 2: The organization’s training plan is developed and revised according to a documented procedure. Activity 3: The training for the organization is performed in accordance with the organization’s training plan. Activity 3: The training for the organization is performed in accordance with the organization’s training plan. Activity 4: Training courses prepared at the organization level are developed and maintained according to organization standards. Activity 4: Training courses prepared at the organization level are developed and maintained according to organization standards. Global Systems Technology, Inc.

122 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 122 G S T Training Program (TP) Activities Activity 5: A waiver procedure for required training is established and used to determine whether individuals already possess the knowledge and skills required to perform in their designated roles. Activity 5: A waiver procedure for required training is established and used to determine whether individuals already possess the knowledge and skills required to perform in their designated roles. Activity 6: Records of training are maintained. Activity 6: Records of training are maintained. Global Systems Technology, Inc. Caution! How do you determine the quality of the training (measurement 2)?

123 Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 123 G S T Barriers to a Training Program The relative high cost of training programs The relative high cost of training programs Work schedules and training schedules do not coincide (customer wants progress, not investment in your staff- “I expect your employees to have the necessary skills…that’s why I contracted with you!”) Work schedules and training schedules do not coincide (customer wants progress, not investment in your staff- “I expect your employees to have the necessary skills…that’s why I contracted with you!”) Lack of management support (never enough time for training) Lack of management support (never enough time for training) No incentives for training No incentives for training Global Systems Technology, Inc.


Download ppt "Introduction to the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) Global Systems Technology, Inc. © 1997, 1998 1 G S T Understanding."

Similar presentations


Ads by Google