Abstract
How to improve the learning methods for beginners and students in the earlier stages of learning programming is a matter debated among students, lecturers and developers. This master thesis investigates whether visualisation of programs using class and object diagrams when programming seem to improve the comprehension of first year programming students and whether there is a connection between the quality of their program and diagrams. A quantitative analyse is used to find the connection between 56 sets of programs and diagrams created by first year programming students at a course in object-oriented programming at the University of Oslo. The programs and diagrams were created for a delivery to a mandatory assignment in the course. We have set up some criteria and weighted them with points that we have used to evaluate both programs and diagrams. The total scores of a delivery is used to categorise the deliveries for then comparing the best and poorest programs and diagrams. We found students struggling with null-pointers and method lengths in their program code. Studying the diagrams, we saw that students from all parts of the point scale struggled with illustrating abstract classes in the class diagram and in the object diagrams that few managed to mark next-pointers in the list objects. Our research have not shown a connection between program and diagram quality and do not suggest that creating diagrams improved the comprehension of programming for the students taking this course. This may be caused by the lack of focus on how and why to create diagrams in the course curriculum and the fact that the program the students had to create were quite big. What we found was that of the students delivering poorly written code, there were both good and poor diagrams. The same we found for those that delivered good code.