A distance learning approach to teaching eXtreme programming

As university-level distance learning programs become more and more popular, and software engineering courses incorporate eXtreme Programming (XP) into their curricula, certain challenges arise when teaching XP to students who are not physically co-located. In this paper, we present the results of a three-year study of such an online software engineering course targeted to graduate students, and describe some of the specific challenges faced, such as students' aversion to aspects of XP and difficulties in scheduling. We discuss our findings in terms of the course's educational objectives, and present suggestions to other educators who may face similar situations.

[1]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[2]  Mark Ratcliffe,et al.  Extreme programming promotes extreme learning? , 2005, ITiCSE '05.

[3]  Jens Krinke,et al.  Using Eclipse in distant teaching of software engineering , 2004, eclipse '04.

[4]  Richard E. Fairley,et al.  Essential elements of software engineering education , 1976, ICSE '76.

[5]  Daniela E. Damian,et al.  Instructional design and assessment strategies for teaching global software development: a framework , 2006, ICSE.

[6]  Lorraine Johnston,et al.  eXtreme programming at universities - an educational perspective , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[7]  Jon A. Preston,et al.  Offering CS1 on-line reducing campus resource demand while improving the learning environment , 2001, SIGCSE '01.

[8]  Charles E. McDowell,et al.  The impact of pair programming on student performance, perception and persistence , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[9]  Jennifer Preece,et al.  Computer science, home computing and distance learning—the largest computer science course in the world? , 1990, SIGCSE '90.

[10]  C. W. Liew,et al.  Teaching software development skills early in the Curriculum through software engineering , 2005, ITiCSE '05.

[11]  Abdullah Mohd Zin,et al.  Implementing virtual pair programming in e-learning environment , 2006 .

[12]  Allen E. Milewski,et al.  Distributed development: an education perspective on the global studio project , 2006, ICSE '06.

[13]  P. David Stotts,et al.  Virtual Teaming: Experiments and Experiences with Distributed Pair Programming , 2003, XP/Agile Universe.

[14]  Anthony I. Wasserman,et al.  A proposed curriculum for software engineering education , 1978, ICSE '78.

[15]  James E. Tomayko Teaching eXtreme Programming Remotely , 2005, 18th Conference on Software Engineering Education & Training (CSEET'05).

[16]  Brian Hanks,et al.  Student performance in CS1 with distributed pair programming , 2005, ITiCSE '05.

[17]  L. Williams,et al.  Towards increasing the compatibility of student pair programmers , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[18]  Brian Dorn,et al.  A statistical analysis of student performance in online computer science courses , 2004 .

[19]  M.J. Hawthorne,et al.  Software engineering education in the era of outsourcing, distributed development, and open source software: challenges and opportunities , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[20]  V. Pankratius,et al.  Information systems development at the Virtual Global University: an experience report , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[21]  Uri Dekel Supporting distributed software design meetings: what can we learn from co-located meetings? , 2005, ACM SIGSOFT Softw. Eng. Notes.

[22]  Stephen Edwards Can quality graduate software engineering courses really be delivered asynchronously on-line? , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[23]  C. Ghezzi,et al.  The challenges of software engineering education , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[24]  Dragutin Petkovic,et al.  Teaching practical software engineering and global software engineering: evaluation and comparison , 2006, ITICSE '06.