Extreme Programming (XP) is an emerging agile, lightweight development methodology. The practices and philosophies of XP challenge the software development methodologies used in industry today and those we have been teaching. As a result, as educators we must examine the educational implications of XP to determine which of these practices and methodologies we should teach and how we should go about teaching them. This tutorial will introduce faculty and industrial trainers to XP practices and philosophy. It will also give them classroom materials and activities that they can use to introduce XP practices to their students.
We will introduce XP concepts, practices, and philosophy. Through a structured exercise called an Extreme Hour we will demonstrate the practices and give attendees an exercise that they can use themselves in the classroom. In addition, Williams will present her work with pair programming; workshop participants will participate in an exercise for introducing pair programming in the classroom. Bergin will discuss pervasive pair learning. The research possibilities of XP will also be discussed. Some of the techniques suggested can be used effectively with first year students.
Therefore, attendees will have a good understanding of XP, its implications, and how to use it in the classroom, and will have two or more classroom exercises they can use to introduce the ideas.
Educators and trainers interested in Extreme Programming, especially those who teach Software Engineering or IS and/or who are interested in introducing simple SE principles into the first courses. No prior preparation is needed. The exercises can also be used to effect in industrial settings.
One third will be lecture format. One third will be an active learning activity around the planning game, and one third will be an active learning exercise around paired work. Overhead Projector/ Computer projector or LCD panel required for the lecture portion.
Tutorial Length: Half day
Remarks: Bergin and Williams presented something similar at SIGCSE 2002. Bergin has done the Extreme Hour at XP Universe 2001 and in the classroom.
Joe Bergin has 30 years experience in teaching and more than 15 with object
technology. He has recently given several Extreme Hours at conferences and in
the class room. His students use various forms of XP experimentally to test
the edges of the do-able. He has been an advocate capturing of good pedagogy
for many years as a member of the Pedagogical Patterns community. Active learning
and team based (collaborative) approaches are central to his pedagogy. He has
presented workshops recently at OOPSLA 2001, Extreme Universe 2001, and SIGCSE
2002. He is currently the Working Group coordinator for the ITiCSE 2002 conference
of ACM in Aarhus, Denmark.
Laurie Williams is an assistant professor at North Carolina State University. Her research areas focus on software engineering and include pair programming, software methodology, experimental software engineering, and testing. She is particularly interested in software engineering best practices for eCommerce and other entrepreneurial organizations. From 1984 - 1993, Laurie worked at IBM in Raleigh, North Carolina. She is one of the founders of the first North American conferences on agile methodologies, XP Universe and Agile Universe.