ebook img

DevOps adoption and implementation in software development practice PDF

114 Pages·2017·3.3 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview DevOps adoption and implementation in software development practice

A OULU 2017 7 A 702 0 2 UNIVERSITY OF OULU P.O. Box 8000 FI-90014 UNIVERSITY OF OULU FINLAND AACCTTAA A UUNNIIVVEERRSSIITTAATTIISS OOUULLUUEENNSSIISS A C T A U N I V E R S I T A T I S O U L U E N S I S C T A AA SSCCIIEENNTTIIAAEE RREERRUUMM Lucy Ellen Lwakatare NNAATTUURRAALLIIUUMM University Lecturer Tuomo Glumoff L DEVOPS ADOPTION AND u c y E IMPLEMENTATION IN l University Lecturer Santeri Palviainen le n SOFTWARE DEVELOPMENT L w a Postdoctoral research fellow Sanna Taskila k PRACTICE a t a r e Professor Olli Vuolteenaho CONCEPT, PRACTICES, BENEFITS AND CHALLENGES University Lecturer Veli-Matti Ulvinen Planning Director Pertti Tikkanen Professor Jari Juga University Lecturer Anu Soikkeli Professor Olli Vuolteenaho UNIVERSITY OF OULU GRADUATE SCHOOL; UNIVERSITY OF OULU, FACULTY OF INFORMATION TECHNOLOGY AND ELECTRICAL ENGINEERING Publications Editor Kirsti Nurkkala ISBN 978-952-62-1710-9 (Paperback) ISBN 978-952-62-1711-6 (PDF) ISSN 0355-3191 (Print) ISSN 1796-220X (Online) ACTA UNIVERSITATIS OULUENSIS A Scientiae Rerum Naturalium 702 LUCY ELLEN LWAKATARE DEVOPS ADOPTION AND IMPLEMENTATION IN SOFTWARE DEVELOPMENT PRACTICE Concept, practices, benefits and challenges Academic dissertation to be presented with the assent of the Doctoral Training Committee of Technology and Natural Sciences of the University of Oulu for public defence in Kainuunsali (L2), Linnanmaa, on 27 November 2017, at 12 noon UNIVERSITY OF OULU, OULU 2017 Copyright © 2017 Acta Univ. Oul. A 702, 2017 Supervised by Docent Pasi Kuvaja Professor Markku Oivo Reviewed by Professor Kari Systä Associate Professor Bram Adams Opponent Professor Ivica Crnkovic ISBN 978-952-62-1710-9 (Paperback) ISBN 978-952-62-1711-6 (PDF) ISSN 0355-3191 (Printed) ISSN 1796-220X (Online) Cover Design Raimo Ahonen JUVENES PRINT TAMPERE 2017 Lwakatare, Lucy Ellen, DevOps adoption and implementation in software development practice. Concept, practices, benefits and challenges University of Oulu Graduate School; University of Oulu, Faculty of Information Technology and Electrical Engineering Acta Univ. Oul. A 702, 2017 University of Oulu, P.O. Box 8000, FI-90014 University of Oulu, Finland Abstract In the last decade, the software industry has been marked by a growing trend of software companies’ ability to deploy new software features fast and frequently in short release cycle times. The companies’ software release cycles have been shortened to hours and minutes rather than months. To enable the transformation towards short release cycle times, companies have adopted several different strategies, including the DevOps approach. DevOps in the software industry emerged to represent a professional movement emphasising the collaboration between software development and operations. In practice, DevOps affects the company culture, processes, products, associated technologies and organisational structures used in software development and operations processes. The multifaceted nature of DevOps makes the concept ambiguous and difficult for software companies to adopt as there are many different paths to its adoption. The purpose of the thesis is to provide detailed description of the adoption and implementation of DevOps in software development comprehending the DevOps concept definition, and its practices, benefits and challenges. The research was performed by systematically reviewing the literature, multi-vocal documents and making qualitative inquiries among software practitioners; and based on that the consolidated body of knowledge of DevOps was constructed. The key finding of the research is that the DevOps approach includes an automated software deployment mechanism focusing on the rapid and repeatable release of software changes and automated management of operational infrastructure. The adoption and implementation of DevOps practices are prominent in software companies that use cloud computing technology, while its adoption is challenging in the embedded system domain. DevOps is not a silver bullet; challenges pertaining to the management of infrastructures due to legacy technologies still persist. The key lesson learned in the adoption and implementation of DevOps is that the software operational infrastructure is no longer considered separate from the development of software features; and this is achieved by having software development and operations teams jointly working together. Keywords: Agile, continuous deployment, DevOps, software development, software operations Lwakatare, Lucy Ellen, DevOpsin käyttöönotto ja toteutus ohjelmistokehitys- käytännössä. Käsite, käytännöt, edut ja haasteet. Oulun yliopiston tutkijakoulu; Oulun yliopisto, Tieto- ja sähkötekniikan tiedekunta Acta Univ. Oul. A 702, 2017 Oulun yliopisto, PL 8000, 90014 Oulun yliopisto Tiivistelmä Viimeisen vuosikymmenen aikana ohjelmistoteollisuudessa on ollut kasvavana trendinä ohjel- mistotalojen lisääntyvä kyky toimittaa ohjelmistomuutoksia nopeasti ja usein toistuvina päivi- tyksinä. Yritysten ohjelmistotoimitus- ja -päivitysjaksot ovat lyhentyneet kuukausista tunneiksi ja jopa minuuteiksi. Yritykset ovat ottaneet käyttöön useita erilaisia toimintatapoja kyetäkseen muuttamaan toimintaansa lyhyen aikavälin ohjelmistopäivityksiin kykeneväksi, joista yksi vii- meisimmistä on DevOps (saumaton ohjelmiston kehittäminen ja käyttö). Ohjelmistotuotannossa DevOps syntyi ohjelmistoteollisuudessa ammattilaisten alkaessa painottaa ohjelmistojen kehittä- misen ja käytön yhteistyön tärkeyttä. Käytännössä DevOpsilla on vaikutusta ohjelmisto-organi- saation toimintakulttuuriin, prosesseihin, tuotteisiin, sekä teknologioihin ja organisaatioraken- teisiin, joita käytetään ohjelmistokehityksessä ja käyttöönottoprosessissa. DevOpsin käsitteen moniulotteisuudesta johtuen käsitteen sisältö jää usein epäselväksi ja samalla sen mukainen toi- minta vaikeasti käyttöönotettavaksi ohjelmistoyrityksissä, koska toteutus on mahdollista tehdä monella eri tavalla. Tämän väitöksen tarkoituksena on antaa selkeä kuvaus DevOpsista ja sen toteutuksesta ohjel- mistokehityksessä niin, että sen käsite, ja käytännöt, sekä sen tarjoamat edut ja haasteet tulevat ymmärretyiksi. Tutkimuksessa suoritettiin systemaattinen kirjallisuuskatsaus tieteellisiin julkai- suihin ja muihin lähinnä käytännön kokemuksiin pohjautuviin lähteisiin, suoritettiin kvalitatiivi- set kyselytutkimukset, joiden kohteena olivat ohjelmistoammattilaiset, sekä muodostettiin näi- den pohjalta saumattoman ohjelmistokehityksen ja käytön yhtenäinen tietämyskanta. Tutkimuksen keskeinen tulos on, että DevOps-lähestymistapa sisältää automaattisen ohjel- miston käyttöönottomekanismin, joka keskittyy nopeiden ja toistettavien ohjelmistomuutosten käyttöönottoon ja sitä tukevan operatiivisen infrastruktuurin hallintaan. DevOpsin omaksumi- nen ja käyttöönotto ovat näkyvästi esillä pilvipalvelinteknologiaa käyttävissä ohjelmistoyrityk- sissä, kun taas sen käyttöönotto on haastavaa sulautettujen järjestelmien alueella. DevOps ei ole mikään ‘hopealuoti’, vaan sisältää erityisesti infrastruktuurien hallintaan liittyviä haasteita, jot- ka johtuvat edelleen käytössä olevista vanhoista tekniikoista. Keskeisin oppima DevOpsin omaksumisesta ja soveltamisesta käytäntöön on, että ohjelmistojen käyttöinfrastruktuuria ei enää tarkastella erillään ohjelmistojen kehittämisestä, vaan ne toimivat saumattomassa yhteistyössä keskenään. Asiasanat: DevOps, jatkuva käyttöönotto, ketterä, ohjelmistokehitys, ohjelmiston käyttö To my family 8

Description:
FACULTY OF INFORMATION TECHNOLOGY AND ELECTRICAL ENGINEERING. A 702. AC. T. A .. influences to the design, construction, deployment, and evolution of the system as a whole'. 3Need for . Qualitative analysis of DevOps in software-intensive organisation present the opportunity to
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.