Main Article Content
This paper reports on CodeOrama, a visualization tool that displays the entire source code in a two-dimensional representation created to support the representation of a complex code in block-based programming environments, like Scratch, by using a two-dimension table. CodeOrama can be used by the students for the development of their programs as well as by the teachers in order to support their specific pedagogical choices. This paper demonstrates the main representation capabilities that CodeOrama provides, i.e. a) direct information about the program size, b) identification of the code parts with algorithmic and communicational overload, c) code modularization by procedures, messages, clones, d) ways of interaction between scripts or other objects (based on polling and interrupt techniques), e) program flow representation, f) segment points where code interacts with the user, g) data representation and the kind of programming that was adopted (structured, parallel, event driven). The results of a pilot study concerning 87 programming projects with CodeOrama, in the context of the final phase of the Greek Competition of Educational Robotics, showed the potential of the tool but equally highlight some limitations and students’ difficulties such as a manual and time-consuming burden during its creation process.