A history of software engineering at the National Science Foundation (a personal view)
The academic software engineering community can be justly proud of its accomplishment in the last twenty-five years. When I joint the National Science Foundation in 1974, Software Engineering as an academic discipline hardly existed. Structured programming and top-down design had permeated the curriculum, but that was the extent of software engineering in the curriculum. "Curriculum 1978" did not use the term Software Engineering, but emphasized good software development practices. In the objectives for the curriculum it stated that "Computer science majors should be able to write programs in a reasonable amoui~t of time that work correctly, axe well documented and arereadable." The report also notes that "The topics [in structured design] are of such importance that they should be considered a common thread throughout the entire curriculum." By 1986 most Computer Science programs had introduced senior project courses involving a significant portion of quality software engineering practices. The 1989 ACM report on "Computing as a Discipline" included Software Methodology and Engineering as one of its elements. The "Curriculum 1991" report of the ACM and the IEEE-Computer Society recommends a significant amount of software engineering for every computer science graduate and includes a sample curriculum with a Software Engineering emphasis. Currently there are Software Engineering programs, especially in Europe. There are even discussions concernLug the accreditation of undergraduate programs in Software Engineering. Over the last 25 years the Computer Science curriculum has evolved from one based on the paradigms and philosophy of Mathematics and the Sciences, to one with more of an engineering emphasis. I believe that NSF's early recognition of the role of Software Engineering in the academic environment contributed to the evolution.