Abstract
DevOps aims at unifying software development and operations to improve products and deliver value to customers. However, many organizations adopt DevOps mainly from a traditional perspective, that is, going forward from development to operations. In this paper we present a case of study that illustrates how Carvajal Technology and Services, a software development organization, improved the design of a family of its software products by exploiting operations data. This case of application constitutes a first incursion of the organization into DevOps, exemplifying how the community and companies in industry can also go backwards from operations to development and design, thus realizing the DevOps shift-left concept. The main contributions of this paper are: (i) the analysis of the industrial DevOps application, for which the deployment automation mechanism is crucial to realize the shift-left concept effectively; and (ii) Amelia, the DSL we developed for deploying the different (re)designs to put into operation and gather feedback data rapidly. To evaluate the approach, the organization analyzed this incursion in both directions: from development to operations, on the benefits of deployment automation; and from operations back to development, by improving the throughput of the original design by a factor of five.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
Agencia Nacional para la Superación de la Pobreza Extrema.
- 2.
The complete versions of all examples discussed in this paper are available in the Amelia evaluation repository https://github.com/unicesi/amelia-evaluation.
- 3.
- 4.
We used the Precision Time Protocol (PTP, IEEE 1588).
- 5.
The complete version of the experiment design comprises a set of 324 configurations resulting from the following number of instantiations: 4 patterns \(\times \) 3 numbers of consumers/controllers \(\times \) 3 numbers of processing nodes \(\times \) 3 communication protocols \(\times \) 3 sizes of input files. We present a subset because of space restrictions.
- 6.
In the complete experiments set, a total of 972 deployments and respective executions were performed.
- 7.
In fact, this configuration was the best among the 324 in the complete experiment.
References
Humble, J., Farley, D.: Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation. Addison-Wesley (2011)
Sharma, S., Coyne, B.: DevOps for Dummies. 3rd Limited IBM edn. John Wiley & Sons (2017)
Humble, J., Farley, D.: Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation, 1st edn. Addison-Wesley Professional (2010)
Humble, J., Molesky, J.: Why enterprises must adopt devops to enable continuous delivery. Cutter IT J. 24(8), 6–12 (2011)
Kim, G., Debois, P., Willis, J., Humble, J.: The DevOps Handbook: How to Create World-class Agility, Reliability, and Security in Technology Organizations. IT Revolution (2016)
OMG, Deployment: Configuration of component-based distributed applications specification–version 4.0. Object Management Group (2006)
Carzaniga, A., Fuggetta, A., Hall, R.S., Heimbigner, D., Van Der Hoek, A., Wolf, A.L.: A characterization framework for software deployment technologies. Technical report, DTIC Document (1998)
Hall, R.S., Heimbigner, D., Wolf, A.L.: A cooperative approach to support software deployment using the software dock. In: Proceedings of the 21st International Conference on Software Engineering, ICSE 1999, pp. 174–183. ACM (1999)
Dearle, A.: Software deployment, past, present and future. In: 2007 Future of Software Engineering, FOSE 2007, pp. 269–284. IEEE Computer Society (2007)
Willis, J.: Docker and the three ways of DevOps. Technical report, Docker Inc. (2017)
Burns, B., Grant, B., Oppenheimer, D., Brewer, E., Wilkes, J.: Borg, omega, and kubernetes. Commun. ACM 59(5), 50–57 (2016)
Hindman, B., et al.: Mesos: a platform for fine-grained resource sharing in the data center. In: NSDI, vol. 11, p. 22 (2011)
Seinturier, L., Merle, P., Rouvoy, R., Romero, D., Schiavoni, V., Stefani, J.B.: A component-based middleware platform for reconfigurable service-oriented architectures. Softw.: Pract. Exp. 42(5), 559–583 (2012)
Kahraman, G., Bilgen, S.: A framework for qualitative assessment of domain-specific languages. Softw. Syst. Model. 14(4), 1505–1526 (2015)
Acknowledgments
This work was funded in part by the National Sciences and Engineering Research Council (NSERC) of Canada, IBM Canada Ltd. and IBM Centre for Advanced Studies (CAS), the University of Victoria, Universidad Icesi (Colombia), and Organización Carvajal SA (Colombia).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Jiménez, M., Rivera, L.F., Villegas, N.M., Tamura, G., Müller, H.A., Gallego, P. (2019). DevOps’ Shift-Left in Practice: An Industrial Case of Application. 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_16
Download citation
DOI: https://doi.org/10.1007/978-3-030-06019-0_16
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)