Ինչպես իրականացնել Atlassian Jira + Confluence կորպորացիայի մեջ: Տեխնիկական հարցեր

Նախատեսու՞մ եք ներդնել Atlassian ծրագրաշարը (Jira, Confluence): Չե՞ք ուզում դաժան դիզայներական սխալներ թույլ տալ, որոնք այնուհետև պետք է լուծվեն վերջին պահին:

Ինչպես իրականացնել Atlassian Jira + Confluence կորպորացիայի մեջ: Տեխնիկական հարցեր
Ուրեմն սա ձեզ համար է. մենք դիտարկում ենք Atlassian Jira + Confluence-ի ներդրումը կորպորացիաներում՝ հաշվի առնելով տարբեր տեխնիկական ասպեկտները:
Ողջույն, ես RSHB-ում Ապրանքի սեփականատեր եմ և պատասխանատու եմ Կյանքի ցիկլի կառավարման համակարգի (LCMS) մշակման համար, որը կառուցված է Atlassian ծրագրային ապահովման արտադրանքների Jira-ի և Confluence-ի վրա:

Այս հոդվածում ես նկարագրելու եմ կյանքի կառավարման համակարգի կառուցման տեխնիկական ասպեկտները: Հոդվածը օգտակար կլինի բոլորի համար, ովքեր ծրագրում են իրականացնել կամ զարգացնել Atlassian Jira-ն և Confluence-ը կորպորատիվ միջավայրում: Հոդվածը հատուկ գիտելիքներ չի պահանջում և նախատեսված է Atlassian ապրանքների հետ նախնական ծանոթության համար: Հոդվածը օգտակար կլինի ադմինիստրատորների, արտադրանքի սեփականատերերի, նախագծերի մենեջերների, ճարտարապետների և բոլոր նրանց, ովքեր նախատեսում են ներդնել Atlassian ծրագրաշարի վրա հիմնված համակարգեր:

Ներածություն

Հոդվածում կքննարկվեն կորպորատիվ միջավայրում կյանքի ցիկլի կառավարման համակարգի (LCMS) ներդրման տեխնիկական հարցերը: Եկեք նախ սահմանենք, թե սա ինչ է նշանակում:

Ի՞նչ է նշանակում կորպորատիվ լուծում:

Սա նշանակում է լուծում.

  1. Ընդարձակելի։ Եթե ​​բեռը մեծանում է, տեխնիկապես հնարավոր է մեծացնել համակարգի հզորությունը: Տարանջատում են հորիզոնական և ուղղահայաց մասշտաբավորում՝ ուղղահայաց մասշտաբով մեծանում է սերվերների հզորությունը, հորիզոնական մասշտաբով՝ համակարգի համար սերվերների թիվը։
  2. Սխալ-հանդուրժող: Համակարգը հասանելի կմնա, եթե մեկ տարր ձախողվի: Ընդհանուր առմամբ, կորպորատիվ համակարգերը չեն պահանջում սխալների հանդուրժողականություն, բայց մենք կդիտարկենք հենց այդպիսի լուծումը: Մենք նախատեսում ենք ունենալ մի քանի հարյուր մրցունակ օգտատերեր մեր համակարգում, և պարապուրդը շատ կարևոր կլինի:
  3. Աջակցված է: Լուծումը պետք է աջակցվի վաճառողի կողմից: Չաջակցվող ծրագրակազմը պետք է փոխարինվի սեփական ծրագրաշարով կամ այլ աջակցվող ծրագրաշարով:
  4. Տեղակայում Ինքնակառավարվող (Ներկայումս): Ինքնակառավարումը ծրագրակազմը ոչ թե ամպում, այլ ձեր սեփական սերվերների վրա տեղադրելու հնարավորությունն է: Ավելի ճշգրիտ լինելու համար, սրանք բոլորը SaaS-ի տեղադրման տարբերակներ են: Այս հոդվածում մենք կքննարկենք տեղադրման տարբերակները միայն ինքնակառավարման համար:
  5. Անկախ մշակման և փորձարկման հնարավորություն: Համակարգում կանխատեսելի փոփոխություններ կազմակերպելու համար անհրաժեշտ է զարգացման առանձին համակարգ (փոփոխություններ բուն համակարգում), թեստավորման համակարգ (Staging) և օգտագործողների համար արդյունավետ համակարգ:
  6. Այլ. Աջակցում է նույնականացման տարբեր սցենարներ, աջակցում է աուդիտի տեղեկամատյաններին, ունի հարմարեցվող դերային մոդել և այլն:

Սրանք ձեռնարկատիրական լուծումների հիմնական տարրերն են և, ցավոք, հաճախ մոռացվում են համակարգը նախագծելիս:

Ի՞նչ է կյանքի ցիկլի կառավարման համակարգը (LCMS):

Մի խոսքով, մեր դեպքում դրանք Atlassian Jira-ն և Atlassian Confluence-ն են՝ համակարգ, որն ապահովում է թիմային աշխատանքի կազմակերպման գործիքներ: Համակարգը չի «պարտադրում» աշխատանքի կազմակերպման կանոններ, այլ տրամադրում է աշխատանքի մի շարք գործիքներ, այդ թվում՝ Scrum, Kanban տախտակներ, ջրվեժի մոդել, ընդլայնվող Scrum և այլն:
LMS անվանումը արդյունաբերական տերմին կամ սովորաբար օգտագործվող հասկացություն չէ, այն պարզապես համակարգի անվանումն է մեր Բանկում: Մեզ համար LMS-ը սխալների հետագծման համակարգ չէ, ոչ էլ Միջադեպերի կառավարման համակարգ կամ Փոփոխությունների կառավարման համակարգ:

Ի՞նչ է ներառում իրականացումը:

Լուծման իրականացումը բաղկացած է բազմաթիվ տեխնիկական և կազմակերպչական խնդիրներից.

  • Տեխնիկական կարողությունների տեղաբաշխում.
  • Ծրագրային ապահովման գնում.
  • Լուծումն իրականացնելու համար թիմի ստեղծում:
  • Լուծման տեղադրում և կազմաձևում:
  • Լուծումների ճարտարապետության մշակում: Դերային մոդել.
  • Գործառնական փաստաթղթերի մշակում, ներառյալ հրահանգներ, կանոնակարգեր, տեխնիկական դիզայն, կանոնակարգեր և այլն:
  • Ընկերության գործընթացների փոփոխություն:
  • Աջակցող թիմի ստեղծում: SLA զարգացում.
  • Օգտագործողների ուսուցում.
  • Այլ.

Այս հոդվածում մենք կանդրադառնանք իրականացման տեխնիկական ասպեկտներին՝ առանց կազմակերպչական բաղադրիչի մանրամասների:

Ատլասիայի առանձնահատկությունները

Atlassian-ը առաջատար է բազմաթիվ հատվածներում.

Atlassian-ի արտադրանքն ապահովում է ձեզ անհրաժեշտ ձեռնարկության բոլոր հատկանիշները: Նշեմ հետևյալ հատկանիշները.

  1. Atlassian լուծումները հիմնված են Java Tomcat վեբ սերվերի վրա: Apache Tomcat ծրագրակազմը ներառված է Atlassian ծրագրաշարի հետ՝ որպես տեղադրման մաս: Դուք չեք կարող փոխել Apache Tomcat-ի տարբերակը, որը տեղադրված է որպես Atlassian ծրագրաշարի մաս, նույնիսկ եթե տարբերակը հնացած է և պարունակում է խոցելիություններ: Միակ տարբերակը Atlassian-ից թարմացման սպասելն է՝ Apache Tomcat-ի ավելի նոր տարբերակով: Այժմ, օրինակ, Jira-ի ներկայիս տարբերակներն ունեն Apache Tomcat 8.5.42, իսկ Confluence-ն ունի Apache Tomcat 9.0.33:
  2. Օգտագործողի համար հարմար ինտերֆեյս, այս դասի ծրագրային ապահովման համար շուկայում առկա լավագույն փորձը ներդրված է:
  3. Լիովին հարմարեցված լուծում: Փոփոխություններով դուք կարող եք իրականացնել ցանկացած փոփոխություն հիմնական ֆունկցիոնալության մեջ օգտագործողի համար:
  4. Զարգացած էկոհամակարգ. Կան մի քանի հարյուր գործընկերներ. https://partnerdirectory.atlassian.com, այդ թվում՝ 16 գործընկեր Ռուսաստանում։ Ռուսաստանում գործընկերների միջոցով է, որ դուք կարող եք գնել Atlassian ծրագրակազմ, պլագիններ և անցնել վերապատրաստում: Դա գործընկերներն են, ովքեր մշակում և աջակցում են պլագինների մեծամասնությանը:
  5. Հավելվածների խանութ (պլագիններ). https://marketplace.atlassian.com. Փլագինները զգալիորեն ընդլայնում են Atlassian ծրագրաշարի ֆունկցիոնալությունը: Atlassian ծրագրաշարի հիմնական ֆունկցիոնալությունը բավականին համեստ է, գրեթե ցանկացած առաջադրանքի համար անհրաժեշտ է դառնում տեղադրել լրացուցիչ հավելյալ հավելումներ անվճար կամ լրացուցիչ գումարի դիմաց: Հետևաբար, ծրագրային ապահովման ծախսերը կարող են զգալիորեն ավելի բարձր լինել, քան սկզբնապես գնահատվել էր:
    Ներկայումս խանութում հրապարակվել են մի քանի հազար պլագիններ, որոնցից գրեթե հազարը փորձարկվել և վավերացվել են Տվյալների կենտրոնի կողմից հաստատված հավելվածների ծրագրի շրջանակներում: Նման հավելումները կարելի է համարել կայուն և հարմար զբաղված համակարգերում օգտագործելու համար։
    Ես ձեզ խորհուրդ եմ տալիս ուշադիր մոտենալ պլագինների պլանավորման հարցին, դա մեծապես ազդում է լուծման արժեքի վրա, պլագիններից շատերը կարող են հանգեցնել համակարգի անկայունության, իսկ փլագինների արտադրողը աջակցություն չի տրամադրում խնդրի լուծման համար:
  6. Ուսուցում և հավաստագրեր. https://www.atlassian.com/university
  7. SSO և SAML 2.0 մեխանիզմներն ապահովված են:
  8. Ընդարձակելիության և սխալների հանդուրժողականության աջակցությունը հասանելի է միայն Տվյալների կենտրոնի հրատարակություններում: Այս հրատարակությունն առաջին անգամ հայտնվել է 2014 թվականին (Jira 6.3): Տվյալների կենտրոնի հրատարակությունների ֆունկցիոնալությունը մշտապես ընդլայնվում և բարելավվում է (օրինակ, մեկ հանգույցի տեղադրման հնարավորությունը հայտնվել է միայն 2020 թվականին): Տվյալների կենտրոնի հրատարակությունների համար հավելվածների մոտեցումը շատ փոխվեց 2018 թվականին՝ Տվյալների կենտրոնի հաստատված հավելվածների ներդրմամբ:
  9. Աջակցության արժեքը. Վաճառողի կողմից աջակցության արժեքը գրեթե հավասար է ծրագրային ապահովման լիցենզիաների ամբողջ արժեքին: Ստորև բերված է լիցենզիաների արժեքի հաշվարկման օրինակ:
  10. Երկարաժամկետ թողարկումների բացակայություն: Կան այսպես կոչված Ձեռնարկությունների տարբերակները, բայց դրանք, ինչպես մյուս բոլոր տարբերակները, աջակցվում են 2 տարի։ Այն տարբերությամբ, որ Enterprise տարբերակների համար թողարկվում են միայն շտկումներ՝ առանց նոր ֆունկցիոնալության ավելացման։
  11. Ընդլայնված աջակցության տարբերակներ (հավելյալ գնով): https://www.atlassian.com/enterprise/support-services
  12. Աջակցվում են DBMS-ի մի քանի տարբերակներ: Atlassian ծրագիրը տրամադրվում է անվճար H2 DBMS-ով, այս DBMS-ը խորհուրդ չի տրվում արդյունավետ օգտագործման համար: Հետևյալ DBMS-ներն ապահովված են արդյունավետ օգտագործման համար՝ Amazon Aurora (միայն տվյալների կենտրոն) PostgreSQL, Azure SQL, MySQL, Oracle DB, PostgreSQL, MS SQL Server: Աջակցվող տարբերակների վրա կան սահմանափակումներ, և հաճախ միայն ավելի հին տարբերակներն են աջակցվում, բայց յուրաքանչյուր DBMS-ի համար կա վաճառողի աջակցությամբ տարբերակ.
    Jira-ի աջակցվող հարթակներ,
    Confluence-ի աջակցվող հարթակներ.

Տեխնիկական ճարտարապետություն

Ինչպես իրականացնել Atlassian Jira + Confluence կորպորացիայի մեջ: Տեխնիկական հարցեր

Դիագրամի բացատրություններ.

  • Դիագրամը ցույց է տալիս իրականացումը մեր Բանկում, այս կոնֆիգուրացիան տրված է որպես օրինակ և խորհուրդ չի տրվում:
  • nginx-ն ապահովում է հակադարձ վստահված անձի գործառույթ ինչպես Jira-ի, այնպես էլ Confluence-ի համար:
  • DBMS-ի սխալների հանդուրժողականությունը իրականացվում է DBMS-ի միջոցով:
  • Փոփոխությունները փոխանցվում են միջավայրերի միջև՝ օգտագործելով Jira կոնֆիգուրացիայի կառավարիչը:
  • Դիագրամում AppSrv-ն սեփական կիրառական սերվեր է հաշվետվությունների համար և չի օգտագործում Atlassian ծրագրակազմ:
  • EasyBI տվյալների բազան ստեղծվել է խորանարդներ ստեղծելու և հաշվետվություններ ներկայացնելու համար՝ օգտագործելով eazyBI Reports and Charts for Jira հավելվածը:
  • Confluence Synchrony ծառայությունը (բաղադրիչ, որը թույլ է տալիս միաժամանակ խմբագրել փաստաթղթերը) առանձնացված չէ առանձին տեղադրման մեջ և գործարկվում է Confluence-ի հետ միասին՝ նույն սերվերում:

Լիցենզավորում

Atlassian լիցենզավորման հարցերը արժանի են առանձին հոդվածի, այստեղ ես միայն կնշեմ ընդհանուր սկզբունքները։
Հիմնական խնդիրները, որոնց մենք հանդիպեցինք, տվյալների կենտրոնի հրատարակությունների լիցենզավորման խնդիրներն էին: Սերվերի և տվյալների կենտրոնի հրատարակությունների լիցենզավորման առանձնահատկությունները.

  1. Սերվերի հրատարակության լիցենզիան հավերժական է, և գնորդը կարող է օգտագործել ծրագրաշարը նույնիսկ լիցենզիայի ժամկետի ավարտից հետո: Բայց լիցենզիայի ժամկետը լրանալուց հետո գնորդը կորցնում է արտադրանքի համար աջակցություն ստանալու և ծրագրաշարը վերջին տարբերակներին թարմացնելու իրավունքը:
  2. Լիցենզավորումը հիմնված է «JIRA Users» գլոբալ թույլտվությունների համակարգում օգտագործողների թվի վրա: Կարևոր չէ՝ նրանք օգտվում են համակարգից, թե ոչ. նույնիսկ եթե օգտատերերը երբեք չեն մուտք գործել համակարգ, բոլոր օգտվողները հաշվի կառնվեն լիցենզիայի համար: Եթե ​​լիցենզավորված օգտատերերի թիվը գերազանցվի, լուծումը կլինի որոշ օգտատերերից «JIRA Users» թույլտվությունը հեռացնելը:
  3. Տվյալների կենտրոնի լիցենզիան իրականում բաժանորդագրություն է: Պահանջվում է տարեկան լիցենզիայի վճար: Եթե ​​ժամկետը լրանա, համակարգի հետ աշխատանքը կարգելափակվի:
  4. Լիցենզիայի գները կարող են փոխվել ժամանակի ընթացքում: Ինչպես ցույց է տալիս պրակտիկան, ավելի մեծ չափով և, գուցե, զգալիորեն: Հետևաբար, եթե այս տարի ձեր լիցենզիաները նույնքան արժեն, ապա հաջորդ տարի լիցենզիաների արժեքը կարող է աճել։
  5. Լիցենզավորումն իրականացվում է օգտագործողի կողմից ըստ աստիճանների (օրինակ՝ մակարդակ 1001-2000 օգտագործողներ): Հնարավոր է արդիականացում ավելի բարձր աստիճանի, հավելավճարով։
  6. Եթե ​​լիցենզավորված օգտատերերի թիվը գերազանցի, նոր օգտատերեր կստեղծվեն առանց մուտք գործելու իրավունքի («JIRA Users» գլոբալ թույլտվություն):
  7. Փլագինները կարող են լիցենզավորվել միայն նույն թվով օգտագործողների համար, որքան հիմնական ծրագրաշարը:
  8. Միայն արտադրողական տեղակայանքները պետք է լիցենզավորված լինեն, մնացածի համար կարող եք ստանալ Մշակողի լիցենզիա. https://confluence.atlassian.com/jirakb/get-a-developer-license-for-jira-server-744526918.html.
  9. Սպասարկում գնելու համար դուք պետք է գնեք Renew Software-ի սպասարկում. արժեքը կազմում է սկզբնական ծրագրաշարի արժեքի մոտավորապես 50%-ը: Այս հատկությունը հասանելի չէ Տվյալների կենտրոնի համար և չի տարածվում փլագինների վրա, դրանց աջակցելու համար դուք պետք է տարեկան վճարեք ամբողջ գինը:
    Այսպիսով, ծրագրային ապահովման տարեկան աջակցությունն արժե ծրագրային ապահովման ընդհանուր արժեքի ավելի քան 50%-ը Server հրատարակության դեպքում և 100%-ը՝ Տվյալների կենտրոնի հրատարակության դեպքում, ինչը զգալիորեն ավելին է, քան մյուս վաճառողներից շատերը: Իմ կարծիքով, սա Atlassian-ի բիզնես մոդելի էական թերությունն է։

Սերվերի խմբագրությունից տվյալների կենտրոն անցնելու առանձնահատկությունները.

  1. Սերվերային տարբերակից տվյալների կենտրոնի արդիականացման համար վճար կա: Արժեքին կարող եք ծանոթանալ այստեղ https://www.atlassian.com/licensing/data-center.
  2. Սերվերային տարբերակից Տվյալների կենտրոնին անցնելիս ձեզ հարկավոր չէ վճարել պլագինների խմբագրությունը փոխելու համար. սերվերի հրատարակության հավելումները կշարունակեն գործել: Բայց անհրաժեշտ կլինի թարմացնել լիցենզիաները տվյալների կենտրոնի հրատարակության համար հավելումների համար:
  3. Հնարավոր է, որ դուք կարողանաք օգտագործել պլագիններ, որոնք չունեն տվյալների կենտրոնի հրատարակությունների հետ օգտագործման տարբերակ: Այնուամենայնիվ, իհարկե, նման պլագինները կարող են ճիշտ չաշխատել, և ավելի լավ է նախօրոք նման պլագիններին այլընտրանք տրամադրել։
  4. Տվյալների կենտրոնի խմբագրությանն անցումը կատարվում է նոր լիցենզիա տեղադրելով։ Այնուամենայնիվ, սերվերի հրատարակության լիցենզիան դեռևս հասանելի է:
  5. Օգտատերերի համար Data Center-ի և Server հրատարակությունների միջև ֆունկցիոնալ տարբերություններ չկան, բոլոր տարբերությունները միայն վարչական գործառույթների և տեխնիկական տեղադրման հնարավորությունների մեջ են:
  6. Ծրագրային ապահովման և հավելումների արժեքը տատանվում է Սերվերի և Տվյալների կենտրոնի հրատարակությունների համար: Արժեքի տարբերությունը հաճախ 5%-ից պակաս է (էական չէ): Ստորև բերված է ծախսերի հաշվարկման օրինակ:

Իրականացման ֆունկցիոնալ շրջանակը

Atlassian հիմնական ծրագրային փաթեթը ներառում է հսկայական հնարավորություններ, սակայն հաճախ համակարգի կողմից տրամադրվող հնարավորությունները խիստ բացակայում են: Երբեմն նույնիսկ ամենապարզ գործառույթները հասանելի չեն հիմնական փաթեթում, ուստի պլագիններն անփոխարինելի են գրեթե ցանկացած իրականացման համար: Jira համակարգի համար մենք օգտագործում ենք հետևյալ պլագինները (կարելի է սեղմել նկարը).
Ինչպես իրականացնել Atlassian Jira + Confluence կորպորացիայի մեջ: Տեխնիկական հարցեր

Confluence համակարգի համար մենք օգտագործում ենք հետևյալ պլագինները (կարելի է սեղմել նկարը).
Ինչպես իրականացնել Atlassian Jira + Confluence կորպորացիայի մեջ: Տեխնիկական հարցեր

Փլագիններով աղյուսակների մեկնաբանություններ.

  • Բոլոր գները հիմնված են 2000 օգտագործողների վրա;
  • Ցուցադրված գները հիմնված են նշված գների վրա https://marketplace.atlassian.com, իրական արժեքը (զեղչերով) ավելի ցածր է;
  • Ինչպես տեսնում եք, ընդհանուր գումարը գործնականում նույնն է Data Center-ի և Server հրատարակությունների համար.
  • Օգտագործման համար ընտրվում են միայն պլագինները, որոնք աջակցում են Տվյալների կենտրոնի հրատարակությանը: Մենք բացառեցինք մնացած պլագինները համակարգի կայունության պլաններից:

Ֆունկցիոնալությունը համառոտ նկարագրված է Comment սյունակում: Լրացուցիչ հավելումներ ընդլայնել են համակարգի ֆունկցիոնալությունը.

  • Ավելացվել է մի քանի տեսողական գործիքներ;
  • Ինտեգրման մեխանիզմները բարելավվել են.
  • Ավելացված գործիքներ ջրվեժի մոդելային նախագծերի համար;
  • Ավելացվել են ընդլայնելի Scrum-ի գործիքներ՝ խոշոր նախագծային թիմերի աշխատանքը կազմակերպելու համար;
  • Ավելացված ֆունկցիոնալություն ժամանակի հետևման համար;
  • Գործողությունների ավտոմատացման և լուծումը կարգավորելու համար ավելացված գործիքներ;
  • Ավելացվեց գործառույթ՝ պարզեցնելու և ավտոմատացնելու լուծման կառավարումը:

Բացի այդ, մենք օգտագործում ենք Atlassian Companion հավելված. Այս հավելվածը թույլ է տալիս խմբագրել ֆայլերը արտաքին հավելվածներում (MS Office) և վերադարձնել դրանք Confluence (ստուգում):
Դիմում օգտագործողի աշխատատեղերի համար (հաստ հաճախորդ) ALM Works Jira Client https://marketplace.atlassian.com/apps/7070 որոշեց չօգտագործել այն վաճառողի վատ աջակցության և բացասական ակնարկների պատճառով:
Համար ինտեգրում MS Project-ի հետ Մենք օգտագործում ենք ինքնուրույն գրված հավելված, որը թույլ է տալիս թարմացնել MS Project-ի խնդիրների կարգավիճակները Jira-ից և հակառակը: Հետագայում, նույն նպատակների համար, մենք նախատեսում ենք օգտագործել վճարովի հավելված Septah Bridge - JIRA MS Project Plugin, որը տեղադրվում է որպես MS Project-ի հավելում։
Ինտեգրում արտաքին հավելվածների հետ իրականացվում է Application Links-ի միջոցով: Միևնույն ժամանակ, Atlassian հավելվածների համար ինտեգրումները նախապես կազմաձևված են և աշխատում են կազմաձևումից անմիջապես հետո, օրինակ՝ Դուք կարող եք տեղեկատվություն ցուցադրել Jira-ի խնդիրների մասին Confluence-ի էջում:
Jira և Confluence սերվերներ մուտք գործելու համար օգտագործվում է REST API. https://developer.atlassian.com/server/jira/platform/rest-apis.
SOAP-ը և XML-RPC API-ն հնացած են և հասանելի չեն նոր տարբերակներում օգտագործելու համար:

Ամփոփում

Այսպիսով, մենք դիտարկեցինք Atlassian արտադրանքի վրա հիմնված համակարգի ներդրման տեխնիկական առանձնահատկությունները: Առաջարկվող լուծումը ներկայացնում է մեկ հնարավոր լուծում և լավ պիտանի է ձեռնարկության միջավայրի համար

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

Ուրախ կլինեմ պատասխանել հարցերին մեկնաբանություններում։

Source: www.habr.com