search menu icon-carat-right cmu-wordmark

Models for Undergraduate Project Courses in Software Engineering

August 1991 Technical Report
Mary Shaw, James E. Tomayko

This 1991 report discusses 1) how software engineering course instructors balance technical and management topics and 2) the relation between the lecture and project components.


Software Engineering Institute

CMU/SEI Report Number



The software engineering course provides undergraduates with an opportunity to learn something about real-world software development. Since software engineering is far from being a mature engineering discipline, it is not possible to define a completely satisfactory syllabus. Content with a sound basis is in short supply, and the material most often taught is at high risk of becoming obsolete within a few years. 

Undergraduate software engineering courses are now offered in more than a hundred universities. Although three textbooks dominate the market, there is not yet consensus on the scope and form of the course. The two major decisions an instructor faces are the balance between technical and management topics and the relation between the lecture and project components. We discuss these two decisions, with support from sample syllabi and survey data on course offerings in the United States and Canada. We also offer some advice on the management of a project-oriented course.