Year: 1991
Type: article
Abstract: The growing cost of software development, particularly in larger systems, is well documented.Efforts at containing this growth have met with limited success.In his classic paper, "No Silver Bullet" [11], Brooks attempts to explain this; he argues that existing developments in software engineering, such as high-level languages, time-sharing and integrated programming environments have overcome certain accidental difficulties in the software development process.However, certain other problems that are the essence of the software process remain.He identifies four essential difficulties in building large software systems as follows:• Complexity: The complexity of the development process, the application domain, the internals of the system, etc.• Conformity: Software cannot have a regular formal structure (like Mathematics or Physics) because it must adapt to interact with people and institutions according to their diverse needs.• Changeability: In any system, the software component is usually the easiest one to modify.• Invisibility: The structure of software (unlike that of buildings or automobiles) is hidden.The only external evidence we have of software is its behavior when executing.
Source: Communications of the ACM
Institution: AT&T (United States)
Language: English
Subfield: Information Systems
Field: Computer Science
Domain: Physical Sciences
Open Access status: bronze
OpenAlex ID: W1965982049
