240 likes | 419 Views
More CMM. Part Two : Details. Recap of CMM Levels. Initial Repeatable Defined Managed Optimizing. Defect prevention Technology change management Process change management. Key Process Areas by maturity level. Quantitative process management Software Quality Management.
E N D
More CMM Part Two : Details
Recap of CMM Levels • Initial • Repeatable • Defined • Managed • Optimizing
Defect prevention Technology change management Process change management Key Process Areas by maturity level Quantitative process management Software Quality Management Organization process focus Organization process definition Training program Integrated software management Software product engineering Intergroup coordination Peer Reviews Requirements management Software project planning Software project tracking and oversight Software subcontract management Software quality assurance Software Configuration management
Objectives of Key Process Areas • Level Two • Requirements Management • necessary to build software that will satisfy the customer • Software project planning • reasonable plans of what to do and when • Software project tracking and oversight • visibility into project's progress • Software subcontract management • select and effectively manage subcontractors • Software quality assurance • process and product are reviewed to create visibility into the process • Software Configuration management • baselines and traceability
Objectives of Key Process Areas • Level Three • Organization process focus • coordinating and improving the organization's process • Organization process definition • institutionalize process data, criteria, training, etc • Training program • develop skills to perform roles • Integrated software management • integrate development and management activities into a coherent software process (followup to level 2 tracking) • Software product engineering • describe technical activities (e.g. write the SRS, design, coding, etc) • Intergroup coordination • the development teams talks with engineering, marketing, etc • Peer Reviews • remove defects
Objectives of Key Process Areas • Level Four • Quantitative process management • notice when performance falls outside of expected bounds • Software Quality Management • quality goals, supported by plans • Level Five • Defect prevention • identify causes of defects and prevent them from recurring • Technology change management • identify, evaluate, and integrate beneficial technologies • Process change management • continuous process improvement
Definitions • Each of the five CMM levels is composed of key process areas • each key process area is organized into five sections called common features • common features contain key practices
Common Features • Commitment to Perform • Ability to Perform • Activities Performed • Measurement and Analysis • Verifying Implementation
Defect prevention Technology change management Process change management Key Process Areas by maturity level Quantitative process management Software Quality Management Organization process focus Organization process definition Training program Integrated software management Software product engineering Intergroup coordination Peer Reviews Requirements management Software project planning Software project tracking and oversight Software subcontract management Software quality assurance Software Configuration management
Process Area: Software Quality AssuranceGoals Goal 1 - Software quality assurance activities are planned. Goal 2 - Adherence of software products and activities to the applicable standards, procedures, and requirements is verified objectively. Goal 3 - Affected groups and individuals are informed of software quality assurance activities and results. Goal 4 - Noncompliance issues that cannot be resolved within the software project are addressed by senior management.
Process Area: Software Quality Assurance1. Commitment to Perform Commitment 1 - The project follows a written organizational policy for implementing software quality assurance (SQA). This policy typically specifies that: • The SQA function is in place on all software projects. • The SQA group has a reporting channel to senior management… • Senior management periodically reviews the SQA activities and results.
Process Area: Software Quality Assurance2. Ability to Perform Ability 1 - A group that is responsible for coordinating and implementing SQA for the project exists. • The group can be one person. Ability 2 - Adequate resources and funding are provided for performing the SQA activities. Ability 3 - Members of the SQA group are trained to perform their SQA activities. Ability 4 - The members of the software project receive orientation on the role, responsibilities, authority, and value of the SQA group.
Process Area: Software Quality Assurance3. Activities Performed Activity 1 -- A 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 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 5 -- The SQA group audits designated software work products to verify compliance. Activity 6 -- The SQA group periodically reports the results of its activities to 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 8 -- The SQA group conducts periodic reviews of its activities and findings with the customer's SQA personnel, as appropriate.
The SQA plan covers: • Responsibilities and authority of the SQA group. • Resource requirements for the SQA group (including staff, tools, and facilities). • Schedule and funding of the project's SQA group activities. • The SQA group's participation in establishing the software development plan, standards, and procedures for the project. • Evaluations to be performed by the SQA group. • Examples of products and activities to be evaluated include: • operational software and support software, • deliverable and nondeliverable products, • software and nonsoftware products (e.g., documents), • product development and product verification activities (e.g., executing test cases), and • the activities followed in creating the product. • Audits and reviews to be conducted by the SQA group. • Project standards and procedures to be used as the basis for the SQA group's reviews and audits. • Procedures for documenting and tracking noncompliance issues to closure. • Documentation that the SQA group is required to produce. • Method and frequency of providing feedback to the software engineering group and other software-related groups on SQA activities.
Process Area: Software Quality Assurance4. Measurement and Analysis Measurement 1 - Measurements are made and used to determine the cost and schedule status of the SQA activities.
Process Area: Software Quality Assurance5. Verifying Implementation Verification 1 - The SQA activities are reviewed with senior management on a periodic basis. Verification 2 - The SQA activities are reviewed with the project manager on both a periodic and event-driven basis. Verification 3 - Experts independent of the SQA group periodically review the activities and software work products of the project's SQA group.
Defect prevention Technology change management Process change management Key Process Areas by maturity level Quantitative process management Software Quality Management Organization process focus Organization process definition Training program Integrated software management Software product engineering Intergroup coordination Peer Reviews Requirements management Software project planning Software project tracking and oversight Software subcontract management Software quality assurance Software Configuration management
Process Area: Training ProgramGoals 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 3 - Individuals in the software engineering group and software-related groups receive the training necessary to perform their roles.
Process Area: Training Program3. Activities Performed Activity 1 -- Each software project develops and maintains a training planthat specifies its training needs. 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 4 -- Training courses prepared at the organization level are developed and maintained according to organization standards. 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.
The training plan covers: • The specific training needed within the organization and when it is needed. • The training that will be obtained from external sources and training that will be provided by the training group. • The funding and resources (including staff, tools, and facilities) needed to prepare and conduct or procure the training. • Standards for instructional materials used in training courses developed by the training group. • The schedule for developing and revising the training courses that will be developed by the training group. • The schedule for conducting the training, based on the projected need dates and the projected number of students. • The procedures for: • selecting the individuals who will receive the training, • registering and participating in the training, • maintaining records of the training provided, and • collecting, reviewing, and using training evaluations and other training feedback.
Defect prevention Technology change management Process change management Key Process Areas by maturity level Quantitative process management Software Quality Management Organization process focus Organization process definition Training program Integrated software management Software product engineering Intergroup coordination Peer Reviews Requirements management Software project planning Software project tracking and oversight Software subcontract management Software quality assurance Software Configuration management
Process Area: Peer Reviews3. Activities Performed Activity 1 - Peer reviews are planned, and the plans are documented. Activity 2 - Peer reviews are performed according to a documented procedure. Activity 3 - Data on the conduct and results of the peer reviews are recorded.
Reviewers have assigned roles in peer reviews. • Readiness and completion criteria for the peer reviews are specified and enforced. • Checklists are used to identify criteria for the review of the software work products in a consistent manner. • The checklists are tailored to the specific type of work product and peer review. • Examples of items addressed by tailoring the checklist include: • compliance with standards and procedures, • completeness, • correctness, • rules of construction, and • maintainability.
and on it goes… The full lists of activities can be found at http://www2.umassd.edu/swpi/sei/tr25f/tr25.html