Գլխավոր 9 Շարունակական ինտեգրում BI տեխնիկական թղթի համար

Լենս Հենքինսի տեխնիկական հոդված, CTO, Motio Inc.

Շարունակական ինտեգրման առավելությունները բիզնեսի հետախուզության համար

Ինչպես բիզնեսի հետախուզության արդյունաբերությունը կարող է օգուտ քաղել շարունակական ինտեգրումից

Արդյունաբերական առումով, Business Intelligent (BI) - ը դեռ համեմատաբար նոր ոլորտ է: Ինչպես տեխնոլոգիաների վրա հիմնված բազմաթիվ արդյունաբերություններ, այնպես էլ BI- ն առաջ է անցել իր վաղ փուլերից `ժամանակավոր գործընթացների ենթակա իրականացումների և լայնորեն տարբեր հաջողությունների հասնելու միջոցով: Նախկինում սովորական էր, որ միևնույն կազմակերպության կողմից իրականացվող բազմաթիվ BI ծրագրեր շատ տարբեր մոտեցումներ որդեգրեին ՝ շատ նման նպատակների հասնելու ճանապարհին: Վերջին տարիներին, այնուամենայնիվ, առաջ մտածող կազմակերպությունները բարձրացրել են իրենց BI հնարավորությունները BI գիտելիքների և փորձի կենտրոնացման միջոցով: Մոդելները, ինչպիսիք են «BI իրավասությունների կենտրոնը» (BICC) և «Գերազանցության BI կենտրոնը», դառնում են ավելի տարածված, այս կազմակերպություններն այժմ սահմանում են ամբողջ կազմակերպության համար BI տեխնոլոգիայի հավաքածուներ, գործիքներ, գործընթացներ և տեխնիկա `հաջողություն ապահովելու և առավելագույն ROI- ի համար: BI- ի նոր նախաձեռնություններ: Նրանք նաև հուշումներ են վերցնում կողքի կատեգորիաների լավագույն փորձից, այս դեպքում `ծրագրային ապահովման արդյունաբերության մեջ:

Լավագույն փորձը, որը դեռևս չի ճանաչվել BI համայնքի կողմից, շարունակական ինտեգրման (CI) գործառնությունն է: Softwareրագրաշարի մշակման ոլորտում CI- ն այն գործընթացն է, որի միջոցով ծրագրային կոդի բազան ինքնաբերաբար կառուցվում և ծխում է փորձարկվում հաճախականությամբ `զարգացման միջավայրում: Տիպիկ CI- ով ապահովված ծրագրային նախագծի վրա «կառուցել սերվերը» վերահսկում է ծրագրի աղբյուրի կոդի պահեստը և, երբ փոփոխություններ են հայտնաբերվում, քաշում է աղբյուրի մաքուր պատճենը, կատարում ամբողջական վերակառուցում, իրականացնում է հետընթացների բոլոր թեստերը և ակտիվորեն տեղեկացնում զարգացման մասին: ցանկացած անհաջողության թիմ: Յուրաքանչյուր լիովին հաջողված ցիկլ 1 արտադրում է ծրագրային արտադրանքի համար տեղադրվող երկուական հավաքածու:

Այս հաճախակի, ավտոմատացված ինտեգրումը արագորեն որսում է համակարգում ներդրված բոլոր սխալները (հաճախ դրանց ներդրումից րոպեների ընթացքում) և շատ ավելի հեշտ է դարձնում տեսնել, թե ով և երբ է ներմուծել սխալը: Թերություններն ու անհամատեղելիություններն անշուշտ ավելի էժան են շտկել, երբ դրանք հայտնաբերվել են ներդրման պահից (հատկապես, եթե դրանք երբեք դուրս չեն գալիս զարգացման միջավայրից):

Շարունակական ինտեգրման հիմնական սկզբունքները (CI)

  • Կրկնվող, ավտոմատացված կառուցման և փորձարկման գործընթացներ:
  • Այս ավտոմատ կառուցման և փորձարկման գործընթացները հաճախ են կատարվում, որպեսզի ինտեգրման խնդիրները վաղ հայտնաբերվեն:
  • Հաճախակի, ավտոմատացված ցիկլերը վաղ նախազգուշացում են տալիս կոտրված / անհամատեղելի արտեֆակտների համար:
  • Համակարգի բոլոր փոփոխությունների անհապաղ վավերացում և փորձարկում:

Քիչ վեճ կա, որ CI- ի կիրառումը դարձել է անգնահատելի գործիք ժամանակակից ծրագրակազմի մշակման կազմակերպության զինանոցում: CI- ն բարելավում է ինչպես ծրագրակազմի մշակման թիմերի որակը, այնպես էլ թափը: Developmentարգացման փորձառու թիմերը, որոնք ընդունել են CI- ի հայեցակարգը, չեն կարող պատկերացնել, որ առանց դրա կձեռնարկեն ծրագրային ապահովման ցանկացած մեծ ծրագիր:

2000 -ականների սկզբից CI- ի պրակտիկան օգտվել է ծրագրակազմի զարգացման արդյունաբերության կողմից որդեգրման տեմպերի զգալի աճից ՝ մեծ մասամբ շնորհիվ այնպիսի անհատների ռահվիրայական ջանքերի, ինչպիսիք են Մարտին Ֆաուլերը2 և Քենթ Բեկը:

Կարո՞ղ է արդյոք BI ոլորտը նաև օգուտ քաղել շարունակական ինտեգրման պրակտիկայից:

Բացարձակապես: Առաջիկա տարիներին CI- ի պրակտիկան կճանաչվի իր հսկայական ներուժի համար, երբ կիրառվի BI- ի զարգացման ժամանակակից միջավայրերում: BI էկոհամակարգերն իրենց բնույթով բարդ են (տես նկար 1): Նրանք հաճախ կազմված են բազմաթիվ շարժվող մասերից ՝ բազմաթիվ փոխկախվածություններով: Օրինակ, տիպիկ BI էկոհամակարգը կարող է պարունակել.

  • Վերին հոսքի տվյալների բազմաթիվ աղբյուրներ:
  • ETL- ի գործընթացները պարբերաբար արդյունահանում, մաքրում և բեռնում են տվյալ տվյալները հոսքի հոսքի յուրաքանչյուր աղբյուրից տվյալների մարտկոցների կամ տվյալների պահեստների մեջ:
  • BI- ի շատ ապրանքներ ավելացնում են «մոդելային» շերտ այս մարտկոցների կամ պահեստների վրա:
  • BI- ի պրոֆեսիոնալ հեղինակները կառուցում են BI- ի բովանդակություն այս մոդելի շերտի դեմ (օրինակ `հաշվետվություններ):

 

Վերին հոսքի աղբյուրների բնորոշ BI էկոհամակարգ

Ինչպես կարող են վկայել BI- ի փորձառու մասնագետները. Այս շերտերից որևէ մեկի փոքր փոփոխությունները կարող են ծածանվել ամբողջ համակարգում `ստեղծելով սխալներ կամ անարդյունավետություն BI- ի արդյունքում ստացված արդյունքներում: Կախված նրանից, թե որտեղ է գտնվում BI թիմի թողարկման ցիկլը, այդ սխալները կամ անարդյունավետությունները կարող են աննկատ մնալ օրերի, շաբաթների կամ նույնիսկ ամիսների ընթացքում:

Ահա իրական աշխարհի մի քանի օրինակ.

  • Մոդելի շերտում թվացյալ անվնաս փոփոխությունը թվերի անսպասելի փոփոխություններ է առաջացնում ամիսներ շարունակ չխմբագրված հաշվետվության համար: Այս փոփոխությունները նույնպես վատթարացնում են նույն զեկույցի աշխատանքը (պայման, որն ավելի դժվար է չափել և ձեռքով հայտնաբերել):
  • DB- ում տեսակետի փոփոխությունը առաջացնում է հաշվետվությունների տևողության կտրուկ աճ:
  • Մոդելավորողը անվանափոխում կամ ջնջում է սյունակը, որից զեկույցը կախված է:
  • Reportեկույցի հեղինակը փորձում է օպտիմալացնել զեկույցը, սակայն նոր զեկույցը ճիշտ արդյունքներ չի տալիս, երբ ընտրովի պարամետրերը սահմանվում են:

BI- ի զարգացման միջավայրերից շատերում մշակվող BI պարունակության ստուգումը հաճախ կատարվում է շատ ձեռքով (օր. «Զեկույց վարել, ստուգել թվերը, ստուգել դրանց ճիշտ լինելը»): BI թիմերը հակված են այս ձեռքով փորձարկումը կենտրոնացնել այն գործվածքների վրա, որոնք նրանք ակտիվորեն փոխում են, այլ ոչ թե այն, ինչը վերջերս չի փոփոխվել: Այս միտումը ինքն իրեն տալիս է չբացահայտված խնդիրներ, երբ համակարգի ավելի ցածր մակարդակի փոփոխությունները սկսում են ծածանվել դեպի վեր և ազդել BI- ի բազմաթիվ արտեֆակտների վրա:

Կազմակերպությունների մեծ մասը պարբերաբար BI- ի բովանդակության ելակետերը զարգացման միջավայրից կհանձնի փորձարկման կամ որակի ապահովման (ՈԱ) միջավայր, որտեղ նրանք կանցնեն առավել պաշտոնական թեստավորում ՈԱ մասնագետների կողմից: Կախված Որակի ապահովման թիմի մանրակրկիտությունից, այստեղ կարող են նկատվել կատարման արատներ կամ դեգրադացիաներ, բայց այս պահին այդ խնդիրների շտկման արժեքը զգալիորեն աճել է: Երբ արատը դուրս է գալիս զարգացման միջավայրից (օրինակ `որակի ապահովման միջավայրում), այն շտկելը դառնում է շատ ավելի թանկ: Ուղղման տիպիկ աշխատանքային հոսքը ներառում է պրոբլեմային տոմսի ստեղծում, որը նկարագրում է, թե ինչպես կարելի է վերարտադրել արատը (ՈԱ թիմի կողմից), BI թիմի բոլոր սպասվող խնդրահարույց տոմսերի փորձարկում (որոշել, թե որոնք են առաջնահերթությունները), զարգացման խնդրի վերարտադրություն, ծրագրի իրականացում: շտկել, այնուհետև մեկ այլ ելակետի վերաբաշխում ՈԱ -ում: Նմանապես, արտադրական միջավայրում հայտնաբերված թերությունները շտկելը նույնիսկ ավելի թանկ արժեն, քան ՈԱ -ում հայտնաբերվածները:

Տիպիկ փուլային միջավայրեր, զարգացման միջավայր, Որակի ապահովման միջավայր, արտադրական միջավայր

Օգտագործելով CI- ի սկզբունքները, BI- ի զարգացման թիմը կարող է պրոակտիվ կերպով հայտնաբերել նման խնդիրներ (հաճախ դրանց պատճառած փոփոխությունից րոպեների ընթացքում) և ուղղիչ գործողություններ ձեռնարկել, քանի դեռ BI- ի բովանդակությունը դեռ զարգացման միջավայրում է: Սա նշանակում է, որ ուղղման ընդհանուր արժեքը շատ ավելի էժան է:

Այսպիսով, ինչպե՞ս կարող են CI- ի սկզբունքները կիրառվել տիպիկ Business Intelligence նախագծի համար: Որոշ կոնկրետ օրինակների համար մենք կքննարկենք MotioCI™, առևտրային գործիք, որը հնարավորություն է տալիս շարունակական ինտեգրում գործարար հետախուզության զարգացման միջավայրերի համար: MotioCI ապահովում է BI թիմերին հետևյալ հնարավորությունները.

Շարունակական ինտեգրում բիզնեսի հետախուզության համար

  1. BI- ի բոլոր արտեֆակտների ավտոմատ վավերացում `համապատասխան մոդելի համեմատ: Սա երաշխավորում է, որ ցանկացած մոդելի կամ տվյալների բազայի փոփոխություններ չեն «կոտրում» գոյություն ունեցող BI արտեֆակտները:
  2. Յուրաքանչյուր արտեֆակտի համար փորձարկման դեպքերի ավտոմատ կատարում: Այս փորձարկման դեպքերը կարող են օգտագործվել այնպիսի բաներ ապահովելու համար, ինչպիսիք են.
    1. Արտեֆակտի կատարումը ճշգրիտ տվյալներ բերեց
    2. Արտեֆակտի կատարումը բերեց ակնկալվող քանակի տվյալներ
    3. Արտեֆակտի կատարումը ընդունելի է (կատարումն ավարտվում է սպասված ժամանակահատվածում)
  3. Ավտոմատացված հետևողականության ստուգում: Յուրաքանչյուր արտեֆակտի համար.
    1. Ստուգեք, որ այն հավատարիմ է սահմանված նախագծին կամ կորպորատիվ չափանիշներին այնպիսի իրերի համար, ինչպիսիք են գույները, տառատեսակները, ոճերը, ներկառուցված պատկերները և այլն:
    2. Ստուգեք, որ պարամետրերի անունները համահունչ են արտեֆակտների մեջ
    3. Ստուգեք, որ արտեֆակտների միջև հորատման հարաբերությունները դեռ ուժի մեջ են
  4. BI էկոհամակարգի փոփոխությունները հետևում են այնպես, որ երբ թեստը սկսում է ձախողվել, ծրագրի շահագրգիռ կողմերը հստակ պատկերացում ունեն «ով ինչ է փոխել» վերջին ցիկլից հետո: Օրինակ:
    1. Ինչ մոդելներ են փոխվել (և ում կողմից)
    2. Ի՞նչ արհեստական ​​իրեր են փոխվել (և ո՞ւմ կողմից)
    3. Տեղի ունեցե՞լ են տվյալների համապատասխան աղբյուրների սխեմայի փոփոխություններ:
    4. Եղե՞լ են կտրուկ փոփոխություններ համապատասխան տվյալների աղբյուրների տվյալների քանակի մեջ:

Վերոնշյալ գործընթացի ավտոմատացման և այն հաճախակի պարբերականությամբ գործարկելու միջոցով, թիմի կողմից արտադրվող BI պարունակությունը շարունակաբար կստուգվի ճշգրտության, հետևողականության և կատարման համար `դեռ զարգացման միջավայրում: Եթե ​​CI գործընթացը հայտնաբերում է ձախողում, ապա այն պրոակտիվ կերպով կտեղեկացնի BI թիմի խնդրի մասին, ինչպես նաև կցուցադրի BI- ի էկոհամակարգի փոփոխությունները, որոնք տեղի են ունեցել վերջին հաջողված ցիկլից հետո: Այս մեթոդը BI թիմին հնարավորություն է տալիս արագ նկատել վերջին փոփոխություններից առաջացած խնդիրները, ձեռնարկել ուղղիչ գործողություններ և նվազագույնի հասցնել ծախսերը:

BI- ի շարունակական ինտեգրման իրականացման զուտ արդյունքները

  1. Սխալները, անարդյունավետությունը և չափանիշների խախտումները հայտնաբերվում են շատ վաղ (սովորաբար դրանց ներդրումից րոպեների կամ ժամերի ընթացքում):
  2. BI թիմը ձեռք է բերում անհամար ժամեր, հակառակ դեպքում ձեռքով փորձելով բոլոր արտեֆակտները ՝ համոզվելու համար, որ ինչ -որ բան չի խախտվել ՝ խնայելով ժամանակը, բայց նաև պահելով թափը (դա BI հեղինակներին հնարավորություն է տալիս կենտրոնանալ իրական զարգացման խնդիրների վրա):
  3. BI թիմը ավելի մեծ տեսանելիություն է ձեռք բերում «ով ինչ է փոխում» իրենց BI էկոհամակարգում:
  4. BI թիմի արտադրած արդյունքները շատ ավելի բարձր որակի են:
  5. Վերին հոսքի որակի ապահովման կազմակերպությունները կարող են իրենց էներգիան կենտրոնացնել ավելի բարձր մակարդակի փորձարկումների վրա (բոլոր «ցածր կախված պտուղները» ինքնաբերաբար զտվում են մինչև BI- ի բովանդակության QA- ում ներդրումը):

Ամփոփելով, որ BI արդյունաբերությունը հասունանում և հաստատում է բիզնեսի հետախուզության համախմբման, կառավարման և կիրառման լավագույն փորձը, նորաստեղծ BICC- ները պետք է ուսումնասիրեն և օգտագործեն կողքի կատեգորիաներից քաղած դասերը, մասնավորապես `ծրագրային ապահովման արդյունաբերությունը: CI- ն ոչ միայն ծրագրային ապահովման արդյունաբերության լավագույն փորձն է, այլև այն վերածվում է ստանդարտ գործառնական ընթացակարգի: Երբ ընդունվում են ապացուցված գործելակերպեր, ինչպիսիք են CI- ն, BICC- ները կշարունակեն հասունանալ որպես հիմնական բիզնեսի կարգապահություն ՝ ոչ միայն բարելավելով BI թիմի թողունակությունը (կարևորությունը մասշտաբայնության համար), այլև բարձրացնելով դրա արդյունքների որակը: Այս երկակի ազդեցությունը թռիչք է ներկայացնում BICC- ի կատարողականի մեջ և շուտով կդառնա հիմնական BI միջավայրի հիմնական հենարանը:

 

 

1 Հաջող ցիկլն այն է, երբ ոչ մի թեստ չի ձախողվում:
2 Մարտին Ֆաուլերի բնօրինակը, որը նկարագրում է շարունակական ինտեգրումը, հրապարակվել է 2000 թվականի սեպտեմբերին: