skills. In order to help the student, the system could
provide immediate feedback by showing him
additional learning material.
Hanks (2007) conducted a study of problems that
novice pair programmers encounter. Most of the
problems reported were syntax errors and trivial
mechanical problems (e.g. missing semicolons).
Another study reported that when students got stuck,
they used their book, the Java API or Google to look
for assistance (Hanks and Brandt, 2009). Systems
for DPP need to incorporate adaptive feedback
features in order to cover students’ needs. Retrieving
respective course material or providing relevant
examples could be beneficial for students who face
difficulties or don’t know how to proceed. Current
systems for DPP do not incorporate such features.
Conclusively, none of the systems we’ve tested
did contain a student profile with an underlying
student model in order to keep track of student’s
interactions and collaboration history.
When applied in educational settings, DPP aims
to improve students’ performance and enhance the
learning experience. For this reason we propose to
incorporate the suggested collaboration support in an
Adaptive System for Collaborative Learning
(ASCL). Students’ interaction data, their
contributions and their skills acquisition could be
stored in a student profile inside the ASCL. When
adaptive feedback is provided, course material or
additional resources could be immediately retrieved
from course’s site. Teachers could also benefit from
such an implementation. Collective data about their
students would be available and they could try out
different group formation strategies depending on
student’s profile and collaboration history.
Furthermore, some social interaction features could
be embedded, like displaying which classmates are
online or which group has already completed an
assignment. Thus, students that face difficulties,
even after adaptive feedback, could seek assistance
from their classmates.
4 CONCLUSIONS
In this paper we examined whether current DPP
systems eliminate known issues of PP and if they
address common problems encountered by novice
pair programmers. We found out that none of the
available DPP tools incorporates such features.
Based on our findings we proposed new features that
should be embedded in DPP systems in order to
support PP in education.
We noticed that most DPP tools are plugins for
the Eclipse IDE and contain similar functionalities.
Although they cover the basic requirements for pair
programming, none of them keeps log files of
students’ interactions or provide adaptive feedback.
In order to support students’ collaboration we
propose that systems should integrate a student
model, store collaboration data and provide
computer mediated adaptive assistance. An Adaptive
System for Collaborative Learning seems more
convenient for this purpose instead of using an IDE.
Furthermore, novice programmers could benefit
from such an implementation both from pair
programming and from adaptive collaboration
support. We aim to investigate this issue in the near
future.
REFERENCES
Benaya, T., Zur, E., 2006. Collaborative Programming in
an Advanced Programming Workshop Conducted in a
Distance Learning Environment, Methods, Materials
and Tools for Programming Education, 48-55.
Boyer, K. E., Dwight, A. A., Fondren, R. T., Vouk, M. A.,
Lester, J. C., 2008. A Development Environment for
Distributed Synchronous Collaborative Programming,
In Proceedings of the 13th annual conference on
Innovation and technology in computer science
education, ACM, New York, NY, USA, 158-162.
Cockburn, A., Williams, L., 2001. The costs and benefits
of pair programming. In Extreme programming
examined, Giancarlo Succi and Michele Marchesi
(Eds.). Addison-Wesley Longman Publishing Co.,
Inc., Boston, MA, USA 223-243.
Cross, J. H. I. I., Hendrix, T. D., Barowski, L. A., 2002.
Using the debugger as an integral part of teaching
CS1, Frontiers in Education, 2002. FIE 2002. 32nd
Annual, vol.2, no., pp. F1G-1- F1G-6 vol.2, 6-9 Nov.
2002.
Diziol, D., Walker, E., Rummel, N., Koedinger, K. R.,
2010. Using intelligent tutor technology to implement
adaptive support for student collaboration.
Educational Psychology Review.
Duque, R., Bravo, C., 2008. Analyzing Work Productivity
and Program Quality in Collaborative Programming.
In Proceedings of the 2008 The Third International
Conference on Software Engineering Advances
(ICSEA '08). IEEE Computer Society, Washington,
DC, USA, 270-276.
Granville, K., Hickey, T. J., 2005. The design,
implementation, and application of the grewpEdit tool.
Proceedings of the 2005 conference on Diversity in
computing, Albuquerque, New Mexico, USA.
Gries, P., Mnih, V., Taylor, J., Wilson, G., Zamparo, L.,
2005. Memview: a pedagogically-motivated visual
debugger. Frontiers in Education,2005 FIE '05.
ENHANCING ADAPTIVITY AND INTELLIGENT TUTORING IN DISTRIBUTED PAIR PROGRAMMING
SYSTEMS TO SUPPORT NOVICE PROGRAMMERS
343