2. What is Software Review?
A software review is "A process or meeting during which a software product
is examined by a project personnel, managers, users, customers, user
representatives, or other interested parties for comment or approval".
4. o Peer Reviews
Software peer reviews are conducted by the author of the work product, or
by one or more colleagues of the author, to evaluate the technical content
and/or quality of the work.
5. o Management reviews
Software management reviews are conducted by management
representatives to evaluate the status of work done and to make decisions
regarding downstream activities.
6. o Audit reviews
Software audit reviews are conducted by personnel external to the software
project, to evaluate compliance with specifications, standards, contractual
agreements, or other criteria.
7. Types of Reviews
• Code review is systematic examination (often as peer review) of computer
source code.
• Pair programming is a type of code review where two persons develop code
together at the same workstation.
• Inspection is a very formal type of peer review where the reviewers are
following a well-defined process to find defects.
8. Types of Reviews (Cont...)
• Walkthrough is a form of peer review where the author leads members of
the development team and other interested parties through a software
product and the participants ask questions and make comments about
defects.
• Technical review is a form of peer review in which a team of qualified
personnel examines the suitability of the software product for its intended
use and identifies discrepancies from specifications and standards.
9. IEEE Generic process in Software Review
• IEEE Generic process is a sequence of activities based on the software
inspection process originally developed at IBM by
-Michael Fagan.
10. IEEE Generic process
• Entry Evaluation
The Review Leader uses a standard checklist of entry criteria to
ensure that optimum conditions exist for a successful review.
11. IEEE Generic process
• Management preparation
Responsible management ensure that the review will be
appropriately resourced with staff, time, materials, and tools, and
will be conducted according to policies, standards, or other
relevant criteria.
12. IEEE Generic process
• Planning the review
The Review Leader identifies or confirms the objectives of the
review, organizes a team of Reviewers, and ensures that the team
is equipped with all necessary resources for conducting the review.
13. IEEE Generic process
• Overview of review procedures
The Review Leader, or some other qualified person, ensures (at a
meeting if necessary) that all Reviewers understand the review
goals, the review procedures, the materials available to them, and
the procedures for conducting the review.
14. IEEE Generic process
• [Individual] Preparation
The Reviewers individually prepare for group examination of the
work under review, by examining it carefully for anomalies
(potential defects), the nature of which will vary with the type of
review and its goals.
15. IEEE Generic process
• [Group] Examination
The Reviewers meet at a planned time to pool the results of
their preparation activity and arrive at a consensus regarding the
status of the document (or activity) being reviewed.
16. IEEE Generic process
• Rework/follow-up
The Author of the work product (or other assigned person)
undertakes whatever actions are necessary to repair defects or
otherwise satisfy the requirements agreed to at the Examination
meeting. The Review Leader verifies that all action items are
closed.
17. IEEE Generic process
• Exit evaluation
The Review Leader verifies that all activities necessary for
successful review have been accomplished, and that all outputs
appropriate to the type of review have been finalized.
18. Value of reviews
• The most obvious value of software reviews (especially formal reviews) is
that they can identify issues earlier and more cheaply than they would be
identified by testing or by field use (the defect detection process). The cost
to find and fix a defect by a well-conducted review may be one or two orders
of magnitude less than when the same defect is found by test execution or in
the field.
Process to examine a software
Before it is delivered to the customer
After approval the software should leave the software house.
There are three categories of software review.
Software is reviewed by the programmer who programed it at the first time.
By the programmer himself or any collogue
Reviews conducted by management representatives to evaluate the work status.
Review conducted by external programmers to evaluate the standards .
Examine by the programmer him self.
Examine by group of programmers at a same workstation.
Software is examine by peer reviews and evaluate from many well define processes.
All members of the development team gather and ask question about the product, give comments for about its defects.
Where qualified programmers are hired to examine the software and identify its specifications and standards
Its an inspection process design by IBM
Create a standard checklist to ensure successful review.
Management should prepare all the reviews on time.
Should conduct according to the policies and standards.
Leader should identify the objectives of the review.
Organize a team of reviewers to ensure the conducting review.
The review leader should be a qualified person.
All reviewers should under stain the goal of the review.
All relevant material for the review should be available to the reviewers.
Reviewers should prepare an individually examination.
Identify defects individually
Reviewers should plan a meeting by time to time.
Give a review based on group examination
Programmers should undertake whatever action it take to repair its defects.
Group leader should identify what module is required to follow up
Review leader should verify all activities necessary for a successful review
All outputs of the review should be finalized
Identify issues earlier
Test before use in field work
Defect detection system
Identify defect In low cost