Getting software released to users is often a painful, risky, and time-consuming process. This groundbreaking new book sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers, and operations, delivery teams can get changes released in a matter of hours sometimes even minutesno matter what the size of a project or the complexity of its code base. Jez Humble and David Farley begin by presenting the foundations of a rapid, reliable, low-risk delivery process. Next, they introduce the deployment pipeline, an automated process for managing all changes, from check-in to release. Finally, they discuss the ecosystem needed to support continuous delivery, from infrastructure, data and configuration management to governance. The authors introduce state-of-the-art techniques, including automated infrastructure management and data migration, and the use of virtualization. For each, they review key issues, identify best practices, and demonstrate how to mitigate risks. Coverage includes Automating all facets of building, integrating, testing, and deploying software Implementing deployment pipelines at team and organizational levels Improving collaboration between developers, testers, and operations Developing features incrementally on large and distributed teams Implementing an effective configuration management strategy Automating acceptance testing, from analysis to implementation Testing capacity and other non-functional requirements Implementing continuous deployment and zero-downtime releases Managing infrastructure, data, components and dependencies Navigating risk management, compliance, and auditing Whether youre a developer, systems administrator, tester, or manager, this book will help your organization move from idea to release faster than everso you can deliver value to your business rapidly and reliably.
Cited By
- Amaro R, Pereira R and Mira da Silva M (2024). DevOps Metrics and KPIs: A Multivocal Literature Review, ACM Computing Surveys, 56:9, (1-41), Online publication date: 31-Oct-2024.
- Macho C, Oraze F and Pinzger M (2024). DValidator, Journal of Systems and Software, 209:C, Online publication date: 1-Mar-2024.
- Rahman A, Bose D, Zhang Y and Pandita R (2023). An empirical study of task infections in Ansible scripts, Empirical Software Engineering, 29:1, Online publication date: 1-Jan-2024.
- Falazi G, Harzenetter L, Képes K, Leymann F, Breitenbücher U, Ntentos E, Zdun U, Becker M and Heldwein E Compliance Management of IaC-Based Cloud Deployments During Runtime Proceedings of the IEEE/ACM 16th International Conference on Utility and Cloud Computing, (1-11)
- Saadatmand M, Abbas M, Enoiu E, Schlingloff B, Afzal W, Dornauer B and Felderer M (2023). SmartDelta project, Microprocessors & Microsystems, 103:C, Online publication date: 1-Nov-2023.
- Muralee S, Koishybayev I, Nahapetyan A, Tystahl G, Reaves B, Bianchi A, Enck W, Kapravelos A and Machiry A ARGUS Proceedings of the 32nd USENIX Conference on Security Symposium, (6983-7000)
- Amaro R, Pereira R and da Silva M (2023). Capabilities and metrics in DevOps, Information and Management, 60:5, Online publication date: 1-Jul-2023.
- Baron C and Louis V (2023). Framework and tooling proposals for Agile certification of safety-critical embedded software in avionic systems, Computers in Industry, 148:C, Online publication date: 1-Jun-2023.
- Zhao Z, Wang X, Xu Z, Tang Z, Li Y and Di P Incremental Call Graph Construction in Industrial Practice Proceedings of the 45th International Conference on Software Engineering: Software Engineering in Practice, (471-482)
- Fabijan A, Dmitriev P, Arai B, Drake A, Kohlmeier S and Kwong A A/B Integrations: 7 Lessons Learned from Enabling A/B Testing as a Product Feature Proceedings of the 45th International Conference on Software Engineering: Software Engineering in Practice, (304-314)
- Azad N and Hyrynsalmi S (2023). DevOps critical success factors — A systematic literature review, Information and Software Technology, 157:C, Online publication date: 1-May-2023.
- Soldani J and Brogi A (2023). Anomaly Detection and Failure Root Cause Analysis in (Micro) Service-Based Cloud Applications: A Survey, ACM Computing Surveys, 55:3, (1-39), Online publication date: 30-Apr-2023.
- Shahin M, Rezaei Nasab A and Ali Babar M (2023). A qualitative study of architectural design issues in DevOps, Journal of Software: Evolution and Process, 35:5, Online publication date: 25-Apr-2023.
- Rwemalika R, Habchi S, Papadakis M, Le Traon Y and Brasseur M (2022). Smells in system user interactive tests, Empirical Software Engineering, 28:1, Online publication date: 1-Jan-2023.
- Marques P and Correia F Foundational DevOps Patterns Proceedings of the 29th Conference on Pattern Languages of Programs, (1-12)
- Piedade B, Dias J and Correia F (2022). Visual notations in container orchestrations: an empirical study with Docker Compose, Software and Systems Modeling (SoSyM), 21:5, (1983-2005), Online publication date: 1-Oct-2022.
- Lindon M, Sanden C and Shirikian V Rapid Regression Detection in Software Deployments through Sequential Testing Proceedings of the 28th ACM SIGKDD Conference on Knowledge Discovery and Data Mining, (3336-3346)
- Sobhy D, Minku L, Bahsoon R and Kazman R (2022). Continuous and Proactive Software Architecture Evaluation: An IoT Case, ACM Transactions on Software Engineering and Methodology, 31:3, (1-54), Online publication date: 31-Jul-2022.
- Olewicki D, Nayrolles M and Adams B Towards language-independent brown build detection Proceedings of the 44th International Conference on Software Engineering, (2177-2188)
- Camilli M, Guerriero A, Janes A, Russo B and Russo S Microservices integrated performance and reliability testing Proceedings of the 3rd ACM/IEEE International Conference on Automation of Software Test, (29-39)
- Grünbacher P A Study on Variability for Multi-Device Rendering in Digital Music Publishing Proceedings of the 16th International Working Conference on Variability Modelling of Software-Intensive Systems, (1-9)
- Chen K, Faddi Z, Nagaraju V and Fiondella L Quantifying the Impact of Staged Rollout Policies on Software Process and Product Metrics 2022 Annual Reliability and Maintainability Symposium (RAMS), (1-6)
- Fernández González D, Rodríguez Lera F, Esteban G and Fernández Llamas C (2022). SecDocker: Hardening the Continuous Integration Workflow, SN Computer Science, 3:1, Online publication date: 1-Jan-2022.
- Pereira I, Carneiro T and Figueiredo E Investigating Continuous Delivery on IoT Systems Proceedings of the XX Brazilian Symposium on Software Quality, (1-10)
- Toslali M, Parthasarathy S, Oliveira F, Huang H and Coskun A Iter8 Proceedings of the ACM Symposium on Cloud Computing, (289-304)
- Rahman A, Shahriar H and Bose D How Do Students Feel About Automated Security Static Analysis Exercises? 2021 IEEE Frontiers in Education Conference (FIE), (1-4)
- Chen R and Wu W Parallelizing Automatic Model Management System for AIOps on Microservice Platforms Euro-Par 2021: Parallel Processing Workshops, (376-387)
- Lampel J, Just S, Apel S and Zeller A When life gives you oranges: detecting and diagnosing intermittent job failures at Mozilla Proceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, (1381-1392)
- Kehrer S, Zietlow D, Scheffold J and Blochinger W (2020). Self-tuning serverless task farming using proactive elasticity control, Cluster Computing, 24:2, (799-817), Online publication date: 1-Jun-2021.
- Angermeir F, Voggenreiter M, Moyón F and Mendez D Enterprise-driven open source software Proceedings of the 43rd International Conference on Software Engineering: Software Engineering in Practice, (278-287)
- Lim G, Ham M, Moon J and Song W LightSys Proceedings of the 43rd International Conference on Software Engineering: Software Engineering in Practice, (1-10)
- Alves I and Rocha C Qualifying software engineers undergraduates in DevOps - challenges of introducing technical and non-technical concepts in a project-oriented course Proceedings of the 43rd International Conference on Software Engineering: Joint Track on Software Engineering Education and Training, (144-153)
- Elazhary O, Storey M, Ernst N and Paradis E ADEPT Proceedings of the 43rd International Conference on Software Engineering: New Ideas and Emerging Results, (26-30)
- Ben Mesmia W, Escheikh M and Barkaoui K (2020). DevOps workflow verification and duration prediction using non‐Markovian stochastic Petri nets, Journal of Software: Evolution and Process, 33:3, Online publication date: 3-Mar-2021.
- Sabau A, Hacks S and Steffens A (2021). Implementation of a continuous delivery pipeline for enterprise architecture model evolution, Software and Systems Modeling (SoSyM), 20:1, (117-145), Online publication date: 1-Feb-2021.
- Rahman A, Rahman M, Parnin C and Williams L (2021). Security Smells in Ansible and Chef Scripts, ACM Transactions on Software Engineering and Methodology, 30:1, (1-31), Online publication date: 31-Jan-2021.
- Schermann G, Oliveira F, Wittern E and Leitner P Topology-Aware Continuous Experimentation in Microservice-Based Applications Service-Oriented Computing, (19-35)
- Leite L, Rocha C, Kon F, Milojicic D and Meirelles P (2019). A Survey of DevOps Concepts and Challenges, ACM Computing Surveys, 52:6, (1-35), Online publication date: 30-Nov-2020.
- Moyón F, Soares R, Pinto-Albuquerque M, Mendez D and Beckers K Integration of Security Standards in DevOps Pipelines: An Industry Case Study Product-Focused Software Process Improvement, (434-452)
- Lwakatare L, Crnkovic I, Rånge E and Bosch J From a Data Science Driven Process to a Continuous Delivery Process for Machine Learning Systems Product-Focused Software Process Improvement, (185-201)
- Hasan M, Bhuiyan F and Rahman A Testing practices for infrastructure as code Proceedings of the 1st ACM SIGSOFT International Workshop on Languages and Tools for Next-Generation Testing, (7-12)
- Vassallo C, Proksch S, Jancso A, Gall H and Di Penta M Configuration smells in continuous delivery pipelines: a linter and a six-month study on GitLab Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, (327-337)
- Siegmund N, Ruckel N and Siegmund J Dimensions of software configuration: on the configuration context in modern software development Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, (338-349)
- Villaça L, Azevedo L and Siqueira S Microservice Architecture for Multistore Database Using Canonical Data Model Proceedings of the XVI Brazilian Symposium on Information Systems, (1-8)
- Bernabé-Sánchez I, Díaz-Sánchez D and Muñoz-Organero M (2020). Specification and Unattended Deployment of Home Networks at the Edge of the Network, IEEE Transactions on Consumer Electronics, 66:4, (279-288), Online publication date: 1-Nov-2020.
- Destro G and de França B Mining Software Repositories for the Characterization of Continuous Integration and Delivery Proceedings of the XXXIV Brazilian Symposium on Software Engineering, (664-669)
- Satyal S, Fletcher N and Ghosh S Continuous Improvement of Medical Diagnostic Systems with Large Scale Patient Vignette Simulation Proceedings of the 29th ACM International Conference on Information & Knowledge Management, (2717-2724)
- Yoder J and Merson P Strangler patterns Proceedings of the 27th Conference on Pattern Languages of Programs, (1-25)
- Gazzola L, Goldstein M, Mariani L, Segall I and Ussi L Automatic Ex-Vivo Regression Testing of Microservices Proceedings of the IEEE/ACM 1st International Conference on Automation of Software Test, (11-20)
- Wurster M, Breitenbücher U, Brogi A, Harzenetter L, Leymann F and Soldani J Technology-Agnostic Declarative Deployment Automation of Cloud Applications Service-Oriented and Cloud Computing, (97-112)
- Bhuiyan F and Rahman A Characterizing co-located insecure coding patterns in infrastructure as code scripts Proceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering, (27-32)
- Dineva K and Atanasova T Architectural ML Framework for IoT Services Delivery Based on Microservices Distributed Computer and Communication Networks, (698-711)
- Grambow M, Wittern E and Bermbach D (2020). Benchmarking the performance of microservice applications, ACM SIGAPP Applied Computing Review, 20:3, (20-34), Online publication date: 1-Sep-2020.
- Rahman A, Farhana E and Williams L (2020). The ‘as code’ activities: development anti-patterns for infrastructure as code, Empirical Software Engineering, 25:5, (3430-3467), Online publication date: 1-Sep-2020.
- Meinicke J, Hoyos J, Vasilescu B and Kästner C Capture the Feature Flag Proceedings of the 17th International Conference on Mining Software Repositories, (169-173)
- Meinicke J, Wong C, Vasilescu B and Kästner C Exploring differences and commonalities between feature flags and configuration options Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering: Software Engineering in Practice, (233-242)
- Ramanathan M, Clapp L, Barik R and Sridharan M Piranha Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering: Software Engineering in Practice, (221-230)
- Rahman A, Farhana E, Parnin C and Williams L Gang of eight Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering, (752-764)
- Chen B and Jiang Z Studying the use of Java logging utilities in the wild Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering, (397-408)
- Olsson H and Bosch J (2020). Going digital, Journal of Software: Evolution and Process, 32:6, Online publication date: 4-Jun-2020.
- Grambow M, Meusel L, Wittern E and Bermbach D Benchmarking microservice performance Proceedings of the 35th Annual ACM Symposium on Applied Computing, (232-241)
- Di Penta M Understanding and Improving Continuous Integration and Delivery Practice using Data from the Wild Proceedings of the 13th Innovations in Software Engineering Conference (formerly known as India Software Engineering Conference), (1-1)
- Zhang X, Xu Y, Lin Q, Qiao B, Zhang H, Dang Y, Xie C, Yang X, Cheng Q, Li Z, Chen J, He X, Yao R, Lou J, Chintalapati M, Shen F and Zhang D Robust log-based anomaly detection on unstable log data Proceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, (807-817)
- Chen B and Jiang Z (2019). Extracting and studying the Logging-Code-Issue- Introducing changes in Java-based large-scale open source software systems, Empirical Software Engineering, 24:4, (2285-2322), Online publication date: 1-Aug-2019.
- Wiedemann A, Wiesche M and Krcmar H Integrating Development and Operations in Cross-Functional Teams - Toward a DevOps Competency Model Proceedings of the 2019 on Computers and People Research Conference, (14-19)
- Miclaus A, Pescara E, Mädche A and Beigl M Drive by maintenance Proceedings of the 12th ACM International Conference on PErvasive Technologies Related to Assistive Environments, (382-388)
- Shahin M, Zahedi M, Babar M and Zhu L (2019). An empirical study of architecting for continuous delivery and deployment, Empirical Software Engineering, 24:3, (1061-1108), Online publication date: 1-Jun-2019.
- Jiménez M, Rivera L, Villegas N, Tamura G, Müller H and Bencomo N An architectural framework for quality-driven adaptive continuous experimentation Proceedings of the Joint 4th International Workshop on Rapid Continuous Software Engineering and 1st International Workshop on Data-Driven Decisions, Experimentation and Evolution, (20-23)
- Huijgens H, Greuter E, Brons J, van Doorn E, Papadopoulos I, Martinez F, Aniche M, Visser O and van Deursen A Factors affecting cloud infra-service development lead times Proceedings of the 41st International Conference on Software Engineering: Software Engineering in Practice, (233-242)
- Basiri A, Hochstein L, Jones N and Tucker H Automating chaos experiments in production Proceedings of the 41st International Conference on Software Engineering: Software Engineering in Practice, (31-40)
- Xia T, Bhardwaj S, Dmitriev P and Fabijan A Safe velocity Proceedings of the 41st International Conference on Software Engineering: Software Engineering in Practice, (11-20)
- Fabijan A, Dmitriev P, Olsson H, Bosch J, Vermeer L and Lewis D Three key checklists and remedies for trustworthy analysis of online controlled experiments at scale Proceedings of the 41st International Conference on Software Engineering: Software Engineering in Practice, (1-10)
- Aniche M, Yoder J and Kon F Current challenges in practical object-oriented software design Proceedings of the 41st International Conference on Software Engineering: New Ideas and Emerging Results, (113-116)
- Pietrantuono R, Bertolino A, De Angelis G, Miranda B and Russo S Towards continuous software reliability testing in DevOps Proceedings of the 14th International Workshop on Automation of Software Test, (21-27)
- di Biase M, Rastogi A, Bruntink M and van Deursen A The delta maintainability model Proceedings of the Second International Conference on Technical Debt, (113-122)
- Joshi S and Chimalakonda S RapidRelease Proceedings of the 16th International Conference on Mining Software Repositories, (587-591)
- Mitropoulos D, Louridas P, Salis V and Spinellis D Time present and time past Proceedings of the 16th International Conference on Mining Software Repositories, (126-137)
- Catolino G, Di Nucci D and Ferrucci F Cross-project just-in-time bug prediction for mobile apps Proceedings of the 6th International Conference on Mobile Software Engineering and Systems, (99-110)
- Rahman A, Parnin C and Williams L The seven sins Proceedings of the 41st International Conference on Software Engineering, (164-175)
- Vassallo C, Proksch S, Gall H and Di Penta M Automated reporting of anti-patterns and decay in continuous integration Proceedings of the 41st International Conference on Software Engineering, (105-115)
- Loss S, Ciriello R and Cito J Beware of disengaged user acceptance in testing software-as-a-service Proceedings of the 41st International Conference on Software Engineering: Companion Proceedings, (298-299)
- Ferry N, Dominiak J, Gallon A, González E, Iturbe E, Lavirotte S, Martinez S, Metzger A, Muntés-Mulero V, Nguyen P, Palm A, Rego A, Rios E, Riviera D, Solberg A, Song H, Tigli J and Winter T Development and Operation of Trustworthy Smart IoT Systems: The ENACT Framework Software Engineering Aspects of Continuous Development and New Paradigms of Software Production and Deployment, (121-138)
- De Sanctis M, Bucchiarone A and Trubiani C A DevOps Perspective for QoS-Aware Adaptive Applications Software Engineering Aspects of Continuous Development and New Paradigms of Software Production and Deployment, (95-111)
- Mäkinen S, Lehtonen T, Kilamo T, Puonti M, Mikkonen T and Männistö T Revisiting continuous deployment maturity Proceedings of the 34th ACM/SIGAPP Symposium on Applied Computing, (1810-1817)
- Bezemer C, Eismann S, Ferme V, Grohmann J, Heinrich R, Jamshidi P, Shang W, van Hoorn A, Villavicencio M, Walter J and Willnecker F How is Performance Addressed in DevOps? Proceedings of the 2019 ACM/SPEC International Conference on Performance Engineering, (45-50)
- Ibrahim M, Syed-Mohamad S and Husin M Managing Quality Assurance Challenges of DevOps through Analytics Proceedings of the 2019 8th International Conference on Software and Computer Applications, (194-198)
- Gupta M, Mandal A, Dasgupta G and Serebrenik A Runtime Monitoring in Continuous Deployment by Differencing Execution Behavior Model Service-Oriented Computing, (812-827)
- Boyer F, Etchevers X, de Palma N and Tao X Architecture-Based Automated Updates of Distributed Microservices Service-Oriented Computing, (21-36)
- Rivera L, Villegas N, Tamura G, Jiménez M and Müller H UML-driven automated software deployment Proceedings of the 28th Annual International Conference on Computer Science and Software Engineering, (257-268)
- Tzoref-Brill R and Maoz S Modify, enhance, select: co-evolution of combinatorial models and test plans Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, (235-245)
- Zhang Y, Vasilescu B, Wang H and Filkov V One size does not fit all: an empirical study of containerized continuous deployment workflows Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, (295-306)
- Giallorenzo S, Lanese I and Russo D ChIP: A Choreographic Integration Process On the Move to Meaningful Internet Systems. OTM 2018 Conferences, (22-40)
- Huijgens H, Spadini D, Stevens D, Visser N and van Deursen A Software analytics in continuous delivery Proceedings of the 12th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, (1-10)
- Stratis P, Yaneva V and Rajan A Assessing the effect of data transformations on test suite compilation Proceedings of the 12th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, (1-10)
- Mendonça N, Garlan D, Schmerl B and Cámara J Generality vs. reusability in architecture-based self-adaptation Proceedings of the 12th European Conference on Software Architecture: Companion Proceedings, (1-6)
- Antunes R, Navarro G and Hanazumi S Test Framework for Jenkins Shared Libraries Proceedings of the III Brazilian Symposium on Systematic and Automated Software Testing, (13-19)
- Nurdiani I, Börstler J and Fricker S (2018). Literature review of flexibility attributes, Journal of Software: Evolution and Process, 30:9, Online publication date: 17-Sep-2018.
- Vassallo C, Palomba F, Bacchelli A and Gall H Continuous code quality: are we (really) doing that? Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering, (790-795)
- Forbrig P and Dittmar A Integrating HCD into BizDevOps by Using the Subject-Oriented Approach Human-Centered Software Engineering, (327-334)
- Akerele O (2018). System dynamics modelling of the impact of agile practice on the quality of continuous delivery projects, Innovations in Systems and Software Engineering, 14:3, (183-208), Online publication date: 1-Sep-2018.
- Kehrer S and Blochinger W (2018). TOSCA-based container orchestration on Mesos, Computer Science - Research and Development, 33:3-4, (305-316), Online publication date: 1-Aug-2018.
- Greising L, Bartel A and Hagel G Introducing a Deployment Pipeline for Continuous Delivery in a Software Architecture Course Proceedings of the 3rd European Conference of Software Engineering Education, (102-107)
- Rahman A, Partho A, Morrison P and Williams L What questions do programmers ask about configuration as code? Proceedings of the 4th International Workshop on Rapid Continuous Software Engineering, (16-22)
- Steffens A, Lichter H and Döring J Designing a next-generation continuous software delivery system Proceedings of the 4th International Workshop on Rapid Continuous Software Engineering, (1-7)
- Düllmann T, Paule C and van Hoorn A Exploiting devops practices for dependable and secure continuous delivery pipelines Proceedings of the 4th International Workshop on Rapid Continuous Software Engineering, (27-30)
- Vassallo C, Proksch S, Zemp T and Gall H Un-break my build Proceedings of the 26th Conference on Program Comprehension, (41-51)
- Dittrich Y, Nørbjerg J, Tell P and Bendix L Researching cooperation and communication in continuous software engineering Proceedings of the 11th International Workshop on Cooperative and Human Aspects of Software Engineering, (87-90)
- van der Valk R, Pelliccione P, Lago P, Heldal R, Knauss E and Juul J Transparency and contracts Proceedings of the 40th International Conference on Software Engineering: Software Engineering in Practice, (23-32)
- Rahman A, Stallings J and Williams L Defect prediction metrics for infrastructure as code scripts in DevOps Proceedings of the 40th International Conference on Software Engineering: Companion Proceeedings, (414-415)
- Rahman A Characteristics of defective infrastructure as code scripts in DevOps Proceedings of the 40th International Conference on Software Engineering: Companion Proceeedings, (476-479)
- Ståhl D and Bosch J Cinders Proceedings of the 2018 International Conference on Software and System Process, (128-129)
- Mazkatli M and Koziolek A Continuous Integration of Performance Model Companion of the 2018 ACM/SPEC International Conference on Performance Engineering, (153-158)
- Ferry N, Chauvel F, Song H, Rossini A, Lushpenko M and Solberg A (2018). CloudMF, ACM Transactions on Internet Technology, 18:2, (1-24), Online publication date: 18-Mar-2018.
- Brook J, Cuadrado F, Deliot E, Guijarro J, Hawkes R, Lotz M, Pascal R, Sae-Lor S, Vaquero L, Varvenne J and Wilcock L (2018). Loom, Future Generation Computer Systems, 80:C, (47-62), Online publication date: 1-Mar-2018.
- Fhang M and Swamy R Best Practices in Release Management of Large Projects Proceedings of the 2018 7th International Conference on Software and Computer Applications, (51-55)
- Schermann G Continuous experimentation for software developers Proceedings of the 18th Doctoral Symposium of the 18th International Middleware Conference, (5-8)
- Wurster M, Breitenbücher U, Falkenthal M and Leymann F Developing, deploying, and operating twelve-factor applications with TOSCA Proceedings of the 19th International Conference on Information Integration and Web-based Applications & Services, (519-525)
- Sandobalin J A Model-Driven Approach to Continuous Delivery of Cloud Resources Service-Oriented Computing – ICSOC 2017 Workshops, (346-351)
- Tizzei L, Nery M, Segura V and Cerqueira R Using Microservices and Software Product Line Engineering to Support Reuse of Evolving Multi-tenant SaaS Proceedings of the 21st International Systems and Software Product Line Conference - Volume A, (205-214)
- Suneja S, Koller R, Isci C, de Lara E, Hashemi A, Bhattacharyya A and Amza C (2017). Safe Inspection of Live Virtual Machines, ACM SIGPLAN Notices, 52:7, (97-111), Online publication date: 14-Sep-2017.
- Huijgens H, Lamping R, Stevens D, Rothengatter H, Gousios G and Romano D Strong agile metrics: mining log data to determine predictive power of software metrics for continuous delivery teams Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering, (866-871)
- Shahin M, Zahedi M, Babar M and Zhu L Adopting Continuous Delivery and Deployment Proceedings of the 21st International Conference on Evaluation and Assessment in Software Engineering, (384-393)
- Chen L (2017). Continuous Delivery, Journal of Systems and Software, 128:C, (72-86), Online publication date: 1-Jun-2017.
- Karvonen T, Behutiye W, Oivo M and Kuvaja P (2017). Systematic literature review on the impacts of agile release engineering practices, Information and Software Technology, 86:C, (87-100), Online publication date: 1-Jun-2017.
- Alperowitz L, Weintraud A, Kofler S and Bruegge B Continuous prototyping Proceedings of the 3rd International Workshop on Rapid Continuous Software Engineering, (36-42)
- Farahmandpour Z, Versteeg S, Han J and Kameswaran A Service virtualisation of internet-of-things devices Proceedings of the 3rd International Workshop on Rapid Continuous Software Engineering, (32-35)
- Rahman A, Partho A, Meder D and Williams L Which factors influence practitioners' usage of build automation tools? Proceedings of the 3rd International Workshop on Rapid Continuous Software Engineering, (20-26)
- Krusche S and Bruegge B CSEPM Proceedings of the 3rd International Workshop on Rapid Continuous Software Engineering, (2-8)
- Aderaldo C, Mendonça N, Pahl C and Jamshidi P Benchmark requirements for microservices architecture research Proceedings of the 1st International Workshop on Establishing the Community-Wide Infrastructure for Architecture-Based Software Engineering, (8-13)
- Cito J, Schermann G, Wittern J, Leitner P, Zumberi S and Gall H An empirical analysis of the docker container ecosystem on GitHub Proceedings of the 14th International Conference on Mining Software Repositories, (323-333)
- Chen B and Jiang Z Characterizing and detecting anti-patterns in the logging code Proceedings of the 39th International Conference on Software Engineering, (71-81)
- de Jong M, van Deursen A and Cleve A Zero-downtime SQL database schema evolution for continuous deployment Proceedings of the 39th International Conference on Software Engineering: Software Engineering in Practice Track, (143-152)
- Laukkanen E, Paasivaara M, Itkonen J, Lassenius C and Arvonen T Towards continuous delivery by reducing the feature freeze period Proceedings of the 39th International Conference on Software Engineering: Software Engineering in Practice Track, (23-32)
- Kevic K, Murphy B, Williams L and Beckmann J Characterizing experimentation in continuous deployment Proceedings of the 39th International Conference on Software Engineering: Software Engineering in Practice Track, (123-132)
- Chatley R and Field T Lean learning Proceedings of the 39th International Conference on Software Engineering: Software Engineering and Education Track, (117-126)
- Liechti O, Pasquier J and Reis R Supporting Agile teams with a test analytics platform Proceedings of the 12th International Workshop on Automation of Software Testing, (9-15)
- Makki M, Van Landuyt D and Joosen W (2016). Automated regression testing of BPMN 2.0 processes: a capture and replay framework for continuous delivery, ACM SIGPLAN Notices, 52:3, (178-189), Online publication date: 12-May-2017.
- Sthl D, Mrtensson T and Bosch J (2017). The continuity of continuous integration, Journal of Systems and Software, 127:C, (150-167), Online publication date: 1-May-2017.
- Heinrich R, van Hoorn A, Knoche H, Li F, Lwakatare L, Pahl C, Schulte S and Wettinger J Performance Engineering for Microservices Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion, (223-226)
- Düllmann T and van Hoorn A Model-driven Generation of Microservice Architectures for Benchmarking Performance and Resilience Engineering Approaches Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion, (171-172)
- Suneja S, Koller R, Isci C, de Lara E, Hashemi A, Bhattacharyya A and Amza C Safe Inspection of Live Virtual Machines Proceedings of the 13th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, (97-111)
- Virtanen A, Kuusinen K, Leppänen M, Luoto A, Kilamo T and Mikkonen T On continuous deployment maturity in customer projects Proceedings of the Symposium on Applied Computing, (1205-1212)
- Lehmann M and Sandnes F A framework for evaluating continuous microservice delivery strategies Proceedings of the Second International Conference on Internet of things, Data and Cloud Computing, (1-9)
- (2017). Cinders, Information and Software Technology, 83:C, (76-93), Online publication date: 1-Mar-2017.
- Fu M, Zhu L, Sun D, Liu A, Bass L and Lu Q (2017). Runtime recovery actions selection for sporadic operations on public cloud, Software—Practice & Experience, 47:2, (223-248), Online publication date: 1-Feb-2017.
- Zhang W, Hwang J, Rajagopalan S, Ramakrishnan K and Wood T Flurries Proceedings of the 12th International on Conference on emerging Networking EXperiments and Technologies, (3-17)
- Opara-Martins J, Sahandi R and Tian F (2016). Critical analysis of vendor lock-in and its impact on cloud computing migration, Journal of Cloud Computing: Advances, Systems and Applications, 5:1, (1-18), Online publication date: 1-Dec-2016.
- Mäkinen S, Leppänen M, Kilamo T, Mattila A, Laukkanen E, Pagels M and Männistö T (2016). Improving the delivery cycle, Information and Software Technology, 80:C, (175-194), Online publication date: 1-Dec-2016.
- Cuesta C, Navarro E and Zdun U Synergies of system-of-systems and microservices architectures Proceedings of the International Colloquium on Software-intensive Systems-of-Systems at 10th European Conference on Software Architecture, (1-7)
- Gerostathopoulos I, Bures T, Schmid S, Horky V, Prehofer C and Tuma P Towards systematic live experimentation in software-intensive systems of systems Proceedings of the International Colloquium on Software-intensive Systems-of-Systems at 10th European Conference on Software Architecture, (1-7)
- Schermann G, Schöni D, Leitner P and Gall H Bifrost Proceedings of the 17th International Middleware Conference, (1-14)
- Soltani J Adopting continuous delivery in AAA console games Proceedings of the 4th International Workshop on Release Engineering, (5-6)
- Herbsleb J Building a socio-technical theory of coordination: why and how (outstanding research award) Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, (2-10)
- Rossi C, Shibley E, Su S, Beck K, Savor T and Stumm M Continuous deployment of mobile software at facebook (showcase) Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, (12-23)
- Makki M, Van Landuyt D and Joosen W Automated regression testing of BPMN 2.0 processes: a capture and replay framework for continuous delivery Proceedings of the 2016 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences, (178-189)
- Itkonen J, Udd R, Lassenius C and Lehtonen T Perceived Benefits of Adopting Continuous Delivery Practices Proceedings of the 10th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, (1-6)
- Laukkanen E, Lehtinen T, Itkonen J, Paasivaara M and Lassenius C Bottom-up Adoption of Continuous Delivery in a Stage-Gate Managed Software Organization Proceedings of the 10th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, (1-10)
- (2016). Emerging themes in agile software development, Information and Software Technology, 77:C, (56-60), Online publication date: 1-Sep-2016.
- Kroß J, Willnecker F, Zwickl T and Krcmar H PET: continuous performance evaluation tool Proceedings of the 2nd International Workshop on Quality-Aware DevOps, (42-43)
- Sharma T, Fragkoulis M and Spinellis D Does your configuration code smell? Proceedings of the 13th International Conference on Mining Software Repositories, (189-200)
- Gómez M, Rouvoy R, Adams B and Seinturier L Mining test repositories for automatic detection of UI performance regressions in Android apps Proceedings of the 13th International Conference on Mining Software Repositories, (13-24)
- Rahman M, Querel L, Rigby P and Adams B Feature toggles Proceedings of the 13th International Conference on Mining Software Repositories, (201-211)
- Kerzazi N and Adams B Who needs release and devops engineers, and why? Proceedings of the International Workshop on Continuous Software Evolution and Delivery, (77-83)
- Chen L Continuous delivery Proceedings of the International Workshop on Continuous Software Evolution and Delivery, (84-84)
- Klepper S, Krusche S and Bruegge B Semi-automatic generation of audience-specific release notes Proceedings of the International Workshop on Continuous Software Evolution and Delivery, (19-22)
- Ringlstetter A, Scherzinger S and Bissyandé T Data model evolution using object-NoSQL mappers Proceedings of the 2nd International Workshop on BIG Data Software Engineering, (33-36)
- Savor T, Douglas M, Gentili M, Williams L, Beck K and Stumm M Continuous deployment at Facebook and OANDA Proceedings of the 38th International Conference on Software Engineering Companion, (21-30)
- Alperowitz L, Dzvonyar D and Bruegge B Metrics in Agile project courses Proceedings of the 38th International Conference on Software Engineering Companion, (323-326)
- Lahtinen S and Leppänen M Refactoring Patterns, Practices for Daily Work Proceedings of the 10th Travelling Conference on Pattern Languages of Programs, (1-8)
- Durak U, Öztürk A and Katircioglu M Simulation deployment blockset for MATLAB/Simulink Proceedings of the Symposium on Theory of Modeling & Simulation, (1-8)
- Vlietland J, van Solingen R and van Vliet H (2016). Aligning codependent Scrum teams to enable fast business value delivery, Journal of Systems and Software, 113:C, (418-429), Online publication date: 1-Mar-2016.
- Wettinger J, Breitenbücher U, Kopp O and Leymann F (2016). Streamlining DevOps automation for Cloud applications using TOSCA as standardized metamodel, Future Generation Computer Systems, 56:C, (317-332), Online publication date: 1-Mar-2016.
- Rehmann K, Seo C, Hwang D, Truong B, Boehm A and Lee D (2016). Performance Monitoring in SAP HANA's Continuous Integration Process, ACM SIGMETRICS Performance Evaluation Review, 43:4, (43-52), Online publication date: 25-Feb-2016.
- Bruegge B, Krusche S and Alperowitz L (2015). Software Engineering Project Courses with Industrial Clients, ACM Transactions on Computing Education, 15:4, (1-31), Online publication date: 23-Dec-2015.
- Wettinger J, Andrikopoulos V and Leymann F Enabling DevOps Collaboration and Continuous Delivery Using Diverse Application Environments Proceedings of the Confederated International Conferences on On the Move to Meaningful Internet Systems: OTM 2015 Conferences - Volume 9415, (348-358)
- Cito J, Leitner P, Gall H, Dadashi A, Keller A and Roth A Runtime metric meets developer: building better cloud applications using feedback 2015 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (Onward!), (14-27)
- Kilamo T, Leppänen M and Mikkonen T The social developer: now, then, and tomorrow Proceedings of the 7th International Workshop on Social Software Engineering, (41-48)
- Ferry N, Chauvel F, Song H and Solberg A Continous deployment of multi-cloud systems Proceedings of the 1st International Workshop on Quality-Aware DevOps, (27-28)
- Dlugi M, Brunnert A and Krcmar H Model-based performance evaluations in continuous delivery pipelines Proceedings of the 1st International Workshop on Quality-Aware DevOps, (25-26)
- Vasilescu B, Yu Y, Wang H, Devanbu P and Filkov V Quality and productivity outcomes relating to continuous integration in GitHub Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, (805-816)
- Van Landuyt D, Walraven S and Joosen W Variability middleware for multi-tenant SaaS applications Proceedings of the 19th International Conference on Software Product Line, (211-215)
- Tarvo A, Sweeney P, Mitchell N, Rajan V, Arnold M and Baldini I CanaryAdvisor: a statistical-based tool for canary testing (demo) Proceedings of the 2015 International Symposium on Software Testing and Analysis, (418-422)
- Austel P, Chen H, Mikalsen T, Rouvellou I, Sharma U, Silva-Lepe I and Subramanian R Continuous Delivery of Composite Solutions Proceedings of the 2nd International Workshop on Software-Defined Ecosystems, (3-6)
- Segall I and Tzoref-Brill R Feedback-driven combinatorial test design and execution Proceedings of the 8th ACM International Systems and Storage Conference, (1-6)
- de Jong M and van Deursen A Continuous deployment and schema evolution in SQL databases Proceedings of the Third International Workshop on Release Engineering, (16-19)
- Leppänen M, Kilamo T and Mikkonen T Towards post-agile development practices through productized development infrastructure Proceedings of the Second International Workshop on Rapid Continuous Software Engineering, (34-40)
- Klepper S, Krusche S, Peters S, Bruegge B and Alperowitz L Introducing continuous delivery of mobile apps in a corporate environment Proceedings of the Second International Workshop on Rapid Continuous Software Engineering, (5-11)
- Jiang Y and Adams B Co-evolution of infrastructure and source code Proceedings of the 12th Working Conference on Mining Software Repositories, (45-55)
- Adams B, Bellomo S, Bird C, Khomh F and Moir K 3rd international workshop on release engineering (RELENG 2015) Proceedings of the 37th International Conference on Software Engineering - Volume 2, (995-996)
- Saha R, Zhang L, Khurshid S and Perry D An information retrieval approach for regression test prioritization based on program changes Proceedings of the 37th International Conference on Software Engineering - Volume 1, (268-279)
- Spinellis D (2015). The Strategic Importance of Release Engineering, IEEE Software, 32:2, (3-5), Online publication date: 1-Mar-2015.
- Leppanen M, Makinen S, Pagels M, Eloranta V, Itkonen J, Mantyla M and Mannisto T (2015). The Highways and Country Roads to Continuous Deployment, IEEE Software, 32:2, (64-72), Online publication date: 1-Mar-2015.
- Lianping Chen (2015). Continuous Delivery: Huge Benefits, but Challenges Too, IEEE Software, 32:2, (50-54), Online publication date: 1-Mar-2015.
- Brunnert A and Krcmar H Detecting performance change in enterprise application versions using resource profiles Proceedings of the 8th International Conference on Performance Evaluation Methodologies and Tools, (165-172)
- Ferry N, Song H, Rossini A, Chauvel F and Solberg A Cloud MF Proceedings of the 2014 IEEE/ACM 7th International Conference on Utility and Cloud Computing, (269-277)
- Wettinger J, Breitenbücher U and Leymann F Standards-Based DevOps Automation and Integration Using TOSCA Proceedings of the 2014 IEEE/ACM 7th International Conference on Utility and Cloud Computing, (59-68)
- Di Cosmo R, Lienhardt M, Treinen R, Zacchiroli S, Zwolakowski J, Eiche A and Agahi A Automated synthesis and deployment of cloud applications Proceedings of the 29th ACM/IEEE International Conference on Automated Software Engineering, (211-222)
- Krusche S, Alperowitz L, Bruegge B and Wagner M Rugby: an agile process model based on continuous delivery Proceedings of the 1st International Workshop on Rapid Continuous Software Engineering, (42-50)
- Fitzgerald B and Stol K Continuous software engineering and beyond: trends and challenges Proceedings of the 1st International Workshop on Rapid Continuous Software Engineering, (1-9)
- Ramler R, Putschögl W and Winkler D Automated testing of industrial automation software: practical receipts and lessons learned Proceedings of the 1st International Workshop on Modern Software Engineering Methods for Industrial Automation, (7-16)
- McIntosh S, Poehlmann M, Juergens E, Mockus A, Adams B, Hassan A, Haupt B and Wagner C Collecting and leveraging a benchmark of build system clones to aid in quality assessments Companion Proceedings of the 36th International Conference on Software Engineering, (145-154)
- Krusche S and Alperowitz L Introduction of continuous delivery in multi-customer project courses Companion Proceedings of the 36th International Conference on Software Engineering, (335-343)
- Le W and Pattison S Patch verification via multiversion interprocedural control flow graphs Proceedings of the 36th International Conference on Software Engineering, (1047-1058)
- Hummer W, Rosenberg F, Oliveira F and Eilam T Automated testing of chef automation scripts Proceedings Demo & Poster Track of ACM/IFIP/USENIX International Middleware Conference, (1-2)
- Bendix L and Pendleton C The role of configuration management in outsourcing and distributed development Proceedings of the 9th Central & Eastern European Software Engineering Conference in Russia, (1-10)
- Gruhn V, Hannebauer C and John C Security of public continuous integration services Proceedings of the 9th International Symposium on Open Collaboration, (1-10)
- Kerzazi N Branching strategies based on social networks Proceedings of the 1st International Workshop on Release Engineering, (25-28)
- Khomh F, Dhaliwal T, Zou Y and Adams B Do faster releases improve software quality? Proceedings of the 9th IEEE Working Conference on Mining Software Repositories, (179-188)
- Hsieh C, Cheng Y and Chen C Emerging patterns of continuous integration for cross-platform software development Proceedings of the 2nd Asian Conference on Pattern Languages of Programs, (1-9)
- Butzin B, Golatowski F and Timmermann D Microservices approach for the internet of things 2016 IEEE 21st International Conference on Emerging Technologies and Factory Automation (ETFA), (1-6)
Index Terms
- Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation
Recommendations
Beyond continuous delivery: an empirical investigation of continuous deployment challenges
ESEM '17: Proceedings of the 11th ACM/IEEE International Symposium on Empirical Software Engineering and MeasurementContext: A growing number of software organizations have been adopting Continuous DElivery (CDE) and Continuous Deployment (CD) practices. Researchers have started investing significant efforts in studying different aspects of CDE and CD. Many studies ...
Exploring Peopleware in Continuous Delivery
XP '16 Workshops: Proceedings of the Scientific Workshop Proceedings of XP2016Traditionally, releasing new software has been a fragile and painful procedure. This view has been challenged by a new approach to software deployment, where the goal is to always be able to deploy the system. The transition from manual releases to ...
Continuous Integration and Delivery for HPC: Using Singularity and Jenkins
PEARC '18: Proceedings of the Practice and Experience on Advanced Research ComputingContinuous integration, delivery, and deployment (CICD) is widely used in DevOps communities, as it allows for teams of all sizes to deploy rapidly-changing hardware and software resources quickly and confidently. In this paper, we will describe how ...