Novice learners will be able to create inherited (parentchild)
class-relationship between class-diagrams, define
methods and variables of each class. Tutorials can be in the
form of text and images. These tutorials should be part of the
software to be built. Furthermore, the user should be given the
choice to choose between narrative style tutorials or some
other types of tutorials. The users will be allowed to play
around graphically with the class-diagrams while following
these tutorials. Upon creation/modification of each classdiagram
and their respective relationship with other classes,
real programming code will be generated in the back-end of
the software tool. The user will ultimately have an option
where he can view and modify these codes in real-time. If
name or method or variable of a class is to be changed in the
code, this change will be reflected on the class-diagram. This
is often known as static visualization. If a user wishes to move
to another level of proficiency, he will have to click on the
“change level button” as shown in the following figure 7.
Upon clicking on the “change level button”, the learner will be
asked to answer a set of questions. The latter will allow the
software application to assess the user. In this way, if the user
fails the test, the application will not allow the user to proceed
to further topics.
The following figure illustrates one of the e-assessment
questions to test the user knowledge before allowing him to go
to the next level: