**5. Conclusion**

*Enhanced Expert Systems*

**Figure 4.**

*grades).*

*Dendrogram of solutions of a programming activity represented on normalized software metrics (without* 

*Dendrogram of solutions of a programming activity selected from a correction ranking (with grades).*

**64**

**Figure 6.**

**Figure 5.**

*Timeline with prediction of performance in programming.*

The system proposed in this chapter was presented as a relevant tool to assist teachers in their evaluation decisions, enabling them to assist the learning process of their students in each programming exercise.

For this, our system can recognize where the learning difficulties begin, monitor how students evolve along a course, generate rubric representation and, soon, predict future performances of programming students.

These possibilities of learning analysis contribute a lot to reducing teachers' efforts in the onerous task of evaluating programming exercises so that they can better track the learning process of students and reorient their formative actions.

Some future works from this research are using samples indicated for manual correction as training references of a semi-automatic programming evaluation system and improving our strategy to predict performances in activities from the timeline of solved programming exercises or from students' solutions that solved exercises similar to the one we intend to predict a grade.

Through this work we offer, therefore, a multidimensional and the clinical analysis tool to help teachers in their formative assessment actions and students to be better assisted in their difficulties and skills in the practice of programming.
