ICSE97 Tutorial -- Defining Families: The Commonality Analysis

A tutorial on Commonality Analysis, part of the FAST process, was given at the International Conference on Software Engineering (ICSE), May 19, 1997.

A recent trend in both the software engineering research and industrial communities has been to seek ways to systematically engineer software domains. One approach is to develop families of software and to invest in facilities for rapidly producing family members. This tutorial describes the commonality analysis process, a systematic approach to analyzing families. The result of the analysis forms the basis for designing reusable assets to rapidly produce family members. This in-depth course will teach the participants the principles underlying the approach and will give them a chance to perform a practice commonality analysis guided by experienced users of the process.

The course is designed to teach participants how to perform a commonality analysis. The participants gain an understanding of:

Potential participants should have some experience in the practice or management of software development, but no assumptions are made about that experience.

Outline of Topics:

  1. Introduction
  2. Overview of FAST
    1. FAST Vision and Approach
    2. Economic Model
    3. Application Engineering
    4. Domain Engineering
    5. Review
  3. Commonality Analysis
    1. Organizing Principles
    2. Sections of Document
  4. Commonality Analysis Process
    1. Roles
    2. Sessions
    3. Social Approach
  5. Introduction to Application Engineering
  6. Practical Exercise in Commonality Analysis


The materials for this tutorial were prepared for a tutorial sponsored by the ACM. Please abide by the following copyright guidelines.

ACM Copyright Notice

Copyright 1997 by the Association for Computing Machinery, Inc. Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from Publications Dept, ACM Inc., fax +1 (212) 869-0481, or permissions@acm.org.


mark.ardis@rose-hulman.edu