Traveling Architects – A New Way of Herding Cats

  • Aino Vonge Corry
  • Klaus Marius Hansen
  • David Svensson
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4214)

Abstract

Making software developers work towards a common goal may be likened to herding cats. If we further spread developers around the globe, we run increased risks of being unable to design and impose coherent software architectures on projects, potentially leading to lower quality of the resulting systems. Based on our experiences in a large, distributed research and development project, PalCom, we propose that employing techniques from active user involvement in general (and from participatory design in particular) may help in designing and sharing quality software architectures. In particular, we present the Traveling Architects technique in which a group of architects visit development locations in order to engage developers and end users in software architecture work. We argue that using techniques such as these may potentially lead to higher quality of software architectures in particular for systems developed in a distributed setting.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Barbacci, M.R., Ellison, R., Lattanze, A.J., Stafford, J.A., Weinstock, C.B., Wood, W.G.: Quality Attribute Workshops (QAWs). Technical Report CMU/SEI-2002-TR-019, 2nd edn. (2002)Google Scholar
  2. 2.
    Bardram, J.E., Christensen, H.B., Hansen, K.M.: Architectural Prototyping: An Approach for Grounding Architectural Design and Learning. In: Proceedings of the 4th Working IEEE/IFIP Conference on Software Architecture, Oslo, Norway, pp. 15–24 (2004)Google Scholar
  3. 3.
    Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison-Wesley, Reading (2003)Google Scholar
  4. 4.
    Beck, K.: Extreme Programming Explained: Embrace Change. Addison-Wesley, Reading (1999)Google Scholar
  5. 5.
    Blomberg, J., Suchman, L., Trigg, R.: Reflections on a work-oriented design project. In: Proceedings of PDC 1994, pp. 99–110 (1994)Google Scholar
  6. 6.
    Brooks, F.P.: The Mythical Man-Month: Essays on Software Engineering, 20th anniversary edn. Addison-Wesley, Reading (1995)Google Scholar
  7. 7.
    Christensen, M., Crabtree, A., Damm, C.H., Hansen, K.M., Lehrmann Madsen, O., Marqvardsen, P., Mogensen, P.E., Sandvad, E., Sloth, L., Thomsen, M.K.: The M.A.D. Experience: Multiperspective application development in evolutionary prototyping. In: Jul, E. (ed.) ECOOP 1998. LNCS, vol. 1445, pp. 13–40. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  8. 8.
    Coplien, J.O., Harrison, N.B.: Organizational Patterns of Agile Software Development. Prentice Hall, Englewood Cliffs (2004)Google Scholar
  9. 9.
    Damm, C.H., Hansen, K.M., Thomsen, M.K., Tyrsted, M.: Creative object-oriented modelling: Support for intuition, flexibility, and collaboration in CASE tools. In: Bertino, E. (ed.) ECOOP 2000. LNCS, vol. 1850, p. 27. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  10. 10.
  11. 11.
    Fowler, M.: The new methodology (2005), http://martinfowler.com/articles/newMethodology.html
  12. 12.
    Gornik, D.: IBM Rational Unified Process: Best practices for software development teams. Technical Report TP026B, Rev. 11/01, IBM (2001)Google Scholar
  13. 13.
    Greenbaum, J., Kyng, M.(eds.), Lawrence Erlbaum Associates, Mahwah (1991)Google Scholar
  14. 14.
    Hansen, K.M., Christensen, H.B.: Component Reengineering Workshops: A low-cost approach for assessing specific reengineering costs across product lines. In: Proceedings of the 8th European Conference on Software Maintenance and Reengineering (CSMR 2004), pp. 154–162. IEEE Press, Los Alamitos (2004)CrossRefGoogle Scholar
  15. 15.
    Kazman, R., Klein, M., Clements, P.: ATAM: Method for architecture evaluation. Technical Report CMU/SEI-2000-TR-004 (2000)Google Scholar
  16. 16.
    Kruchten, P.: The 4+1 view model of architecture. IEEE Software 12(6) (1995)Google Scholar
  17. 17.
    Meszaros, G.: Archi-Patterns. In: Proceedings of the conference on Pattern Languages of Programming, St.Louis (1997)Google Scholar
  18. 18.
    Mogensen, P., Trigg, R.: Using artefacts as triggers for participatory analysis. In: Muller, M., Kuhn, S., Meskill, J. (eds.) Proceedings of the Participatory Design Conference (PDC) 1992, pp. 55–62. CPSR (1992)Google Scholar
  19. 19.
    OMG. Unified Modeling Language specification 1.5. Technical Report formal, Object Management Group (March 1, 2003)Google Scholar
  20. 20.
    The PalCom Project, http://www.ist-palcom.org
  21. 21.
    PalCom. PalCom External Report 31: Deliverable 32 (2.2.1): PalCom Open Architecture – first complete version of basic architecture. Technical report, PalCom Project IST-002057 (December 2005)Google Scholar
  22. 22.
    Teasley, S., Covi, L., Krishnan, M.S., Olson, J.S.: How does radical collocation help a team succeed? In: CSCW 2000: Proceedings of the 2000 ACM conference on Computer supported cooperative work, pp. 339–346. ACM Press, New York (2000)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Aino Vonge Corry
    • 1
  • Klaus Marius Hansen
    • 1
  • David Svensson
    • 2
  1. 1.Department of Computer ScienceUniversity of AarhusAarhus M
  2. 2.Department of Computer ScienceLund University, The PalCom ProjectLundSweden

Personalised recommendations