Advertisement

Abstract

The “2017 State of DevOps Report” asserts that 27% of its respondents work on devops teams, an increase of almost 23% from 2016 and almost 69% from the 2015. Devops practices are intended to improve an organization’s software development throughput by reducing the cycle time needed for a software change to reach its users. Although the skills needed for effective devops are in demand, it is challenging to integrate it into a academic curriculum for several reasons. First, software development curricula often only take students through the delivery stage of software development and do not spend meaningful time on operational activities, making it difficult to recruit faculty with the requisite IT operations experience. Second, many of the applications and their environments that can most benefit from devops are extremely complex, making it difficult to provide an appropriate learning environment. Third, many requirements for successful devops are not technical but instead emphasize the human and organizational aspects of our craft. Fourth, for many students, the problems addressed by devops are abstract. In this paper we look at these challenges in more detail and review one proposal for integrating devops into existing curricula in light of current devops maturity models, disciplines, and industry trends.

References

  1. 1.
    Forsgren, N., Kim, G., Humble, J., Brown, A., Kersten, N.: 2017 state of devops report. Technical report, PuppetLabs and DORA (DevOps Research and Assessment) (2017)Google Scholar
  2. 2.
    Moore, M.: Report: software architect, devops engineer among top paying jobs in industry, April 2016. https://sdtimes.com/report-software-architect-devops-engineer-among-top-paying-jobs-industry/
  3. 3.
    Jennifer Davis, K.D.: Effective DevOps. O’Reilly UK Ltd., Farnham (2016)Google Scholar
  4. 4.
    Swartout, P.: Continuous Delivery and DevOps: A Quickstart Guide. Packt Publishing, Birmingham (2012)Google Scholar
  5. 5.
    Forrester Consulting, Inc.: Continuous delivery: a maturity assessment model. Technical report, Forrester Consulting, Inc. (2013)Google Scholar
  6. 6.
    CMMI Institute: What is capability maturity model integration (CMMI)®? January 2018. http://cmmiinstitute.com/capability-maturity-model-integration
  7. 7.
    Rehn, A., Palmborg, T., Boström, P.: The continuous delivery maturity model, February 2013. https://www.infoq.com/articles/Continuous-Delivery-Maturity-Model
  8. 8.
    Minick, E.: Continuous delivery maturity model, February 2014. https://developer.ibm.com/urbancode/docs/continuous-delivery-maturity-model/
  9. 9.
    Bahrs, P.: Adopting the IBM DevOps approach for continuous software delivery, October 2013. https://www.ibm.com/developerworks/library/d-adoption-paths/index.html
  10. 10.
    Aiello, R.: Devops - standard for building reliable and secure systems including application build, package and deployment, August 2016. https://standards.ieee.org/develop/project/2675.html
  11. 11.
    Holub, E.: ITScore for Infrastructure and Operations. Tech Report, Gartner Inc., October 2016Google Scholar
  12. 12.
    Caralli, R., Allen, J., White, D.: CERT Resilience Management Model: A Maturity Model for Managing Operational Resilience. Addison-Wesley Professional, Boston (2010)Google Scholar
  13. 13.
  14. 14.
  15. 15.
    Orbus Software: Measuring maturity: The ITIL Maturity Model, July 2015. https://www.orbussoftware.com/resources/downloads/measuring-maturity-the-itil-maturity-model/
  16. 16.
    Humble, J., Farley, D.: Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation. The Addison-Wesley Signature Series. Addison Wesley (2011)Google Scholar
  17. 17.
    Rong, G., Gu, S., Zhang, H., Shao, D.: DevOpsEnvy: an education support system for DevOps. In: 30th IEEE Conference on Software Engineering Education and Training, CSEE&T 2017, Savannah, GA, USA, 7–9 November 2017, pp. 37–46 (2017)Google Scholar
  18. 18.
    Brown, A., Forsgren, N., Humble, J., Kersten, N., Kim, G.: 2016 state of DevOps report. Technical report, PuppetLabs and DORA (DevOps Research and Assessment) (2016)Google Scholar
  19. 19.
    Oregon State University Open Source Lab: DevOps Bootcamp (2017). https://devopsbootcamp.osuosl.org/
  20. 20.
  21. 21.
    Bass, L., Weber, I., Zhu, L.: DevOps: A Software Architect’s Perspective. SEI Series in Software Engineering. Addison Wesley (2015)Google Scholar
  22. 22.
    Shahin, M., Babar, M.A., Zhu, L.: The intersection of continuous deployment and architecting process: practitioners’ perspectives. In: Proceedings of the 10th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, ESEM 2016, pp. 44:1–44:10. ACM, New York (2016)Google Scholar
  23. 23.
    Jenkins: Pipeline as code with jenkins, July 2018. https://jenkins.io/solutions/pipeline/
  24. 24.
    Hammant, P., Smith, S., et al.: Trunk based development: Introduction (2017). https://trunkbaseddevelopment.com/
  25. 25.
    Tiwari, A.: Decoupling deployment and release- feature toggles, October 2013. https://abhishek-tiwari.com/decoupling-deployment-and-release-feature-toggles/
  26. 26.
    Carnegie Mellon University, School of Computer Science, Institute for Software Research: 17–611 DevOps: Modern Deployment. http://mse.isri.cmu.edu/software-engineering/Courses/17-611-DevOps-Modern-Deployment.html
  27. 27.
    DePaul University, School of Computer Science, College of Computing and Digital Media: SE-441 Continuous Delivery and DevOps. http://www.cdm.depaul.edu/academics/pages/courseinfo.aspx?CrseId=014273
  28. 28.
    Johns Hopkins University, Whiting School of Engineering: 605.409 DevOps Software Development. https://ep.jhu.edu/programs-and-courses/605.409-devops-software-development
  29. 29.
    Letterkenny Institute of Technologys: Master of science devops, July 2018. https://www.lyit.ie/CourseDetails/D202/LY_KDVOP_M/DevOps
  30. 30.
    Association of Computing Machinery: Software engineering 2014. Technical report, Association for Computing Machinery, February 2015Google Scholar
  31. 31.
    Christensen, H.B.: Teaching devops and cloud computing using a cognitive apprenticeship and story-telling approach. In: Proceedings of the 2016 ACM Conference on Innovation and Technology in Computer Science Education, ITiCSE 2016, pp. 174–179. ACM, New York (2016)Google Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.School of ComputingDePaul UniversityChicagoUSA

Personalised recommendations