Extreme Programming Applied -
practical experiences of a distributed research team
|
(last update: 28th March 2002.)
|
Note: Final version of my thesis (pdf) is available.
Abstract:
Extreme Programming (XP) is a radical approach to software development in many senses. While focusing on four basic values simplicity, communication, feedback, and courage, XP claims to easily cope with dynamic software requirements and even urges the project team to embrace change. This seems like a revolution and thus expectations are high.
In this thesis I report a case study of the Scuttlebutt research team which used XP to build a usable software prototype. Characteristics of the Scuttlebutt project such as distributed teams and research environment are not covered by XP and forced the project team to adapt XP to fit their needs. Do the team's adaptations to XP preserve the positive impacts of XP on software development?
Although designed for co-located teams building bespoken software, XP still improves the development of research prototypes even when the team is distributed. This thesis shows how XP improved the work of the Scuttlebutt project team and what adaptations the team had to make to XP for it to fit their situation.
|
|
|
|
|
|
Structure:
thesis:
- Classic XP: Plan
- Characteristics of Scuttlebuttwork: Issues
- Extentions to XP: Solution
hint:
- Introduction: TTWYGTTT (Tell them what you are going to tell them)
- Middle: TT (Tell them)
- Summary/Conclusion: TTWYTT (Tell them what you told them)
|
|
|
|
Chapters:
- Chapter 1 Introduction
What is this thesis about?
- Chapter 2 Software methodologies
History
Why software methodologies?
What is a software methodology?
- Chapter 3 XP explained
History
Four fundamental values
Practices: Pair programming, planning game, on-site customer, etc.
Roles
Artifacts
Limitations
- Chapter 4 Research Project Scuttlebutt
Characteristics of the Scuttlebutt project:
e.g. distributed team, people, programming environment
- Chapter 5 Extentions to XP
New roles and practices
- Chapter 6 XP experience
Report of the team's experiences with XP and their own extensions. (Includes a review of the Python programming language)
- Chapter 7 Future Work
Ideas for future research.
- Chapter 8 Conclusion
Summary of the thesis that concludes with the essential results.
- Appendix
A Setting
B XP programming day
C Supportive Tools: Wiki, Tickertape
D Questionnaire
|
|
|
|
Time Schedule:
17.12.01 - 21.12.01: Chapter: Introduction, Introduction to XP.
22.12.01 - 15.01.02: Vacation
16.01.02 - 18.01.02: Chapter: Outline for each chapter
21.01.02 - 25.01.02: Chapter: XP explained
28.01.02 - 01.02.02: Chapter: Social Aspects of XP
04.02.02 - 08.02.02: Chapter: Software methodologies, Research Project Scuttlebutt
11.02.02 - 15.02.02: Chapter: Research Project Scuttlebutt, Python and XP
18.02.02 - 22.02.02: Chapter: Supportive Tools, Future work
25.02.02 - 01.03.02: Revision of chapters Software Methodologies,
XP explained, Research Project Scuttlebutt
04.03.02 - 08.03.02: Improvement of chapters Python and XP, future work
11.03.02 - 15.03.02: Refinements
18.03.02 - 22.03.02: Preparation of thesis draft
25.03.02 - 29.03.02: Preparation of final version
|
|