Kui te ei mĂ”ista, mis on DevOps, siis siin on lĂŒhike kokkuvĂ”te. DevOps on praktikate kogum, mis vĂ€hendab inseneride hirme ja vĂ€hendab tarkvaraarenduse katkestuste arvu. Reeglina lĂŒhendab see turule toomise aega â perioodi ideest kuni lĂ”pptoote klientideni viimiseni, mis vĂ”imaldab kiiresti lĂ€bi viia Ă€rieksperimente.
Kuidas alustada DevOps ĂŒmberkujundamist? LĂŒhidalt: valime teenuse, millega alustada, mÀÀrame Ă€ra need, kes teenusega seotud, koostame vÀÀrtuste voogude kaardi, loome ajutise meeskonna, mis tegeleb alguses ĂŒmberkujundamisega, ja mÀÀrame talle ĂŒlesande. Korratakse tsĂŒklit vajalik arv kordi.

Ăksikasjalik DevOps ĂŒmberkujundamise plaan nĂ€idiste ja juhistega on allpool â detailses kirjelduses Andrei Aleksandrov â insener firmas Express42, mis pakub nĂ”ustamist DevOpsi kasvatamisel, kiirendades protsessi, kuna on juba koostanud kivide kaardi. Kui teile tundub, et ĂŒmberkujundamine ei ole vajalik, vĂ”i teil on selline spetsiifika, et DevOps praktikad ei sobi, â kasutage aruannet juhisena piirangute leidmiseks ja kĂ”rvaldamiseks.
Kui teid hĂ€irib DevOps ĂŒmberkujundamise kĂŒsimus, siis teil on suur ettevĂ”te ja peate seda protsessi jĂ€rk-jĂ€rgult laiendama kogu struktuurile. Kuni on vajadus meeskonda ĂŒmber kujundada vĂ”i mĂ”ni piirang kĂ”rvaldada, saame alltoodud algoritmi kordata.
Teenuse valik
Plaani oleme seadnud, alustatud esimese sammuga â teenuse valimisega. Esmane kriteerium â eluiga: on vanu teenuseid â legacy ning uusi. Alustada vĂ”ib nii neist kui ka nendest.
Noore teenuse valimine on loogiline. See on vĂ€rske, sellega tegelevas meeskonnas ei ole veel vĂ€ljakujunenud tööprotsesse. Selle ĂŒmber pole suurt tehnilist vĂ”lga ja seda ei pea pidevalt parandama. Saame teha sellega, mida soovime.
Vanade teenustega vĂ”ivad ilmneda probleemid, mis on seotud sellega, et muutmine on alati keeruline. Seal on juba mingite tĂ”siste piirangute kogum, kuid vĂ”ib-olla tegelevad nendega inimesed, kes on valmis kĂ”ike ĂŒmber tegema â nad on vĂ€sinud ja soovivad midagi teha teisiti, kuna see neile muret teeb.
Töötamine vana teenusega loob teie ettevĂ”ttes tugeva pretsedendi â midagi saab muuta. Kui olete uue teenuse muutnud, lĂ€heb see tootmisse 100 korda tunnis ja kĂ”ik on hĂ€sti, siis vĂ”ivad teie ettevĂ”tte inimesed öelda:
â See, this is a new service! It used to be simple; try doing something with our old wreck.
A legacy service makes sense to transform when you're doing it with someone, for example, if you have invited an external consultant. Let's be honest, the transformation will shake everything that can possibly be shaken.. You are experimenting and don't know where you'll end up, which technologies you'll use and for what purpose, and where potential pitfalls will arise in the processes. Hence, itâs easier to change the new one.
If youâre doing everything yourself, and the company lacks serious expertiseâgo for the new service. If you know an external consultant and have the budgetâchoose the old one.
There are services that represent just an interface for users, such as a simple website or mobile application. But there are serious things like billing. If something goes wrong with billingâyou're going to have a hard time untangling it. Here, we also have a choice.
We either work with a critical service, but we're already suffering because of it; it's creating limitations, or we work with the interface. This is the second criterion for selection. Similarly, there's an option to engage an experienced consultantâworking with the heavy variant.
But even in this case, I wouldnât recommend doing so because, until there's an understanding of what to work with and which direction to transform in, taking a critical item and shaking it upâisnât a very good idea. Therefore, in this case, we prefer to work with the interface, the breakdown of which isnât critical.
Next, let's consider the service team. We will have to work closely with those who are dealing with this service.
The team members can be conditionally divided into two categories: conservatives â living in the old world, or simply know nothing about DevOps, and innovators, who bring in all the trendy practices. The latter may not always be well-versed in the subject, but at least they're open to it.
On one hand, conservatives are experienced individuals: they've been with the company for a long time, they know it inside and out, but donât know about the practices. On the other hand are the innovators, who have heard something, but most likely havenât been with the company for very long. Who should we work with?
Konservatiividega tuleb igal juhul suhelda, kuna see on nende teenus. TÔenÀoliselt tuleb nendega vestelda, vÀlja selgitada teenuse eripÀra, mida on vÔimalik teha nii ja mida teisiti. Me sÔltume nende konsultatsioonidest. TÔenÀoliselt tuleb neile midagi usaldada, kuna nad tunnevad oma teenust paremini. SeetÔttu on oluline, millise meeskonnaga me lÔpuks kokku puutume.
On loogiline valida meeskonda uuendajad, kuna konservatiivid vÔivad panna tagasilööke.
Praktiliselt juhtub tihti, et konservatiivsetel inimestel on oluline kogemus, kuid nad ei saa aru, kuidas edasi liikuda. Nad kardavad, et pĂ€rast teenuse transformatsiooni ja ĂŒmberkujundamist vĂ”idakse nad töölt vabastada. MĂ”nikord, lihtsalt arusaamatuse tĂ”ttu, mis toimub, saboteerivad nad tööd.
Mul oli puhul, kus meeskonna poiss parandas kĂ”ike, mis iganes, kuna see oli vĂ€idetavalt kriitilisem kui see, mida me praegu teeme. Me anname ĂŒlesande: rakendada tĂ€na see osa â ei, maailma teises otsas on tulekahju, lĂ€heme seda parandama. Selliste inimestega on raske töötada.
Konservatiivide meeskonnast tulevad inimesed tihti ignoreerivad ĂŒlesandeid vĂ”i lĂŒkkavad need viimasel minutil edasi. Ja kui, jumal hoidku, olete teinud vea ja riputanud neile KPI'd ĂŒlesannete arvu kohta, kuid mingi osa ei ole mingil pĂ”hjusel KPI'sse kaasatud, siis nad ei tee absoluutselt midagi. Tegelikult on nad Ă”iged, kuna nad kaotavad siis oma boonuse.
Uuendajatega on lihtsam â nad on lojaalsemad.Nad on juba midagi kuulnud, tahavad kuhugi minna, seetĂ”ttu on nad abiks. Me vajame inimesi, kes on valmis algul kannatama: kui teenus muutub, siis kĂ”ik probleemid ja takistused kogevad uuendajad esimestena. Uuendajad tahavad kĂ”ike uut ja stiilset ning olles valmis kannatama.
Konservatiive saab hiljem oma usku ĂŒmber pöörata. Kui nĂ€itate, et olete tĂŒki muutnud ja kĂ”ik töötab hĂ€sti, siis tĂ”enĂ€oliselt soovivad nad ka proovida ja aktsepteerida uut DevOps'i religiooni.

KokkuvÔtteks. Kui me teeme kogu transformatsiooni oma ettevÔttes ise, siis valime: uus teenus, eelistatavalt lihtne liides, et mitte liiga palju kannatada selle rikke pÀrast, ja uuendajate meeskond.
Kui on vĂ”imalus kutsuda vĂ€lisekspert, siis vĂ”tame vana teenuse, mille pĂ€rast me juba kannatame, asemel et uut. Inimesed, kes on transformatsiooniga teinud tööd erinevates ettevĂ”tetes, on nĂ€inud erinevaid juhtumeid ja mĂ”istavad juba, kuidas Ă”igesti tegutseda ning kuhu ĂŒldse suunduda.
Kes on seotud?
Peame leidma kĂ”ik, kes on kuidagi seotud teenusega: arendajad, testijad, adminnid, turbeeksperdid, juhid ja vĂ”imalik, et tootejuhid. Ehkki tootejuhid pole tehnilised spetsialistid, on nad teenusega seotud: nad teevad otsuseid ja seavad ĂŒlesandeid.

Peame leidma ja tutvuma kÔigiga, kes teevad mis tahes otsuseid ja mÔjutavad teenuse toimimist.
Miks nad meile vajalikud on? Kuna peame teadma, kellega lÀbirÀÀkimisi pidada.. Transformatsiooni ajal, kui teenuse harjumuspÀrane töömeetod muutub, tuleb see kindlasti lÀbi elada. MÔnda aega esinevad tÔrked, kuni katsetame uusi lÀhenemisviise. Inimesed peavad selleks olema valmis ja nÔus.
Edasi tuleb ehitada vÀÀrtuste vooge kaart ja ilma nende inimesteta ei saa seda teha, sest ainult nemad teavad koos tĂ€ielikku toimuvat pilti. Ăks inimene ei tea kunagi kĂ”ike, mis teenusega toimub.
Nad soovitavad inimesi meeskonda. Hiljem arutame, miks vajame erilist meeskonda. Sellesse tuleb vÔtta inimesi olemasolevatest osakondadest. Need, kes on teenusega seotud, saavad soovitada kolleege, kes mÔtlevad meie suunas ja kes saavad meid aidata ning omavad vajalikke oskusi.
Igal juhul kogume kĂ”ik need inimesed erinevatest osakondadest ĂŒhte ruumi ja hakkame ehitama vÀÀrtuste vooge kaarti.
Ehita vÀÀrtuste vooge kaarti
VÀÀrtuste vooge kaart on skeem vÔi kaart, mis nÀitab vÀÀrtuste voolu kliendini.. See on kogu protsess ideest rakendamiseni, sealjuures kÔik vaheetapid ja see, kuidas vÀÀrtus lÔpuks meie klientideni jÔuab.
VÀÀrtuste vooge kaardi jaoks on vajalik, et visualiseerida kÔik arendusastmed,lokaliseerida probleemid praeguses protsessis mÔÔtmete kaudu ja alustada probleemide lahendamist ning seada esialgne eesmÀrk. See on koht, kus hakkame tÔeliselt midagi tegema.
MÔÔtmised
VÀÀrtuste vooge kaartide kirjanduses on kirjeldatud palju erinevaid mÔÔdikuid, kuid alguseks piisab meile kolmest.
TĂ€itmise aeg â viivitus/ootamine â aeg, mil me midagi ootame. NĂ€iteks ootab testija, kuni testimiseks on saadaval seade, ja sel ajal ei saa ta midagi teha.
Value Added Time â vÀÀrtuslik tööaeg â see, mida kulutasime mingil etapil, et luua lĂ”plik vÀÀrtus kasutajale. NĂ€iteks kĂ€ivitas testija oma testi ja hakkas midagi kontrollima. See on vÀÀrtuslik tööaeg, mil me tĂ”eliselt teeme midagi toote heaks. Just selle eest kliendid maksavad â kvaliteetse tarkvara eest.
%C/A â vastuvĂ”etud töö protsent. Meil on ĂŒks etapp â arendus, teine etapp â testimine. Kui palju funktsioone testijad on arendajatelt vastu vĂ”tnud, ja selle protsendi mÀÀrabki see.
Umbes nii nÀeb meie kaart vÀlja.

See vĂ”ib vĂ€lja nĂ€ha erinev sĂ”ltuvalt organisatsiooni struktuurist, osakondade arvust ja sellest, millega tegelete. Kuid ĂŒldiselt on kaardil kaks etappi: idee ja analĂŒĂŒs. Sellel etapil oodatakse andmeid, nĂ€iteks Lead Time 2 nĂ€dalat ja Value Added Time 2 pĂ€eva.
Kasutame mÔÔdikuid kÔigil etappidel.
Backlog â kui palju ĂŒlesandeid jĂ€i pĂ€rast seda, kui analĂŒĂŒtikud need vĂ€lja mĂ”tlesid.
Arendus â kui palju nĂ€dalaid arendajad ootasid selgitusi ĂŒlesannete, seadmete vĂ”i varustuse osas â see ei oma tĂ€htsust, aga nad ootavad midagi. NĂ€iteks, nad rakendavad funktsiooni 4 pĂ€eva. Siin tuleb mĂ€ngu mÔÔdik %C/A. Arendajad vĂ”tsid Backlogist ainult 80% ĂŒlesandeid. Nad arvavad, et ĂŒlejÀÀnud 20% pole piisavalt selgeid, ja saatsid need tĂ€iendavale töötlemisele.
Testimine. Skeemil on LT mÀÀratud 4 pĂ€eva. NĂ€iteks ootasid testijad testimise seadme vabastamist, VA 2 pĂ€eva nad tegelikult testivad midagi, ja %C/A = 40%. â ainult 40% koodist vĂ”i funktsioonidest, mille arendajad saatsid, arvasid testijad olevat sobivad. KĂ”ik ĂŒlejÀÀnud ei meeldinud neile mingil pĂ”hjusel.
Ma ei hakka ĂŒksikasjalikult rÀÀkima, kuidas neid mÔÔtmisi teostada, artikli lĂ”pus soovitan kirjandust, millest selle kohta rohkem teada saada.
Ainus asi, mida soovitan â Ă€rge uskuge inimesi, kes koostavad koos teiega Value Stream Kaardi. Nad kujutavad ette, kui kaua erinevad protsessid aega vĂ”tavad, kuid need hinnangud ei ole alati Ă”iged, seega on parem neid ise mÔÔta.
Meil oli juhtum, kui me lĂ€ksime Operations osakonda ja kĂŒsisime, kui kaua kulub uue funktsiooni tootmisse toimetamiseks. Vastus oli 10 minutit, ja me mĂ”tlesime, miks me ĂŒldse sellesse ettevĂ”ttesse tulime? Selgus, et 10 minutit on skripti tööaeg, mis vĂ”tab koodi ja toimetab serverisse. Kuid enne seda oli versioon kolme pĂ€eva jooksul serveris ja lihtsalt tolmu kogumas â Backlogis ootas ĂŒlesanne, mis tuleb vĂ€lja viia. Seega on enne juurutamisetappi ooteetapp, kus projekt lihtsalt seisab. Kui me poleks lĂ€inud oma mĂ€rkmete ja silmadega ĂŒlesandeid Jira-s jĂ€lgima, siis oleksime arvanud, et kĂ”ik on suurepĂ€rane ja mingit probleemi ei ole.
SeetĂ”ttu on mÔÔtmised ikkagi kellegi enda poolt tehtud, eelistatult mitte ainult ĂŒks kord, et saada vĂ”imalikult lĂ€hedane arusaam reaalsusest. SĂ”ltuvalt Value Stream Map-ist teete otsuse, kust kohast alustada ja mida kĂ”igepealt parandada.
Ajutine meeskond
Paljud ettevĂ”tted, kes otsustasid DevOpsi rakendada, loovad meeskonna, mis ei ole ajutine, vaid eksisteerib mitu aastat. Kui kĂŒsite DevOps apologizelt, kus on kirjeldatud erinevaid organisatsioonistruktuuri mustreid DevOps-is, mĂ”istate, et see on antipattern.
Kui DevOps-meeskond eksisteerib pidevalt mitu aastat, on see suur viga, kuna DevOps tÀhendab osakondade vahelist suhtlust, kiirus ja efektiivsus.
Kui meeskond eksisteerib osakondade vahel, et teha midagi muud eraldi ning pĂŒsib kaua, loob see lisabarjÀÀri. NĂŒĂŒd peab arendaja administreerijaga kĂŒsimuse lahendamiseks minema esmalt DevOps osakonda, ja alles siis minema edasi.
SeetĂ”ttu peab alustamiseks looma ajutise meeskonna.. Ta eksisteerib tinglikult pool aastat, maksimaalselt aasta, sĂ”ltuvalt seatud ĂŒlesandest, ainult selleks, et kĂ”rvaldada ĂŒks piirang, mille oleme valinud. PĂ€rast seda sureb ta. Kui me valime jĂ€rgmise punkti, kus meil on tugev valu, ja mĂ”istame, et selle jaoks on meil samuti vaja eraldi meeskonda, siis loome selle uuesti. Kuid âpĂŒsivaltâ ei tohiks sellised meeskonnad eksisteerida - siis nad lihtsalt rikuvad kommunikatsiooni ja vĂ”tavad endale tĂ€iesti eraldiseisvaid ĂŒlesandeid, ainult midagi tehes. Need ĂŒlesanded ei pruugi olla seotud DevOps'i ja transformatsiooniga. Miks mitte anda see ĂŒlesanne olemasolevatele osakondadele?
Miks on vajalik ajutine meeskond
Konflikt praeguste protsessidega. DevOps'i transformatsioon on muutus mitte ainult tehnoloogias ja tööriistades, mida kasutame, vaid ka tööprotsessides, mÔtlemises ja vÀÀrtustes. Kui meeskond töötab endiselt nii, nagu nad on harjunud, ei Ônnestu neil proovida muid lÀhenemisviise.
Need inimesed peavad elama teiste reeglite jĂ€rgi: ignoreerima ettevĂ”tte kĂ”iki KPI-sid, sest nad proovivad töötada teisiti. Ajutised meeskonnad ei tĂ€ida ankeete serveri saamiseks, vaid lĂ€hevad otse osakonda, mis neid haldab, nĂ”udma kĂ”igepealt vajadusi, sest see on prioriteetne ĂŒlesanne ja nad pĂŒĂŒavad elada teisiti. Meeskonnal on tĂ€ielik konflikt kĂ”igi olemasolevate protsessidega. Et olemasolevad töömeetodid neid hetkel ei segaks ja nad ei segaks teisi, isoleerime need inimesed, luues eraldi meeskonna.
BĂŒrokraatia vĂ€ltimine katsetustes. Ajutistes meeskondades ei ole bĂŒrokraatiat, nad ei tĂ€ida töötundide aruandeid, nad ei pea aru andma juhtidele. See on tĂ€iesti eraldi maailm, kus inimesed elavad ja mĂ”tlevad teisiti ning tegelevad tĂ€iesti erinevate asjadega. Neid ei tohi liialt segada.
Katkematu töö teenuse nimel. Esimeses punktis valisime midagi, millega katsetada. Katsetamine ja paremate tööviiside otsimine on hea, kuid me tahame ka funktsioone teha. Kui kogu meeskond tegeleb funktsioonide asemel transformatsiooniga, hakkame kaotama tulu, vead jÀÀvad kauaks alles - seda me ei vaja. Ajutise meeskonna loomine vÔimaldab katsetada, katkestamata samal ajal toote arendamist.
Ăra kuluta aega tĂ¶Ă¶ĂŒlesannetele. See on jĂ€lle toote kohta. Meeskonnal kulub palju aega, et katsetada muid tööriistu ja muud. Et inimesed mĂ”istaksid tööriistu, hakkaksid neid rakendama ja normaalselt kasutama, kulub vĂ€hemalt pool aastat. Kui nad tegelevad veel ka tootega, siis venib see pool aastat kosmiliselt. Kui inimesed tegelevad tootega, töötavad nad jĂ€lle vanade protsessidega â seda me ei vaja.
SeetÔttu eraldame erinevatest osakondadest inimesi eraldi meeskonda, mis tegeleb teenuse transformatsiooniga. Tulemusena töötab teenus, jÀtkab arendamist ja samal ajal katsetame selle peal mingisuguseid eksperimente.
Ajutine meeskond tegeleb ainult DevOps-transformatsiooniga â eemaldades leitud piirangu ja mitte millegagi muuga.
Meeskond koosneb universaalsetest inimestest. See tĂ€hendab, et oleme vĂ”tnud mitte ainult arendajad. Me ei tulnud teenusesse ja ei vĂ”tnud sealt pool meeskonda â ei, me vĂ”tsime inimesi erinevatest osakondadest. MĂ”ni punkt tagasi leidsime erinevad osakonnad ja erinevad töötajad, kes on seotud muudetava teenusega. Nendest koostame meeskonna, sest see peab olema universaalne â me muudame nii testimisprotsessi, arendusprotsessi kui ka teenuse hooldamise protsessi. Vajame erinevaid kompetentse.
Tavaliselt vĂ”tame arendaja, testija ja inseneri â igaĂŒhe ĂŒhe ja koos nendega leiutame lahenduse, mis vĂ”imaldab elada teisiti.
Soovitav on, et need inimesed oleksid organisatsioonis autoriteetsed. VĂ”ib-olla tuleb vĂ”tta ĂŒks konservatiiv, kuigi pole soov. Kui meie ettevĂ”te on suur, ei usu kaugeltki kĂ”ik meie plaani ja mĂ”ned vĂ”ivad seada takistusi, nĂ€iteks mitte eraldada seista. Siin tulebki mĂ€ngu "autoriteet" â austatud inimene, kellel on suur kogemus ja kes on teeninud kolleegidelt head suhtumist. Töötaja autoriteet meeskonnas lihtsustab ĂŒlesannet ja ajutise meeskonna tööd. Inimesed mĂ”tlevad:
â Ahjaa, see Ă€ge tĂŒĂŒp, keda me kĂ”ik tunneme ja armastame, on sinna sisse astunud â nĂ€ib, et DevOps-is on midagi, millele tasub tĂ€helepanu pöörata!
Seame eesmÀrgi
Kogusime inimesi, valisime teenuse, vaatlesime piiranguid, mÀÀrasime, kellele me mĂ”ju avaldame. NĂŒĂŒd peab olema eesmĂ€rk ja see peab olema tĂ€iesti SMART â kĂ”ik, nagu me armastame.
Spetsiifiline â konkreetne.
MÔÔdetav â mÔÔdetav. See on vĂ€ga oluline SMART punkt. Kui te ei saa midagi mÔÔta, siis ei saa te seda muuta ega mĂ”ista, mida ja kuidas olete teinud paremini vĂ”i halvemini.
Saadav â saavutatav. Arvesse tuleb vĂ”tta oma eripĂ€ra. Kui olete suur ettevĂ”te, millel on pikk ajalugu ja palju kohustusi, mis vĂ€ljastab uue toote versiooni kord aastas, siis ei saa te kuue kuu jooksul saavutada uute tooteversioonide vĂ€ljalaskmist iga tunni tagant. Nii ei Ă”nnestu. Seega seadke realistlik eesmĂ€rk, mis on saavutav mĂ”istlikus ajaraamis.
Asjakohane â relevant. KĂ€itleme ainult seda piirangut, mis tĂ”eliselt mĂ”jutab meie praeguseid eesmĂ€rke.
Aja piirang â ajaliselt piiratud. Kui tĂ€htaega pole, siis meeskond tegeleb millegagi: katsetab 15 tehnoloogiat 3 asemel, kirjutab tohutuid aruandeid, viib lĂ€bi kasutuid uuringuid, lihvib oma teostust hiilgavaks, kui eesmĂ€rk on juba saavutatud.
EesmĂ€rgid seame just Value Stream Map'i abil â taas kogume kĂ”ik inimesed kokku ja joonistame. Kuid seekord joonistame selle pĂ”hjal, mida soovime saada, eelneva Value Stream Map'i alusel.

Kipume vĂ€lja tooma ĂŒhe piirangu, mida hakkame kohe kĂ”rvaldamiseks tööle, millega meeskond tegeleb. NĂ€iteks vĂ”tsin ooteaja valmimise ja selle juurutamise vahe enne tootmisse jĂ”udmist â see on kĂ”ige sagedasem piirang, mille tĂ”ttu inimesed pöörduvad konsultantide poole.
Selle pĂ”hjal seame ĂŒlesande: soovime, et ooteaeg valmimise ja lahingusse mineku vahel oleks maksimaalselt ĂŒks tund.
NĂ€idised ĂŒlesannetest.
- KÀrpida testimise lÀbiviimise aega 4 pÀevast 1 tunnini.
- KÀrpida vÀÀrtusliku aja kuluda testimise jaoks 2 pÀevast 3 tunnini.
- KÀrpida juurutamise lÀbiviimise aega 5 tunnist 10 minutini.
- Suurendada C/A 50%-lt 95%-le, see tÀhendab suurendada funktsioonide arvu, mille testijad aktsepteerivad, teisisÔnu, parandada arendajate töö kvaliteeti.
NĂ€idiste ĂŒlesanded ei ole vĂ€ljamĂ”eldud â need pĂ”hinevad mÔÔtmistel, mida me tegime, kui töötasime vĂ€lja Value Stream Map'i.
Seame sarnase ĂŒlesande oma meeskonnale ja ajapiirangut. SĂ”ltuvalt sellest, kui hĂ€sti lĂ€heb teie ettevĂ”ttes, seadke erinevad tĂ€htajad. Keskmiselt kulub piirangu kĂ”rvaldamiseks, kui inimesed tegelevad sellega esmakordselt ja ei tea veel, milliste tehnoloogiate abil ja kuidas probleemi lahendada, tavaliselt kuus kuud.
LĂŒhike planeerimine
Nii et, meie meeskond on loodud, tal on eesmĂ€rk ja inimesed hakkavad töötama. Oluline punkt on töö lĂŒhike planeerimine: sprindid ĂŒks kuni kaks nĂ€dalatja mitte rohkem, mÔÔdetavad parandused iga nĂ€dal ja kursi korrigeerimine.
NĂ€iteks kasutame me sageli lĂ€henemist moving-moving, kus kogu meeskond koguneb iganĂ€dalaselt, viskab kirja, mida igaĂŒks teeb. NĂ€dala pĂ€rast mĂ€rkame: mis on tehtud ja mis mitte, kui mitte, siis miks, ja mĂ”tleme, mida edasi teha.
Sprindid vÔimaldavad kursust Ôigel ajal korrigeerida.
NĂ€dala vĂ”i kaks proovime midagi: tehnoloogiaid, lĂ€henemisi, tööviise, pĂ€rast seda mÔÔdame uuesti ja vaatame â kas selle lĂ€henemisega on parem vĂ”i halvem? Kui halvem, siis ei liigu me Ă”iges suunas, tuleb kursust korrigeerida: seada uus ĂŒlesanne, vĂ”tta kasutusele muu tehnoloogia vĂ”i teha midagi muud. LĂŒhikesed sprindid 1-2 nĂ€dala vĂ€ltel vĂ”imaldavad manööverdada ja Ă”igeaegselt halbadest lahendustest kĂ”rvale hoiduda.
Jagame edusamme
Meeskond saavutab teatud edusamme, olgu need vĂ€ikesed vĂ”i suured â pole vahet, alati on mingit tulemust. Sellest tulemusest peaksid olema teadlikud kĂ”ik: nii need, kes on seotud DevOpsiga, kui ka naabruses asuvad osakonnad. Ideaalsetes tingimustes vĂ”iks see jĂ”uda ĂŒldse kĂ”ikide ettevĂ”tte inimesteni.
Miks? Kui me soovime transformeerida mitte osa ettevĂ”ttest, vĂ€lja juurida mitte ĂŒhte piirangut, vaid kĂ”ik, et ettevĂ”te muutuks paindlikuks, kood liiguks kiiresti kliendini ja miski ei katke, siis on oluline, et kĂ”ik oleksid DevOpsi ideele lojaalsed. Te ei saa rakendada lĂ€henemist teenustele ja meeskondadele, kes on absoluutsete vastaste seas.
Loodud lojaalsuseks peame rÀÀkima kĂ”igile, mida oleme proovinud â meil on tulemus, proovige ka! See tĂ”stab huvi ja lojaalsust selle vastu, millega me tegeleme, inimesed hakkavad proovima kohe midagi teha. Praktika on nĂ€idanud, et kui me rÀÀgime, mida oleme proovinud ja milles oleme edu saavutanud, hakkavad teised meeskonnad kĂŒsima, kuidas ja mida me tegime. Nad vaatavad teostusi, koodi, dokumentatsiooni, lĂ€henemise kĂŒsimustega ja pĂŒĂŒavad midagi enda juures muuta.
RÀÀkida sellest, mis teil on saavutatud â on oluline. Nii veenate te konservatiive, kes soovisid kĂ”ike teha vanaviisi, liikuma teie poole ning muundate nad innovaatikuteks.
KokkuvÔttes
Valime teenuse, kui lĂ€htepunkti â koht, kus alustame ettevĂ”ttes muutusi. Tuvastame kĂ”ik, kellel on seos teenusega ja koos nendega ehitame Value Stream Mapi, mÔÔdame ja vaatame, kus ja millised on piirangud.
Loome uue ajutise meeskonna, mis lahendab pandud ĂŒlesande. MÔÔtmiste ja Value Stream Mapi pĂ”hjal juhime uue kaardi, kus eristame piirangut, mille lahendamisega tegeleme. Selle piirangu pĂ”hjal seame ĂŒlesande, millega meeskond tegelema hakkab. Ălesanne peab olema kindlasti SMART â spetsiifiline, mÔÔdetav, praeguste ĂŒlesannetega asjakohane ja ajaliselt piiratud.
Korrame protsessi, kuni oleme transformeerinud kÔik meie teenused soovitud kujule ja kÔrvaldanud kÔik piirangud.
Boonus. Kasulikud materjalid
Neile, kes otsustasid tegeleda DevOpsiga iseseisvalt.
Projekt "Feniix"
Originaalne pealkiri â "The Phoenix Project: A Novel about It, Devops, and Helping Your Business Win". See on romaan DevOpsist â lugu sellest, kuidas töötajatest sai osakonna juhataja, kes pidevalt lahingus oli. Uuele juhile pandi ĂŒlesanne:
â Sul on mitu aastat aega, et kĂ”ik Ă€ra parandada, et me lĂ”puks saaksime kiiresti ja tĂ”husalt tarnida meie toodet meie klientidele.
âFeniixi projekt. Romaan sellest, kuidas DevOps muudab elu paremaksâ â raamat kĂ”igile juhtidele, sest just need inimesed teevad otsuseid selle kohta, mis ettevĂ”ttes toimub. Kui oled insener vĂ”i programmeerija ja tahad, et sinu ettevĂ”ttes algaks muutus ja transformatsioon â osta raamat ja kingi juhtkonnale. See romaan selgitab kĂ”ike ning seda on kiire ja lihtne lugeda.
DevOps'i juhend
Rohkem keeruline raamat. Ilmus paar aastat tagasi ingliskeelsena pealkirjaga "The DevOps Handbook: How to create world-class agility, reliability, and security in Technology organizations", kuid nĂŒĂŒd on juba saadaval eesti keeles. See on tĂ”eline kĂ€esolev juhend â praktiline juhend: kuidas lĂ€bi viia mÔÔtmisi, mis on Value Stream Map ja miks see vajalik on, kuhu liikuda ja millises jĂ€rjekorras. Raamat on mĂ”eldud just neile, kes soovivad ise kĂ”ike teha. KĂ”ige tĂ€htsam, et selles on teiste ettevĂ”tete kogemuse nĂ€iteid.
NĂ€iteks rÀÀgitakse seal, kuidas ĂŒks ettevĂ”te koostas Value Stream Map'i ja mĂ”istis, et nende piirang ei ole tootes, vaid selles, et kassapidaja kĂ€ib poest naaberbĂŒroosse, et toodet kasutada. Probleemi programmi lahendamise asemel ostsid nad oma mĂŒĂŒjatele tahvelarvutid ning nĂŒĂŒd ei pea keegi kuhugi minema, kĂ”ik tegevused toimuvad töö kohal. JĂ€reldus: Value Stream Map'i saab rakendada mitte ainult tarkvarale, vaid ka kĂ”ikidele organisatsiooni protsessidele.
Kiirendama
TĂ€pne pealkiri: «Kiirendamine: Lean tarkvara ja DevOpsi teadus: KĂ”rge saavutusvĂ”imega tehnoloogiaorganisatsioonide loomine ja skaleerimine». See on jĂ€rgmine tase â kĂ”va. Raamat ilmus eelmisel aastal, hetkel ainult inglise keeles ja see kĂ€sitleb teadusuuringuid. Autorid â Nicole Forsgren, Jez Humble ja Gene Kim â on aastaid rakendanud erinevaid praktikaid erinevates ettevĂ”tetes ning uurinud, kuidas praktikaid, kuidas ja millele need mĂ”ju avaldavad.
Teises peatĂŒkis, mis on pĂŒhendatud mÔÔtmistele, mainitakse Value Stream Map'i, neid mÔÔdikuid, mida ma nimetasime, ja paljusid teisi, samuti on pĂ”hjalikult kirjeldatud mÔÔtmise protsessi. Autorid viivad mÔÔtmised lĂ€bi kĂŒsimustike ja iseseisva ĂŒlesannete jĂ€lgimisega. RÀÀgitakse tĂ€pselt, milliseid mÔÔdikuid tuleks Ă”igesti mÔÔta, milliseid mitte, inimlikud vead mÔÔtmistes. Kui teil on mÔÔtmisega raskusi, pöörduge raamatu âKiirendamineâ teise peatĂŒki poole. Kui teie meeskonnas on lihtsalt palju praktikaid, kuid pole selge, milliseid praktikaid praegu rakendada, milliseid hiljem, millised tĂ”eliselt toimivad ja millised mitte â loe, raamatus on kĂ”ik selgelt selgitatud.
Transformatsioon on kĂŒsimus DevOpsi ja juhtimise piiril. Kusagil seal arendamise, haldamise ja testimise ristumiskohas on teemad, mida proovime arutada , sama integratsioon on vajalik ka kvaliteetsete toodete loomiseks â peamine teema . Juhtimine festivalil umbes 800 rakendust. Uute rakenduste arendamise lihtsustamiseks on ette valmistatud tĂŒĂŒpiliste â tĂ€hendab, et kĂ”ik ideed transformatsiooniks on sinna. Liituge 27. ja 28. mail, me integreerime ja transformeerime.
Allikas: habr.com
