Title :
A specification language for static analysis of student exercises
Author :
Köllmann, Carsten ; Goedicke, Michael
Author_Institution :
T-Syst., Essen
Abstract :
In this paper we use formal software engineering techniques to support one of the most difficult steps in software engineering: learning to use a programming language. In order to support numerous exercises of a large number of students some automatic support for checking the solutions and providing hints for the occurrence of erroneous code fragments is highly desirable to help students doing their work. For such support a specification language to describe search patterns for typical solution patterns in student exercises has been created. This language especially supports the structured description of complex search patterns. The specified patterns are transformed into graph rules, which are applied to student solutions in our testing support environment. The approach extends the work we presented in [5]. In addition to the application areas described here the search for a class of structures can be used in other areas like the check for design patterns or looking for code fragments where refactorings can be applied.
Keywords :
computer science education; formal specification; graph theory; program diagnostics; program testing; specification languages; design pattern; erroneous code fragment checking; formal software engineering technique; graph transformation; programming language learning; specification language; static analysis; structured description; student exercise; testing support environment; Algorithm design and analysis; Computer languages; Java; Pattern matching; Programming; Software engineering;
Conference_Titel :
Automated Software Engineering, 2008. ASE 2008. 23rd IEEE/ACM International Conference on
Conference_Location :
L´Aquila
Print_ISBN :
978-1-4244-2187-9
DOI :
10.1109/ASE.2008.47