Abstract
This Paper maintains that efficient business agility requires actions from all levels of the organization in order to strive for success in a turbulent business environment. Agility and agile software development solutions are suggested as yielding benefit in a volatile environment, which is characterized by continuously changing requirements and unstable development technologies. Test-driven development (TDD) is an agile practice where the tests are written before the actual program code. TDD is a technical enabler for increasing agility at the developer and product project levels. Existing empirical literature on TDD has demonstrated increased productivity and more robust code, among other important benefits. This paper reports results of a case study where a mobile application was developed for global markets, using the TDD approach. Our first results show that the adoption of TDD is difficult and the potential agility benefits may not be readily available. The lessons learned from the case study are presented.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Abrahamsson, P., Salo, O., Ronkainen, J., and Warsta, J. Agile Software Development Methods: Review and Analysis, Espoo, Finland: Technical Research Centre of Finland, VTT Publications 478, 2002 (available online at http://www.vtt.fi/inf/pdf/publications/2002/P478.pdf).
Abrahamsson, P., Warsta, J., Siponen, M. T., and Ronkainen, J. “New Directions on Agile Methods: A Comparative Analysis,” in Proceedings of the 25 th International Conference on Software Engineering, Los Alamitos, CA: IEEE Computer Society Press, 2003, pp. 244–254.
Astels, D. Test-Driven Development: A Practical Guide, Upper Saddle River, NJ: Prentice Hall, 2003.
Avison, D., Lau, F., Myers, M., and Nielsen, P. A. “Action Research,” Communications of the ACM(42:1), 1999, pp. 94–97.
Barriocanal, E. G., and Urban, M.-A. S. “An Experience in Integrating Automated Unit Testing Practices in an Introductory Programming Course,” ACM SIGCSE Bulletin (34), 2002, pp. 125–128.
Basili, V. R., and Lanubile, F. “Building Knowledge through Families of Experiments,” IEEE Transactions on Software Engineering (25), 1999, pp. 456–473.
Beck, K. “Aim, Fire,” IEEE Software (18:5), 2001, pp. 87–89.
Beck, K. “Embracing Change with Extreme Programming,” IEEE Computer (32:10), 1999, pp. 70–77.
Beck, K. Test-Driven Development: By Example, New York: Addison-Wesley, 2003.
Boehm, B., and Turner, R. Balancing Agility and Discipline: A Guide for the Perplexed, Boston: Addison-Wesley, 2003.
Edwards, S. H. “Using Software Testing to Move Students from Trial-and-Error to Reflection-in-Action,” in Proceedings of the 35 th SIGCSE Technical Symposium on Computer Science Education, New York: ACM Press, 2004, pp. 26–30.
Fowler, M. Refactoring: Improving the Design of Existing Code, Boston: Addison Wesley Longman, 1999.
George, B., and Williams, L. “An Initial Investigation of Test Driven Development in Industry,” in Proceedings of the ACM Symposium on Applied Computing, New York: ACM Press, 2003, pp. 1135–1139.
George, B., and Williams, L. “A Structured Experiment of Test-Driven Development,” Information and Software Technology (46:5), 2004, pp. 337–342.
Jeffries, R. E. “Extreme Testing,” Software Testing & Quality Engineering (1:2), March/April 1999, pp. 23–26.
Kaufmann, R., and Janzen, D. “Implications of Test-Driven Development A Pilot Study,” in Proceedings of the Conference on Object-Oriented Programming Systems Languages and Applications (OOPSLA), New York: ACM Press, 2003, pp. 298–299.
Lal, D., Pitt, D. C, and Beloucif, A. “Restructuring in European Telecommunications: Modeling the Evolving Market,” European Business Review (13:3), 2001, pp. 152–156.
Langr, J. “Evolution of Test and Code via Test-First Design,” paper presented at the Conference on Object Oriented Programming Systems Languages and Applications (OOPSLA), Tampa Bay, FL, 2001.
Larman, C, and Basili, V. R. “Iterative and Incremental Development: A Brief History,” IEEE Software (20), 2003, pp. 47–56.
Leon, G. “On the Diffusion of Software Technologies: Technological Frameworks and Adoption Profiles,” in Diffusion and Adoption of Information Technology, K. Kautz and J. Pries-Heje (Eds.), Padstow, Cornwall, England: TJ Press Ltd., 1996, pp. 96–116.
Maximilien, E. M., and Williams, L. “Assessing Test-Driven Development at IBM,” in Proceedings of the International Conference on Software Engineering (ICSE), Los Alamitos, CA: IEEE Computer Society Press, 2003, pp. 564–569.
Müller, M. M., and Hagner, O. “Experiment About Test-First Programming,” IEEE Proceedings Software (149:5), 2002, pp. 131–136..
Pancur, M., Ciglaric, M., Trampus, M., and Vidmar, T. “Towards Empirical Evaluation of Test-Driven Development in a University Environment,” in Proceedings of EUROCON 2004, Ljubljana, Slovenia, IEEE Computer Society, 2003, pp. 83–86.
Rasmusson, J. “Introducing XP into Greenfield Projects: Lessons Learned.” IEEE Software (20:3), 2003, pp. 21–28.
Salo, O., and Abrahamsson, P. “Empirical Evaluation of Agile Software Development: A Controlled Case Study Approach,” in Proceedings of the 6 th International Conference on Product Focused Software Process Improvement, F. Bomarius and H. Ilda (Eds.), Kansai Science City, Japan: Springer, 2004, pp. 408–423.
Williams, L., Maximilien, E. M., and Vouk, M. “Test-Driven Development as a Defect-Reduction Practice,” in Proceedings of the 14 th International Symposium of Software Reliability Engineering (ISSRE’03), Los Alamitos, CA: IEEE Computer Society Press, 2003, pp. 34–48.
Wohlin, C., Runeson, P., Höst, M., Ohlsson, M. C., Regnell, B., and Wesslén, A. Experimentation in Software Engineering, Boston: Kluwer Academic Publishers, 2000.
Yin, R. K. Case Study Research Design and Methods, Thousand Oaks, CA: Sage Publications, 1994.
Ynchausti, R. A. “Integrating Unit Testing into a Software Development Team’s Process,” in Proceedings of the XP 2001 Conference, Caglieri, Italy, 2001, pp. 79–83.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 International Federation for Information Processing
About this paper
Cite this paper
Abrahamsson, P., Hanhineva, A., Jäälinoja, J. (2005). Improving Business Agility Through Technical Solutions: A Case Study on Test-Driven Development in Mobile Software Development. In: Baskerville, R.L., Mathiassen, L., Pries-Heje, J., DeGross, J.I. (eds) Business Agility and Information Technology Diffusion. TDIT 2005. IFIP International Federation for Information Processing, vol 180. Springer, Boston, MA. https://doi.org/10.1007/0-387-25590-7_14
Download citation
DOI: https://doi.org/10.1007/0-387-25590-7_14
Publisher Name: Springer, Boston, MA
Print ISBN: 978-0-387-25589-7
Online ISBN: 978-0-387-25590-3
eBook Packages: Computer ScienceComputer Science (R0)