XP/Agile Universe 2002: Extreme Programming and Agile Methods — XP/Agile Universe 2002 pp 89-99 | Cite as
Extreme Programming in a Research Environment
Abstract
This article explores the applicability of Extreme Programming in a scientific research context. The cultural environment at a government research center differs from the customer-centric business view. The chief theoretical difficulty lies in defining the customer to developer relationship. Specifically, can Extreme Programming be utilized when the developer and customer are the same person? Eight of Extreme Programming’s 12 practices are perceived to be incompatible with the existing research culture. Further, six of the nine “environments that I know don’t do well with XP” [Beck, 2000] apply. A pilot project explores the use of Extreme Programming in scientific research. The applicability issues are addressed and it is concluded that Extreme Programming can function successfully in situations for which it appears to be ill-suited. A strong discipline for mentally separating the customer and developer roles is found to be key for applying Extreme Programming in a field that lacks a clear distinction between the customer and the developer.
Keywords
XP extreme programming customer scientific application testing research software development processPreview
Unable to display preview. Download preview PDF.
References
- 1.Beck, K.: Extreme Programming Explained: Embrace Change. Addison-Wesley (2000)Google Scholar
- 2.Workforce Compensation and Performance Service: Research grade evaluation guide. Transmittal Sheet TS-23, Office of Personel Management, Washington, DC (1976) Also available as http://www.opm.gov/fedclass/gsresch.pdf.Google Scholar
- 3.Alexander, C., Ishikawa, S., Silverstein, M.: A Pattern Language: Towns · Buildings · Construction. Center for Environmental Structure. Oxford University Press (1977)Google Scholar
- 4.Beck, K., Fowler, M.: Planning Extreme Programming. XP. Addison-Wesley (2001)Google Scholar
- 5.Jeffries, R., Anderson, A., Hendrickson, C.: Extreme Programming Installed. XP. Addison-Wesley (2001)Google Scholar
- 6.Succi, G., Marchesi, M., eds.: Extreme Programming Examined. XP. Addison-Wesley (2001)Google Scholar
- 7.Newkirk, J., Martin, R.C.: Extreme Programming in Practice. XP. Addison-Wesley (2001)Google Scholar
- 8.Wake, W.C.: Extreme Programming Explored. XP. Addison-Wesley (2002)Google Scholar
- 9.Auer, K., Miller, R.: Extreme Programming Applied: Playing to Win. XP. Addison-Wesley (2002)Google Scholar
- 10.Fowler, M.: Refactoring: Improving the Design of Existing Code. Addison-Wesley (1999)Google Scholar
- 11.Yourdon, E.: Death March: Managing “Mission Impossible” Projects. Prentice-Hall (1997)Google Scholar
- 12.Brooks, Jr., F.P.: The Mythical Man-Month: Essays on Software Engineering. Anniversary edn. Addison-Wesley (1995)Google Scholar
- 13.Kernighan, B.W., Pike, R.: The Practice of Programming. Addison-Wesley (1999)Google Scholar
- 14.Cockburn, A.: Surviving Object-Oriented Projects. Addison-Wesley (1998)Google Scholar
- 15.Fowler, M.: UML Distilled: A Brief Guide to the Standard Object Modeling Language. Object Technology. Addison-Wesley (2000)Google Scholar
- 16.Booch, G.: Object Solutions: Managing the Object-Oriented Project. Object-Oriented Software Engineering. Addison-Wesley (1996)Google Scholar
- 17.Booch, G.: Object Oriented Design with Applications. Ada and Software Engineering. Benjamin/Cummings (1991)Google Scholar
- 18.Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Resuable Object-Oriented Software. Professional Computing. Addison-Wesley (1994)Google Scholar
- 19.Meyer, B.: Object-Oriented Software Construction. 2nd edn. Prentice-Hall (1997)Google Scholar
- 20.Hunt, A., Thomas, D.: Pragmatic Programmer: From Journeyman to Master. Addison-Wesley (1999)Google Scholar
- 21.DeMarco, T., Lister, T.R.: Peopleware: Productive Projects and Teams. 2nd edn. Dorset House (1999)Google Scholar
- 22.Highsmith, III, J.A.: Adaptive Software Development: A Collaborative Approach to Managing Complex Systems. Dorset House (2000)Google Scholar
- 23.Machiavelli, N.: The Prince. Bantam classic edn. Bantam Books (1513)Google Scholar
- 24.Gabriel, R.P., Goldman, R.: Mob software: The erotic life of code. http://oopsla.acm.org/oopsla2k/postconf/Gabriel.pdf (2000) ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA).
- 25.
- 26.http://www.xprogramming.com/ (2000)
- 27.
- 28.Matsumoto, Y.: Ruby in a Nutshell: A Desktop Quick Reference. O’Reilly & Associates (2002)Google Scholar
- 29.Thomas, D., Hunt, A.: Programming Ruby: The Pragmatic Programmer’s Guide. Addison-Wesley (2001)Google Scholar
- 30.Kleb, W.L., Wood, W.A., van Leer, B.: Efficient multi-stage time marching for viscous flows via local preconditioning. AIAA Paper 99-3267 (1999)Google Scholar
- 31.Kleb, W.L.: Optimizing Runge-Kutta Schemes for Viscous Flow. PhD thesis, University of Michigan (2003) In preparation.Google Scholar
- 32.Goldratt, E.M., Cox, J.: The Goal: A Process of Ongoing Improvement. 2nd edn. North River Press (1992)Google Scholar