Skip to Main Content
As part of their curriculum, many computer science departments offer an introductory software engineering course. This course normally provides an introduction to software engineering topics in conjunction with a semester long team project. The typical goals of this project are to provide students with a team based realistic software development project experience. To ensure students acquire the correct lessons from this project experience, it is essential that the teams utilize well-defined software development processes similar to those practised by leading software development organizations. Since its inception, the Software Engineering Institute Capability Maturity Model (CMM) has served as a guide for organizations seeking to improve their development practices. The CMM identifies five levels of maturity, each of which exemplifies the utilization of key software engineering practices. Organizations can utilize the CMM to assess the maturity of their development processes via a self-assessment questionnaire, Although most organizations would like to believe their processes are mature, most are at the first two levels of maturity. In an effort to assess the maturity of development practices utilized in software engineering courses, an "academic" version of the CMM questionnaire was developed. This questionnaire was distributed to a sample of software engineering instructors in an effort to assess the maturity of academic software engineering course projects. The questionnaire and the survey results are presented and discussed. The goal of this effort is to provide an assessment of current software engineering course project education. As in the commercial world, this assessment will help pinpoint areas of improvement. It will also provide a challenge to software engineering instructors to "practice what they preach " and strive for higher levels of process maturity.