PočetnaSoftverAtlassian enterprise softver – što nudi i zašto biste trebali njihove proizvode

Atlassian enterprise softver – što nudi i zašto biste trebali njihove proizvode


Ako se bavite software developmentom, velika je šansa da ste čuli za kompaniju Atlassian. Riječ je o kompaniji koja se bavi izradom enterprise softvera, odnosno prvenstveno softvera za druge velike kompanije. Kakve kompanije? One koje trebaju alate za razvoj softvera, projekt management ili content management. Njihov vjerojatno najpoznatiji alat je Jira – alat za timsku kolaboraciju i izradu wikija. Trenutačno Atlassian ima preko 60.000 aktivnih korisnika – što kompanija što pojedinaca. Još je impresivniji podataka da 85 od fortune 100 kompanija koristi neki od Atlassianovih proizvoda!

Atlassian je inače osnovan 2002. godine u Sydneyju u Australiji, a kompanija je rekonstruirana 12 godina kasnije, te registrirana u Londonu kao Atlassian Corporation PLC. Trenutačno su i dalje tamo, a zapošljavaju gotovo 2000 ljudi, od čega preko 1000 programera.

U ovom tekstu ćemo napraviti kratki pregled njihovih proizvoda da se upoznate s njima i vidite da li biste vi imali koristi od dotičnih alata. Mi koristimo nekoliko njihovih alata već godinama (Jira, Confluence, BitBucket …) i izuzetno smo zadovoljni njima. Nikada nismo imali nekih većih problema, a one manje smo riješili unutar par sati.

Enterprise softver: Jira Software

Jira Software

Kao što smo rekli u uvodnom dijelu, vjerojatno najpoznatiji Atlassianov alat je Jira i to Jira Software. Riječ je o alatu koji vam nudi sve što trebate da biste efektivno razvijali softver. Mnoge IT firme koje se bave razvojem softvera koriste mnogo različitih alata – jedan alat za praćenje taskova, jedan za praćenje releseova i izdavanje release notesa za korisnike, treći za izvještaje, četvrti za managere i tako dalje. Jira softver je sve to u jednom alatu. To je softver u kojem planirate razvoj softvera, pratite tijek istoga, vidite tko što radi i u kojoj je fazi, te imate hrpu dodatnih mogućnosti koje su vam potrebne.

Neke od njih su opcije za praćenje verzija koje ste izdali, evaluacija verzija, transparentnost cijelog procesa, izrade izvještaja i slično. Jira je odlična jer ju možete povezati i sa drugim Atlassianovim alatima (npr. BitBucketom za pohranu kôda) i tako dobiti još hrpu dodatnih informacija. Recimo vidjeti poveznicu između svakog taska kojeg je programer radio i njegovog commita u BitBucket. To je samo jedna od mogućnosti, a ima ih bezbroj. Uz to, postoji i mobilna verzija Jire, pa tako manageri, product owneri i slične role mogu pratiti razvoj softvera i putem svog mobilnog uređaja.

1

Enterprise softver: Jira Service Desk

Jira Service Desk

U softver developmentu, jedna od kritičnih točaka je komunikacija sa korisnicima. Ukoliko imate puno korisnika, tada mora postojati jasna procedura kako prijaviti bug, kako postaviti pitanje tehničkoj službi, kako dati prijedlog za unaprjeđenje softvera i slično. Mnoge kompanije imaju odjele ljudi koji su cijeli dan ispred računala, javljaju se na telefon i daju korisnicima odgovore na njihova pitanja. To je dobro dok imate mali broj korisnika, no kada imate veliki broj, tada vam treba efikasniji način kako dokumentirati sve prijave, kako svima odgovoriti na upite i slično.

Jedan od mogućih alata (op.a. i rekli bismo – jedan od najboljih) je Jira Service Desk. Riječ je o alatu koji pomaže vašim korisnicima da na jako lagan način naprave upit prema vama. S druge strane vi imate potpunu kontrolu nad workflowom, možete service desk organizirati kako god vi želite, možete povezati Service Desk sa Jira Softverom i linkati problem (Service Desk) sa taskom (Jira Softver)… Na taj način možete biti sigurni da će svi upiti dobiti svoj task i svoj odgovor. Nadalje, ovaj alat možete koristiti i za „incident management“, „change management“ i „problem management“, a cijeli alat je u skladu sa ITIL preporukama.

Enterprise softver: Jira Core

Jira Core

Jira Core je namijenjen menadžmentu i ostalim „višim“ rolama u kompaniji, a ovaj alat služi za „praćenje“ cijelog razvoja softvera. Development i tehničko osoblje koristi prvenstveno Jira Software za razvoj softvera, a sve popratne stvari se vode u Jira Core-u. Jira Core se može koristiti za mnogo stvari, a neke od njih su nadgledanje poslovnih procesa, vođenje bilješki o projektu, vođenje samog projekta (project management), vođenje i pohrana (pravnih) dokumenata, vođenje HR dokumentacije i još mnogo toga.

Spomenuti Jira alati (Softvare, Service Desk i Core) idu u kompletu, odnosno zasebni su alati, ali bilo bi ih dobro koristiti zajedno. Razlog je jednostavan – to su alati koji su vam potrebni za dobar razvoj softvera. Naravno da softver možete razvijat i bez ovih alata, ali vam oni olakšavaju taj proces, sve je dokumentirano i za se tko što radi. Svi ovi alati imaju kan banove, razne ploče, komentare i sve je prilično transparentno. Onaj tko želi voditi projekte na takav način, zasigurno će uživati koristeći ove alate. Dokazano je u praksi da korištenjem ovakvih alata se povećava produktivnost, jasnije je tko što radi i koliko je napravio i globalno cijeli tim je zadovoljniji cijelim procesom.

Enterprise softver: Confluence

Confluence

Iako programeri ne vole previše pisati dokumentaciju, moramo reći da je Confluence jako koristan alat i bilo bi korisno kada bi ga programeri i ostale role na projektu koristile. Riječ je o kolaboracijskom alatu u kojem možete imati jako puno „workspace-ova“ – recimo, za svaki projekt jedan. U tom (work)spaceu možete kreirati dokumente, wiki stranice, how-to tutorijale, dijeliti linkove … sa ostatkom tima.

Na taj način zapravo imate centriranu svu dokumentaciju na jednom mjestu i svi uvijek imaju pristup zadnjim verzijama dokumenata. Na ovaj način sva potrebna dokumentacija se nalazi na svima znanoj lokaciji i to je to. Ovaj alat služi upravo tome – da je sve na jednom mjestu, da se vidi tko je što napisao, kada je to napisao i slično. Ponavljamo, s ovim alatima i pravilnim korištenjem se olakšava razvoj softvera i povećava njegova transparentnost što je uvijek korak u pravom smjeru.

2

Ono što nas veseli kod Confluenca je što svaki korisnik može napisati komentar, prokomentirati napisano, dati sugestiju, ispraviti dokument ili ono što je napisano i na taj način pomoći drugim kolegama oko razvoja softvera. Nadalje, tu možete pohranjivati i bilješke sa sastanaka, pisati „system requirements“ za projekte, imate foldere sa dokumentima, upravljati sa pravima korisnika (tko što smije raditi, vidjeti …) i još mnogo toga. Na prvu izgleda dosta prazno, no kada se počne popunjavati, uvidjeti ćete prednosti ovog alata. Ni mi nismo ljubitelji velike dokumentacije, ali volimo Confluence.

Enterprise softver: HipChat

HipChat

Alat kojeg smo najmanje koristili je upravo HipChat, iako se radi o sasvim solidnom alatu. Svaka kompanija ima neki svoj način za komunikaciju. Neki koriste samo emailove, drugi emailove i telefone, treći imaju HipChat, lync ili neki sličan alat. HipChat je super jer možete kreirati „sobe“ u koje dodajete korisnike i oni mogu raspravljati o određenom proizvodu, a možete i direktno kontaktirati bilo kojeg korisnika u vašoj domeni. Recimo da vam firma ima 100 ljudi. Svima se naprave korisnički računi i ukoliko su korisnici za računalom i logirani u HipChat možete s njima komunicirati.

To je dobar način komunikacije unutar  kompanije jer su sve informacije negdje zapisane, vidite tko je online, tko nije i slično. Naravno, HipChat vam omogućuje da unutar „sobe“ dijelite linkove i multimedijalne sadržaje do kojih uvijek možete jako brzo doći. To zna biti korisno tokom procesa izrade softvera, ali i općenito u komunikaciji sa drugim korisnicima. Ako nemate nikakav alat za komunikaciju, preporučamo vam da HipChatu date priliku. Nakon kratkog učenja, vjerujemo da će svi korisnici, ili barem velika većina, biti sretna sa ovim rješenjem za komunikaciju.

Enterprise softver: BitBucket

BitBucket

Ako danas razvijate softver, šansa je 99.99 posto da koristite alat za dijeljenje kôda, pitanje je samo koji. Neki još uvijek koriste Microsoftov SourceSafe, neki su prešli na SVN ili Mercurial, a najveći broj programera koristi Git, odnosno servis za pohranu kôda koji je baziran na Gitu. Iako je danas najrazvikaniji servis te vrste GitHub, mi smo jako dugo koristili BitBucket. Riječ je o servisu za pohranu kôda i kolaboraciju programera. U ovom tekstu nećemo ulaziti u to kako radi Git, ali je bitno da znate da BitBucket radi na osnovi Gita.

Ovaj alat je napravljen za profesionalni razvoj softvera, ali ga i vi kao pojedinac možete koristiti za svoje projekte. Dapače – imate neograničen broj privatnih repozitorija koje možete kreirati što je veliki plus. GitHub za tu opciju naplaćuje 7 eura mjesečno. U svakom slučaju, riječ je o fenomenalnom servisu u kojem možete jasno definirati prava tko što vidi i tko što smije raditi, imate na jednom mjestu sve izmjene na projektu i nema šanse da nešto „uđe“ u softver, a da vi to ne vidite. Ako vam se ne sviđa GitHub, probajte BitBucket.

3

Enterprise softver: SourceTree

SourceTree

SourceTree je alat koji vam treba ukoliko koristite Git, odnosno u ovom slučaju koristite BitBucket. Kada radite neke izmjene na projektu koji ispod sebe ima Git, tada njime možete upravljati pomoću komadne linije (tj. Git Basha) ili putem desktop aplikacije. SourceTree je ovo drugo – desktop aplikacija. Ona vam daje pregled cijelog projekta, možete vidjeti sve commitove, izmjene unutar tih commitova, hrpu dodatnih informacija … ali i napraviti mnogo toga.

Tako uz pomoć ovog softvera možete commitati svoje izmjene, pratiti što se događa, prebacivati se sa grane na granu, spajati grane, spajati grane sa master granom, učitati paralelno više git projekata … Rekli bismo da je ovo aplikacija za one korisnike kojima je lakše raditi vizualno nego u komandnoj liniji i za one koji vole sve vidjeti na ekranu. Mi preferiramo komandnu liniju, no SourceTree je odličan „komad“ softvera kojeg morate imati na računalu.

Enterprise softver: Bamboo

Bamboo

Svaki pravi projekt ima server na kojem se vrti, odnosno na kojem je integriran Continuous integration. Za one koji ne znaju, to je proces u kojem se, kad dođe do promjena na projektu, builda cijeli projekt ispočetka kako bi se odmah vidjelo ima li kakvih grešaka u projektu. Ako ima, odmah ih se može i popraviti. CI je jako važan segment razvoja softvera, a Atlassianova CI usluga se zove Bamboo. Nju je najbolje povezati sa BitBucketom i Jira Softwareom.

Bamboo vam omogućuje da kreirate različite multi-stage buildove, da pokrenete build kada netko commita kôd ili da napravite automatizirani deploy u određeno doba dana. Zapravo, Bamboo vam nudi i mnogo više od toga, no ovo je ono što ćete vjerojatno najčešće koristiti.

4

Svaki build koji se pokrene iza sebe „ostavlja“ log u kojem ćete vidjeti što se sve izvršilo, što je eventualno preskočeno, da li ima kakvih upozorenja ili grešaka i još mnogo toga. Ako ne koristite TFS ili neko drugo rješenje, probajte Bamboo. Vjerujemo da će vam se svidjeti. Da li je to najbolji CI servis na tržištu? Definitivno nije. Ima boljih, ali ima i skupljih. Ako uzmemo omjer cijene i kvalitete, Bamboo je taman po mjeri mnogih kompanija.

Enterprise softver: Clover

Clover

Iako većina nas koji programiramo bježimo od pisanja testova, nitko ne može poreći da se radi o dobroj praksi i da bi preko 75-80 posto kôda trebalo biti pokriveno raznim testovima. No, tko u realnom sektoru ima vremena pisati testove? Pa, većina velikih i dobrih kompanija. I neke manje naravno.

Clover je „code coverage“ alat koji mjeri koliko je vašeg kôda u projektu pokriveno atumatiziranim testovima. On pokreće testove i gleda liniju po liniju što je pokriveno testovima, što nije, što bi eventualno trebalo biti bolje pokriveno i slično. Ako nemate automatizirane testove, ovaj alat vam je u potpunosti beskoristan. S druge strane, ukoliko ih imate, ovo je odličan alat jer je vam reći sve ono što biste trebali znati.

Za sada Clover radi samo sa Javom, a mi se nadamo da će uskoro raditi i sa nekim drugim jezicima, posebice sa C#-om. Novi ASP.NET nudi da već kod kreiranja projekta napravite projekt u solutionu baš za testove, pa bi ovakav alat bio veliki poticaj da se taj projekt zapravo i koristi i da se u njemu pišu testovi. No, na stranu Microsoft, C# i ostalo – Clover je odličan alat i ako pišete testove za vaš kôd i ako programirate u Javi, svakako ga probajte.

Enterprise softver: FishEye

FishEye

Koliko puta ste tražili nešto po kôdu i niste znali kako to naći? Pogotovo ukoliko tražite dio kôda koji je postojao jednom u kôdu, no sa novim commitovima ste taj kôd ili zamijenili drugim ili izbrisali? Postoji alat koji se zove FishEye. Kao što bi se možda moglo zaključiti iz imena alata, radi se o alatu za pretraživanje. S njime možete uspoređivati datoteku kroz vrijeme, datoteku sa datotekom, vizualizirati sve izmjene koje ste napravili, pratiti aktivnosti kroz commitove u projektu i slično. Ovo je jako jednostavan, a koristan alat. Nama najbolja mogućnost je mogućnost filtriranja pretrage pa tako možete pretražiti commitove po nazivu datoteke, po datumu, po autoru, po dijelu teksta … Za male timove, cijena nije velika (cca. 10 dolara mjesečno), a s time ćete si uštedjeti jako puno vremena i truda.

5

Enterprise softver: Crucible

Crucible

Ono što mnogim našim kompanijama nedostaje je kvalitetan pregled kôda kojeg rade, posebice mlađi, programeri. Crucible je alat upravo za to. Jako mali i lagan alat za formalnu izradu code reviewa. Naravno da neće programer sam sebi raditi code review, ali mu to mogu napraviti stariji i iskusniji kolege, te početnicima ukazati na greške koje rade, na propuste koje su napravili, granične slučajeve koje su zaboravili i slično. Što je najbolje, sve je javno i otvoreno, tako da se u diskusiju mogu uključiti i druge osobe i diskutirati o kôdu. Možda ne zvuči kao najzabavnija aktivnost, ali je jako korisna i jako povećava kvalitetu kôda u konačnici. Jer što prije programeri počnu pisati kvalitetan kôd, tada će i aplikacija biti bolja, brža i stabilnija.

U realnim uvjetima, bitno je jedino da sve radi, da se bugovi ispravljaju što brže, da se krajnjim korisnicima što prije isporuče nove mogućnosti … no tu treba malo stati i odvojiti kvalitetno vrijeme za učenje i diskusiju. Neke domaće IT firme imaju petkom iza ručka vrijeme za code review. Zašto i vi to ne biste uveli u svom timu, u svojoj kompaniji?

 

Autor: B.P.


RELATED ARTICLES

Komentiraj

Please enter your comment!
Please enter your name here

- Advertisment -

Most Popular