Skip to main content

Abstract

DevOps predicates the continuity between Development and Operations teams at an unprecedented scale. Also, the continuity does not stop at tools, or processes but goes beyond into organizational practices, collaboration, co-located and coordinated effort. We conjecture that this unprecedented scale of continuity requires predictive analytics which are omniscient, that is (i) transversal to the technical, organizational, and social stratification in software processes and (ii) correlate all strata to provide a live and holistic snapshot of software development, its operations, and organization. Elaborating this conjecture, we illustrate a set of metrics to be used in the DevOps scenario and overview challenges and future research directions.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://jaxenter.com/true-cost-devops-adoption-138287.html.

  2. 2.

    https://chaoss.community/.

  3. 3.

    http://www.agileadvice.com/2005/05/15/agilemanagement/truck-factor/.

  4. 4.

    https://www.laser-foundation.org/devops/2018/.

References

  1. Bass, L., Weber, I., Zhu, L.: DevOps: A Software Architect’s Perspective. SEI Series in Software Engineering. Addison-Wesley, New York (2015)

    Google Scholar 

  2. Yang, Y., Falessi, D., Menzies, T., Hihn, J.: Actionable analytics for software engineering. IEEE Softw. 35(1), 51–53 (2017)

    Article  Google Scholar 

  3. Magnoni, S., Tamburri, D.A., Di Nitto, E., Kazman, R.: Analyzing quality models for software communities. Communications of the ACM (2017, under review)

    Google Scholar 

  4. Software Quality Connection: Software quality connection (2015)

    Google Scholar 

  5. Crispin, L.: Driving software quality: how test-driven development impacts software quality. IEEE Softw. 23(6), 70–71 (2006)

    Article  Google Scholar 

  6. Watts, R.: Manufacturing Software Quality. NCC Publications, Manchester (1987)

    Google Scholar 

  7. Bavota, G., De Lucia, A., Di Penta, M., Oliveto, R., Palomba, F.: An experimental investigation on the innate relationship between quality and refactoring. J. Syst. Softw. 107, 1–14 (2015)

    Article  Google Scholar 

  8. Palomba, F., Zaidman, A.: Does refactoring of test smells induce fixing flaky tests? In: 2017 IEEE International Conference on Software Maintenance and Evolution (ICSME), pp. 1–12. IEEE (2017)

    Google Scholar 

  9. Palomba, F., Zaidman, A., Oliveto, R., De Lucia, A.: An exploratory study on the relationship between changes and refactoring. In: 2017 IEEE/ACM 25th International Conference on Program Comprehension (ICPC), pp. 176–185. IEEE (2017)

    Google Scholar 

  10. Palomba, F., Panichella, A., Zaidman, A., Oliveto, R., De Lucia, A.: The scent of a smell: an extensive comparison between textual and structural smells. IEEE Trans. Softw. Eng. 44, 977–1000 (2017)

    Article  Google Scholar 

  11. Palomba, F., Bavota, G., Di Penta, M., Fasano, F., Oliveto, R., De Lucia, A.: On the diffuseness and the impact on maintainability of code smells: a large scale empirical investigation. Empir. Softw. Eng. 23(3), 1188–1221 (2018)

    Article  Google Scholar 

  12. Palomba, F., Bavota, G., Di Penta, M., Fasano, F., Oliveto, R., De Lucia, A.: A large-scale empirical study on the lifecycle of code smell co-occurrences. Inf. Softw. Technol. 99, 1–10 (2018)

    Article  Google Scholar 

  13. Tufano, M., et al.: When and why your code starts to smell bad (and whether the smells go away). IEEE Trans. Softw. Eng. 43(11), 1063–1088 (2017)

    Article  Google Scholar 

  14. Tufano, M., et al.: An empirical investigation into the nature of test smells. In: 2016 31st IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 4–15. IEEE (2016)

    Google Scholar 

  15. Spadini, D., Palomba, F., Zaidman, A., Bruntink, M., Bacchelli, A.: On the relation of test smells to software code quality. In: Proceedings of the International Conference on Software Maintenance and Evolution (ICSME). IEEE (2018)

    Google Scholar 

  16. Vassallo, C., Panichella, S., Palomba, F., Proksch, S., Zaidman, A., Gall, H.C.: Context is king: the developer perspective on the usage of static analysis tools. In: 2018 IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER), pp. 38–49. IEEE (2018)

    Google Scholar 

  17. Catolino, G., Palomba, F., De Lucia, A., Ferrucci, F., Zaidman, A.: Enhancing change prediction models using developer-related factors. J. Syst. Softw. 143, 14–28 (2018)

    Article  Google Scholar 

  18. Di Nucci, D., Palomba, F., Tamburri, D.A., Serebrenik, A., De Lucia, A.: Detecting code smells using machine learning techniques: are we there yet? In: 2018 IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER), pp. 612–621. IEEE (2018)

    Google Scholar 

  19. Di Nucci, D., Palomba, F., De Rosa, G., Bavota, G., Oliveto, R., De Lucia, A.: A developer centered bug prediction model. IEEE Trans. Softw. Eng. (2017, to appear)

    Google Scholar 

  20. Di Nucci, D., Panichella, A., Zaidman, A., De Lucia, A.: Hypervolume-based search for test case prioritization. In: Barros, M., Labiche, Y. (eds.) SSBSE 2015. LNCS, vol. 9275, pp. 157–172. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-22183-0_11

    Chapter  Google Scholar 

  21. Di Nucci, D., Palomba, F., Oliveto, R., De Lucia, A.: Dynamic selection of classifiers in bug prediction: an adaptive method. IEEE Trans. Emerg. Top. Comput. Intell. 1(3), 202–212 (2017)

    Article  Google Scholar 

  22. Moha, N., Guéhéneuc, Y.G., Duchien, L., Meur, A.F.L.: DECOR: a method for the specification and detection of code and design smells. IEEE Trans. Softw. Eng. 36(1), 20–36 (2010)

    Article  MATH  Google Scholar 

  23. Palomba, F., Bavota, G., Di Penta, M., Oliveto, R., Poshyvanyk, D., De Lucia, A.: Mining version histories for detecting code smells. IEEE Trans. Softw. Eng. 41(5), 462–489 (2015)

    Article  Google Scholar 

  24. Palomba, F., Panichella, A., De Lucia, A., Oliveto, R., Zaidman, A.: A textual-based technique for smell detection. In: 2016 IEEE 24th International Conference on Program Comprehension (ICPC), pp. 1–10. IEEE (2016)

    Google Scholar 

  25. Palomba, F., Zanoni, M., Fontana, F.A., De Lucia, A., Oliveto, R.: Toward a smell-aware bug prediction model. IEEE Trans. Softw. Eng. (2017). https://ieeexplore.ieee.org/document/8097044

  26. Palomba, F., Zaidman, A., De Lucia, A.: Automatic test smell detection using information retrieval techniques. In: International Conference on Software Maintenance and Evolution (ICSME). IEEE (2018, to appear)

    Google Scholar 

  27. Tsantalis, N., Chatzigeorgiou, A.: Identification of move method refactoring opportunities. IEEE Trans. Softw. Eng. 35(3), 347–367 (2009)

    Article  Google Scholar 

  28. Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice. SEI Series in Software Engineering. Addison-Wesley, Boston (2012)

    Google Scholar 

  29. Palomba, F., Bavota, G., Penta, M.D., Oliveto, R., Lucia, A.D.: Do they really smell bad? A study on developers’ perception of bad code smells. In: Proceedings of the International Conference on Software Maintenance and Evolution (ICSME), pp. 101–110. IEEE Computer Society (2014)

    Google Scholar 

  30. Kruchten, P., Nord, R.L., Ozkaya, I., Visser, J.: Technical debt in software development: from metaphor to theory report on the third international workshop on managing technical debt. In: ACM SIGSOFT Software Engineering Notes, vol. 37, no. 5, pp. 36–38 (2012)

    Article  Google Scholar 

  31. Tamburri, D.A., Lago, P., Vliet, H.V.: Organizational social structures for software engineering. ACM Comput. Surv. 46(1), 3:1–3:35 (2013)

    Article  Google Scholar 

  32. Palomba, F., Tamburri, D.A., Serebrenik, A., Zaidman, A., Fontana, F.A., Oliveto, R.: How do community smells influence code smells? In: Proceedings of the 40th International Conference on Software Engineering: Companion Proceedings, pp. 240–241. ACM (2018)

    Google Scholar 

  33. Williams, L., Kessler, R.R.: Pair Programming Illuminated. Addison Wesley, Boston (2003)

    Google Scholar 

  34. Avelino, G., Passos, L.T., Hora, A.C., Valente, M.T.: A novel approach for estimating truck factors. In: 24th IEEE International Conference on Program Comprehension, ICPC 2016, Austin, TX, USA, 16–17 May 2016, pp. 1–10. IEEE Computer Society (2016)

    Google Scholar 

  35. Ferreira, M.M., Valente, M.T., Ferreira, K.A.M.: A comparison of three algorithms for computing truck factors. In Scanniello, G., Lo, D., Serebrenik, A. (eds.) Proceedings of the 25th International Conference on Program Comprehension, ICPC 2017, Buenos Aires, Argentina, 22–23 May 2017, pp. 207–217. IEEE Computer Society (2017)

    Google Scholar 

  36. Joblin, M., Mauerer, W., Apel, S., Siegmund, J., Riehle, D.: From developer networks to verified communities: a fine-grained approach. In: Bertolino, A., Canfora, G., Elbaum, S.G. (eds.) Proceedings of International Conference on Software Engineering (ICSE), pp. 563–573. IEEE Computer Society (2015)

    Google Scholar 

  37. Valetto, G., Helander, M., Ehrlich, K., Chulani, S., Wegman, M., Williams, C.: Using software repositories to investigate socio-technical congruence in development projects. In: International Workshop on Mining Software Repositories, p. 25 (2007). IEEE Computer Society, Los Alamitos. http://doi.ieeecomputersociety.org/10.1109/MSR.2007.33

  38. Lin, B., Robles, G., Serebrenik, A.: Developer turnover in global, industrial open source projects: insights from applying survival analysis. In: Proceedings of the 12th International Conference on Global Software Engineering, pp. 66–75. IEEE Press (2017)

    Google Scholar 

  39. Nassif, M., Robillard, M.P.: Revisiting turnover-induced knowledge loss in software projects. In: 2017 IEEE International Conference on Software Maintenance and Evolution (ICSME), pp. 261–272. IEEE (2017)

    Google Scholar 

  40. Rigby, P.C., Zhu, Y.C., Donadelli, S.M., Mockus, A.: Quantifying and mitigating turnover-induced knowledge loss: case studies of chrome and a project at Avaya. In: Proceedings of the 38th International Conference on Software Engineering, pp. 1006–1016. ACM (2016)

    Google Scholar 

  41. Macdonald, I.G.: Symmetric Functions and Hall Polynomials. Oxford University Press, Oxford (1998)

    MATH  Google Scholar 

  42. Vasilescu, B., et al.: Gender and tenure diversity in GitHub teams. In: Begole, B., Kim, J., Inkpen, K., Woo, W. (eds.) Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems, CHI 2015, Seoul, Republic of Korea, 18–23 April 2015, pp. 3789–3798. ACM (2015)

    Google Scholar 

  43. Constantinou, E., Mens, T.: Socio-technical evolution of the ruby ecosystem in GitHub. In: Pinzger, M., Bavota, G., Marcus, A. (eds.) SANER, pp. 34–44. IEEE Computer Society, Washington, DC (2017)

    Google Scholar 

  44. van den Eijnden, R.J.J.M., Lemmens, J.S., Valkenburg, P.M.: The social media disorder scale. Comput. Hum. Behav. 61, 478–487 (2016)

    Article  Google Scholar 

  45. Mislove, A., Marcon, M., Gummadi, K.P., Druschel, P., Bhattacharjee, B.: Measurement and analysis of online social networks (2007)

    Google Scholar 

  46. Kitchenham, B., Pickard, L., Pfleeger, S.L.: Case studies for method and tool evaluation. IEEE Softw. 12(4), 52–62 (1995)

    Article  Google Scholar 

  47. Zhou, Y., Leung, H., Xu, B.: Examining the potentially confounding effect of class size on the associations between object-oriented metrics and change-proneness. IEEE Trans. Softw. Eng. 35(5), 607–623 (2009)

    Article  Google Scholar 

  48. Moha, N., Gueheneuc, Y.G., Duchien, L., Le Meur, A.F.: DECOR: a method for the specification and detection of code and design smells. IEEE Trans. Softw. Eng. 36(1), 20–36 (2010)

    Article  MATH  Google Scholar 

  49. Munson, J.C., Elbaum, S.G.: Code churn: a measure for estimating the impact of code change. In: 1998 Proceedings of International Conference on Software Maintenance, pp. 24–31. IEEE (1998)

    Google Scholar 

  50. Di Nucci, D., Palomba, F., De Rosa, G., Bavota, G., Oliveto, R., De Lucia, A.: A developer centered bug prediction model. IEEE Trans. Softw. Eng. 44, 5–24 (2017)

    Article  Google Scholar 

  51. Hassan, A.E.: Predicting faults using the complexity of code changes. In: Proceedings of the 31st International Conference on Software Engineering, pp. 78–88. IEEE Computer Society (2009)

    Google Scholar 

  52. Ostrand, T.J., Weyuker, E.J., Bell, R.M.: Predicting the location and number of faults in large software systems. IEEE Trans. Softw. Eng. 31(4), 340–355 (2005)

    Article  Google Scholar 

  53. Palomba, F., Bavota, G., Di Penta, M., et al.: On the diffuseness and the impact on maintainability of code smells: a large scale empirical investigation. Empir. Softw. Eng. 23, 1188 (2018). https://doi.org/10.1007/s10664-017-9535-z

    Article  Google Scholar 

  54. Tamburri, D.A., Bersani, M.M., Mirandola, R., Pea, G.: DevOps service observability by-design: experimenting with model-view-controller. In: Kritikos, K., Plebani, P., de Paoli, F. (eds.) ESOCC 2018. LNCS, vol. 11116, pp. 49–64. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-99819-0_4

    Chapter  Google Scholar 

  55. Conway, M.E.: How do committees invent. Datamation 14(4), 28–31 (1968)

    Google Scholar 

  56. Lehman, M.M.: Laws of software evolution revisited. In: Montangero, C. (ed.) EWSPT 1996. LNCS, vol. 1149, pp. 108–124. Springer, Heidelberg (1996). https://doi.org/10.1007/BFb0017737

    Chapter  Google Scholar 

  57. Vass, J., Munson, J.E.: Revisiting the three Rs of social machines: reflexivity, recognition and responsivity. In: Gangemi, A., Leonardi, S., Panconesi, A. (eds.) WWW (Companion Volume), pp. 1161–1166. ACM, New York (2015)

    Chapter  Google Scholar 

  58. Coleman, J.S.: Foundations of Social Theory. Harvard University Press, Cambridge, London (1990)

    Google Scholar 

  59. Han, S.: Theorizing new media: reflexivity, knowledge, and the Web 2.0. Sociol. Inq. 80(2), 200–213 (2010)

    Article  Google Scholar 

  60. Tamburri, D.A., Kruchten, P., Lago, P., et al.: Social debt in software engineering: insights from industry. J. Internet Serv. Appl. 6, 10 (2015). https://doi.org/10.1186/s13174-015-0024-6

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Damian Andrew Tamburri .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Tamburri, D.A., Di Nucci, D., Di Giacomo, L., Palomba, F. (2019). Omniscient DevOps Analytics. In: Bruel, JM., Mazzara, M., Meyer, B. (eds) Software Engineering Aspects of Continuous Development and New Paradigms of Software Production and Deployment. DEVOPS 2018. Lecture Notes in Computer Science(), vol 11350. Springer, Cham. https://doi.org/10.1007/978-3-030-06019-0_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-06019-0_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-06018-3

  • Online ISBN: 978-3-030-06019-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics