Skip to main content

Developer Stories: Improving Architecture in Agile Practice

How Facilitating Knowledge Management and Putting the Customer in the Drivers Seat Enables Sound Architectural Design

  • Conference paper
  • 554 Accesses

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 22))

Abstract

Within the field of Software Engineering emergence of agile methods has been a hot topic since the late 90s. eXtreme Programming (XP) ([1]) was one of the first agile methods and is one of the most well-known. However research has pointed to weaknesses in XP regarding supporting development of viable architectures. To strengthen XP in this regard a new practice: Developer Stories ([2]) was introduced in 2006 - mainly based on a theoretical argumentation.

This paper reports from extensive experimentation with, and elaboration of the new practice. Results from this experimentation shows that using Developer Stories increases the likelihood of developing a viable architecture through a series of deliberate choices, through creating disciplined and recurring activities that: 1) Facilitate sharing and embodying of knowledge about architectural issues, and 2) heighten visibility of refactorings for both customers and developers.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Beck, K.: Embracing change with extreme programming. Computer 32(10), 70–77 (1999)

    Article  Google Scholar 

  2. Jensen, R.N., Møller, T., Sönder, P., Tjørnehøj, G.: Architecture and Design in eXtreme Programming; introducing Developer Stories. In: Abrahamsson, P., Marchesi, M., Succi, G. (eds.) XP 2006. LNCS, vol. 4044, pp. 133–142. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  3. Beck, K., Beedle, M., van Bennekum, A., Cockburn, A., Cunningham, W., Fowler, M., Grenning, J., Highsmith, J., Hunt, A., Jeffries, R., Kern, J., Marick, B., Martin, R.C., Mellor, S., Schwaber, K., Sutherland, J., Thomas, D.: Manifesto for agile software development (2001), http://agilemanifesto.org

  4. Beck, K.: Extreme Programming Explained: Embrace Change. Addison-Wesley, Reading (2000)

    Google Scholar 

  5. Beck, K.: Extreme Programming Explained: Embrace Change, 2nd edn. Addison-Wesley, Reading (2004)

    Google Scholar 

  6. Fowler, M.: Design: Reducing coupling. IEEE Software 18(4), 102–104 (2001)

    Article  MathSciNet  Google Scholar 

  7. Lippert, M., Schmolitzky, A., Züllighoven, H.: Metaphor design spaces. In: Marchesi, M., Succi, G. (eds.) XP 2003. LNCS, vol. 2675, pp. 33–40. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  8. West, D.D., Solano, M.: Metaphors be with you. In: Agile2005 (July 2005)

    Google Scholar 

  9. Eberlein, A., do Prato Leite, J.C.S.: Agile requirements definition: A view from requirements engineering. In: TCRE 2002 (September 2002), http://www.enel.ucalgary.ca/tcre02/

  10. 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 

  11. 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)

    Chapter  Google Scholar 

  12. Cockburn, A.: Agile Software Development, The Cooperative Game. Pearson Education, Inc., London (2006)

    Google Scholar 

  13. Fowler, M.: Who needs an architect? IEEE Software 20(5), 11–13 (2003)

    Article  Google Scholar 

  14. Galliers, R.D., Land, F.F.: Viewpoint - choosing appropriate information systems research methodologies. Communications of the ACM 30(11), 900–902 (1987)

    Article  Google Scholar 

  15. Software, H.: Structure101 (accessed 29. December 2006), http://www.headwaysoftware.com/products/structure101/

  16. Guindon, R.: Designing the design process: Exploiting opportunistic thoughts. Human-Computer Interaction 5, 305–344 (1990)

    Article  Google Scholar 

  17. Fowler, M.: Is design dead (2004), http://martinfowler.com/articles/designDead.html

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Jensen, R.N., Platz, N., Tjørnehøj, G. (2008). Developer Stories: Improving Architecture in Agile Practice. In: Filipe, J., Shishkov, B., Helfert, M., Maciaszek, L.A. (eds) Software and Data Technologies. ICSOFT ENASE 2007 2007. Communications in Computer and Information Science, vol 22. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-88655-6_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-88655-6_13

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-88654-9

  • Online ISBN: 978-3-540-88655-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics