Level 4: Managed

offbeatnothingΛογισμικό & κατασκευή λογ/κού

2 Δεκ 2013 (πριν από 3 χρόνια και 7 μήνες)

51 εμφανίσεις

The Key Process Areas for


Level 4: Managed


Annie Liu

Mingwei Li

Jie Song



Key Process Areas


Quantitative Process Management


Software Quality Management

Issues @ Level 3


Still qualitative
---

little data to indicate


what is going on ?


How effective the process is ?


Uncertainty on measurement


debate about measurement value


confusion about the specific items to be
measured


Issues @ Level 3 (cont.)


An example:



measure lines of source code per
development month


new and changed code?


all shipped instructions?


For modified programs, this can cause a
ten
-
times variation


Issues @ level 3 (cont.)


Another example


when calculate labor months expended


count management, test,documentation and
support personnel?


The variation can run at least as high as
seven times


Goals @ Level 4


The
quantitative

process management
activities are
planned
.


The process performance of the project’s
defined software process is
controlled

quantitatively
.


The process capability of the organization’s
standard software process is

known

in
quantitative

terms.

Commitment to Perform


The project follows
a written organizational
policy

for
measuring

and quantitatively
controlling

the performance of the project’s
defined software process.


The organization follows
a written policy

for
analyzing

the process capability of the
organization’s standard software process.

What is a process?


People


A group responsible for coordination
(A1)


Managers + task leaders + SE groups +
related groups
(A2.1)


ex. QA, documentation support


Individuals receive required training
(A4)


ex. Selecting, collecting, validating data


SE group members receive orientation on
goals and value
(A5)



Tools and Equipment


Tools to support quantitative process
management are available
(A2.3)


source code analyzers, DB systems...


Support exists for collecting, recording, and
analyzing data for selected process and
product measurement
(A3)


Procedures & Methods


An organization
-
wide measurement
program exists.
(A2.2)

Activity to Perform


Plan


Collect measurement data


Analyze and control SW process


Prepare & distribute reports of results


Establish & maintain process capability
baseline

Activity 1


The software project’s plan for quantitative
process management is developed
according to a documented procedure.


base on goals


undergoes peer review


managed and controlled



incorporate changes in a controlled manner

Activity 2


The software project’s quantitative process
management activities are performed in
accordance with the project’s quantitative
process management plan.


Goals + tasks +instrumentation + activities +
schedule + people + resource + procedure

Activities 3


The strategy for the data collection and the
quantitative analyses to be performed are
determined based on the project’s defined
software process.

Activity 3 (cont.)


What data should be gathered?


When to collect?
--

project milestone


Where?
--

a centralized database


How to use effectively?


Activity 4


The measurement data used to control the
project’s defined software process
quantitatively are collected according to a
documented procedure.

Activity 4 (cont.)


Support goals
--

organization’s or project’s


Specific measurement data


Precise definitions


Intended use and analysis of each measurement


Chosen from the entire software life cycle


Uniformly collected across the project


Collected data are stored in the organization’s
software process database.

Activity 5


The project’s defined software process is
analyzed and brought under quantitative control
according to a documented procedure.

1.
The specific data analysis activities are
predefined.

2.
Measurement data on the process activities
throughout the project’s defined software
process are identified, collected, and analyzed.

3.
The selected measurements appropriately
characterize the process they represent.

4.
The expected values for mean and variance are
specified for each measurement.

Activity 5(cont.)

5.
defined, and the project’s process performance
baseline is established.

6.
The actual values of each measurement are
compared to the expected values of the mean
and variance.

7. Adjustments are made to bring the actual process
performance in line with the defined acceptable
limits, as appropriate.



Activity 5(cont.)

8.When the project’s defined software process
is controlled quantitatively, baselines are
established for


The definition of the measurements


The actual measurement data


The acceptable limits for the measurements

9.
The process performance baseline for the
software project is managed and controlled.


Activity 6


Reports documenting the results of the software
project’s quantitative process management
activities are prepared and distributed.

1.

the results of the data analysis are reviewed
with those affected by the data before they are
reported to anyone else.

2.
The software managers, software task leaders,
and senior management receive regular reports
appropriate for their needs.

Activity 6(cont.)

3. The software quality assurance group
receives regular reports appropriate to its
needs.

4. The project manager, senior managers,
managers, software managers, and
software task leaders receive specialized
reports on request.


Activity 7


The process capability baseline for the
organization’s standard software process is
established and maintained according to a
documented procedure.

1.
The project’s software process data, are recorded
in the organization’s software process database.

2.
The process performance baseline for each
project’s defined software process.

3.
The process capability baseline for the
organization’s standard software process is
documented.

Activity 7(cont.)

4. Process capability trends for the
organization’s standard software process
are examined to predict likely problems or
opportunities for improvements.

5. The process capability baseline for the
organization’s standard software process
is managed and controlled.



Activity 7(cont.)

6. When a software project that is substantially
different from past projects is undertaken, a new
process performance baseline is established for
that project as part of tailoring the organization’s
standard software process.

7. Changes to the organization’s standard software
process are tracked and analyzed to assess their
effects on the process capability baseline

Measurement and Analysis


Measurements are made and used to
determined the status of the activities for
quantitative process management.

Verifying Implementation


Verification 1


The activities for quantitative process management
are reviewed with senior management on a
periodic basis.


Verification 2


the software project’s activities for quantitative
process management are reviewed with the project
manager on both a periodic and event
-
driven
basis.


Verifying Implementation(cont.)


Verification 3


the software quality assurance group
reviews and/or audits the activities and
work products for quantitative process
management and reports the results.


9.2 Software Quality Management

a key process area for Level 4: Managed


The purpose of Software Quality
Management is to develop a quantitative
understanding of the quality of the project’s
software products and achieve specific
quantity goals.

Goals


Goals 1


the project’s software quality management
activities are planned.


Goals 2


measurable goals for software product quality and
their priorities are defined.


Goals 3


actual progress toward achieving the quality goals
for the software products is quantified and
managed.

Commitment to Perform


The project follows a written organizational
policy for managing software quality.

1.
The project’s software quality management
activities support the organization’s commitment
to improve the quality of the software products.

2.
The project defines and collects the
measurements used for software quality
management based on the project’s defined
software process.

Commitment to Perform(cont.)

1.
The project defines the quality goals for
the software products and monitors its
progress toward them.

2.
Responsibilities for software quality
management are defined and assigned to
the software engineering group and other
software
-
related groups.


Ability to Perform


Ability 1


Adequate resources and funding are
provided for managing the quality of the
software products.

1.
Specialty engineers in areas such as safety
and reliability are available to help set the
software quality goals and review progress
toward the goals.


Ability to Perform(cont.)

2. Tools to support prediction, measuring, tracking,
and analyzing software quality are made
available.


Ability 2


The individuals implementing and supporting
software quality management receive required
training to perform their activities.


Ability 3


The members of the software engineering group
and other software
-
related groups receive
required training in software quality
management.


Activities Performed



Activity 1: The project's software quality plan is
developed and maintained according to a
documented procedure.


Activity 2: The project's software quality plan is
the basis for the project's activities for software
quality management.


Activity 3: The project's quantitative quality goals
for the software products are defined, monitored,
and revised throughout the software life cycle.

Activities Performed(cont.)


Activity 4: The quality of the project's software
products is measured, analyzed, and compared to
the products' quantitative quality goals on an
event
-
driven basis.


Activity 5: The software project's quantitative
quality goals for the products are allocated
appropriately to the subcontractors delivering
software products to the project



Activity 1: This procedure typically specifies that:



1. An understanding of the software quality needs
of the organization, customer, and end users is
developed, as appropriate.


2. The software quality needs and priorities of the
organization, customer, and end users are
traceable to the system requirements allocated to
software and the software quality goals.


3. The capability of the project's defined software
process to satisfy the software quality goals is
accessed and documented.


4. The software quality plan satisfies the quantity
plans of the organization, as appropriate.


Activity 1
(cont.)


5.The software quality plan is based on plans for
previous or current projects in the organization, a
appropriate.


6. The software quality plan is updated at the start
of the project, at major project milestones, and
whenever the allocated requirements change
significantly.


7. The software quality plan undergoes peer
review.


8. The software quality plan is reviewed by
affected groups and individuals


Activity 1
(cont.)


9. Senior management reviews the software
quality plans.


10. The software quality plan is managed
and controlled.


11. The software quality plan is available to
all affected groups and individuals.



Activity 2: The plan covers



1. The points in will implement to improve
on past quality performance.


2. The high
-
leverage quality goals for the
software products.


3. The actions that the software project


4. The activities to measure software
product quality


Activity 2: The plan covers(cont.)


5. Quality goals for software work products,
as appropriate.


6. The actions that will be taken when the
software product quality is projected not to
meet the quality goals.the process where
software quality is measured.


Activity 3


The project's quantitative quality goals for the
software products are defined, monitored, and
revised throughout the
software life cycle
.


1. Characteristic of product quality that describe
how well the software product will perform or
how well it can be developed and maintained are
identified.


Examples of software product quality
characteristics include: functionality, reliability,
maintainability, and usability.


Reliability

Maintainability

Accuracy

Anomaly

Management

Simplicity

Usability

Operability

Training

Test

Document

Accessibility

Simplicity

Modularity

Self
-

Description

Activity 3(cont.)


2. The measurements used to quantify the
characteristics of software product quality are
identified.


Examples of activities to identify measurements
for software product quality include:


reviewing prior performance data and customer
requirements


developing prototypes


expressing intermediate software products in
formal representations


using formal software engineering methods


conducting tests.


Activity 3(cont.)


3. For each characteristic of software product
quality, measurable, numeric values, based on the
required and desired values, are selected as quality
goals for product.


Examples of possible quality goals for the
software product's reliability include:


the mean time between failure as specified in the
requirements.


the mean time between failure that must be
achieved


the mean time between failure that is planned to be
achieved.



Activity 3(cont.)


4. Quality goals for the software products are
documented in the project's software quality plan.


Examples of quality goals for software products
that are appropriate to document in the project's
software quality plan include:


the characteristics that are planned to be met


the critical characteristics that, if not met, would
make the product undesirable or not needed by the
customers or end users.


Activity 3(cont.)


5. Quality goals for each software life
-
cycle
stage are defined and documented.


Examples of software life
-
cycle stages
include:


software requirements


software design


coding


software test.

Activity 3(cont.)


Examples of quality goals related to software life
-
cycle stages include:


product defects related to each software lift
-
cycle
stage will be reduced from the previous product
release by some predetermined percentage


a predetermined percentage of predicted defects
will be found be the end of the test cycle.

The relative costs to find and repair a defect increase dramatically as
we go from prevention to detection and from internal failure to
external failure

1

10

100

1000

cost

Reg.

Design

Code

Dev.

Test

System

Test

Field

Operation

1

time

3
-
6

times

10

times

15
-
40

times

30
-
70

times

40
-
1000

times

Activity 3(cont.)


6. Quality goals for the software products
and software life
-
cycle stages are revised as
understanding of the products and
understanding of the organization's,
customer's, and end users' needs evolve.




Activity 4


1. The software tasks are planned and performed to
address the project's software quality goals.


2. The quality of the software work products of
each software life
-
cycle stage is measured.


3. The quality measurements are analyzed and
compared to the software quality goals to
determine whether the quality goals are satisfied.


Activity 4(cont.)


4. Appropriate actions, consistent with the
software quality plan, are taken to bring the
quality measures of products in line with the
software quality goals.


5. When it is determined that the software
quality goals conflict, actions are taken to
resolve the conflict.


Measurements


Measurements are made and used to
determine the status of the software quality
management activities.


Examples of measurements include:


the cost of poor quality


the costs for achieving the quality goals.



Verifying Implementation



Verification 1: The activities for software quality
management are reviewed with senior
management on a periodic basis.


Verification 2: The activities for software quality
management are reviewed with the project
manager on both a periodic and event
-
driven
basis.


Verification 3: The software quality assurance
group reviews and/or audits the activities and
work products for software quality management
and reports the results.


The end



Thank you!