Toward Higher-Level Abstractions for Software Systems

Author: Mary Shaw

Proc. Tercer Simposio Internacional del Conocimiento y su Ingerieria, October 1988.


Software now accounts for most of the cost of computer-based systems. Over the past thirty years, abstraction techniques such as high level programming languages and abstract data types have improved our ability to develop software. However, the increasing size and complexity of software systems have introduced new problems that are not solved by the current techniques. These new problems involve the system-level design of software, in which the important decisions are concerned with the kinds of modules and subsystems to use and the way these modules and subsystems are organized. This level of organization, the software architecture level, requires new kinds of abstractions. These new abstractions will capture essential properties of major subsystems and the ways they interact.

Brought to you by the Composable Software Systems Research Group in the School of Computer Science at Carnegie Mellon University.

[Last modified 12-Feb-1999.
Mail suggestions to the