Software engineering practice in an undergraduate compiler course

The combination of a traditional deep domain project course (compiler construction) with the software engineering process is discussed. The course involves a progressive and team programming project for a subset of some real structured programming languages such as ANSI-C. The software engineering practice concentrates on the implementation level, issues on detailed design, coding and documenting, and unit and integration testing. It is argued that these issues are the major problems that most undergraduates will face. >