A multi-dimensional taxonomy of software development environments

A Software Development Environment (SDE) is a set of tools that, at the very least, supports coding and possibly other software development activities. Related to SDEs are meta-SDEs, which are classes of SDEs that must be configured or populated by tools before they can be useful. We will use the generic term environment to refer to both SDEs and meta-SDEs.This paper presents a multi-dimensional taxonomy of environments. The primary dimensions of our taxonomy are scale and genericity. Scale distinguishes environments that are suitable for small-scale programming from those that are suitable for large-scale software development. Genericity differentiates monolithic environments from highly configurable and extendible ones. Secondary taxonomy dimensions include tool integration, which identifies the degree of interoperability and data sharing between tools, and the historical dimension, which gives insight into past and present research trends in these environments.

[1]  Alan S. Fisher CASE: Using Software Development Tools , 1988 .

[2]  Patrick Borras,et al.  Centaur: the system , 1988, Software Development Environments.

[3]  Erhard Plödereder,et al.  An overview of DOD-STD-1838A (proposed) the common APSE interface set: revision , 1988, SDE 3.

[4]  John A. McDermid,et al.  Software Engineering Environments: Automated Support for Software Engineering , 1993 .

[5]  Alan W. Brown Integrated project support environments: the aspect project , 1991 .

[6]  Graham Ross,et al.  Integral-C—a practical environment for C programming , 1987, SDE 2.

[7]  Hans H. Kron,et al.  Programming-in-the-Large Versus Programming-in-the-Small , 1975 .

[8]  Thomas Reps,et al.  The synthesizer generator , 1984 .

[9]  Margaret M. Burnett,et al.  Influence of visual technology on the evolution of language environments , 1989, Computer.

[10]  Wenguang Ji,et al.  HyperWeb: a framework for hypermedia-based environments , 1992 .

[11]  David Robson,et al.  Smalltalk-80: The Language and Its Implementation , 1983 .

[12]  A. Nico Habermann,et al.  Software Development Environments , 1987, Computer.

[13]  Larry Masinter,et al.  The Interlisp Programming Environment , 1981, Computer.

[14]  Mark Dowson ISTAR—an integrated project support environment , 1987, SDE 2.

[15]  Jean-Claude Derniame,et al.  Process-centered IPSEs in ALF , 1992, [1992] Proceedings of the Fifth International Workshop on Computer-Aided Software Engineering.

[16]  Stuart I. Feldman,et al.  Make — a program for maintaining computer programs , 1979, Softw. Pract. Exp..

[17]  David Notkin,et al.  Gandalf: Software development environments , 1986, IEEE Transactions on Software Engineering.

[18]  Richard C. Holt,et al.  A conceptual framework for software development , 1993, CSC '93.

[19]  John A. McDermid Integrated project support environments , 1986 .

[20]  Nan C. Shu,et al.  Visual Programming: Perspectives and Approaches , 1989, IBM Syst. J..

[21]  Peter H. Feiler,et al.  An Incremental Programming Environment , 1981, IEEE Transactions on Software Engineering.

[22]  John R. Mashey,et al.  An introduction to the Programmer's Workbench , 1976, ICSE '76.

[23]  Warren Teitelman,et al.  A Tour Through Cedar , 1984, IEEE Transactions on Software Engineering.

[24]  Steven P. Reiss,et al.  PECAN: Program Development Systems that Support Multiple Views , 1984, IEEE Transactions on Software Engineering.

[25]  Jack C. Wileden,et al.  Foundations for the Arcadia environment architecture , 1989, SDE 3.

[26]  Polle Zellweger,et al.  The structure of Cedar , 1985, ACM SIGPLAN Notices.

[27]  Ken Kennedy,et al.  Editing and compiling whole programs , 1987, SDE 2.

[28]  Alan W. Brown Integrated project support environments , 1988, Inf. Manag..

[29]  Gail E. Kaiser,et al.  Models of software development environments , 1988, Proceedings. [1989] 11th International Conference on Software Engineering.

[30]  David A. Penny,et al.  The software landscape: a visual formalism for programming-in-the-large , 1993 .

[31]  Richard C. Holt,et al.  Multicolour programming and metamorphic programming: object oriented programming-in-the-large , 1992, CASCON.

[32]  Ian Thomas,et al.  An overview of PCTE and PCTE+ , 1989, SDE 3.

[33]  Peter H. Feiler,et al.  Evaluation of the Rational Environment , 1988 .

[34]  Richard C. Holt,et al.  A “curriculum-cycle” environment for teaching programming , 1993, SIGCSE '93.

[35]  Tom Strelich The Software Life Cycle Support Environment (SLCSE): a computer based framework for developing software systems , 1988, SDE 3.

[36]  Pearl Brereton,et al.  Software engineering environments , 1988 .

[37]  David B. Leblang,et al.  Computer-Aided Software Engineering in a distributed workstation environment , 1984 .