Models of software development environments

  • Authors:
  • D. E. Perry;G. E. Kaiser

  • Affiliations:
  • AT&T Bell Laboratories, Murray Hill, NJ;Columbis Univ., New York, NY

  • Venue:
  • ICSE '88 Proceedings of the 10th international conference on Software engineering
  • Year:
  • 1988

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a general model of software development environments that consists of three components: policies, mechanisms and structures. The advantage of this formalization is that it distinguishes precisely those aspects of an environment that are useful in comparing and contrasting software development environments. We introduce four classes of models by means of a sociological metaphor that emphasizes scale: the individual, the family, the city and the state models. The utility of this taxonomy is that it delineates the important classes of interaction among software developers and exposes the ways in which current software development environments inadequately support the development of large systems.Environments reflecting the individual and family models are the current state of the art. Unfortunately, these two models are ill-suited for the development of large systems that require more than, say, 20 programmers. We argue that there is a qualitative difference between the interactions among a small, “family” project and a large, “city” project and that this qualitative difference requires a fundamentally different model of software development environments. We illustrate the city model with Inscape/Infuse and ISTAR, the only two environments we know of that instantiate this model, and show that there is a pressing need for further research on this kind of environment. Finally, we postulate a state model, which is in need of further clarification, understanding and, ultimately, implementation.