Home
Programme
Conf. Registration
Exhib. Registration
Hotel/Travel Info
Invited Speakers
Industry Track
Tutorials 
Workshops
Posters & Demos
PhD Symposium
Tool Exhibit
Important Dates
Venue 
Lisbon
Sponsors
Committee
Students
Previous Editions
Contacts
 

 

Tutorial 4

[ Presenter | Abstract | Context | Relevance | Objectives | TOC | Method | Presenter Biography | Tutorial Biography ]

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

  1. 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

  2. Guided Inspection Process
    2.1. Developing operational profiles
    2.2. Selecting test cases
    2.3. Applying test cases
    2.4. Evaluating test results

  3. Application of technique
    3.1. Inspection session dynamics
    3.2. Test case execution
    3.3. Coverage analysis

  4. 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.

Last Update: September 16, 2004