The Fourth Decade of Software Engineering: Some Issues in Knowledge Management

This paper examines the future of software engineering with particular emphasis on the development of intelligent and cooperating information systems (ICISs). After a brief historical overview, the applications of the 1990s are characterized as having open requirements, depending on reuse, emphasizing integration, and relying on diverse computational models. It is suggested that experience with TEDIUM, an environment for developing interactive information systems, offers insight into how software engineering can adjust to its new challenges. The environment and the methods for its use are described, and its effect on the software process is evaluated. Because the environment employs a knowledge-based approach to software development, there is an extended discussion of how TEDIUM classifies, represents, and manages this knowledge. A final section relates the experience with TEDIUM to the demands of ICIS development and evolution.