2. REVIEWS AND THE TEST PROCESS
The definition of testing outlines objectives that relate to
evaluation, revealing defects and quality. As indicated in the definition two
approaches can be used to achieve these objectives, static testing and
dynamic testing.
With dynamic testing methods, software is executed using a set
of input values and its output is then examined and compared to what is
expected. During static testing, software work products are examined
manually, or with a set of tools, but not executed. As a consequence,
dynamic testing can only be applied to software code. Dynamic execution
is applied as a technique to detect defects and to determine quality
attributes of the code. This testing option is not applicable for the majority
of the software work products.
3. 2. Phases of A Formal Review
a. Planning
The review process for a particular review begins with a 'request for review' by
the author to the moderator (or inspection leader). On a project level, the
project planning needs to allow time for review and rework activities, thus
providing engineers with time to thoroughly participate in reviews.
b. Kick-off
An optional step in a review procedure is a kick-off meeting. The goal of this
meeting is to get everybody on the same wavelength regarding the document
under review and to commit to the time that will be spent on checking.
c. Preparation
A critical success factor for a thorough preparation is the number of pages
checked per hour. This is called the checking rate. The optimum checking rate is
the result of a mix of factors, including the type of document, its complexity, the
number of related documents and the experience of the reviewer.
4. d. Review Meeting
The meeting typically consists of the following elements (partly depending on the
review type): logging phase, discussion phase and decision phase. During the
logging phase the issues, e.g. defects, that have been identified during the
preparation are mentioned page by page, reviewer by reviewer and are logged
either by the author or by a scribe.
e. Rework
Based on the defects detected, the author will improve the document under review
step by step. Not every defect that is found leads to rework. It is the author's
responsibility to judge if a defect has to be fixed. If nothing is done about an issue
for a certain reason, it should be reported to at least indicate that the author has
considered the issue.
f. Follow-up
The moderator is responsible for ensuring that satisfactory actions have been taken
on all (logged) defects, process improvement suggestions and change requests.
Although the moderator checks to make sure that the author has taken action on all
known defects, it is not necessary for the moderator to check all the corrections in
detail. If it is decided that all participants will check the updated document, the
moderator takes care of the distribution and collects the feedback.
5. 3. Roles and Responsibilities
a. The Moderator
The moderator (or review leader) leads the review process. He or she determines, in
co-operation with the author, the type of review, approach and the composition of
the review team.
b. The Author
The author's task is to illuminate unclear areas and to understand the defects found.
c. The Scribe
During the logging meeting, the scribe (or recorder) has to record each defect
mentioned and any suggestions for process improvement.
d. The Reviewers
The task of the reviewers (also called checkers or inspectors) is to check any material
for defects, mostly prior to the meeting.
e. The Manager
The manager is involved in the reviews as he or she decides on the execution of
reviews, allocates time in project schedules and determines whether review process
objectives have been met.
6. 4. Types of Review
a. Walkthrough
A walkthrough is characterized by the author of the document under review
guiding the participants through the document and his or her thought
processes, to achieve a common understanding and to gather feedback.
b. Technical Review
A technical review is a discussion meeting that focuses on achieving consensus
about the technical content of a document.
c. Inspection
Inspection is the most formal review type. The document under inspection is
prepared and checked thoroughly by the reviewers before the meeting,
comparing the work product with its sources and other referenced documents,
and using rules and checklists.
7. 5. Success Factors
a. Find a Champion
b. Pick Things that Really Count
c. Explicitly Plan and Track Review Activities
d. Train Participants
e. Manage People Issues
f. Follow the Rules but Keep it Simple
g. Continuosly Improve Process and Tools
h. Report Result
i. Just Do it
8. STATIC ANALYSIS BY TOOLS
1. Coding Standards
Checking for adherence to coding standards is certainly the most well-known of all
features. The first action to be taken is to define or adopt a coding standard. Usually a
coding standard consists of a set of programming rules (e.g. 'Always check boundaries
on an array when copying to that array'), naming conventions (e.g. 'Classes should start
with capital C) and layout specifications (e.g. 'Indent 4 spaces').
2. Code Metrics
As stated, when performing static code analysis, usually information is calculated about
structural attributes of the code, such as comment frequency, depth of nesting,
cyclomatic number and number of lines of code. This information can be computed not
only as the design and code are being created but also as changes are made to a system,
to see if the design or code is becoming bigger, more complex and more difficult to
understand and maintain. The measurements also help us to decide among several
design alternatives, especially when redesigning portions of existing code.
9. 1. Which of the following artifacts can be examined by using review
techniques?
a. Software code
b. Requirements specification
c. Test designs
d. All of the above
2. Which statement about the function of a static analysis tool is true?
a. Gives quality information about the code without executing it.
b. Checks expected results against actual results.
c. Can detect memory leaks.
d. Gives information about what code has and has not been exercised.
10. 3. Which is not a type of review?
a. Walkthrough
b. Inspection
c. Informal review
d. Management approval
4. What statement about reviews is true?
a. Inspections are led by a trained moderator, whereas technical reviews
are not necessarily.
b. Technical reviews are led by a trained leader, inspections are not.
c. In a walkthrough, the author does not attend.
d. Participants for a walkthrough always need to be thoroughly trained.
11. 5. What is the main difference between a walkthrough and an inspection?
a. An inspection is led by the authors, whilst a walk through is led by a
trained moderator.
b. An inspection has a trained leader, whilst a walk through has no leader.
c. Authors are not present during inspections, whilst they are during
walkthroughs.
d. A walkthrough is led by the author, whilst an inspection is led by a
trained moderator.
12. Reference
Graham, D., et al.2006.Foundations of Software Testing : ISTQB
Certification.London, UK :International Thomson Business Press
http://sif.uin-suska.ac.id/ http://fst.uin-suska.ac.id/ http://uin-suska.ac.id/