Globālā izstrāde

Dalītā programmizstrāde

Par spīti tam, ka IT industrijā komandas locekļu atrašanās vienā vietā tiek vērtēta kā viens no jebkura projekta būtiskākajiem veiksmes faktoriem, pastāv virkne iemeslu, kādēļ var tikt dota priekšroka dalītajai programmizstrādei: specifisku zināšanu un resursu trūkums vienā lokācijā, uzturēšanas cikls 24 stundas diennaktī, 7 dienas nedēļā u.c. Aizvien biežāk dažādu atvērtā koda programmatūru projektu (ar projektu komandām, kuras atrodas dažādās pasaules vietās) veiksme liek cilvēkiem domāt, ka globālais tīmeklis spēj ievērojami samazināt ģeogrāfiskā attāluma faktoru. Lai arī tas atbilst patiesībai, ir svarīgi apzināties, ka sadalītā izstrāde pieprasa noteiktus uzlabojumus programmizstrādē un vadības procesos

Projektos, kuru realizācijai nepieciešams veidot komandas, kuras ir izkaisītas dažādās pasaules vietās Exigen® Services koncentrējas uz izcilu rezultātu nodrošināšanu projekta izpildes gaitā, minimizējot riskus un papildus izdevumus. Pēdējos 8 gadu laikā Exigen Services ir guvis ievērojamu pieredzi šādu projektu vadībā un ir atzīts par Agile metodoloģijas piemērošanas dalītai izstrādei līderi. Zemāk ir uzskaitīti daži no dalītas programmizstrādes nodrošināšanai pamata elementiem.

Globālas komandas veidošana

Komandās, kuru dalībnieki atrodas dažādās pasaules vietās, ir īpaši svarīgi nodrošināt un attīstīt vienas un vienotas komandas ar kopēju mērķi izjūtu. Mēs visi zinām, cik bieži cilvēki domā jēdzienos „mēs un viņi”, īpaši, ja komandā sastopas dažādas kultūras. Mūsu pieredze rāda, ka visu projekta realizācijas vietu apmeklējumi projekta laikā, ievērojami uzlabo komandas sadarbību, jo tas sniedz iespēju iepazīt kolēģus personīgi. Īpaši būtiski tas ir projekta sākumā, zināšanu apmaiņas procesā.

Pretēji vispārpieņemtajam viedoklim, mēs esam pārliecinājušies par to, ka tā vietā, lai sistēmas viena moduļa izstrādi uzticētu vienai lokācijai, vairāk atmaksājas veidot komandas no vairāku lokāciju komandas locekļiem. Sākumā tas komandas locekļiem dažādos birojos prasa vairāk laika, lai atrastu produktīvāko veidu zināšanu apmaiņai, bet vēlākos projekta posmos, tas ievērojami samazina sistēmas moduļu integrācijas laiku.

Komunikācija

Sadalītām programmizstrādes komandām ir jāspēj tikt galā ne tikai ar ģeogrāfisko attālumu, bet arī ar laika starpību. Ja visas komandas atrodas Eiropā (piemēram, Exigen Services biroji darbojas GMT+2 un GMR+3 laika zonās). Ir samērā vienkārši pārbīdīt darba stundas, lai komandas strādātu vienā laikā. Pāri okeānam tas ir sarežģītāk, bet joprojām svarīgi nodrošināt, ka darbalaiks maksimāli pārklājas, tā nodrošinot, ka kolēģi var steidzamus jautājumus atrisināt nekavējoties (izmantojot konferences zvanus vai videokonferences), tā vietā, lai paļautos tikai uz, salīdzinoši lēnāko komunikācijas veidu – saraksti. Komandas locekļiem savā starpā ir jāvienojas par steidzamu jautājumu risināšanas un steidzamu atbilžu sniegšanas kārtību, jo dažkārt pat īsa kavēšanās sadalītajām komandām var maksāt daudzas cilvēkstundas. Šo pašu iemeslu dēļ ir svarīgi apmācīt arī vietējos tehniskos un domēnu ekspertus katrā komandā, lai to atbilžu laiks būtu pēc iespējas īsāks.

Informācijas caurspīdīgums

Tikpat svarīga ir arī informācijas pieejamība. Lai nodrošinātu efektīvu piekļuvi kodu repozitorijam, projekta laika uzskaites un izpildes rīkam vienuviet visiem sadalītās komandas locekļiem, var būt nepieciešams izveidot VPN piekļuvi. Lielās korporācijās drošības pārbaudes var aizņemt pat vairākus mēnešus, tādēļ ir būtiski šādus ar infrastruktūru saistītus jautājumus sākt risināt jau projekta sākumposmā.

Tiešās komunikācijas trūkumu, kurš ir raksturīgs sadalītām izstrādes komandām, ir nepieciešams kompensēt ar plašāku dokumentāciju, piemēram, izmantojot salīdzinoši „vieglāko” Agile procesu, saglabājot lietderīgus aprakstus un dokumentāciju visai komandai pieejamā vidē. Tiem ir jābūt ne tikai viegli pieejamiem ikvienam komandas loceklim, bet arī vienkārši atjaunojamiem, kas ir īpaši būtiski, ņemot vērā izstrādes projektu mainīgo dabu.