|
|
 |
7th
International Conference on the
Unified Modeling Language
<<UML>>
2004
October
11, 2004
Lisbon, PORTUGAL
Guided
Inspection of UML Models
|
 |
| Presenter: |
John
D. McGregor
Dept of Computer Science
Clemson University
Clemson, SC USA 29634
Email: johnmc[at]cs.clemson[dot]edu
|
| Duration:
|
Half
Day |
| Date:
|
Monday
October 11, 2004 - afternoon (14:00 - 17:30)
|
|
 |
Abstract
There is widespread agreement that finding defects
as early in the development life cycle as possible
is cost-effective; however, there are few systematic
techniques for accomplishing this goal. Guided
inspection is an inspection technique that is
"guided" by test cases. By constructing a "complete"
set of test cases, the guided inspection technique
identifies elements missing from the model as
well as evaluating the quality of those that are
present. This tutorial illustrates the technique
using design models created using the Unified
Modeling Language. Checklists designed for use
at various points in a typical development process
assist the inspector in selecting the most effective
test cases.
Guided
Inspection has several benefits:
-
Objectivity - systematically selects test cases
to give all portions of the model equal coverage
- Traceability
- links the faults detected back to specific
requirements
- Testability
- identifies portions of the design that are
complex and require much effort to test

Context
Defects
happen. Every development process includes techniques
for searching for defects. Modern development
processes include techniques for finding defects
as early as possible. Dr. McGregor has developed
a number of techniques for testing object-oriented
software and has written a book on the topic.
The Guided Inspection technique is an active inspection
technique, as defined by Parnas, that uses test
case selection and development techniques to produce
effective inspection routines. It is similar to
the Architecture Trade-off Analysis Method (ATAM)
developed at the Software Engineering Institute,
but it is capable of evaluating analysis and design
models. It is similar to Fagan inspections but
it takes a more logical and more efficient approach
to determining the order in which to inspect materials.

Relevance
to UML 2004 audience
Model-driven
development (MDD) requires complete, correct,
and consistent models. The benefits of this style
of development cannot be realized if the models
contain defects. Inspections find more defects
per hour of effort than testing but many inspection
techniques are informal and unstructured. Guided
inspection provides a context in which the inspection
is guided to the most important aspects of the
model. The technique provides means of measuring
the effectiveness and the completeness of the
inspection at any point in time. The UML2004 audience
will benefit from the use of this technique in
the form of improved models and earlier detection
of defects.

|
Instructional
Objectives
The
participant will be able to:
- define
test scenarios from use cases
- apply
these test cases to an actual system model
- adapt
the technique and checklists to the maturity
of a specific model

|
Table
of Contents
-
Basics and definitions
1.1. Research basis - Parnas, Fagan,
1.2. Definitions such as coverage, test case,
etc.
1.3. Roles in Guided Inspection
1.4. Defect categories
-
Guided
Inspection Process
2.1. Developing operational profiles
2.2. Selecting test cases
2.3. Applying test cases
2.4. Evaluating test results
-
Application
of technique
3.1. Inspection session dynamics
3.2. Test case execution
3.3. Coverage analysis
-
Evaluation
of technique
4.1. Evaluating the effectiveness of the session

Teaching
Methods
The
tutorial is conducted as an interactive lecture
with exercises. In the interactive lecture, the
presenter engages participants by asking about
their use of UML and the problems they have encountered
with defects in the models. In each exercise,
we form small groups, provide time for participants
to discuss possible solutions, then the presenter
works through the problem blending the solutions
of the teams. The presenter has had sufficient
real-world modeling experience to anticipate and
address issues brought up by the teams on an ad
hoc basis..

|
Speaker
Biography
Dr. John D. McGregor is a partner in Luminary
Software and an associate professor of computer
science at Clemson University. He conducts research,
teaches graduate software engineering courses,
and serves as a consultant to companies in several
domains. Dr. McGregor has conducted research for
organizations such as NASA, the Software Engineering
Institute, National Science Foundation, DARPA,
IBM and AT&T. He has applied those research results
on projects in telecommunications, insurance,
and financial institutions. Dr. McGregor is co-author
of "Object-oriented Software Development: Engineering
Software for Reuse" published by Van Nostrand
Reinhold. He is also co-author of "A Practical
Guide to Testing Object-Oriented Software" published
by Addison-Wesley. He currently writes a column
on Strategic Software Engineering for the Journal
of Object Technology and previously wrote a column
on Testing and Quality for the Journal of Object-oriented
Programming (JOOP) and technical reports for the
Software Engineering Institute. He has published
numerous papers and articles on software development
focusing on organizational, design and quality
issues. Dr. McGregor's current research interests
include software engineering activities in the
areas of software product lines, design quality,
testing and measurement. Dr. McGregor has given
tutorials for several years at OOPSLA, ECOOP,
SD East, SD West, SPLC1, and SPLC2.

Tutorial
Biography
This
tutorial has been presented at OOPSLA, ECOOP,
and a number of industrial clients over the last
5 years. It is being revised this summer for presentation
at OOPSLA'04.
|
|
|