Organization Process Focus
a key process area for level 3: Defined
The purpose of Organization Process Focus is to establish
the organizational responsibility for software process activities that improve
the organization's overall software process capability.
Organization Process Focus involves developing and maintaining an understanding
of the organization's and projects' software processes and coordinating the
activities to assess, develop, maintain, and improve these processes.
The organization provides the long-term commitments and resources to coordinate
the development and maintenance of the software processes across current and
future software projects via a group such as a software engineering process
group. This group is responsible for the organization's software process
activities. It is specifically responsible for the development and maintenance
of the organization's standard software process and related process assets (as
described in the Organization Process Definition key process area), and it
coordinates the process activities with the software projects.
Goals
Goal 1
Software process development and improvement activities are coordinated
across the organization.
Goal 2
The strengths and weaknesses of the software processes used are identified
relative to a process standard.
Goal 3
Organization-level process development and improvement activities are planned.
Commitment to perform
Commitment 1 -- The organization follows a written organizational policy
for coordinating software process development and improvement activities
across the organization.
This policy typically specifies that:
- A group is established that is responsible for the organization-level
software process activities and coordinating these activities with the projects.
- The software processes used by the projects are assessed periodically to
determine their strengths and weaknesses.
- The software processes used by the projects are appropriately tailored
from the organization's standard software process.
Refer to Activity 1 of the Integrated Software Management key process area for
practices covering tailoring of the organization's standard software process.
- Improvements to, and other useful information on, each project's software
process, tools, and methods are available to other projects.
Commitment 2 -- Senior management sponsors the organization's activities
for software process development and improvement.
Senior management:
- Demonstrates to the organization's staff and managers its commitment to
these software process activities.
- Establishes long-term plans and commitments for funding, staffing, and
other resources.
- Establishes strategies for managing and implementing the activities for
process development and improvement.
Commitment 3 -- Senior management oversees the organization's activities
for software process development and improvement.
Senior management:
- Ensures that the organization's standard software process supports its
business goals and strategies.
- Advises on setting priorities for software process development and
improvement.
- Participates in establishing plans for software process development and
improvement.
- Senior management coordinates software process requirements and issues
with higher level staff and managers.
- Senior management coordinates with the organization's managers to secure
the managers' and staff's support and participation.
Ability to perform
Ability 1 -- A group that is responsible for the organization's
software process activities exists.
A group is the collection of departments, managers, and individuals who have
responsibility for a set of tasks or activities. A group could vary from a
single individual assigned part time, to several part-time individuals assigned
from different departments, to several individuals dedicated full time.
Considerations when implementing a group include assigned tasks or activities,
the size of the project, the organizational structure, and the organizational
culture. Some groups, such as the software quality assurance group, are
focused on project activities, and others, such as the software engineering
process group, are focused on organization-wide activities.
- Where possible, this group is staffed by a core of software technical
professionals who are assigned full time to the group, possibly supported by
others, on a part-time basis.
The most common example of this group is a software engineering
process group (SEPG).
- This group is staffed to represent the software engineering discipline and
software-related disciplines.
Examples of software engineering and software-related disciplines include:
- software requirements analysis,
- software design,
- coding,
- software test,
- software configuration management, and
- software quality assurance.
Ability 2 -- Adequate resources and funding are provided for the
organization's software process activities.
- Experienced individuals who have expertise in specialized areas
are committed to support this group.
Examples of specialized areas include:
- software reuse,
- computer-aided software engineering (CASE) technology,
- measurement, and
- training course development.
- Tools to support the organization's software process activities are made
available.
Examples of support tools include:
- statistical analysis tools,
- desktop publishing tools,
- database management systems, and
- process modeling tools.
Ability 3 -- Members of the group responsible for the organization's
software process activities receive required training to perform these
activities.
Examples of training include:
- software engineering practices;
- process control techniques;
- organization change management;
- planning, managing, and monitoring the software process; and
- technology transition.
Refer to the Training Program key process area.
Ability 4 -- Members of the software engineering group and other
software-related groups receive orientation on the organization's software
process activities and their roles in those activities.
Refer to the Training Program key process area.
Activities performed
Activity 1 -- The software process is assessed periodically, and action
plans are developed to address the assessment findings.
Assessments are typically conducted every 1-1/2 to 3 years.
Assessments look at all software processes used in the organization, but may do
this by sampling process areas and projects.
An example of a method to assess an organization's software process capability
is the SEI Software Process Assessment method.
The action plan identifies:
- which assessment findings will be addressed,
- guidelines for implementing the changes to address findings, and
- the groups or individuals responsible for implementing the
changes.
Activity 2 -- The organization develops and maintains a plan for its
software process development and improvement activities.
This plan:
- Uses the action plans from the software process assessments and other
organization improvement initiatives as primary inputs.
- Defines the activities to be performed and the schedule for these
activities.
- Specifies the groups and individuals responsible for the activities.
- Identifies the resources required, including staff and tools.
- Undergoes peer review when initially released and whenever major revisions
are made.
Refer to the Peer Reviews key process area.
- Is reviewed and agreed to by the organization's software managers and
senior managers.
Activity 3 -- The organization's and projects' activities for developing
and improving their software processes are coordinated at the organization
level.
This coordination covers the development and improvement of:
- The organization's standard software process.
Refer to Activities 1 and 2 of the Organization Process Definition key process
area for practices covering the organization's standard software process.
- The projects' defined software processes
Refer to Activities 1 and 2 of the Integrated Software Management key process
area for practices covering the project's defined software process.
Activity 4 -- The use of the organization's software process database is
coordinated at the organizational level.
The organization's software process database is used to collect information on
the software processes and resulting software products of the organization and
the projects.
Refer to Activity 5 of the Organization Process Definition key process area for
practices covering the organization's software process database.
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 6 -- Training for the organization's and projects' software
processes is coordinated across the organization.
- Plans for training on subjects related to the organization's and projects'
software processes are prepared.
- Where appropriate, training may be prepared and conducted by the group
responsible for the organization's software process activities (e.g., software
engineering process group) or by the training group.
Refer to the Training Program key process area.
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.
Examples of means to inform and involve these people include:
- electronic bulletin boards on process,
- process advisory boards,
- working groups,
- information exchange meetings,
- surveys,
- process improvement teams, and
- informal discussions.
Measurement and analysis
Measurement 1 -- Measurements are made and used to determine the status of
the organization's process development and improvement activities.
Examples of measurements include:
- work completed, effort expended, and funds expended in the organization's
activities for process assessment, development, and improvement compared to the
plans for these activities; and
- results of each software process assessment, compared to the results and
recommendations of previous assessments.
Verifying implementation
Verification 1 -- The activities for software process development and
improvement are reviewed with senior management on a periodic basis.
The primary purpose of periodic reviews by senior management is to provide
awareness of, and insight into, software process activities at an appropriate
level of abstraction and in a timely manner. The time between reviews should
meet the needs of the organization and may be lengthy, as long as adequate
mechanisms for exception reporting are available.
- Progress and status of the activities to develop and improve the software
process are reviewed against the plan.
- Conflicts and issues not resolved at lower levels are addressed.
- Action items are assigned, reviewed, and tracked to closure.
- A summary report from each review is prepared and distributed to the
affected groups and individuals.
Table of contents
Forward one chapter