• No results found

CMC ICT3207 Call Flow

N/A
N/A
Protected

Academic year: 2020

Share "CMC ICT3207 Call Flow"

Copied!
22
0
0

Loading.... (view fulltext now)

Full text

(1)

Chapter 15

Review Techniques

Slide Set to accompany

Software Engineering: A Practitioner’s Approach, 7/e

by Roger S. Pressman

Slides copyright © 1996, 2001, 2005, 2009

by Roger S. Pressman

For non-profit educational use only

May be reproduced ONLY for student use at the university level when used in conjunction

with Software Engineering: A Practitioner's Approach, 7/e. Any other reproduction or use is

prohibited without the express written permission of the author.

(2)

Reviews

... there is no particular reason

... there is no particular reason

why your friend and colleague

why your friend and colleague

cannot also be your sternest critic.

cannot also be your sternest critic.

Jerry Weinberg

(3)

What Are Reviews?

a meeting conducted by technical

people for technical people

a technical assessment of a work

product created during the software

engineering process

a software quality assurance

mechanism

(4)

What Reviews Are Not

A project summary or progress assessment

A meeting intended solely to impart

information

A mechanism for political or personal

(5)

What Do We Look For?

Errors and defects

Error—a quality problem found

before

the software is released

to end users

Defect

a quality problem found only

after

the software has been

released to end-users

We make this distinction because errors and defects have very

different economic, business, psychological, and human

impact

(6)

Defect Amplification

A

defect amplification model

[IBM81] can be used to illustrate

the generation and detection of errors during the design and

code generation actions of a software process.

Errors passed through

Amplified errors 1:x

Newly generated errors

Development step

Errors from

Previous step

Errors passed

To next step

Defects

Detection

(7)

Defect Amplification

In the example provided in SEPA, Section

15.2,

a software process that does NOT include reviews,

yields

94 errors

at the beginning of testing and

Releases

12 latent defects

to the field

a software process that does include reviews,

yields

24 errors

at the beginning of testing and

releases

3 latent defects

to the field

(8)

Metrics

The total review effort and the total number of

errors discovered are defined as:

E

review

= E

p

+ E

a

+ E

r

Err

tot

= Err

minor

+ Err

major

Defect density

represents the errors found per

unit of work product reviewed.

Defect density = Err

tot

/ WPS

(9)

Metrics

Preparation effort, E

p

—the effort (in person-hours) required to

review a work product prior to the actual review meeting

Assessment effort, E

a

— the effort (in person-hours) that is expending

during the actual review

Rework effort, E

r

— the effort (in person-hours) that is dedicated to

the correction of those errors uncovered during the review

Work product size, WPS

—a measure of the size of the work product

that has been reviewed (e.g., the number of UML models, or the

number of document pages, or the number of lines of code)

Minor errors found, Err

minor

—the number of errors found that can be

categorized as minor (requiring less than some pre-specified effort

to correct)

Major errors found, Err

major

— the number of errors found that can be

(10)

An Example—I

If past history indicates that

the

average defect density

for a requirements model

is 0.6 errors per page, and a new requirement model

is 32 pages long,

a rough estimate suggests that your software team

will find about 19 or 20 errors during the review of

the document.

If you find only 6 errors, you’ve done an extremely

good job in developing the requirements model

or

(11)

An Example—II

The effort required to correct a minor model error (immediately after

the review) was found to require 4 person-hours.

The effort required for a major requirement error was found to be 18

person-hours.

Examining the review data collected, you find that minor errors occur

about 6 times more frequently than major errors. Therefore,

you can

estimate that the average effort to find and correct a requirements error

during review is about 6 person-hours.

Requirements related errors uncovered during testing require an

average of 45 person-hours to find and correct.

Using the averages

noted, we get:

Effort saved per error =

E

testing

– E

reviews

45 – 6 = 30 person-hours/error

S

ince 22 errors were found during the review of the requirements

(12)

Overall

(13)
(14)

Informal Reviews

Informal reviews include:

a simple desk check of a software engineering work

product with a colleague

a casual meeting (involving more than 2 people) for the

purpose of reviewing a work product, or

the review-oriented aspects of pair programming

pair programming

encourages continuous review as

a work product (design or code) is created.

(15)

Formal Technical Reviews

The objectives of an FTR are:

to uncover errors in function, logic, or implementation for

any representation of the software

to verify that the software under review meets its

requirements

to ensure that the software has been represented according

to predefined standards

to achieve software that is developed in a uniform manner

to make projects more manageable

The FTR is actually a class of reviews that includes

(16)

The Review Meeting

Between three and five people (typically)

should be involved in the review.

Advance preparation should occur but should

require no more than two hours of work for

each person.

The duration of the review meeting should be

less than two hours.

Focus is on a work product (e.g., a portion of a

(17)

The Players

review

review

leader

leader

producer

producer

recorder

recorder

reviewer

reviewer

standards bearer (SQA)

standards bearer (SQA)

maintenance

maintenance

oracle

(18)

The Players

Producer

—the individual who has developed the work

product

informs the project leader that the work product is

complete and that a review is required

Review leader

evaluates the product for readiness,

generates copies of product materials, and distributes

them to two or three

reviewers

for advance preparation.

Reviewer(s)

—expected to spend between one and two

hours reviewing the product, making notes, and

otherwise becoming familiar with the work.

(19)

Conducting the Review

Review the product, not the producer.

Set an agenda and maintain it.

Limit debate and rebuttal.

Enunciate problem areas, but don't attempt to solve every

problem noted.

Take written notes.

Limit the number of participants and insist upon advance

preparation.

Develop a checklist for each product that is likely to be reviewed.

Allocate resources and schedule time for FTRs.

Conduct meaningful training for all reviewers.

(20)

Review Options Matrix

trained leader

trained leader

agenda established

agenda established

reviewers prepare in advance

reviewers prepare in advance

producer presents product

producer presents product

reader” presents product

reader” presents product

recorder takes notes

recorder takes notes

checklists used to find errors

checklists used to find errors

errors categorized as found

errors categorized as found

issues list created

issues list created

team must sign-off on result

team must sign-off on result

IPR

IPR

WT

WT

IN

IN

RRR

RRR

(21)

Sample-Driven Reviews (SDRs)

SDRs attempt to quantify those work products that are

primary targets for full FTRs.

To accomplish this …

Inspect a fraction a

i

of each software work product,

i.

Record the number of faults, f

i

found within a

i

.

Develop a gross estimate of the number of faults within

work product

i

by multiplying f

i

by 1/a

i

.

Sort the work products in descending order according to

the gross estimate of the number of faults in each.

Focus available review resources on those work

(22)

Metrics Derived from Reviews

inspection time per page of documentation

inspection time per page of documentation

inspection time per KLOC or FP

inspection time per KLOC or FP

errors uncovered per reviewer hour

errors uncovered per reviewer hour

errors uncovered per preparation hour

errors uncovered per preparation hour

errors uncovered per SE task (e.g., design)

errors uncovered per SE task (e.g., design)

number of minor errors (e.g., typos)

number of minor errors (e.g., typos)

number of major errors

number of major errors

(e.g., nonconformance to req.)

(e.g., nonconformance to req.)

inspection effort per KLOC or FP

References

Related documents

length or in another word with increasing device dimensions. ii) As shown in Fig. 4 has demonstrated that modulator phase shift increases with increasing both applied bias

In view of these important properties and searching for the synthesis of new isoxazoloquinolines, which are useful for biological screening, in the current paper, we report a

Before we start to explore the trends in Mobile Cloud Computing (MCC) and also the connection between MCC and android apps we must understand what exactly is

The proposed methods is based on oxidation reaction of EZT with a known excess potassium permanganate (KMnO 4 ) as an oxidimetric reagent in acid medium followed by

The aim is to produces better prediction results using new developed prediction methods, compared to the known algorithms, prediction based on auto-associative method,

The present study describes the development of method based on oxidative coupling reaction between famotidine and the organic reagent -pyro catechol- in the

Arnold cat map is a 2 dimensional chaotic map which is used to shuffle the pixel position of the plain image Arnold cat map does not change the intensity value of the

In conclusion, some novel Schiff base ligands derived from 6-amino-2(3H)-benzothiazolones and substituted 2- hydroxybenzaldehyde (5a-5h) have been successfully