Advertisement

The CIViT Model in a Nutshell: Visualizing Testing Activities to Support Continuous Integration

  • Agneta NilssonEmail author
  • Jan Bosch
  • Christian Berger
Chapter

Abstract

Nowadays, innovations in many products ranging from customer electronics to high-end industry electric/electronic components are driven by software. Thus, new or extended features to software and mechatronic products can be realized and deployed to the market much faster. While the use of software enables an enormous flexibility, mastering the ever-growing complexity of the resulting products to meet the quality goals required for the market is getting more and more challenging. Continuous development combined with continuous testing is a successful method that actively incorporates the customer to get feedback for the feature to be deployed early, and thus, product owners, developers, and testers can collaborate more effectively to meet the market’s needs. From literature, setting up such an agile development process is clear; the individual situation in terms of organization, processes, and development and test tooling however is depending on the company—many of the aforementioned aspects have grown over the years and cannot be easily changed. In this article, we present the CIViT model, which allows companies to get an explicit understanding and overview of their current testing and integration activities. With CIViT’s intuitive representation of the current status, companies are able to identify bottlenecks and derive actions points to evolve their processes, methods, and development and test tooling towards a more agile and continuous deployment-oriented organization. Thus, they will be able to develop, integrate, evaluate, and deploy new features faster to the end user, hence strengthening their own market position.

Notes

Acknowledgments

The authors would like to thank all engineers, testers, and managers who were involved in our work towards the CIViT model.

References

  1. 1.
    Beck, K.: Test Driven Development: By Example. Addison-Wesley Professional, Boston (2002)Google Scholar
  2. 2.
    Whittaker, J.A., Arbon, C., Carollo, J.: How Google Tests Software. Addison-Wesley Professional, Boston (2012)Google Scholar
  3. 3.
    Ståhl, D., Bosch, J.: Modeling continuous integration practice differences in industry software development. J. Syst. Softw. 87, 48–59 (2014)CrossRefGoogle Scholar
  4. 4.
    Nilsson, A., Bosch, J., Berger, C.: Visualizing testing activities to support continuous integration: A multiple case study. In: Proceedings of the 15th International Conference on Agile Software Development (2014)Google Scholar
  5. 5.
    Stolberg, S.: Enabling agile testing through continuous integration. In: Proceedings of the Agile Conference, pp. 369–374 (2009)Google Scholar
  6. 6.
    Downs, J., Hosking, J., Plimmer, B.: Status communication in agile software teams: A case study. In: Proceedings of the Fifth International Conference on Software Engineering Advances, pp. 82–87 (2010)Google Scholar
  7. 7.
    Sturdevant, K.: Cruisin’ and Chillin’: Testing the java-based distributed ground data system ‘Chill’ with CruiseControl. In: Aerospace Conference, pp. 1–8 (2007)Google Scholar
  8. 8.
    Kim, E.H., Na, J.C., Ryoo, S.M.: Implementing an effective test automation framework. In: Proceedings of the 33rd Annual IEEE International Computer Software and Applications Conference, pp. 534–538 (2009)Google Scholar
  9. 9.
    Kim, E.H., Na, J.C., Ryoo, S.M.: Test automation framework for implementing continuous integration. In: Proceedings of the Sixth International Conference on Information Technology: New Generations, pp. 784–789 (2009)Google Scholar
  10. 10.
    Hoffman, B., Cole, D., Vines, J.: Software process for rapid development of HPC software using CMake. In: Proceedings of the DoD High Performance Computing Modernization Program Users Group Conference, pp. 378–382 (2009)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  1. 1.Division for Software Engineering, Department of Computer Science and EngineeringChalmers University of GothenburgGothenburgSweden

Personalised recommendations