Software engineering emerged due to:
2025
Software engineering emerged due to:
Answer: C. The challenges posed by software development — Concept: Software engineering is the systematic application of engineering principles to specifying, designing, building, testing, and maintaining software.…
- A.
The decline of computer technology
- B.
The need for complex hardware systems
- C.
The challenges posed by software development
- D.
The focus on hardware-only solutions
Attempted by 148 students.
Show answer & explanation
Correct answer: C
Concept: Software engineering is the systematic application of engineering principles to specifying, designing, building, testing, and maintaining software. It became a distinct discipline once ad hoc, informal programming practices proved unable to reliably produce large-scale software — a set of problems historically called the "software crisis": projects that ran over budget, missed deadlines, and delivered unreliable systems as software complexity outgrew what individual programmers could manage without formal methods.
Application: The stem asks what specifically drove this shift. The keyed option — the challenges posed by software development — captures exactly that software crisis: the difficulty of managing scale, complexity, reliability, and changing requirements in large software projects. This is the problem the 1968 NATO Software Engineering Conference was convened to address, and it is widely credited with coining the term "software engineering" as a discipline distinct from ad hoc programming.
Cross-check: Contrasting the other options by their own content confirms this reading:
The decline of computer technology — computer hardware technology was advancing rapidly through the 1960s–70s (faster processors, growing memory capacity), not declining, so this does not describe the actual historical trend.
The need for complex hardware systems — hardware architecture and circuit design are the concerns of electrical/computer engineering, a separate discipline from the practices used to build and maintain software.
The focus on hardware-only solutions — software engineering's emergence marks a shift toward treating software itself as an engineering problem, the opposite of a hardware-only focus.
Result: IEEE and ACM historical accounts, together with the original 1968 NATO report, confirm that software engineering emerged specifically to address the challenges of developing software at scale — matching the saved key.