|
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.
Organiza fd0 tion 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
org 194 anizational 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 other e69 s, 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' activiti 197 es 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.
- Th f7e e 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.
|
|