@TechReport{ it:2003-060, author = {Pierre Flener}, title = {Realism in Project-Based Software Engineering Courses: Rewards, Risks, and Recommendations}, institution = {Department of Information Technology, Uppsala University}, department = {Computing Science Division}, year = {2003}, number = {2003-060}, month = dec, abstract = {A software engineering course is often the capstone of a general undergraduate curriculum in computer science. It is usually at least partly a project-based course, with the intention that student groups can deploy their already acquired skills on programming, verification, databases, and human-computer interaction, while applying the new material about requirements, architecture, and project management on a project. I have taught a software engineering course six times over the last few years, using a combination of ideas that I have never seen elsewhere, with a strong emphasis on realism. I here reflect on the rewards and risks of this approach, and make some recommendations for future offerings.} }