- Automatic Prediction Question Generation during Program Visualization
Myller, N. in Electron. Notes Theor. Comput. Sci. 178 (Jul. 2007), 43-49.
Based on previous research, it seems that the activities performed by and the engagement of the students matter more than the content of the visualization. One way to engage students to interact with a visualization is to present them with prediction questions. This has been shown to be beneficial for learning. Based on the engagement taxonomy and benefits of the question answering during the algorithm visualization, we propose to implement an automatic question generation into a program visualization tool, Jeliot 3. In this paper, we explain how the automatic question generation can be incorporated into the current design of Jeliot 3. In addition, we provide various example questions that could be automatically generated based on the data obtained during the visualization process.
- Inductive Reasoning and Programming Visualization, an Experiment Proposal
Moreno, A., Myller, N., Sutinen, E., Lin, T., and Kinshuk. in Electron. Notes Theor. Comput. Sci. 178 (Jul. 2007), 61-68. DOI= http://dx.doi.org/10.1016/j.entcs.2007.01.032
We lay down plans to study how Inductive Reasoning Ability (IRA) affects the analyzing and understanding of Program Visualization (PV) systems. Current PV systems do not take into account the abilities of the user but show always the same visualization independently of the changing knowledge or abilities of the student. Thus, we propose IRA as an important skill when comprehending animation, which can be used to model the students and thus to adapt the visualization for different students. As an initial step we plan to check if IRA correlates with ability to answer program related questions during program visualization. We discuss the possible benefits of using IRA modeling in adaptive PV.
- Jeliot 3 in a Demanding Educational Setting.
Moreno, A. and Joy, M. S. in Electron. Notes Theor. Comput. Sci. 178 (Jul. 2007), 51-59.
We report the preliminary findings of a qualitative investigation into how students approach a program visualization tool, and whether the approach depends on how they are taught to use the tool. Volunteer students in an undergraduate programming course were divided into two groups. One group was taught programming concepts explicitly using the tool, and required to use it to solve weekly exercises and projects, whereas the other group only used the tool on a voluntary basis. We identify those aspects of using the tool which the students find beneficial, and discuss the limitations of the animations provided by Jeliot 3.
- Program Visualisation: Comparing Eye-tracking Patterns with Comprehension Summaries and Performance.
Bednarik, R., Myller, N., Sutinen, E., & Tukiainen, M. (2006) in Proceedings of the 18th Annual Workshop of the Psychology of Programming Interest Group (PPIG'06) (pp. 68-82).
We present preliminary results of an experiment in computer program
comprehension that was conducted to find out whether visual strategies can char-
acterize low- and high-comprehenders. In addition, we investigated whether the
type and quality of externalized mental models can be associated with the visual
Participants of various levels of experience used a program visualization tool, Je-
liot, to comprehend short Java programs, while their eye-movements were recorded.
Comprehension summaries were evaluated for correctness as a measure of perfor-
mance and also analyzed using Good’s information-types scheme. Times spent on
viewing certain structures of the program visualization were analyzed and corre-
lated with the information types found in comprehension summaries. Depending
on comprehension performance and target program, some information types were
found to be correlated with eye-data patterns.
Comprehension performance did not significantly correlate with information types.
When the visual strategies of low-comprehenders were similar to those of high-
comprehenders, the comprehension outcome of the low-comprehenders was poor.
When the strategies diverged, the mental models of low-comprehenders tend to
match those of high-comprehenders. Based on the results, we propose that eye-
tracking can help to partially predict the mental model that is built during com-
prehension. We discuss limitations and future directions of this research.
- Methodologies for Studies of Program Visualization.
Bednarik, R., & Myller, N. (2006) in Proceedings of the Methods, Materials and Tools for Programming Education Conference (MMT 2006) (pp. 37-42). Tampere, Finland.
Learning and interaction with program visualization tools is a complex domain that needs to be approached from various perspectives. While most of the studies conducted in past made use of controlled experiments, other types of approaches such as classrooms studies were missing. The main claim of this paper is that in order to holistically investigate this complex domain, multiple perspectives and methodologies have to be involved. A number of qualitative and quantitative studies have been conducted by us and others to research a program visualization tool called Jeliot 3. We summarize some of the results and discuss methodological lessons
learned when conducting these types of studies.
- Jeliot 3, an Extensible Tool for Program Visualization
Roman Bednarik, Andrés Moreno and Niko Myller. To appear
in Proceedings of the Koli Calling 2005: 5th Annual Finnish / Baltic Sea
Conference on Computer Science Education. November 17 - November 20, 2005.
Jeliot 3 is a program visualization tool that can be used in introductory
courses of programming. It animates a large set of Java programs and can interact with the BlueJ
IDE. Jeliot 3 has been tested and shown to be useful for novice students with difficulties in
programming. In this paper, we discuss how Jeliot 3 has been designed to allow for extensibility
with modular design. This allows both original and other developers to add different visualization
paradigms to Jeliot 3, or to connect Jeliot 3 with other environments. We present how Jeliot 3 has been
integrated with others system in order to ease its use by teachers and students.
- Multi-Agent Educational System for Program Visualization :
Roman Bednarik, Mike Joy, Andrés Moreno, Niko Myller, Shanghua Sun and Erkki Sutinen. To appear in Proceedings of the
International Conference on Intelligent Agents, Web Technology and Internet Commerce (IAWTIC'2005), 28 - 30 November 2005,
We propose a multi-agent educational system to teach programming and support program visualization.
Current program visualization tools lack sensitivity to learners' growth and other important contextual factors influencing
the learning process. Joining an agent-based intelligent system with a program visualization environment could be a solution
to the problem. We propose the architecture of such a system and discuss its potentials and drawback.
- Smart Program
Visualization Technologies: Planning a Next Step :
Roman Bednarik, Andrés Moreno, Niko Myller and Erkki Sutinen. To appear
in Proceedings of the IEEE International Conference on Advance Learning
Technologies(ICALT 2005), July 5 - 8, 2005, Kaohsiung, Taiwan
Learning to program is a difficult and complex process
that needs to be aided by proper educational tools. The crucial question
is if the tool can support the learning or not. The potentials of Program
Visualization (PV) tools, especially essential in novice programmers
training, were shown in the past. Unfortunately, they are still underutilized
and the results of their use are inconclusive. Moreover, the approach
of creating general-purpose tools for a general-user is no longer bearable.
The tools should be smart and accommodate to the changing needs, goals,
and context of the users. This can increase the efficiency, acceptance
and usage of PV tools. We perform a critical analysis of the current
state-of-practice in PV and smart technologies and propose a taxonomy
linking these research tracks. In addition, we present directions for
the future of the research in smart program visualization tools.
- JeCo, a Collaborative
Learning Tool for Programming:
Moreno, A., Myller, N., Sutinen, E. Proceedings of the IEEE Symposium
on Visual Languages and Human-Centric Computing, Rome, Italy, September
The pair-programming activities in a classroom are
found to support learning of the novice students during the first programming
courses. However, there are very few tools that could support pair or
group programming in distance education courses. We present a concept
of collaborative program visualization and a tool to realize it, called
JeCo that can help the students to work together on a platform that
supports both collaborative authoring and program visualization.
- What a Novice Wants:
Students Using Program Visualization in Distance Programming Course:
Kannusmäki, O., Moreno, A., Myller, N., Sutinen, E. To appear in
Proceedings of the Third Program Visualization Workshop (PVW'04), Warwick,
UK, July 2004
In this paper, we present some results from a qualitative
analysis of the use of Jeliot 3, as well as students' requests and proposals
for the development of Jeliot 3. The students were taking the second
programming course in the ViSCoS (Sutinen and Torvinen, 2003) program
at the University of Joensuu. Qualitative information was gathered from
different sources such as forums and emails with comments and exercises.
All these documents were later compiled to form a knowledge base from
which we extracted our preliminary conclusions.
- Visualizing Programs with
Moreno, A., Myller, N., Sutinen, E., and Ben-Ari, M.: Visualizing Programs
with Jeliot 3. To appear in the Proceedings of the International Working
Conference on Advanced Visual Interfaces AVI 2004, Gallipoli (Lecce),
Italy, 25-28 May, 2004 © ACM, 2004. This is the author's
version of the work. It is posted here by permission of ACM for your personal
use. Not for redistribution.
We present a program visualization tool called
Jeliot 3 that is designed to aid novice students to learn procedural
and object oriented programming. The key feature of Jeliot is the fully
or semi-automatic visualization of the data and control flows. The development
process of Jeliot has been research-oriented, meaning that all the different
versions have had their own research agenda rising from the design of
the previous version and their empirical evaluations. Moreover, we have
developed an intermediate language that is used to decouple the interpretation
of the program from its visualization. This has led to a modular design
that permits both internal and external extensibility.
- Collaborative Program Visualization
with Woven Stories and Jeliot 3:
Andrés Moreno, Niko Myller, Erkki Sutinen (2004),Proceedings of
the IADIS International Conference on Web Based Communities, Lisbon, Portugal,
The novel concept of collaborative program visualization
combines individually oriented cognitive tools with a collaborative
environment. The concept is based on the socio-cultural constructivism
in which collective actions are in the key role. In this context the
learning process is acculturation into an established community of practice
where the subjective feelings and knowledge of the participants is transformed
into commonly accepted knowledge of the community. This process is supported
by the environment called JeCo that supports both synchronous and asynchronous
collaborative tools. Users of this new platform will collaborate in
developing programs and solving together different programming tasks.
The platform structure is the result of the union of two already developed
tools: Woven Stories, which provides the collaborative environment,
and Jeliot 3, which animates the programs.
- Producing an Educationally
Effective and Usable Tool for Learning, The Case of the Jeliot Family:
Andrés Moreno, Niko Myller(2003), In the Proceedings of International
Conference on Networked e-learning for European Universities (Granada,
In this paper we present a new member of the Jeliot
family, called Jeliot 3. We concentrate on the development and evaluation
of the Jeliot family, giving more emphasis to the new version and its
future development. Jeliot 3's main enhancement is the possibility to
visualize objects. Moreover, the framework is open and more modular
so new developments and improvements can easily be added to the system.
It is published as open source software under the General Public License
(GPL). Thus, we invite developers to enhance and extend the software.
The University of Joensuu will provide tools and support to the community
created around Jeliot 3.