System), an artefact-based process support system
for the management of human resources, projects,
and software artefacts. The integration of the
inspection process tool within ADAMS aims at
integrating quality management functionalities
within the software process support system, thus
allowing the planning, scheduling, and enactment of
the inspection within the development process and
integrating the review phase within the overall
lifecycle of software artefacts.
The remainder of the paper is organised as
follows: Section 2 discusses the related work while
Section 3 presents an overview of ADAMS. Section
4 illustrates the inspection process and tool while
Section 5 concludes the paper.
2 RELATED WORK
The usefulness and acceptance of software
inspection in academic and industrial settings, have
contributed to the development of several tools
supporting the inspection process. For instance,
ICICLE (Brothers et al., 1990) addresses the
inspections of C and C++ code, making use of
specific knowledge on the programming language to
assist during the defect discovery phase. However,
this approach does not results appropriated to review
software artefacts of different types.
Knight and Meyer (1991) propose InspeQ
(Inspecting software in phases to ensure Quality), a
toolset implementing the phased inspection
technique (Knight and Meyers, 1993). This
technique aims at improving the rigour, efficiency,
and repeatability of the inspection of software
products by examining the artefacts in a series of
small inspections termed phases. Each phase aims at
ascertaining if the artefact possesses some desirable
property. InspeQ does not support distributed
meeting and decision support is not provided.
Scrutiny (Gintell et al., 1993) is a collaborative
and distributed system based on an inspection
process similar to the Fagan model. In particular,
Scrutiny adds the verifier role, to ensure that all the
defects founded during the inspection are addressed
by the author. However, Scrutiny does not provide
support for checklist based inspections and the
meeting support is only synchronous.
CSI (Mashayekhi, 1993) (Collaborative Software
Inspection) adopts the Humphrey’s inspection
process (Humphrey, 1989). CSI supports annotations
by creating hyperlinks between the document and
the reviewers’ annotations. The inspection manager
reviews the annotations and makes them into one
list, which is successively discussed during the
meeting. The discussion phase is synchronous, while
the decision support is not provided.
The Humphrey’s process is also implemented in
AISA (Stein et al., 1997) (Asynchronous Inspection
of Software Artifacts) to inspect graphical
documents. AISA uses a web client to visualise
documents that are prepared as clickable image
maps. The reviewers annotate documents using the
coordinates of the image portion clicked. The only
support provided by the tool is the notification of
inspection completion by means of a message sent to
the inspection team when all reviewers have finished
the collection phase. The drawback is that
annotations are available to all the participants, thus
influencing the inspection members. To overcome
this drawback, InspectA (Murphy and Miller, 1997)
replaces the web publishing approach with e-mail
massages that are sent only when all the detection
phases are completed. In InspectA, the moderator
does not have any progress information of the
detection phase. Thus, the only way to know that a
reviewer has completed the inspection is the
receiving of the email generated at the end of the
phase. This does not support the moderator in case
an inspector has not completed the inspection.
The tool CSRS (Johnson, 1994) (Collaborative
Software Review System) supports different
checklist based inspection processes by using a
process modelling language. CSRS distinguishes
between a private review phase, where individual
review of the artefact is performed and annotations
are hidden to the other inspectors, and a public
review phase, which represents an asynchronous
meeting. Differently from our approach, support for
synchronous meeting to address unresolved conflicts
is not provided. Even ASSIST (Macdonald and
Miller, 1998) (Asynchronous/Synchronous Software
Inspection Support Tool) is designed to support
different inspection processes. To reduce the effort
to inspect a software artefact, ASSIST provides a
checklist browser implementing active checklists,
which records answers, monitors the checklist usage,
and visualises cross-references. Meeting support is
provided by a whiteboard and video and audio tools.
ASSIST also provides a facility to merge multiple
lists of defects using their similarity.
Lanubile et al. (2003) propose a web-based tool,
called IBIS (Internet-Based Inspection System),
which implements a reengineered Fagan’s inspection
process. In particular, the adopted process replaces
the preparation and meeting phases of the Fagan’s
process with three new sequential phases: discovery,
collection, and discrimination. The last of these
INTEGRATING A DISTRIBUTED INSPECTION TOOL WITHIN AN ARTEFACT MANAGEMENT SYSTEM
185