Architecture and Design in eXtreme Programming; Introducing “Developer Stories”

  • Rolf Njor Jensen
  • Thomas Møller
  • Peter Sönder
  • Gitte Tjørnehøj
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4044)


This article introduces a new practice to eXtreme Programming (XP): Developer stories. The goal of these stories and their creation process is to incorporate architectural planning to XP thus ensuring a viable architecture. By conducting a small development project using XP, we find that establishing a viable architecture might be problematic. Arguing that architectural quality criteria in XP are traceable to traditional criteria, and by pointing to related work regarding incremental continous design, requirements management and large-scale refactorings, we find support for this claim. We proceed by describing the new practice ensuring that it embraces the values, and supports existing practices of XP.


Requirement Engineering Development Team Writing Process User Story Agile Method 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Beck, K.: Extreme Programming Explained: Embrace Change, 2nd edn. Addison-Wesley, Reading (2004)Google Scholar
  2. 2.
    Fowler, M.: Is design dead (2004),
  3. 3.
    Larman, C.: Applying UML and Patterns, 3rd edn. Prentice-Hall, Englewood Cliffs (2004)Google Scholar
  4. 4.
    Shore, J.: Continuous design. Software, IEEE 21(1), 20–22 (2004)CrossRefMathSciNetGoogle Scholar
  5. 5.
    Fowler, M.: Who needs an architect? IEEE Software 20(5), 11–13 (2003)CrossRefGoogle Scholar
  6. 6.
    Alexander, C.: Notes On The Synthesis Of Form. President and Fellows of Harvard College (1994)Google Scholar
  7. 7.
    Gilb, T.: Software Metrics, USA edn. Winthrop Publishers Inc. (1988)Google Scholar
  8. 8.
    Fowler, M.: Design: Reducing coupling. IEEE Software 18(4), 102–104 (2001)CrossRefMathSciNetGoogle Scholar
  9. 9.
    Beck, K.: Embracing change with extreme programming. Computer 32(10), 70–77 (1999)CrossRefGoogle Scholar
  10. 10.
    Beck, K.: Extreme Programming Explained: Embrace Change. Addison-Wesley, Reading (2000)Google Scholar
  11. 11.
    Lippert, M., Axel, Schmolitzky, Züllighoven, H.: Metaphor design spaces. In: Marchesi, M., Succi, G. (eds.) XP 2003. LNCS, vol. 2675, pp. 33–40. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  12. 12.
    West, D.D., Solano, M.: Metaphors be with you! In: Agile 2005 (2005)Google Scholar
  13. 13.
    Eberlein, A., do Prato Leite, J.C.S.: Agile requirements definition: A view from requirements engineering. In: TCRE 2002 (2000),
  14. 14.
    Paetsch, F., Eberlein, A., Maurer, F.: Requirements engineering and agile software development. In: Twelfth International Workshop on Enabling Technologies: Infrastructure for Collaborative Enterprises, p. 308 (2003)Google Scholar
  15. 15.
    Fowler, M.: Refactoring. Addison-Wesley, Reading (1999)Google Scholar
  16. 16.
    Lippert, M.: Towards a proper integration of large refactorings in agile software development. In: Eckstein, J., Baumeister, H. (eds.) XP 2004. LNCS, vol. 3092, pp. 113–122. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  17. 17.
    Robinson, H., Sharp, H.: Xp culture: Why the twelve practises both are and are not the most significant thing. In: Proccedings of the Agile Development Conference (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Rolf Njor Jensen
    • 1
  • Thomas Møller
    • 1
  • Peter Sönder
    • 1
  • Gitte Tjørnehøj
    • 1
  1. 1.Department of Computer ScienceAalborg UniversityAalborg ØDenmark

Personalised recommendations