Ġestjoni tal-kaos: ġġib ordni bl-għajnuna ta 'mappa teknoloġika

Ġestjoni tal-kaos: ġġib ordni bl-għajnuna ta 'mappa teknoloġika

Stampa: Unsplash

Hi kollha! Aħna inġiniera awtomazzjoni mill-kumpanija Teknoloġiji Pożittivi u nipprovdu appoġġ għall-iżvilupp tal-prodotti tal-kumpanija: nappoġġjaw il-pipeline tal-assemblaġġ kollu mill-impenn ta 'linja ta' kodiċi mill-iżviluppaturi sal-pubblikazzjoni ta 'prodotti lesti u liċenzji fuq servers ta' aġġornament. B'mod informali, aħna msejħa inġiniera DevOps. F'dan l-artikolu rridu nitkellmu dwar l-istadji teknoloġiċi tal-proċess tal-produzzjoni tas-softwer, kif narawhom u kif nikklassifikawhom.

Mill-materjal inti titgħallem dwar il-kumplessità tal-koordinazzjoni ta 'żvilupp ta' prodotti multipli, x'inhi mappa teknoloġika u kif tgħin biex torganizza u tirreplika s-soluzzjonijiet, fiex jikkonsisti l-istadji u l-passi ewlenin tal-proċess ta 'żvilupp, kif l-oqsma ta' responsabbiltà huma demarkati. bejn DevOps u timijiet fil-kumpanija tagħna.

Dwar Chaos u DevOps

Ejja ninnutaw fil-qosor li l-kunċett ta 'DevOps jinkludi għodod u servizzi ta' żvilupp, kif ukoll metodoloġiji u l-aħjar prattiki għall-użu tagħhom. Ejja nenfasizzaw il-globali l-għan mill-implimentazzjoni ta 'ideat DevOps fil-kumpanija tagħna: dan huwa tnaqqis konsistenti fl-ispiża tal-produzzjoni u l-manutenzjoni tal-prodotti f'termini kwantitattivi (sigħat ta' bniedem jew sigħat ta 'magni, CPU, RAM, Disk eċċ.). L-aktar mod sempliċi u ovvju biex titnaqqas l-ispiża ġenerali tal-iżvilupp fil-livell tal-kumpanija kollha huwa li jimminimizzaw l-ispiża tat-twettiq tal-kompiti tas-serje tipiċi fl-istadji kollha tal-produzzjoni. Imma x'inhuma dawn l-istadji, kif jistgħu jiġu distinti mill-proċess ġenerali, f'liema passi jikkonsistu?

Meta kumpanija tkun qed tiżviluppa prodott wieħed, kollox ikun ftit jew wisq ċar: ġeneralment ikun hemm pjan direzzjonali ġenerali u skema ta 'żvilupp. Imma x'għandek tagħmel meta l-linja tal-prodotti tespandi u jkun hemm aktar prodotti? L-ewwel daqqa t'għajn, għandhom proċessi u linji ta 'assemblaġġ simili u tibda l-logħba ta' "Sib X differenzi" fi zkuk u skripts. X'jiġri jekk diġà hemm 5+ proġetti fl-iżvilupp attiv u l-appoġġ għal diversi verżjonijiet żviluppati fuq diversi snin huwa meħtieġ? Irridu nużaw mill-ġdid kemm jista' jkun soluzzjonijiet fil-pipelines tal-prodotti jew lesti li nonfqu l-flus fuq żvilupp uniku għal kull wieħed?

Kif issib bilanċ bejn l-uniċità u s-serjetà tas-soluzzjonijiet?

Dawn il-mistoqsijiet bdew iqumu quddiemna dejjem aktar spiss mill-2015. In-numru ta 'prodotti kiber, u ppruvajna nespandu d-dipartiment tal-awtomazzjoni tagħna (DevOps), li appoġġa l-linji tal-assemblaġġ ta' dawn il-prodotti, għall-minimu. Fl-istess ħin, ridt nirreplika kemm jista' jkun soluzzjonijiet bejn il-prodotti. Wara kollox, għaliex tagħmel l-istess ħaġa f'għaxar prodotti b'modi differenti?

Direttur tal-Iżvilupp: "Guys, nistgħu b'xi mod nevalwaw dak li jagħmel DevOps għall-prodotti?"

Aħna: "Ma nafux, ma staqsejniex din il-mistoqsija, imma liema indikaturi għandhom jiġu kkalkulati?"

Direttur tal-Iżvilupp: "Min jaf! Aħseb..."

Bħal f'dak il-film famuż: "Jien sejjer il-lukanda!..." - "Uh... Tista' turini t-triq?" Wara li ħsibna, wasalna għall-konklużjoni li l-ewwel għandna bżonn niddeċiedu dwar l-istati finali tal-prodotti; dan sar l-ewwel mira tagħna.

Allura, kif tista 'tanalizza tużżana prodotti b'timijiet pjuttost kbar ta' 10 sa 200 ruħ u tiddetermina metriċi li jistgħu jitkejlu meta tirreplika s-soluzzjonijiet?

1:0 favur il-Kaos, jew DevOps fuq ix-xfafar

Bdejna billi ppruvaw napplikaw id-dijagrammi IDEF0 u diversi dijagrammi tal-proċess tan-negozju mis-serje BPwin. Il-konfużjoni bdiet wara l-ħames kwadru tal-istadju li jmiss tal-proġett li jmiss, u dawn il-kwadri għal kull proġett jistgħu jinġibdu fid-denb ta 'python twil f'50+ passi. Ħassejtni imdejjaq u ridt ngħolli l-qamar - ma jaqbel xejn.

Ħidmiet ta 'produzzjoni tipiċi

L-immudellar tal-proċessi tal-produzzjoni huwa xogħol kumpless ħafna u iebes: għandek bżonn tiġbor, tipproċessa u tanalizza ħafna dejta minn diversi dipartimenti u ktajjen ta 'produzzjoni. Tista 'taqra aktar dwar dan fl-artiklu "Immudellar ta' proċessi ta' produzzjoni f'kumpanija tal-IT".

Meta bdejna nimmudellaw il-proċess tal-produzzjoni tagħna, kellna għan speċifiku - li nwasslu lil kull impjegat involut fl-iżvilupp tal-prodotti tal-kumpanija tagħna u lill-maniġers tal-proġetti:

  • kif il-prodotti u l-komponenti tagħhom, li jibdew mill-impenn ta’ linja ta’ kodiċi, jaslu għand il-klijent fil-forma ta’ installaturi u aġġornamenti,
  • liema riżorsi huma pprovduti f'kull stadju tal-produzzjoni tal-prodott,
  • liema servizzi huma involuti f'kull stadju,
  • kif l-oqsma ta’ responsabbiltà huma demarkati għal kull stadju,
  • liema kuntratti jeżistu fid-dħul u l-ħruġ ta’ kull stadju.

Ġestjoni tal-kaos: ġġib ordni bl-għajnuna ta 'mappa teknoloġika

Ikklikkja fuq l-immaġni biex tiftaħ fid-daqs sħiħ

Ix-xogħol tagħna fil-kumpanija huwa maqsum f'diversi oqsma funzjonali. Id-dipartiment tal-infrastruttura huwa impenjat fl-ottimizzazzjoni tal-operat tar-riżorsi kollha tal-ħardwer tad-dipartiment, kif ukoll l-awtomatizzazzjoni tal-iskjerament ta 'magni virtwali u l-ambjent fuqhom. Id-direzzjoni tal-monitoraġġ tipprovdi kontroll fuq il-prestazzjoni tas-servizzi 24/7; Aħna nipprovdu wkoll monitoraġġ bħala servizz għall-iżviluppaturi. Id-direzzjoni tal-fluss tax-xogħol tipprovdi timijiet b'għodod għall-ġestjoni tal-proċessi ta 'żvilupp u ttestjar, janalizzaw l-istatus tal-kodiċi, u jiksbu analitiċi fuq proġetti. U fl-aħħarnett, id-direzzjoni tal-webdev tiżgura l-pubblikazzjoni ta 'rilaxxi fuq is-servers tal-aġġornament GUS u FLUS, kif ukoll il-liċenzjar ta' prodotti li jużaw is-servizz LicenseLab. Biex nappoġġjaw il-pipeline tal-produzzjoni, aħna waqqafna u nżommu ħafna servizzi ta' appoġġ differenti għall-iżviluppaturi (tista' tisma' stejjer dwar xi wħud minnhom f'laqgħat qodma: Op!DevOps! 2016 и Op!DevOps! 2017). Aħna niżviluppaw ukoll għodod ta 'awtomazzjoni interna, inklużi soluzzjonijiet ta’ sors miftuħ.

Matul l-aħħar ħames snin, ix-xogħol tagħna akkumula ħafna operazzjonijiet simili u ta 'rutina, u l-hekk imsejħa ħidmiet tipiċi, li s-soluzzjoni tagħha hija kompletament jew parzjalment awtomatizzata, ma tikkawżax diffikultajiet għall-artisti u ma teħtieġx ammonti sinifikanti ta 'xogħol. Flimkien mal-oqsma ewlenin, aħna analizzajna kompiti bħal dawn u stajna nidentifikaw kategoriji individwali ta 'xogħol, jew stadji tal-produzzjoni, l-istadji huma maqsuma f'passi indiviżibbli, u diversi stadji jammontaw katina tal-proċess tal-produzzjoni.

Ġestjoni tal-kaos: ġġib ordni bl-għajnuna ta 'mappa teknoloġika

L-aktar eżempju sempliċi ta 'katina teknoloġika huwa l-istadji tal-assemblaġġ, l-iskjerament u l-ittestjar ta' kull wieħed mill-prodotti tagħna fi ħdan il-kumpanija. Min-naħa tiegħu, pereżempju, l-istadju tal-bini jikkonsisti f’ħafna passi standard separati: tniżżil ta’ sorsi minn GitLab, tħejjija ta’ dipendenzi u libreriji ta’ partijiet terzi, ittestjar tal-unità u analiżi tal-kodiċi statiku, eżekuzzjoni ta’ script tal-bini fuq GitLab CI, pubblikazzjoni ta’ artifacts għal repożitorju fuq Artifactory u li jiġġeneraw noti ta 'rilaxx permezz tal-għodda interna ChangelogBuilder tagħna.

Tista’ taqra dwar kompiti tipiċi ta’ DevOps fl-artikoli l-oħra tagħna dwar Habré: “Esperjenza personali: kif tidher is-sistema ta' Integrazzjoni Kontinwa tagħna"U"Awtomazzjoni tal-proċessi ta 'żvilupp: kif implimentajna l-ideat DevOps f'Teknoloġiji Pożittivi".

Ħafna ktajjen ta 'produzzjoni tipiċi jiffurmaw proċess tal-manifattura. L-approċċ standard għad-deskrizzjoni tal-proċessi huwa li jintużaw mudelli IDEF0 funzjonali.

Eżempju ta 'immudellar ta' proċess CI ta 'produzzjoni

Tajna attenzjoni speċjali għall-iżvilupp ta 'proġetti standard għal sistema ta' integrazzjoni kontinwa. Dan għamilha possibbli li tinkiseb l-unifikazzjoni tal-proġetti, li jenfasizzaw l-hekk imsejħa dijagramma ta 'rilaxx ta' bini bil-promozzjonijiet.

Ġestjoni tal-kaos: ġġib ordni bl-għajnuna ta 'mappa teknoloġika

Ara kif taħdem. Il-proġetti kollha jidhru tipiċi: jinkludu l-konfigurazzjoni ta 'assemblaġġi li jmorru għar-repożitorju ta' snapshot fuq Artifactory, u wara jiġu skjerati u ttestjati fuq bankijiet tat-test, u mbagħad promossi għar-repożitorju tar-rilaxx. Is-servizz Artifactory huwa punt uniku għad-distribuzzjoni tal-artifacts kollha tal-bini bejn timijiet u servizzi oħra.

Jekk nissimplifikaw u niġġeneralizzaw ħafna l-iskema ta’ rilaxx tagħna, din tinkludi l-istadji li ġejjin:

  • bini ta' prodotti fuq pjattaformi,
  • skjerament fuq bankijiet tat-test,
  • it-tnedija ta' testijiet funzjonali u oħrajn,
  • promozzjoni ta' assemblaġġi ttestjati biex jinħarġu repożitorji fuq Artifactory,
  • pubblikazzjoni ta' rilaxx ta' bini biex taġġorna s-servers,
  • kunsinna ta' bini u aġġornamenti għall-produzzjoni,
  • tnedija ta 'installazzjoni u aġġornamenti tal-prodott.

Ejja nikkunsidraw, bħala eżempju, il-mudell teknoloġiku ta 'din l-iskema ta' rilaxx tipika (minn hawn 'il quddiem sempliċement imsejjaħ il-Mudell) fil-forma ta' mudell IDEF0 funzjonali. Jirrifletti l-istadji ewlenin tal-proċess CI tagħna. Mudelli IDEF0 jużaw l-hekk imsejħa notazzjoni ICOM (Input-Control-Output-Mechanism) biex jiddeskrivi liema riżorsi jintużaw f'kull stadju, ibbażat fuq liema regoli u rekwiżiti jitwettaq ix-xogħol, x'inhu l-output u liema mekkaniżmi, servizzi jew nies jimplimentaw stadju partikolari.

Ġestjoni tal-kaos: ġġib ordni bl-għajnuna ta 'mappa teknoloġika

Ikklikkja fuq l-immaġni biex tiftaħ fid-daqs sħiħ

Bħala regola, fil-mudelli funzjonali huwa aktar faċli li tiddekomponi u tagħti dettalji tad-deskrizzjoni tal-proċessi. Iżda hekk kif in-numru ta 'elementi jikber, isir aktar u aktar diffiċli li wieħed jifhem xi ħaġa dwarhom. Iżda fl-iżvilupp reali hemm ukoll stadji awżiljarji: monitoraġġ, ċertifikazzjoni tal-prodott, awtomazzjoni tal-proċessi tax-xogħol u oħrajn. Huwa preċiżament minħabba l-problema tal-iskala li abbandunajna din id-deskrizzjoni.

Twelid tat-Tama

Fi ktieb wieħed iltqajna ma’ mapep Sovjetiċi qodma li jiddeskrivu proċessi teknoloġiċi (li, bil-mod, għadhom jintużaw illum f’ħafna intrapriżi u universitajiet tal-istat). Stenna, stenna, għandna wkoll proċess teknoloġiku!.. Hemm stadji, riżultati, metriċi, rekwiżiti, indikaturi, eċċ., eċċ.... Għaliex ma tippruvax tapplika mapep teknoloġiċi għall-conveyors tal-prodotti tagħna? Kien hemm sensazzjoni: “Dan hu! Sibna l-ħajt it-tajjeb, wasal iż-żmien li nagħtu rmonk tajjeb!”

F'tabella sempliċi, iddeċidejna li nirreġistraw prodotti b'kolonni, u stadji teknoloġiċi u passi tal-conveyor tal-prodott b'ringieli. L-istadji huma xi ħaġa kbira, bħall-istadju tal-assemblaġġ ta 'prodott. U l-passi huma xi ħaġa iżgħar u aktar dettaljata, pereżempju, il-pass tat-tniżżil tal-kodiċi tas-sors għas-server tal-bini jew il-pass tal-kompilazzjoni tal-kodiċi.

Fl-intersezzjonijiet tar-ringieli u l-kolonni tal-mappa, aħna npoġġu status għal stadju u prodott speċifiku. Ħafna stati ġew definiti għal status:

  1. Ebda informazzjoni - jew imprattikabbli. Huwa meħtieġ li tiġi analizzata d-domanda għal stadju fil-prodott. Jew l-analiżi diġà twettqet, iżda l-istadju bħalissa mhuwiex meħtieġ jew mhuwiex iġġustifikat ekonomikament.
  2. Pospost - jew mhux rilevanti fil-mument. Dan l-istadju fil-pipeline huwa meħtieġ, iżda m'hemm l-ebda enerġija biex timplimentah din is-sena.
  3. Ippjanat. L-istadju huwa ppjanat għall-implimentazzjoni din is-sena.
  4. Implimentati. L-istadju fil-pipeline huwa implimentat sal-punt meħtieġ.

Il-mili tat-tabella beda proġett b'proġett. L-ewwel, ikklassifikat l-istadji u l-passi ta 'proġett wieħed u rreġistrajna l-istatus tagħhom. Imbagħad ħadu l-proġett li jmiss, irreġistraw l-istatus fih u żiedu stadji u passi li kienu neqsin fi proġetti preċedenti. Bħala riżultat, irċevejna l-istadji u l-passi tal-pipeline kollu tal-produzzjoni tagħna u l-istatus tagħhom fi proġett speċifiku. Ir-riżultat huwa xi ħaġa simili għal matriċi ta 'kompetenza għal conveyor tal-ikel. Aħna sejħu tali matriċi mappa teknoloġika.

Bl-għajnuna tal-mappa teknoloġika, metroloġikament sostantivament naqblu mat-timijiet dwar il-pjanijiet ta’ ħidma għas-sena u l-miri li rridu nilħqu flimkien: liema stadji nżidu l-proġett din is-sena, u liema stadji nħallu għal aktar tard. Ukoll, hekk kif naħdmu, nistgħu naraw titjib fil-passi li lestejna għal prodott wieħed biss. Imbagħad nespandu l-mappa tagħna u nintroduċu dan it-titjib bħala stadju jew pass ġdid, imbagħad inwettqu analiżi għal kull prodott u nsib il-fattibbiltà li nirreplikaw it-titjib.

Jistgħu joġġezzjonaw għalina: “Dan kollu tajjeb, ovvjament, imma maż- żmien in- numru taʼ passi u stadji se jsiru projbittivi. X'irrid nagħmel?

Introduċejna deskrizzjonijiet standard u pjuttost kompluti tar-rekwiżiti għal kull stadju u pass sabiex fi ħdan il-kumpanija jkunu mifhuma minn kulħadd bl-istess mod. Maż-żmien, hekk kif jiġi implimentat it-titjib, pass jista’ jiġi assorbit fi stadju jew pass ieħor – allura dawn se jikkrollaw. Fl-istess ħin, ir-rekwiżiti u l-isfumaturi teknoloġiċi kollha jidħlu mar-rekwiżiti tal-istadju jew il-pass ġeneralizzanti.

Kif tevalwa l-effett tar-replikazzjoni tas-soluzzjonijiet? Aħna nużaw approċċ estremament sempliċi: nattribwixxu l-ispejjeż kapitali inizjali għall-implimentazzjoni ta 'stadju ġdid għal spejjeż ġenerali annwali tal-prodott, u mbagħad naqsmuhom fost kulħadd meta nirreplikaw.

Partijiet mill-iżvilupp huma diġà riflessi bħala stadji u passi fuq il-mappa. Nistgħu ninfluwenzaw it-tnaqqis tal-ispejjeż tal-prodott permezz tal-introduzzjoni tal-awtomazzjoni għal stadji tipiċi. Wara dan, nikkalkulaw il-bidliet fil-karatteristiċi kwalitattivi, il-metriċi kwantitattivi u l-profitt riċevut mit-timijiet (f'sigħat ta' bniedem jew sigħat ta' magni ffrankati).

Mappa teknoloġika tal-proċess tal-produzzjoni

Jekk nieħdu l-istadji u l-passi kollha tagħna, nikkodifikawhom b'tikketti u nespanduhom f'katina waħda, allura jirriżulta li jkun twil ħafna u inkomprensibbli (eżatt l-istess "denb tal-python" li tkellimna dwaru fil-bidu tal-artiklu) :

[Production] — [InfMonitoring] — [SourceCodeControl] — [Prepare] — [PrepareLinuxDocker] — [PrepareWinDocker] — [Build] — [PullSourceCode] — [PrepareDep] — [UnitTest] — [CodeCoverage] — [StaticAnalyze] — [BuildScenario] — [PushToSnapshot] — [ChangelogBuilder] — [Deploy] — [PrepareTestStand] — [PullTestCode] — [PrepareTestEnv] — [PullArtifact] — [DeployArtifact] — [Test] — [BVTTest] — [SmokeTest] — [FuncTest] — [LoadTest] — [IntegrityTest] — [DeliveryTest] — [MonitoringStands] — [TestManagement] — [Promote] — [QualityTag] — [MoveToRelease] — [License] — [Publish] — [PublishGUSFLUS] — [ControlVisibility] — [Install] — [LicenseActivation] — [RequestUpdates] — [PullUpdates] — [InitUpdates] — [PrepareEnv] — [InstallUpdates] — [Telemetry] — [Workflow] — [Communication] — [Certification] — [CISelfSufficiency]

Dawn huma l-istadji tal-assemblaġġ tal-prodotti [Ibni], l-iskjerament tagħhom biex jittestjaw servers [Skjerament], l-ittestjar [Test], il-promozzjoni ta’ assemblaġġi biex jirrilaxxaw repożitorji bbażati fuq ir-riżultati tal-ittestjar [Ippromwovi], il-ġenerazzjoni u l-pubblikazzjoni ta’ liċenzji [Liċenzja], il-pubblikazzjoni [Ippubblika] fuq is-server tal-aġġornament tal-GUS u l-kunsinna tal-aġġornamenti tal-FLUS lil servers, installazzjoni u aġġornament tal-komponenti tal-prodott fuq l-infrastruttura tal-klijent bl-użu tal-Ġestjoni tal-Konfigurazzjoni tal-Prodott [Installa], kif ukoll ġbir ta’ telemetrija [Telemetrija] minn prodotti installati.

B'żieda magħhom, nistgħu niddistingwu stadji separati: monitoraġġ tal-istat tal-infrastruttura [InfMonitoring], ġestjoni tal-verżjonijiet tal-kodiċi sors [SourceCodeControl], tħejjija tal-ambjent tal-assemblaġġ [Prepare], ġestjoni tal-proġett [Workflow], forniment ta 'timijiet b'għodod ta' komunikazzjoni [ Komunikazzjoni], iċ-ċertifikazzjoni tal-prodott [Ċertifikazzjoni] u l-iżgurar tal-awtosuffiċjenza tal-proċessi CI [CISelfSufficiency] (pereżempju, l-indipendenza tal-assemblaġġi mill-Internet). Lanqas se nikkunsidraw għexieren ta’ passi fil-proċessi tagħna, għax huma speċifiċi ħafna.

Ikun ħafna aktar faċli li tifhem u tħares lejn il-proċess kollu tal-produzzjoni jekk timmaġinah fil-forma mappa teknoloġika; Din hija tabella li fiha l-istadji tal-produzzjoni individwali u l-passi dekomposti tal-Mudell huma rreġistrati f'ringieli, u f'kolonni deskrizzjoni ta 'dak li jsir f'kull stadju jew pass. L-enfasi ewlenija hija fuq ir-riżorsi li jipprovdu kull stadju u d-delimitazzjoni tal-oqsma ta 'responsabbiltà.

Għalina, mappa hija tip ta 'klassifikatur. Jirrifletti partijiet teknoloġiċi kbar tal-produzzjoni tal-prodott. Grazzi għaliha, sar aktar faċli għat-tim tal-awtomazzjoni tagħna li jinteraġixxi mal-iżviluppaturi u jippjana b'mod konġunt l-implimentazzjoni tal-istadji tal-awtomazzjoni, kif ukoll jifhem liema spejjeż tax-xogħol u riżorsi (umani u hardware) se jkunu meħtieġa għal dan.

Ġewwa l-kumpanija tagħna, il-mappa hija ġġenerata awtomatikament minn mudell jinja bħala fajl HTML regolari, u mbagħad tittella’ fis-server tal-Paġni GitLab. Tista' tara screenshot b'eżempju ta' mappa ġenerata bis-sħiħ по ссылке.

Ġestjoni tal-kaos: ġġib ordni bl-għajnuna ta 'mappa teknoloġika

Ikklikkja fuq l-immaġni biex tiftaħ fid-daqs sħiħ

Fil-qosor, mappa teknoloġika hija stampa ġeneralizzata tal-proċess ta 'produzzjoni, li tirrifletti blokki klassifikati b'mod ċar b'funzjonalità standard.

L-istruttura tal-mappa teknoloġika tagħna

Il-mappa tikkonsisti f'diversi partijiet:

  1. Żona tal-intestatura - hawn deskrizzjoni ġenerali tal-mappa, huma introdotti kunċetti bażiċi, u r-riżorsi ewlenin u r-riżultati tal-proċess tal-produzzjoni huma definiti.
  2. Panel ta 'informazzjoni - hawnhekk tista' tikkontrolla l-wiri tad-dejta għal prodotti individwali; sommarju tal-istadji implimentati u l-passi b'mod ġenerali għall-prodotti kollha huwa pprovdut.
  3. Mappa teknoloġika - deskrizzjoni tabulari tal-proċess teknoloġiku. Fuq il-mappa:
    • l-istadji kollha, il-passi u l-kodiċi tagħhom jingħataw;
    • jingħataw deskrizzjonijiet qosra u kompluti tal-istadji;
    • ir-riżorsi ta' input u s-servizzi użati f'kull stadju huma indikati;
    • ir-riżultati ta' kull stadju u pass individwali huma indikati;
    • il-qasam tar-responsabbiltà għal kull stadju u pass huwa indikat;
    • riżorsi tekniċi ġew determinati, pereżempju HDD (SSD), RAM, vCPU, u sigħat ta 'bniedem meħtieġa biex jappoġġjaw ix-xogħol f'dan l-istadju, kemm bħalissa - fatt, kif ukoll fil-futur - pjan;
    • għal kull prodott huwa indikat liema stadji teknoloġiċi jew passi għalih ġew implimentati, huma ppjanati għall-implimentazzjoni, huma irrilevanti jew ma ġewx implimentati.

Teħid ta' deċiżjonijiet ibbażati fuq il-mappa teknoloġika

Wara li tistudja l-mappa, tista 'tieħu xi azzjonijiet, skont ir-rwol tal-impjegat fil-kumpanija (maniġer tal-iżvilupp, maniġer tal-prodott, żviluppatur jew tester):

  • tifhem liema stadji huma neqsin fi prodott jew proġett reali u tivvaluta l-ħtieġa għall-implimentazzjoni tagħhom;
  • jiddelimitaw oqsma ta' responsabbiltà bejn diversi dipartimenti jekk ikunu qed jaħdmu fuq stadji differenti;
  • tinnegozja kuntratti għall-inputs u l-outputs tal-istadji;
  • tintegra l-istadju tax-xogħol tiegħek fil-proċess ġenerali tal-iżvilupp;
  • tivvaluta b'mod aktar preċiż il-ħtieġa għal riżorsi biex jappoġġjaw kull stadju.

Fil-qosor ta 'dan kollu hawn fuq

Il-mappa tat-teknoloġija hija versatili, estensibbli u faċli biex tinżamm. Huwa ħafna aktar faċli li tiżviluppa u żżomm deskrizzjonijiet tal-proċess f'din il-forma milli fil-mudell IDEF0 akkademiku strett. Barra minn hekk, deskrizzjoni tabulari hija aktar sempliċi, aktar familjari u strutturata aħjar minn mudell funzjonali.

Għodda interna speċjali, CrossBuilder, hija responsabbli għall-implimentazzjoni teknika tal-passi - għodda ta 'saffi bejn is-sistemi tas-CI, is-servizzi u l-infrastruttura. L-iżviluppatur m'għandux għalfejn jaqta' r-rota tiegħu: fis-sistema CI tagħna huwa biżżejjed li tmexxi waħda mill-iskripts (l-hekk imsejjaħ kompitu) tal-għodda CrossBuilder, li tesegwixxiha b'mod korrett, b'kont meħud tal-karatteristiċi tal-infrastruttura tagħna.

Riżultati ta '

L-artikolu rriżulta li kien pjuttost twil, iżda dan huwa inevitabbli meta jiddeskrivi l-immudellar ta 'proċessi kumplessi. Fl-aħħar, nixtieq nistqarr fil-qosor l-ideat ewlenin tagħna:

  • L-għan tal-introduzzjoni ta 'ideat DevOps fil-kumpanija tagħna huwa li tnaqqas b'mod konsistenti l-ispiża tal-produzzjoni u l-manutenzjoni tal-prodotti tal-kumpanija f'termini kwantitattivi (sigħat ta' bniedem jew sigħat ta 'magni, vCPU, RAM, Disk).
  • Mod kif titnaqqas l-ispiża ġenerali tal-iżvilupp huwa li tiġi minimizzata l-ispiża tat-twettiq tal-kompiti standard tas-serje: stadji u passi tal-proċess teknoloġiku.
  • Kompitu tipiku huwa kompitu li s-soluzzjoni tiegħu hija kompletament jew parzjalment awtomatizzata, ma tikkawżax diffikultajiet għall-artisti u ma teħtieġx spejjeż sinifikanti tax-xogħol.
  • Il-proċess tal-produzzjoni jikkonsisti fi stadji, l-istadji huma maqsuma f'passi indiviżibbli, li jirrappreżentaw ħidmiet tipiċi ta 'skali u volumi differenti.
  • Minn ħidmiet standard iżolati wasalna għal ktajjen teknoloġiċi kumplessi u mudelli b'ħafna livelli tal-proċess ta 'produzzjoni, li jistgħu jiġu deskritti minn mudell IDEF0 funzjonali jew mappa teknoloġika aktar sempliċi.
  • A flow chart hija rappreżentazzjoni tabulari tal-istadji u l-passi ta 'proċess ta' produzzjoni. L-iktar ħaġa importanti: il-mappa tippermettilek tara l-proċess kollu kollu, f'biċċiet kbar bil-possibbiltà li tagħtihom id-dettalji.
  • Ibbażat fuq il-mappa teknoloġika, tista 'tivvaluta l-ħtieġa li timplimenta stadji fi prodott partikolari, tiddelimita oqsma ta' responsabbiltà, taqbel dwar kuntratti għall-inputs u outputs tal-istadji, u tivvaluta b'mod aktar preċiż il-ħtieġa għar-riżorsi.

Fl-artikoli li ġejjin se nitkellmu f'aktar dettall dwar liema għodod tekniċi jintużaw biex jiġu implimentati ċerti stadji teknoloġiċi fuq il-mappa tagħna.

Awturi tal-artiklu:

  • Alexander Pazdnikov — Kap tad-Dipartiment tal-Awtomazzjoni (DevOps) f'Teknoloġiji Pożittivi
  • Timur Gilmullin - deputat Kap tad-Dipartiment tal-Awtomazzjoni (DevOps) f'Teknoloġiji Pożittivi

Sors: www.habr.com

Żid kumment