Authoring specification- and test-based Java exercises with JExercise

Programming exercises are an important part of an introductory programming course. It is, however, hard to design exercises that force the students to learn what they should and validate the fact that they have. In this paper we describe an approach to designing Java exercises based on precisely specified requirements with corresponding JUnit tests and Eclipse plugins for supporting both the student and exercise author.