Convit, a Tool for Learning Concurrent Programming

Concurrent programming is an important and difficult topic for most computer science students. This paper presents a visualization tool called Convit to help students master and understand concurrent programming problems and their solutions. The tool, a Java applet, is basically a debugger or simulator, which runs concurrent programs written in a simple pseudocode. The code is translated into Java run in the applet. The students are supposed to work on their own with the tool exploring the examples and problems created by teachers. The tool also allows modification of the synchronization statements, to a limited degree, so that the student may try out various choices.