Abstract
Systems and software development is a collaborative activity and agile software development epitomises collaboration by formalising how teams and their customers work together to develop a software product. Collaboration is achieved, in part, using mechanisms for coordinating interdependent work. Coordination is defined as the managing of dependencies and this study explores the nature of dependencies in software development projects. Firstly, this study extends an existing taxonomy of dependencies based on evidence from agile projects by showing that three agile and one non-agile project show the same pattern of dependencies. Secondly, this study finds that knowledge dependencies are the most frequently occurring dependencies in these small co-located software projects. The key contribution of this research is a better understanding of the dependencies in software development projects. Understanding dependencies can lead to more informed selection of coordination mechanisms, and ultimately more effective collaboration.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Mistrik, I., Grundy, J., van der Hoek, A., Whitehead, J.: Collaborative software engineering: Challenges and prospects. In: Mistrick, I., Grundy, J., van der Hoek, A., Whitehead, J. (eds.) Collaborative Software Engineering, pp. 389–404. Springer, Heidelberg (2010)
Sharp, H., Robinson, H.: Three ‘C’s of agile practice: collaboration, co-ordination and communication. In: Dingsoyr, T., Dyba, T., Moe, N.B. (eds.) Agile Software Development: Current Research and Future Directions. Springer, Heidelberg (2010)
Agile manifesto, http://www.agilemanifesto.org
Strode, D.E., Huff, S.L., Hope, B., Link, S.: Coordination in co-located agile software development projects. The Journal of Systems and Software 85, 1222–1238 (2012)
Malone, T.W., Crowston, K.: The interdisciplinary study of coordination. ACM Computing Surveys 26, 87–119 (1994)
Strode, D.E., Huff, S.L.: A taxonomy of dependencies in agile software development. In: Proceedings of the Australasian Conference on Information Systems ACIS Geelong, Victoria, Australia, pp. 1–10. Deakin Research Online (2012)
Conboy, K., Fitzgerald, B.: The views of experts on the current state of agile method tailoring. In: McMaster, T., Wastell, D., Ferneley, E., DeGross, J. (eds.) Organizational Dynamics of Technology-Based Innovation: Diversifying the Research Agenda. IFIP, vol. 235, pp. 217–234. Springer, Boston (2007)
Fitzgerald, B., Hartnett, G., Conboy, K.: Customising agile methods to software practices at Intel Shannon. European Journal of Information Systems 15, 200–213 (2006)
Avison, D., Fitzgerald, G.: Methodologies for developing information systems: A historical perspective. In: Avison, D., Elliot, S., Krogstie, J., Pries-Heje, J. (eds.) The Past and Future of Information Systems: 1976-2006 and Beyond. IFIP, vol. 214, pp. 27–38. Springer, Boston (2006)
Dyba, T., Dingsoyr, T.: Empirical studies of agile software development: A systematic review. Information and Software Technology 50, 833–859 (2008)
West, D., Grant, T.: Agile development: Mainstream adoption has changed agility, pp. 1–20. Forrester Research Inc. (2010)
Abrahamsson, P., Warsta, J., Siponen, M.K., Ronkainen, J.: New directions on agile methods: A comparative analysis. In: Proceedings of the 25th International Conference on Software Engineering, ICSE 2003, pp. 244–254. IEEE Computer Society, Washington, DC (2003)
Conboy, K.: Agility from first principles: reconstructing the concept of agility in information systems development. Information Systems Research 20, 329–354 (2009)
Beck, K.: Extreme Programming Explained: Embrace Change. Addison-Wesley, Boston (2000)
Schwaber, K., Beedle, M.: Agile Software Development with Scrum. Prentice Hall, Upper Saddle River (2002)
Dingsoyr, T., Nerur, S., Balijepally, V., Moe, N.: A decade of agile methodologies: Towards explaining agile software development. The Journal of Systems and Software 85 (2012)
Staudenmayer, N.: Interdependency: Conceptual, practical, and empirical issues. Massachusetts Institute of Technology, Sloan working paper 3971, WP 162-97 (1997)
Kerzner, H.: Project Management: A Systems Approach to Planning, Scheduling, and Controlling. John Wiley & Sons, Hoboken (2003)
Grinter, R.E.: Understanding dependencies: A study of the coordination challenges in software development, PhD. Information and Computer Science. University of California, Irvine (1996)
Malone, T.W., Crowston, K., Lee, J., Pentland, B., Dellarocas, C., Wyner, G., Qimby, J., Osborn, C.S., Bernstein, A., Herman, G., Klein, M., O’Donnell, E.: Tools for inventing organizations: toward a handbook of organizational processes. Management Science 45, 425–443 (1999)
Herbsleb, J.D.: Global Software Engineering: The future of socio-technical coordination. In: Proceedings of the International Conference on Software Engineering: Future of Software Engineering, FOSE 2007, pp. 188–198. IEEE Xplore digitial library (2007)
Curtis, B., Krasner, H., Iscoe, N.: A field study of the software design process for large systems. Communications of the ACM 31, 1268–1287 (1988)
Kraut, R.E., Streeter, L.A.: Coordination in software development. Communications of the ACM 38, 69–81 (1995)
Nidumolu, S.: The effect of coordination and uncertainty on software project performance: Residual performance risk as an intervening variable. Information Systems Research 6, 191–219 (1995)
Faraj, S., Sproull, L.: Coordinating expertise in software development teams. Management Science 46, 1554–1568 (2000)
Pries-Heje, L., Pries-Heje, J.: Why Scrum works. In: Proceedings of the Agile Conference 2011, Salt Lake City, UT, pp. 20–28. IEEE Xplore digital library (2011)
Eisenhardt, K.M.: Building theories from case study research. The Academy of Management Review 14, 532–550 (1989)
Pare, G.: Investigating information systems with positivist case study research. Communications of the Association for Information Systems 13, 233–264 (2004)
Yin, R.K.: Case Study Research. Sage, Thousand Oaks (2003)
Dube, L., Pare, G.: Rigor in information systems positivist case research: Current practice, trends, and recommendations. MIS Quarterly 27, 597–635 (2003)
Miles, M.B., Huberman, A.M.: Qualitative Data Analysis. Sage, Thousand Oaks (1994)
Strode, D.E.: A theory of coordination in agile software development projects, PhD. School of Information Management. Victoria University of Wellington, Wellington, New Zealand (2012)
Thomas, D.R.: A general inductive approach for analyzing qualitative evaluation data. American Journal of Evaluation 27, 237–246 (2006)
Crowston, K., Osborn, C.S.: A coordination theory approach to process description and redesign. In: Malone, T.W., Crowston, K., Herman, G.A. (eds.) Organizing Business Knowledge: The MIT Process Handbook, pp. 335–370. The MIT Press, Cambridge (2003)
Royce, W.W.: Managing the development of large software systems. In: Proceedings of the 9th International Conference on Software Engineering, pp. 328–338. IEEE Computer Society Press, Los Alamitos (1987) (Reprinted from Proceedings, IEEE WESCON, pp. 1–9. Originally published by TRW) (August 1970)
Martin, A., Biddle, R., Noble, J.: The XP customer role in practice: Three studies. In: Agile Development Conference, ADC 2004, pp. 42–54. IEEE Explore (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Strode, D.E. (2013). Extending the Dependency Taxonomy of Agile Software Development. In: Antunes, P., Gerosa, M.A., Sylvester, A., Vassileva, J., de Vreede, GJ. (eds) Collaboration and Technology. CRIWG 2013. Lecture Notes in Computer Science, vol 8224. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-41347-6_20
Download citation
DOI: https://doi.org/10.1007/978-3-642-41347-6_20
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-41346-9
Online ISBN: 978-3-642-41347-6
eBook Packages: Computer ScienceComputer Science (R0)