Agile Software Development in Virtual Collaboration Environments

Chapter
Part of the Understanding Innovation book series (UNDINNO)

Abstract

Agile processes are gaining popularity in the software engineering community. We investigate how selected design practices and the mind-set they are based on can be integrated into Agile software development processes to make them even stronger. In a first step, we compared Agile methodologies with interaction and product design methodologies and discovered that both fields have much in common with respect to their underlying principles and values. Based on our findings and by applying both methodologies, we improved collaboration support for geographically-dispersed software development teams. We designed and implemented ProjectTalk and CodeTalk as part of our XP-Forums platform. Independently of their geographical location, team members can create and maintain user stories with ProjectTalk. CodeTalk enables team members to efficiently communicate their concerns regarding development artifacts in an informal manner.

References

  1. 1.
    Agile Alliance. Manifesto for Agile Software Development. http://agilemanifesto.org/, 2001
  2. 2.
    K. Beck. Extreme Programming Explained: Embrace Change. ISBN 0201616416. Addison-Wesley, MA, 1999Google Scholar
  3. 3.
    K. Beck and C. Andres. Extreme Programming Explained: Embrace Change, 2nd edition. Addison-Wesley Longman, CA, 2004Google Scholar
  4. 4.
    R. Buchanan. Wicked Problems in Design Thinking. Design Issues, 8(2):5–21, 1992CrossRefGoogle Scholar
  5. 5.
    P. DeGrace and L. Hulet Stahl. Wicked Problems, Righteous Solutions. Yourdon Press, NJ, 1990Google Scholar
  6. 6.
    C.L. Dym, A.M. Agogino, O. Eris, D.D. Frey, and L.J. Leifer. Engineering Design Thinking, Teaching, and Learning. IEEE Engineering Management Review, 34(1):65–92, 2006CrossRefGoogle Scholar
  7. 7.
    J. Ferreira, J. Noble, and R. Biddle. Agile Development Iterations and UI Design. In AGILE ’07: Proceedings of the AGILE 2007, pages 50–58. IEEE Computer Society, Washington, DC, USA, 2007Google Scholar
  8. 8.
    M. Fowler and K. Beck. Refactoring: Improving the Design of Existing Code. Addison-Wesley Professional, MA, 1999Google Scholar
  9. 9.
    D. Fox, J. Sillito, and F. Maurer. Agile Methods and User-Centered Design: How These Two Methodologies are Being Successfully Integrated in Industry. In AGILE ’08: Proceedings of the Agile 2008, pages 63–72. IEEE Computer Society, Washington, DC, USA, 2008Google Scholar
  10. 10.
    E. Horvitz, C. Kadie, T. Paek, and D. Hovel. Models of Attention in Computing and Communication: From Principles to Applications. Communications of the ACM, 46(3):52–59, 2003CrossRefGoogle Scholar
  11. 11.
    D. Ingalls, T. Kaehler, J. Maloney, S. Wallace, and A. Kay. Back to the Future: The Story of Squeak, a Practical Smalltalk Written in Itself. In OOPSLA ’97: Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, pages 318–326. ACM, NY, USA, 1997Google Scholar
  12. 12.
    T. Kelley and J. Littman. The Art of Innovation. HarperCollinsBusiness, NY, 2001Google Scholar
  13. 13.
    S. Ken. Agile Program Management with Scrum. Microsoft Press, WA, 2004Google Scholar
  14. 14.
    C. Larman and V.R. Basili. Iterative and Incremental Development: A Brief History. Computer, 36(6):47–56, 2003CrossRefGoogle Scholar
  15. 15.
    J. Löwgren and E. Stolterman. Thoughtful Interaction Design. MIT, MA, 2004Google Scholar
  16. 16.
    J.H. Maloney and R.B. Smith. Directness and Liveness in the Morphic User Interface Construction Environment. In UIST ’95: Proceedings of the 8th annual ACM symposium on User interface and software technology, pages 21–28. ACM, NY, USA, 1995Google Scholar
  17. 17.
    G. Meszaros and J. Aston. Adding Usability Testing to an Agile Project. In AGILE ’06: Proceedings of the conference on AGILE 2006, pages 289–294. IEEE Computer Society, Washington, DC, USA, 2006Google Scholar
  18. 18.
    P.W. Oman and C.R. Cook. Typographic Style is More Than Cosmetic. Communications of the ACM, 33(5):506–520, 1990CrossRefGoogle Scholar
  19. 19.
    J. Patton. Hitting the Target: Adding Interaction Design to Agile Software Development. In OOPSLA ’02: OOPSLA 2002 Practitioners Reports, pages 1–ff. ACM, NY, USA, 2002Google Scholar
  20. 20.
    K. Pohl. Requirements Engineering: Grundlagen, Prinzipien, Techniken. dpunkt, Heidelberg, 2007Google Scholar
  21. 21.
    H.W.J. Rittel and M.M. Webber. Dilemmas in a General Theory of Planning. Policy sciences, 4(2):155–169, 1973CrossRefGoogle Scholar
  22. 22.
    T.M. Shaft and I. Vessey. The Relevance of Application Domain Knowledge: Characterizing the Computer Program Comprehension Process. Journal of Management Information Systems, 15(1):78, 1998Google Scholar
  23. 23.
    I. Sommerville. Software Engineering, 5th edition. Addison Wesley Longman, CA, 1995Google Scholar
  24. 24.
    B. Steinert, M. Grünewald, St. Richter, J. Lincke, and R. Hirschfeld. Multi-user Multi-account Interaction in Groupware Supporting Single-Display Collaboration. In Proceedings of the 5th International Conference on Collaborative Computing: Networking, Applications and Worksharing (CollaborateCom 2009). IEEE Computer Society, Washington, DC, USA, 2009Google Scholar
  25. 25.
    B. Steinert, M. Taeumel, J. Lincke, T. Pape, and R. Hirschfeld. CodeTalk – Conversations About Code. In Proceedings of the 8th International Conference on Creating, Connecting and Collaborating through Computing (C5 2010). IEEE, La Jolla CA, USA, January 2010Google Scholar
  26. 26.
    J. Stewart, B.B. Bederson, and A. Druin. Single Display Groupware: A Model for Co-present Collaboration. In CHI ’99: Proceedings of the SIGCHI conference on Human factors in computing systems, pages 286–293. ACM, NY, USA, 1999Google Scholar
  27. 27.
    D. Sy. Adapting Usability Investigations for Agile User-centered Design. Journal of usability Studies, 2(3):112–132, 2007Google Scholar
  28. 28.
    E. Tse and S. Greenberg. Rapidly Prototyping Single Display Groupware Through the SDGToolkit. In AUIC ’04: Proceedings of the 5th conference on Australasian user interface, pages 101–110. Australian Computer Society, Darlinghurst, Australia, 2004Google Scholar
  29. 29.
    A. Von Mayrhauser and A.M. Vans. Program Comprehension During Software Maintenance and Evolution. Computer, 28(8):44–55, 1995CrossRefGoogle Scholar
  30. 30.
    G. Wallace, P. Bi, K. Li, and O. Anshus. A Multi-cursor X Window Manager Supporting Control Room Collaboration. Technical report, Princeton University, Computer Science, Technical Report TR-707-04, 2004Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Robert Hirschfeld
    • 1
  • Bastian Steinert
    • 1
  • Jens Lincke
    • 1
  1. 1.Software Architecture Group, Hasso-Plattner-InstituteUniversity of PotsdamPotsdamGermany

Personalised recommendations