Beyond Programming-in-the-Large: The Next Challenges for Software Engineering

Date of Original Version



Technical Report

Rights Management

All Rights Reserved

Abstract or Description

As society's dependence on computing broadens, software engineering is being called upon to address new problems that raise new technical and nontechnical concerns. Aspirations and expectations for the application of computers appear to be unbounded, but present software development and support techniques will not be adequate to build computational systems that satisfy our expectations, even at a very high cost. Each order-of-magnitude increase in the scale of the problem being solved leads to a new set of critical problems that require essentially new solutions. The next challenges for software engineering will deal with software as one of many elements in complex systems, which we call program-as-component, and with the role of software as an active participant in the software development porocess, which we call program-as-deputy.