Presentation on theme: "Group 7 - Chapter 3 Steven Shroyer - Introduction, ad hoc, level 2 Xiao Jingshan - Levels 3 and 4 Dusting Marker - Level 5 and example companies Definintions."— Presentation transcript:
Group 7 - Chapter 3 Steven Shroyer - Introduction, ad hoc, level 2 Xiao Jingshan - Levels 3 and 4 Dusting Marker - Level 5 and example companies Definintions - Maturity Level and Key Process Area CMM structure Basics of ad hoc and levels 2 through 5
Definitions Maturity Level - A well defined evolutionary plateau toward achieving a mature software process Indicates a level of process capability Key Process Area - Identify areas which companies should concentrate on in order to improve its software process A cluster of activities that achieve an important goal when performed together
Structure of the MMC
Level 1 - ad hoc Ad Hoc - Characterized by a lack of definite processes Results Vary Can create very good projects, followed by poor ones All areas of quality can vary drastically
Key process areas at Level 2 Overview Focuses on basic project management controls Requirements management Software project planning Software project tracking and oversight Software subcontract management Software quality assurance Software confiuration management
Key process areas at Level 2(cont.) Requirements management Purpose : to establish an understanding between the customer and the project development team. Reviewing requirement and interacting with the client is absolutely necessary to establishing the understanding of the requirements in order to produce a product that satisfies that customer
Key process areas at Level 2(cont.) Software project planning Purpose : to establish reasonable plans for engineering the software and for managing the software project. Defining the scope and size of the project and allocating the necessary resources to accomplish the project according to a realistic schedule. This plan needs to be documented and treated as a part of the software engineering process. Changes should be kept to a minimum.
Key process areas at Level 2(cont.) Software project tracking and oversight Purpose : To establish adequate visibility into actual progress so that management cdan take effective actions when the project’s progress deviates significantly from the schedule Management should be based on the software development plan and corrective action should be taken if actual results vary too widely from that plan Actions may include, restructuring the development plan, replanning remaining work, or taking actions to improve performance
Key process areas at Level 2(cont.) Software subcontract management Purpose : To select qualified software subcontractors and manage them efficiently. Subcontractor selection should be based on the ability to perform the work. The selection may also be based on strategic business alliances, process capability, and technical considerations. All of these tie into the ability to perform the work, however
Key process areas at Level 2(cont.) Software quality assurance Purpose : To provide management with appropriate visibility into the process being used by the software project and the products being built. This visibility is given by reviews and audits to verify that the progress and processes comply with applicable standards and procedures. If the audits or reviews turn up compliance issues, these should be taken care of within the project and only referred higher as absolutely neccessary
Key process areas at Level 2(cont.) Software configuration management Purpose : To establish and maintain the integrity of the products of the software project throughtout their life cycle Integrity can be maintained by identifying and documenting the configuration of the various products and controlling and documenting changes to that configuration.
Key process areas at Level 3 Overview It address both project & organizational issues Organization process focus Organization process definition Training program Integrated software management Software product engineering Intergroup coordination Peer views
Definitions Organization’s standard software process: The operational definition of the basic process that guides the establishment of a common software process across the software projects in an organization.It’s describe a)the fundamental software process elements)the relationships between them. Process tailoring: The activity if creating a process description by elaborate adapting, and /or completing the details of process elements or other incomplete specifications of a process. Mentor: Providing opinions, recommendations and counsel online. Integrated software management: The unification and integration of the software engineering and management activities into a coherent defined software process. Peer review: A review of a software work product,following defined procedures, by peers of the producers of the product for the purpose of identifying defects and improvements.
Key process areas at Level 3(cont.) Organization process focus Purpose : to establish the organizational responsibility for software process activities that improve the organization's overall software process capability. Developing & maintaining an understanding of the organization’s and project’s software processes and coordinating the activities People implementing the process must be intimately involved with its definition and improvement.
Key process areas at Level 3(cont.) Organization process definition Purpose: to develop and maintain a usable set of software process assets It involves developing and maintaining the organization’s standard software process, along with related process assets, along with related process assets. such as: descriptions of software life cycles process tailoring guidelines and criteria the organization’s software process database a library of software process-related documentation E.g The description of the software life cycle
Key process areas at Level 3(cont.) Training program Purpose : to develop the skills and knowledge of individuals so they can perform their roles effectively and efficiently. Identifying training need developing or procuring training. E.g :mentoring
Key process areas at Level 3(cont.) Integrated software management Purpose: integrate the software engineering and management activities into a coherent, defined software process that is tailor from the organization’s standard software process and related process assets. It is the evolution of Software Project Planning and Software Project Tracing and Oversight at Level 2. Satisfying means a software project is planned and managed according to a well-defined process based on organizational software process assets.
Key process areas at Level 3(cont.) Software product engineering Purpose : to perform consistently a well-defined engineering process: integrates all the software engineering activities to produce correct consistent software products effectively and efficiently Documenting Maintaining trace ability and consistency E.g requirements analysis,design.code and test
Key process areas at Level 3(cont.) Intergroup coordination Purpose : to establish a means for the software engineering group to participate actively with the other engineering groups. To address system-level requirements, objects, and issues. The technical working interfaces and interactions between groups need to be planned and managed. All engineering groups should know the status and plans of all the groups
Key process areas at Level 3(cont.) Peer reviews Purpose : to remove defects from the software work products early and efficiently. Effects : to develop a better understanding of the software work products and of the defects that can be prevented. It is a engineering method implemental via inspections, structured walkthroughs a number of other collegial review method
Key process areas at Level 4 Overview focus on establishing a quantitative understanding of both the software process and the software products being built. Managed: Quantitative process management Software quality management
Quantitative process management Purpose : to control the process performance of the software project quantitatively. Key process areas at Level 4(cont.) Software process Perform -ance Correct process outbound stable
Software quality management Purposes:to develop a quantitative understanding of the quality of the project’s software products and achieve specific quality goals. quantitative goals are established based on the needs of the organization, the customer, and the end users. E.g product focused. Key process areas at Level 4(cont.)
Key process areas at Level 5 - Optimizing Overview Focuses on the issues that must be addressed so that the company and the project show continued and measureable software process improvement. Defect prevention Technology change management Process change management
Key process areas at Level 5(cont.) Defect prevention Purpose : To identify causes of defects and to prevent them from reoccuring Usually requires changes to the process Changes are incremental and evolutionary
Key process areas at Level 5(cont.) Technology Change Management Purpose : to identify new technologies which could be beneficial, and transfer them into the organization Beneficial factors could include Tools Methods Processes Objectives Increase Productivity Improve Software Quality Reduce cycle time for product development Changes can be large and revolutionary
Key process areas at Level 5(cont.) Process Change Management Purpose : The continual improvement of the software process to improve software quality, increase productivity, and reduce cycle time. Involves defining of process improvement goals, and implementation of improvements to the standard, and project processes. Basically Process Change Management deals with implementing both evolutionary and revolutionary changes to the standard process.
Key Practices The activities and infrastructure which contribute most to the implementation and institutionalization of the Key Process Area. These describe what is to be done, now how to do it
Common Features Commitment to Perform Ability to Perform Activities to Perform Measurement and Analysis Verification of Implementation
Companies at each level Source: Companies at Level 2 - AT&T Network Systems - Advanced Software Construction Center CIGNA Corporation - Production Application Center Fuji-Xerox Hewlett Packard
Companies at each level (cont.) Companies at Level 3 - United States Air Force - Standard Systems Group Blue Cross/Blue Shield of Maryland Boeing - Wichita Information Systems GTE - Government Systems
Companies at each level (cont.) Companies at Level 4 - Citibank, - Citicorp Overseas Software Ltd. Division Honeywell - India Software Operation Siemen's Information Systems
Companies at each level (cont.) Companies at Level 5 - Boeing Company - Reusable Space Systems IBM Federal Systems Company