Երկուսը տուփի մեջ (եթե կարող եք) և բոլորը փաստաթղթերում (միշտ):
ՏՏ համատեքստում «երկուսը վանդակում» վերաբերում է երկու սերվերներին կամ բաղադրիչներին, որոնք նախատեսված են միասին աշխատելու համար՝ ապահովելու ավելորդություն և բարձր հուսալիություն: Այս կարգավորումը կարող է ապահովել, որ եթե մի բաղադրիչը ձախողվի, մյուսը կստանձնի իր գործողությունները՝ այդպիսով պահպանելով ծառայության շարունակականությունը: «Տուփում երկուսը» ունենալու նպատակը բարձր հասանելիություն և աղետից վերականգնում ապահովելն է: Սա վերաբերում է նաև կազմակերպությունում մարդու դերերին. սակայն, այն հազվադեպ է իրականացվում:
Եկեք նայենք համապատասխան Analytics օրինակին: Մենք բոլորս, հավանաբար, գիտենք մեր ընկերությունում կամ կազմակերպությունում անունով մի մարդու, ով «գնալ» է Analytics-ի համար: Նրանք են, ովքեր ունեն իրենց անունով հաշվետվություններ կամ վահանակներ՝ Mike's Report կամ Jane's Dashboard: Իհարկե, կան այլ մարդիկ, ովքեր տիրապետում են վերլուծություններին, բայց սրանք իսկական չեմպիոններ են, ովքեր կարծես գիտեն, թե ինչպես կատարել ամենադժվար գործերը և գերազանցել ժամկետները: Հարցն այն է, որ այս մարդիկ միայնակ են կանգնած։ Շատ դեպքերում ճնշման տակ նրանք չեն աշխատում որևէ մեկի հետ, քանի որ դա կարող է դանդաղեցնել նրանց ընթացքը, և այստեղից է սկսվում խնդիրը: Մենք երբեք չենք մտածում, որ այս մարդուն կորցնելու ենք։ Ես ձեռնպահ կմնամ տիպիկ «ասենք ավտոբուսով հարվածում են» կամ օրինակ օգտագործելուց՝ օգտագործելով ներկայիս աշխատաշուկայի հնարավորությունները և կասեմ մի դրական բան, ինչպիսին է «նրանք շահեցին վիճակախաղը», քանի որ մենք բոլորս պետք է անենք մեր մասը դրական լինելու համար։ այս օրերին.
Պատմություն
Երկուշաբթի առավոտ է գալիս, և մեր վերլուծաբան և չեմպիոն MJ-ն հրաժարականի դիմում է ներկայացրել։ MJ-ը շահել է վիճակախաղը և արդեն լքել է երկիրը առանց խնամքի աշխարհում։ Թիմը և մարդիկ, ովքեր ճանաչում են MJ-ին, ոգևորված և խանդոտ են, սակայն աշխատանքը պետք է ավարտվի: Այժմ այն ժամանակ է, երբ պետք է հասկանալի լինի այն, ինչ անում էր MJ-ն: MJ-ն պատասխանատու էր վերլուծությունների վերջնական հրապարակման և վավերացման համար: Նրանք միշտ թվում էր, թե կարողացել են բարելավել արդյունավետությունը կամ կատարել այդ դժվարին փոփոխությունը, նախքան վերլուծությունները բոլորին տրամադրելը: Ոչ ոքի իսկապես չէր հետաքրքրում, թե ինչպես դա արվեց, և ապահով էր այն փաստով, որ դա պարզապես տեղի ունեցավ, և MJ-ը Analytics-ի անհատական ռոք աստղ էր, ուստի ինքնավարության մակարդակ էր շնորհվել: Այժմ, երբ թիմը սկսում է վերցնել կտորները, խնդրանքները, ամենօրյա խնդիրները, փոփոխության խնդրանքները, նրանք կորցնում են և սկսում են վիճել: Հաշվետվություններ / վահանակները հայտնաբերվել են անհայտ վիճակներում. որոշ ակտիվներ չեն թարմացվել հանգստյան օրերին, և մենք չգիտենք, թե ինչու. մարդիկ հարցնում են, թե ինչ է կատարվում և երբ ամեն ինչ կշտկվի, խմբագրումները, որոնք MJ-ն ասաց, որ արված են, չեն երևում, և մենք պատկերացում չունենք, թե ինչու: Թիմը վատ տեսք ունի. Դա աղետ է, և այժմ մենք բոլորս ատում ենք MJ-ին:
Դասերը
Կան մի քանի հեշտ և ակնհայտ միջոցներ:
- Երբեք թույլ մի տվեք անհատին միայնակ աշխատել: Լավ է հնչում, բայց ավելի փոքր արագաշարժ թիմերում մենք ժամանակ կամ մարդիկ չունենք դա իրականացնելու համար: Մարդիկ գնում-գալիս են, առաջադրանքները շատ են, ուստի՝ հանուն արտադրողականության՝ բաժանիր և տիրիր։
- Յուրաքանչյուրը պետք է կիսի իր գիտելիքները։ Նաև լավ է հնչում, բայց արդյոք մենք կիսվում ենք ճիշտ մարդու կամ մարդկանց հետ: Հիշեք, որ վիճակախաղի շատ շահողներ գործընկերներ են: Գիտելիքի փոխանակման նիստեր կատարելը նաև ժամանակ է խլում առաջադրանքներից, և մարդկանց մեծամասնությունը ներդնում է հմտությունների և գիտելիքի վրա միայն այն ժամանակ, երբ դա անհրաժեշտ է:
Այսպիսով, որո՞նք են իրական լուծումները, որոնք բոլորը կարող են իրականացնել և հետ կանգնել:
Սկսենք Կոնֆիգուրացիայի կառավարումից: Մենք սա կօգտագործենք որպես համանման տերմին մի քանի նմանատիպ թեմաների համար:
- Փոփոխություն կառավարման: Ծրագրային համակարգերում փոփոխությունների պլանավորման, իրականացման և վերահսկման գործընթացը կառուցվածքային և համակարգված ձևով: Այս գործընթացը նպատակ ունի ապահովելու, որ փոփոխությունները կատարվեն վերահսկվող և արդյունավետ եղանակով (վերադարձի ունակությամբ), գործող համակարգի նվազագույն խափանումներով և կազմակերպության համար առավելագույն օգուտներով:
- Ծրագրի կառավարում: Ծրագրային ապահովման մշակման նախագծերի պլանավորում, կազմակերպում և վերահսկում` ապահովելու, որ դրանք ավարտվեն ժամանակին, բյուջեի սահմաններում և որակի ցանկալի չափանիշներին համապատասխան: Այն ներառում է ռեսուրսների, գործողությունների և առաջադրանքների համակարգումը ծրագրային ապահովման մշակման կյանքի ցիկլի ընթացքում՝ ծրագրի նպատակներին հասնելու և ծրագրային ապահովման արտադրանքը ժամանակացույցով մատուցելու համար:
- Շարունակական ինտեգրում և շարունակական առաքում (CI/CD). Շենքի ավտոմատացման, ծրագրային ապահովման փորձարկման և տեղակայման գործընթաց: Շարունակական ինտեգրումը պահանջում է կանոնավոր կերպով միաձուլել կոդերի փոփոխությունները ընդհանուր պահոցում և կատարել ավտոմատ թեստեր՝ զարգացման գործընթացի սկզբում սխալները հայտնաբերելու համար: Շարունակական առաքում/տեղակայում ենթադրում է փորձարկված և վավերացված կոդի փոփոխությունների ավտոմատ թողարկում արտադրության մեջ՝ թույլ տալով արագ և հաճախակի թողարկել նոր հնարավորություններ և բարելավումներ:
- Տարբերակի վերահսկում. Ժամանակի ընթացքում ելակետային կոդի և այլ ծրագրային արտեֆակտների փոփոխությունները կառավարելու գործընթացը՝ օգտագործելով մասնագիտացված ծրագրային գործիքներ: Այն թույլ է տալիս ծրագրավորողներին համագործակցել կոդերի բազայի վրա, պահպանել փոփոխությունների ամբողջական պատմություն և փորձարկել նոր հնարավորություններ՝ առանց հիմնական կոդի բազայի վրա ազդելու:
Վերոնշյալ բոլորը վերաբերում են ծրագրային ապահովման մշակման լավ գործելաոճին: Վերլուծությունները, որոնք խթանում և ղեկավարում են բիզնեսը, արժանի են ոչ պակաս, քանի որ դրանք կարևոր առաքելություն են որոշումների կայացման համար: Բոլոր վերլուծական ակտիվները (ETL աշխատատեղեր, իմաստային սահմանումներ, չափումների սահմանումներ, հաշվետվություններ, վահանակներ, պատմություններ… և այլն) պարզապես կոդի հատվածներ են նախագծման համար տեսողական ինտերֆեյսով, և թվացյալ աննշան փոփոխությունները կարող են ավերածություններ առաջացնել գործողությունների վրա:
Կազմաձևման կառավարման օգտագործումը մեզ ապահովում է լավ վիճակում աշխատելու համար: Ակտիվները տարբերակված են, որպեսզի մենք կարողանանք տեսնել, թե ինչ է տեղի ունեցել նրանց կյանքի ընթացքում, մենք գիտենք, թե ով ինչի վրա է աշխատում ձեռք բերված առաջընթացի և ժամանակացույցի հետ միասին, և մենք գիտենք, որ արտադրությունը կշարունակվի: Այն, ինչ չի ծածկված որևէ մաքուր գործընթացով, դա գիտելիքի փոխանցումն է և հասկանալը, թե ինչու են իրերն այնպիսին, ինչպիսին կան:
Յուրաքանչյուր համակարգ, տվյալների բազա և վերլուծական գործիք ունեն իրենց առանձնահատկությունները: Բաներ, որոնք ստիպում են նրանց արագ կամ դանդաղ գնալ, առարկաներ, որոնք ստիպում են նրանց որոշակի վարվել կամ տալ ցանկալի արդյունք: Սրանք կարող են լինել համակարգի կամ գլոբալ մակարդակի կարգավորումներ կամ ակտիվների նախագծման մեջ գտնվող բաներ, որոնք ստիպում են դրանք գործել այնպես, ինչպես պետք է: Խնդիրն այն է, որ այս բաների մեծ մասը սովորվում է ժամանակի ընթացքում, և միշտ չէ, որ տեղ կա դրանք փաստագրելու համար: Նույնիսկ երբ մենք տեղափոխվում ենք Cloud համակարգեր, որտեղ մենք այլևս չենք վերահսկում, թե ինչպես է կիրառումը կատարում, և մենք ապավինում ենք մատակարարին այն հնարավորինս արագ դարձնելու համար, սահմանումների ճշգրտումը շարունակվում է մեր ակտիվներում՝ բացելու հենց այն, ինչ մենք փնտրում ենք: Այս գիտելիքն այն է, ինչ պետք է գրավել և կիսվել՝ այն հասանելի դարձնելով ուրիշներին: Այս գիտելիքը պետք է պահանջվի որպես ակտիվների փաստաթղթավորման մաս և դառնա տարբերակի վերահսկման և CI/CD ստուգման և հաստատման գործընթացի անբաժանելի մասը, և որոշ դեպքերում նույնիսկ որպես ստուգաթերթի մաս՝ նախքան անելիքների և ոչ անելիքների հրապարակումը: անել.
Մեր վերլուծական գործընթացներում դյուրանցումները կամ դրանց բացակայությունը թաքցնելու համար կախարդական պատասխաններ կամ AI չկան: Անկախ թիմի չափից, որը պահպանում է տվյալների և վերլուծությունների հոսքը, ներդրում է կատարում համակարգում՝ փոփոխությունները հետևելու համար, բոլոր ակտիվները տարբերակելու և զարգացման գործընթացը փաստաթղթավորելու և գիտելիքների հավաքագրմանն օգնելու համար անհրաժեշտ է: Գործընթացներում ներդրումները և ժամանակի սկզբում կխնայեն մի տոննա կորցրած ժամանակ՝ հետագայում պարզելու համար, որպեսզի պահպանենք մեր վերլուծության առողջ վիճակը: Ամեն ինչ տեղի է ունենում, և լավագույնն է ունենալ ապահովագրական քաղաքականություն MJ-ների և վիճակախաղի այլ հաղթողների համար: