group 7 - chapter 3 steven shroyer - introduction, ad hoc, level 2 xiao jingshan - levels 3 and 4...
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
Indicate Contain Achieve Organized by Address Contain Describe
Maturity Levels
Key Process Areas
Common Features
Key Practices
Process Capability
Goals
Implementation or Institutionalization
Activities or Infrastructure
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
OverviewFocuses 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 managementPurpose : 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 planningPurpose : 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 oversightPurpose : 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 managementPurpose : 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 assurancePurpose : 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 managementPurpose : 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 focusPurpose : 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 definitionPurpose: 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 documentationE.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 managementPurpose: 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 engineeringPurpose : to perform consistently a well-defined engineering process:
integrates all the software engineering activities to produce correct
consistent software products effectively and efficiently
DocumentingMaintaining trace ability and consistency
E.g requirements analysis ,design .code and test
Key process areas at Level 3(cont.)
Intergroup coordinationPurpose : 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 reviewsPurpose : 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
Overviewfocus 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 managementPurpose : 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 managementPurposes: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
OverviewFocuses 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 preventionPurpose : 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 ManagementPurpose : 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 ManagementPurpose : 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
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: http://www.sei.cmu.edu/sema/published./
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