Po planifikoni implementimin e softuerit Atlassian (Jira, Confluence)? Nuk doni tĂ« bĂ«ni gabime serioze nĂ« projektim, tĂ« cilat mĂ« pas do tâju duhet tâi zgjidhni nĂ« momentin e fundit?

AtĂ«herĂ« jeni nĂ« vendin e duhur â shqyrtojmĂ« implementimin e Atlassian Jira + Confluence nĂ« korporatĂ«, duke marrĂ« parasysh aspekte tĂ« ndryshme teknike.
Përshëndetje, unë jam Pronari i Produktit në RSHB dhe jam përgjegjës për zhvillimin e Sistemit të Menaxhimit të Ciklit të Jetës (SMCJ), të ndërtuar mbi produktet softuerike Atlassian Jira dhe Confluence.
NĂ« kĂ«tĂ« artikull do tĂ« pĂ«rshkruaj aspektet teknike tĂ« ndĂ«rtimit tĂ« SMCJ. Artikulli do tĂ« jetĂ« i dobishĂ«m pĂ«r tĂ« gjithĂ« ata qĂ« planifikojnĂ« implementimin ose merren me zhvillimin e Atlassian Jira dhe Confluence nĂ« njĂ« mjedis korporativ. Artikulli nuk kĂ«rkon njohuri tĂ« specializuara dhe Ă«shtĂ« menduar pĂ«r ata qĂ« kanĂ« njĂ« nivel fillestar njohjeje me produktet e kompanisĂ« Atlassian. Ai do tâu hyjĂ« nĂ« punĂ« administratorĂ«ve, pronarĂ«ve tĂ« produktit, menaxherĂ«ve tĂ« projekteve, arkitektĂ«ve dhe kujtdo qĂ« planifikon implementimin e sistemeve mbi bazĂ«n e softuerit Atlassian.
Hyrje
Në artikull do të shqyrtohen çështjet teknike të implementimit të Sistemit të Menaxhimit të Ciklit të Jetës (SMCJ) në një mjedis korporativ. Le të përcaktojmë fillimisht se çfarë do të thotë kjo.
ĂfarĂ« do tĂ« thotĂ« njĂ« zgjidhje korporative?
Kjo do të thotë një zgjidhje:
- E shkallĂ«zueshme. NĂ« rast tĂ« rritjes sĂ« ngarkesĂ«s, ekziston mundĂ«sia teknike pĂ«r tĂ« rritur kapacitetin e sistemit. Dallohen shkallĂ«zimi horizontal dhe vertikal â nĂ« shkallĂ«zimin vertikal rritet kapaciteti i serverĂ«ve, ndĂ«rsa nĂ« shkallĂ«zimin horizontal rritet numri i serverĂ«ve pĂ«r funksionimin e sistemit.
- Me tolerancë ndaj dështimeve. Sistemi do të mbetet i disponueshëm edhe nëse një element del jashtë funksionit. Në përgjithësi, për sistemet korporative nuk kërkohet domosdoshmërisht tolerancë ndaj dështimeve, por ne do të shqyrtojmë pikërisht një zgjidhje të tillë. Në sistemin tonë planifikohen disa qindra përdorues njëkohësisht dhe ndërprerjet do të ishin shumë kritike.
- E mbështetur. Zgjidhja duhet të jetë nën mbështetjen e vendorit. Softueri pa mbështetje duhet të zëvendësohet me zhvillime të brendshme ose me një softuer tjetër që ka mbështetje.
- Instalimi Self-managed (On-premise). Self-managed është mundësia për të instaluar softuerin jo në cloud, por në serverët tuaj. Më saktë, kjo përfshin të gjitha opsionet e instalimit që nuk janë SaaS. Në këtë artikull do të shqyrtojmë vetëm opsionet e instalimit Self-managed.
- Mundësia për zhvillim dhe testim të pavarur. Për të organizuar ndryshime të parashikueshme në sistem, nevojiten një sistem i veçantë për zhvillim (ndryshime në vetë sistemin), një sistem testimi (Staging) dhe një sistem prodhimi për punën e përdoruesve.
- Tjetër. Mbështet skenarë të ndryshëm autentikimi, mbështet log-et e auditimit, ka një model rolesh të konfigurueshëm etj.
Këto janë elemente bazë të zgjidhjeve korporative dhe, fatkeqësisht, shpesh harrohen gjatë projektimit të sistemit.
Po çfarë është Sistemi i Menaxhimit të Ciklit të Jetës (SUXH)?
Shkurt, nĂ« rastin tonĂ« kjo Ă«shtĂ« Atlassian Jira dhe Atlassian Confluence â njĂ« sistem qĂ« ofron mjete pĂ«r organizimin e punĂ«s nĂ« ekip. Sistemi nuk i «imponon» rregullat e organizimit tĂ« punĂ«s, por ofron njĂ« gamĂ« tĂ« gjerĂ« mjetesh pune: Scrum, tabela Kanban, modeli waterfall, Scrum i shkallĂ«zueshĂ«m etj.
Emri SUXH nuk është një term i industrisë apo një koncept i përdorur gjerësisht, por thjesht emri i sistemit në Bankën tonë. Për ne, SUXH nuk është sistem bug-tracking, nuk është sistem i Menaxhimit të Incidenteve dhe as sistem i Menaxhimit të Ndryshimeve.
ĂfarĂ« pĂ«rfshin implementimi?
Implementimi i zgjidhjes përbëhet nga shumë çështje teknike dhe organizative:
- Alokimi i kapaciteteve teknike.
- Blerja e softuerit.
- Krijimi i ekipit për implementimin e zgjidhjes.
- Instalimi dhe konfigurimi i zgjidhjes.
- Hartimi i arkitekturës së zgjidhjes. Modeli i roleve.
- Hartimi i dokumentacionit operativ, duke përfshirë udhëzime, rregullore, projektin teknik, dispozita etj.
- Ndryshimi i proceseve të kompanisë.
- Krijimi i ekipit të mbështetjes. Hartimi i SLA.
- Trajnimi i përdoruesve.
- Tjetër.
Në këtë artikull do të shqyrtojmë aspektet teknike të implementimit, pa hyrë në detaje për pjesën organizative.
Veçoritë e Atlassian
Atlassian është lider në shumë segmente:
(Pozicioni udhëheqës është rezultat i blerjes së suksesshme të AgileCraft me zgjidhjen e vet cloud)


Produktet e kompanisë Atlassian kanë të gjitha funksionet e nevojshme për përdorim korporativ. Do të veçoja këto karakteristika:
- Zgjidhjet e Atlassian bazohen në serverin web Java Tomcat. Softueri Apache Tomcat përfshihet në softuerin e Atlassian si pjesë e instalimit; versioni i Apache Tomcat i instaluar bashkë me softuerin e Atlassian nuk mund të ndryshohet, edhe nëse versioni është i vjetëruar dhe përmban dobësi sigurie. E vetmja mundësi është të pritet një përditësim nga Atlassian me një version më të ri të Apache Tomcat. Aktualisht, për shembull, versionet më të fundit të Jira përfshijnë Apache Tomcat 8.5.42, ndërsa Confluence përfshin Apache Tomcat 9.0.33.
- Ndërfaqe e përshtatshme, me praktikat më të mira të disponueshme në treg për këtë kategori softueri.
- Zgjidhje plotësisht e personalizueshme. Me zhvillime shtesë mund të realizohet çdo ndryshim i funksionalitetit bazë për përdoruesin.
- Ekosistem i zhvilluar. Ka disa qindra partnerë: , duke përfshirë 16 partnerë në Rusi. Pikërisht përmes partnerëve në Rusi mund të blihet softueri Atlassian, plug-in-et dhe të ndiqet trajnim. Janë partnerët ata që zhvillojnë dhe mirëmbajnë shumicën e plug-in-eve.
- Dyqani i aplikacioneve (plug-in-e): . Plug-in-et e zgjerojnë ndjeshëm funksionalitetin e softuerit Atlassian. Funksionaliteti bazë i softuerit Atlassian është mjaft modest; pothuajse për çdo detyrë lind nevoja për të instaluar plug-in-e shtesë, falas ose me pagesë. Për këtë arsye, kostot e softuerit mund të rezultojnë dukshëm më të larta se sa ishte vlerësuar fillimisht.
Aktualisht në dyqan janë publikuar disa mijëra plug-in-e, dhe gati një mijë prej tyre janë testuar dhe validuar sipas programit Data Center approved apps. Këto plug-in-e mund të konsiderohen të qëndrueshme dhe të përshtatshme për përdorim në sisteme me ngarkesë të lartë.
Ju kĂ«shilloj tâi qaseni me shumĂ« kujdes planifikimit tĂ« plug-in-eve, pasi kjo ndikon ndjeshĂ«m nĂ« koston e zgjidhjes; shumĂ« prej tyre mund tĂ« shkaktojnĂ« paqĂ«ndrueshmĂ«ri tĂ« sistemit, ndĂ«rsa prodhuesi i plug-in-it mund tĂ« mos ofrojĂ« mbĂ«shtetje pĂ«r zgjidhjen e problemit. - Trajnime dhe certifikime:
- Mbështeten mekanizmat SSO, SAML 2.0.
- Mbështetja për shkallëzim dhe tolerancë ndaj dështimeve ofrohet vetëm në edicionet Data Center. Ky edicion u shfaq për herë të parë në vitin 2014 (Jira 6.3). Funksionaliteti i edicioneve Data Center zgjerohet dhe përmirësohet vazhdimisht (për shembull, mundësia e single node installation u shtua vetëm në vitin 2020). Qasja ndaj shtojcave për edicionet Data Center ndryshoi ndjeshëm në vitin 2018 me prezantimin e Data Center approved apps.
- Kostoja e mbështetjes. Kostoja e mbështetjes nga vendor-i është praktikisht e barabartë me koston e plotë të licencave të softuerit. Një shembull i llogaritjes së kostos së licencave jepet më poshtë.
- Mungesa e lëshimeve Long Term. Ekzistojnë të ashtuquajturat , por ato, njësoj si të gjitha versionet e tjera, mbështeten për 2 vjet. Dallimi është se për versionet Enterprise publikohen vetëm korrigjime, pa shtimin e funksionaliteteve të reja.
- Opsione të zgjeruara të mbështetjes (me pagesë shtesë).
- Mbështeten disa lloje DBMS. Softueri Atlassian shpërndahet me DBMS-në falas H2, por kjo DBMS nuk rekomandohet për përdorim në prodhim. Për përdorim në prodhim mbështeten DBMS-të e mëposhtme: Amazon Aurora (vetëm për Data Center), PostgreSQL, Azure SQL, MySQL, Oracle DB, PostgreSQL, MS SQL Server. Ka kufizime për versionet e mbështetura dhe shpesh mbështeten vetëm versionet e vjetra, por për secilën DBMS ekziston një version me mbështetje nga vendor-i:
,
.
Arkitektura teknike

Shpjegime për skemën:
- Në skemë paraqitet implementimi në Bankën tonë; ky konfigurim jepet si shembull dhe nuk konsiderohet i rekomanduar.
- Nginx ofron funksionalitetin reverse-proxy si për Jira, ashtu edhe për Confluence.
- Toleranca ndaj dështimeve e DBMS realizohet me mjetet e vetë DBMS-së.
- Transferimi i ndryshimeve midis mjediseve kryhet duke përdorur shtojcën Configuration Manager for Jira.
- AppSrv në skemë është një server i veçantë aplikacionesh për raportim dhe nuk përdor softuerin Atlassian.
- Baza e të dhënave EasyBI është krijuar për ndërtimin e kubeve dhe raportimit duke përdorur shtojcën eazyBI Reports and Charts for Jira.
- Shërbimi Confluence Synchrony (komponenti që mundëson redaktimin e njëkohshëm të dokumenteve) nuk është ndarë në një instalim më vete dhe ekzekutohet së bashku me Confluence, në të njëjtin server.
Licencimi
ĂĂ«shtjet e licencimit tĂ« Atlassian meritojnĂ« njĂ« artikull mĂ« vete; kĂ«tu do tĂ« pĂ«rmend vetĂ«m parimet e pĂ«rgjithshme.
Pyetjet kryesore me të cilat u përballëm lidhen me licencimin e edicioneve Data Center. Veçoritë e licencimit për edicionet Server dhe Data Center:
- Licenca për edicionin Server është e përhershme dhe blerësi mund ta përdorë softuerin edhe pas skadimit të licencës. Por pas skadimit të licencës, blerësi humbet të drejtën për të marrë mbështetje për produktin dhe për ta përditësuar softuerin në versionet më të fundit.
- Licencimi bĂ«het sipas numrit tĂ« pĂ«rdoruesve nĂ« lejen globale âJIRA Usersâ tĂ« sistemit. NĂ« kĂ«tĂ« rast, nuk ka rĂ«ndĂ«si nĂ«se e pĂ«rdorin sistemin apo jo â edhe nĂ«se pĂ«rdoruesit nuk janĂ« futur asnjĂ«herĂ« nĂ« sistem, tĂ« gjithĂ« do tĂ« llogariten pĂ«r licencĂ«n. NĂ«se tejkalohet numri i pĂ«rdoruesve tĂ« licencuar, zgjidhja Ă«shtĂ« tâu hiqet leja âJIRA Usersâ njĂ« pjese tĂ« pĂ«rdoruesve.
- Licenca për Data Center në thelb është një abonim. Kërkohet pagesë vjetore e licencës. Pas skadimit të afatit, puna me sistemin do të bllokohet.
- Kostoja e licencave mund të ndryshojë me kalimin e kohës. Siç tregon praktika, zakonisht rritet dhe ndoshta ndjeshëm. Prandaj, nëse këtë vit licencat kushtojnë një shumë të caktuar, vitin e ardhshëm kostoja e tyre mund të rritet.
- Licencimi bëhet sipas përdoruesve, bazuar në tier (për shembull, niveli 1001-2000 përdorues). Ekziston mundësia e kalimit në një tier më të lartë me pagesë shtesë.
- NĂ«se tejkalohet numri i pĂ«rdoruesve tĂ« licencuar, pĂ«rdoruesit e rinj do tĂ« krijohen pa tĂ« drejtĂ« hyrjeje nĂ« sistem (leja globale âJIRA Usersâ).
- Plugin-et mund të licencohen vetëm për të njëjtin numër përdoruesish si softueri kryesor.
- Licencim kërkohet vetëm për instalimet produktive; për të tjerat mund të merret një Developer license: .
- PĂ«r tĂ« blerĂ« mbĂ«shtetje, kĂ«rkohet blerja e Renew Software maintenance â kostoja Ă«shtĂ« afĂ«rsisht 50% e kostos sĂ« softuerit fillestar. Kjo mundĂ«si nuk Ă«shtĂ« e disponueshme pĂ«r Data Center dhe nuk zbatohet pĂ«r plugin-et â pĂ«r mbĂ«shtetjen e tyre do tĂ« duhet tĂ« paguhet kostoja e plotĂ« çdo vit.
KĂ«shtu, mbĂ«shtetja vjetore e softuerit kushton mĂ« shumĂ« se 50% tĂ« kostos sĂ« plotĂ« tĂ« softuerit nĂ« rastin e edicionit Server dhe 100% nĂ« rastin e edicionit Data Center â kjo Ă«shtĂ« dukshĂ«m mĂ« shumĂ« se te shumica e furnitorĂ«ve tĂ« tjerĂ«. Sipas mendimit tim, ky Ă«shtĂ« njĂ« minus i rĂ«ndĂ«sishĂ«m i modelit tĂ« biznesit tĂ« Atlassian.
Veçoritë e kalimit nga edicioni Server në Data Center:
- Kalimi nga versioni Server në Data Center është me pagesë. Koston mund ta gjeni këtu .
- Kur kaloni nga versioni Server nĂ« Data Center, nuk kĂ«rkohet pagesĂ« pĂ«r ndryshimin e versionit tĂ« plugin-eve â plugin-et pĂ«r versionin Server do tĂ« vazhdojnĂ« tĂ« funksionojnĂ«. Por rinovimi i licencave pĂ«r plugin-et do tĂ« duhet tĂ« bĂ«het detyrimisht tashmĂ« pĂ«r versionin Data Center.
- Mund të përdorni plugin-e për të cilat nuk ka version për përdorim me versionet Data Center. Megjithatë, natyrisht, plugin-e të tilla mund të funksionojnë jo siç duhet, prandaj është më mirë të parashikoni paraprakisht një alternativë për to.
- Kalimi në versionin Data Center bëhet duke instaluar një licencë të re. Ndërkohë, licenca për versionin Server mbetet ende e disponueshme.
- Nuk ka asnjë dallim funksional midis versioneve Data Center dhe Server për përdoruesit; të gjitha ndryshimet lidhen vetëm me funksionet e administrimit dhe mundësitë teknike të instalimit.
- Kostoja e softuerit dhe e plugin-eve ndryshon për versionet Server dhe Data Center. Diferenca në çmim shpesh është më pak se 5% (jo thelbësore). Një shembull i llogaritjes së kostos jepet më poshtë.
Shtrirja funksionale e implementimit
Paketa bazë e softuerit Atlassian përfshin një numër të madh funksionesh, por shpesh mundësitë që ofron sistemi nuk mjaftojnë. Ndonjëherë edhe funksionet më të thjeshta nuk janë të disponueshme në paketën bazë, prandaj plugin-et janë pothuajse të domosdoshme në çdo implementim. Për sistemin Jira ne përdorim plugin-et e mëposhtme (figura është e klikueshme):
Për sistemin Confluence ne përdorim plugin-et e mëposhtme (figura është e klikueshme):
Komente për tabelat me plugin-e:
- Të gjitha çmimet janë llogaritur për 2000 përdorues;
- Janë paraqitur çmimet bazuar në çmimet e treguara , kostoja reale (me zbritje) rezulton më e ulët;
- Siç e shohim, shuma përfundimtare praktikisht nuk ndryshon për versionet Data Center dhe Server;
- Për përdorim janë përzgjedhur vetëm plugin-e me mbështetje për versionin Data Center. Plugin-et e tjera i kemi përjashtuar nga planet, për të ruajtur stabilitetin e sistemit.
Funksionaliteti është përshkruar shkurt në kolonën Koment. Plugin-et shtesë e kanë zgjeruar funksionalitetin e sistemit:
- Janë shtuar disa mjete vizuale;
- Janë përmirësuar mekanizmat e integrimit;
- ĂshtĂ« shtuar njĂ« paketĂ« mjetesh pĂ«r projekte sipas modelit Waterfall;
- ĂshtĂ« shtuar njĂ« paketĂ« mjetesh pĂ«r Scrum tĂ« shkallĂ«zueshĂ«m, pĂ«r organizimin e punĂ«s sĂ« ekipeve tĂ« mĂ«dha tĂ« projekteve;
- ĂshtĂ« shtuar funksionaliteti pĂ«r mbajtjen e evidencĂ«s sĂ« kohĂ«s;
- Janë shtuar mjete për automatizimin e operacioneve dhe konfigurimin e zgjidhjes;
- ĂshtĂ« shtuar funksionaliteti pĂ«r tĂ« thjeshtuar dhe automatizuar administrimin e zgjidhjes.
Përveç kësaj, ne përdorim . Ky aplikacion mundëson redaktimin e skedarëve në aplikacione të jashtme (MS Office) dhe rikthimin e tyre në Confluence (check-in).
Aplikacion për vendet e punës të përdoruesve (klient i plotë) ALM Works Jira Client vendosëm të mos e përdorim për shkak të mbështetjes së dobët nga shitësi dhe vlerësimeve negative.
Për integrimi me MS Project ne përdorim një aplikacion të zhvilluar vetë, i cili mundëson përditësimin e statuseve të Issue në MS Project nga Jira dhe anasjelltas. Në të ardhmen, për të njëjtat qëllime, planifikojmë të përdorim plugin-in me pagesë , i cili instalohet si shtesë në MS Project.
Integrimi me aplikacione të jashtme realizohet përmes Application Links. Për aplikacionet Atlassian, integrimet janë të parapërgatitura dhe funksionojnë menjëherë pas konfigurimit; për shembull, në një faqe të Confluence mund të shfaqen informacionet për Issues në Jira.
Për qasje te serverët Jira dhe Confluence përdoret REST API: .
SOAP dhe XML-RPC API janë deprecated dhe nuk janë të disponueshme për përdorim në versionet e reja.
Përfundim
Pra, shqyrtuam veçoritë teknike të implementimit të sistemit mbi bazën e produkteve Atlassian. Zgjidhja e propozuar është një nga opsionet e mundshme dhe i përshtatet mirë mjedisit korporativ
Zgjidhja e propozuar është e shkallëzueshme, me tolerancë të lartë ndaj dështimeve, mbështet tre mjedise për organizimin e zhvillimit dhe testimit, përmban të gjithë elementët e nevojshëm për bashkëpunim në sistem dhe ofron një gamë të gjerë mjetesh për menaxhimin e projekteve.
Me kĂ«naqĂ«si do tâu pĂ«rgjigjem pyetjeve nĂ« komente.
Burimi: habr.com


