skip to main content
10.1145/1810295.1810448acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
tutorial

Software architecture and agile software development: a clash of two cultures?

Published:01 May 2010Publication History

ABSTRACT

Software architecture is taking a bad rap with the agilists---proponents of agile and lean software development approaches: "BUFD big up-front design", "YAGNI You Ain't Gonna Need It", "massive documentation", "smells of waterfall", it is pictured as a typical non-agile practice. However, certain classes of system, ignoring architectural issues too long "hit a wall" and collapse by lack of an architectural focus. 'Agile architecture': a paradox, an oxymoron, two totally incompatible approaches? In this tutorial, we examine the real issues at stake, beyond the rhetoric and posturing, and show that the two cultures can coexist and support each other, where appropriate. We define heuristics to scope how much architecture a project really needs, to assign actual value to an otherwise invisible architecture; and we review management and development practices that do work in the circumstances where some significant architectural effort is needed, when you are actually going to need it.

References

  1. Beck, K. 2000. Extreme Programming Explained: Embrace Change. Addison-Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Schwaber, K. and Beedle, M. 2002. Agile Software Development with SCRUM. Prentice-Hall. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Poppendieck, M. and Poppendieck, T. 2009. Implementing Lean Software Development--From Concept to Cash. Addison Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Stapleton, J. 1998. DSDM, Dynamic Systems Development Method: The Method in Practice. Addison-Wesley.Google ScholarGoogle Scholar
  5. Bass, L., Clements, P., and Kazman, R. 2003. Software Architecture in Practice. 2nd ed. Addison-Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. ISO/IEC 42010 CD1, 2010. Systems and software engineering---Architectural description, committee draft #1. (February 2010) ISO.Google ScholarGoogle Scholar
  7. Spencer-Oatey, H. 2000. Culturally Speaking: Managing Rapport through Talk across Cultures. Cassel.Google ScholarGoogle Scholar
  8. Kruchten, P. 2007. Voyage in the Agile Memeplex: Agility, Agilese, Agilitis, Agilology. ACM Queue. 5, 5 (July/August). 38--44. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Agile Alliance, 2000. Manifesto for Agile Software Development. Available at: http://agilemanifesto.org.Google ScholarGoogle Scholar
  10. Kruchten, P. 2003. The Rational Unified Process: An Introduction. 3rd ed. Addison-Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Fowler, M. 2003. Who needs an architect? IEEE Software. 20, 4 (July/August). 2--4. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Denne, M., and Cleland-Huang, J. 2004. The Incremental Funding Method: Data-Driven Software Development. IEEE Software. 21, 3. (May/June), 39--47. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. McConnell, S. 2007. Technical debt. Accessible at: http://blogs.construx.com/blogs/stevemcc/archive/2007/11/01/technical-debt-2.aspx.Google ScholarGoogle Scholar
  14. Wachowski, A. and Wachowski, L. (writers and directors) 2003. The Matrix Reloaded. Warner BrosGoogle ScholarGoogle Scholar

Index Terms

  1. Software architecture and agile software development: a clash of two cultures?

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in
          • Published in

            cover image ACM Conferences
            ICSE '10: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2
            May 2010
            554 pages
            ISBN:9781605587196
            DOI:10.1145/1810295

            Copyright © 2010 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 1 May 2010

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • tutorial

            Acceptance Rates

            Overall Acceptance Rate276of1,856submissions,15%

            Upcoming Conference

            ICSE 2025

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader