______________________________________________________________________________________ CMU/SEI-90-TR-3 i
Table of Contents
1. Introduction 1 1.1. Background 1 1.2. Issues in Software Engineering Education 2 1.3. Purpose of This Report 3
2. Software Engineering and Computer Science 4 2.1. Definitions of ?Software Engineering? 4 2.2. Discussion 7
3. The Need for Undergraduate Software Engineering Education 8 3.1. Trends in Undergraduate Enrollments in the Computer Sciences 8 3.2. Trends in Graduate Enrollments in the Computer Sciences 10 3.3. The Current State of Undergraduate Degree Programs in Software
Engineering 12 3.4. Implications for Software Engineering Education 13
4. Accreditation Issues 14
4.1. ABET Accreditation 15
4.1.1. Purposes and Policies 15
4.1.2. The Range of Engineering Disciplines 17
4.1.3. General Criteria for Engineering Programs 20
4.1.4. Program Criteria for Computer and Similarly Named
Engineering Programs 21 4.1.5. General Criteria for Engineering-Related Programs 22 4.2. CSAB Accreditation 23 4.2.1. Purpose and Policies 23 4.2.2. Program Accreditation Criteria 24 4.3. Accreditation Issues Related to Faculty 25
5. Professional and Licensing Issues 27 5.1. Is Software Engineering a Profession? 27 5.2. Certification of Software Professionals 28 5.3. Licensing of Engineers 28 5.3.1. Definitions 28 5.3.2. Motivation for Licensing 29 5.3.3. Licensing Requirements 30 5.3.4. Code of Ethics 31
______________________________________________________________________________________ CMU/SEI-90-TR-3 1
1990 SEI Report on Undergraduate
Software Engineering Education
Abstract: Fundamental issues of software engineering education are presented and discussed in the context of undergraduate programs. Included are discussions of the definition of software engineering and its differences from computer science, the need for undergraduate software engineering education, possible accreditation of undergraduate programs, and prospects for professional certification and licensing of software engineers. The objectives and content of an undergraduate program are described, as are strategies for the evolution and implementation of such programs. An appendix presents a report on the 1989 SEI Workshop on an Undergraduate Software Engineering Curriculum.
The Software Engineering Institute (SEI) was established at Carnegie Mellon University in December 1984, under a contract with the United States Department of Defense. Its primary mission is to advance the state of the practice of software engineering by accelerating the transition of promising new methods and technologies from concept demonstration to routine use. A significant part of the strategy is to promote software engineering education as a means to help alleviate the chronic shortage of highly qualified software engineers. In describing the institute?s role in education, the SEI charter states, ?It shall also influence software engineering curricula development throughout the education community.?
The SEI Education Program was established to undertake this task. During our first four years, we concentrated on master?s level curriculum development [Ford87, Ardis89, Gibbs89a, Ford89b]. We believed that this work would provide the quickest ?payoff,? in that universities could establish and students could complete a master?s program more quickly than an undergraduate program.