complained that they would prefer to see the real java codes so
that they would be more accustomed to industry coding [8].
BlueJ [22, 17] in 1996 allowed students to learn OOP in a
more structured way. One of the strength of blueJ is the clear
separation of the concepts of OOP classes and objects and the
possibility to interact with and analyse these objects and
classes. One other of its strength is its simple user interface
which makes it very suitable for novice learners. A research
[22] conducted in 2007 at the University of Piraeus in Greece
favored blueJ for its simplicity. The simplicity of the software
allowed students to be more engaged to learn OOP. However,
the research highlighted some disadvantages with its usage.
One of them has been the fact that BlueJ is a static visualizing
tool. This means blueJ does not allow us to monitor the state
and behavior of objects. This has limited the teaching and
learning process of OOP.
Dynamic visualization software tools allow us to see the
state and behavior of objects. Both JPIE [23] and Greenfoot
[18] [24] are dynamic visualizing tools. Throughout years,
various experiments [25] have been carried out to test the
effectiveness of Greenfoot in teaching and learning of OOP.
Greenfoot still has many limitations which prevent novices to
self-learn. They desperately need assistance for complicated
classes [25]. Other educational software tools also have
brought out new features which have been contributing to the
ease of the learning process of OOP. Jeeroo is a multi
language tool and narrative tool [26]. However, scratch is not
multi language but is a narrative tool as well [27]. Jeeroo had
reduced withdrawal rate of programming class in the USA.
Students maintain a high interest in learning OOP with the
introduction of Jeeroo to them [28,32]. Baltie displays
components on the screens as the user develops his
proficiency skills (tiered language). For instance, for a novice
user, lesser components will be displayed compared to an
expert user. JHAVE displays pop-up questions and
instructions to guide the user throughout his learning process.
Therefore, this feature makes it a specialized output
realizations software tool type [26]. Raptor is a flow-model
software tool. [26]
III. ANALYSIS
A. Analysis of existing software tools
Alice [20, 21] being a 3D tool is good for visual
programming. However, 3D is seen to be strainful for the eyes
of the users. For a novice user, the first-time exposure should
be a 2d-image [29]. Upon the level of expertise of the user, the
option 3-D can be made available.
BlueJ being a simple software object-oriented teaching
tool still lacks both animated feedback (specialized output
realization features) and tiered-language features (displaying
components according to user expertise level). The same
improvements for both JPIE and Greenfoot would be
recommended as suggested for BlueJ. Baltie’s main strength is
that it allows users to learn concepts only at their proficiency
level. Unfortunately, baltie is not free. We need to purchase
the software to acquire its full version [30] [28]. JHave [26]