You are on page 1of 21

UVOD U PROJEKT MENADŽMENT

Projekat je privremeni poduhvat poduzet kako bi se stvorio jedinstveni proizvod, usluga ili
rezultat. Aktivnosti su radnje koje održavaju poslovanje organizacije. Projekti su drugačiji od
aktivnosti jer su oni završeni kada postignu zacrtane ciljeve ili kada su prekinuti.

Upravljanje projektima je skup metoda, tehnika i alata koji koriste sve raspoložive
informacije za planiranje i upravljanje radom u svrhu dosezanja poslovnih ciljeva postavljenih
na: Poslovi, Vrijeme, Resursi. Iskusni project manager-i znaju da je neophodno odlučiti koje
od tri ograničenja je najbitnije. Kvalitet je često ključni faktor u projektima u kontekstu
zadovoljstva kupca ili sponzora.

KARAKTERISTIKE PROJEKTA

a) Projekat ima jedinstvenu svrhu. – Svaki projekat bi trebao imati dobro definisane ciljeve
b) Projekat je privremen. – Projekat ima svoj početak i kraj.
c) Projekat je razvijen progresivnom razradom. - Projekti su često na početku definisani
široko, ali vremenom specifični detalji projekta postaju jasniji. Stoga, projekte treba razvijati
postepeno.
d) Projekat zahtijeva resurse često iz različitih područja. - Resursi uključuju ljude, hardver,
softver i ostalo. Mnogi projekti prelaze granice odjela ili neke druge granice kako bi ostvarili
svoje jedinstvene svrhe.
e) Projekat treba imati primarnog kupca ili sponzora. - Većina projekata imaju mnogo
zainteresovanih strana ili stakehodlera, ali neko mora zauzeti mjesto sponzora. Sponzor
projekta obično osigurava pravac i finansije projekta.
f) Projekat uključuje nesigurnost. - S obzirom da je svaki projekat jedinstven, ponekad je
teško jasno definisati ciljeve projekta, procijeniti koliko će trebati da se završi, ili koliko će
koštati. Nesigurnost je jedan od glavnih razloga zašto je upravljanje projektima izazovno, a
posebno kada su u pitanju projekti koji podrazumijevaju upotrebu novih tehnologija.
Efikasan projekt menadžer je neophodan za uspjeh projekta.

FAZE PROJEKTA

1. Koncepcija ( Poslovni ciljevi i Definisanje projekta)


2. Priprema (Razvoj plana i korekcija plana)
3. Realizacija ( Implementacija i Monitoring)
4. Zatvaranje ( Zatvaranje i Evaulacija)

FAZA KONCIPIRANJA PROJEKTA

Unutar ove faze, fokus je na uspostavljanju osnovnih odrednica prije pokretanja projekta.
Kako bismo postavili adekvatne ciljeve projekta, potrebno je da imamo na umu osnovnu
viziju i strategiju organizacije kao cjeline. Iz toga se definiše opšti cilj projekta, a na osnovu
opšteg cilja se definišu konkretni ciljevi i ograničenja.

Opšti Cilj mora biti:


Iskaz o tome šta treba postići, Definisan kao rješenje, Vizija koja inspiriše, usmjerava i koja je
realistična, Subjektivan, Razumljiv svakome.
Konkretan cilj mora biti:
Relevantan za identifikovani problem, Specifičan – usmjeren na uzak domen, Mjerljiv –
očekivani rezultati, Izvodiv – ima razumne šanse za uspjeh.

Konkretan cilj treba da pruži odgovor na sljedeća pitanja: Šta? Kako? Za koga? Gdje? Kada?

Postoje dvije vrste konkretnih ciljeva – produktivni i kapacitativni. Rezultat produktivnog cilja
jeste proizvod koji se može kvantificirati. Rezultat kapacitativnog cilja jesu uvećani kapaciteti
(znanje, nove informacije, proizvodni kapaciteti) i usmjereni su na ojačanje resursa kojima se
realizuje projekat. Neki od ovih rezultate se mogu kvantificirati, a neki ne.

FAZA PRIPREME PROJEKTA

Faza pripreme projekta predstavlja pronalaženje kombinacije resursa i poslova koja


optimalno zadovoljava ciljeve i ograničenja. U okviru ove faze potrebno je definisati i kreirati:
a) Razvoj stabla aktivnosti (WBS)
b) Analizu ovisnosti
c) Procjena odgovornosti, napora i trajanja
d) Kalkulacija kritičnog puta
e) Razvoj vremenskog plana
f) Kalkulacija korištenja resursa
g) Formulacija budžeta.
Razvoj stabla aktivnosti predstavlja detaljnu analizu aktivnosti koje je potrebno poduzeti da
bi se projekat realizirao. Te aktivnosti se grupišu u podzadatke i zadatke, a oni predstavljaju
faze određenog projekta. Kriteriji za razvoj WBS su:

● Koliko je velik projekat?

● Koji nivo kontrole projekt menadžer hoće?

● Na koliko faza se razbija projekat?

● Koliko dio posla je dovoljno mali da bude upravljiv?

● Uticaj: Ko je sve uključen u razvoj stabla aktivnosti?

Analiza ovisnosti predstavlja uočavanje koji su poslovi preduslov drugim poslovima. Nekada
će realizacija određene aktivnosti zavisiti od nekih prethodih, ali nekada će se više aktivnosti
moći obavljati istovremeno. Prilikom analize ovisnosti je potrebno izbjegavati sljedeće
situacije:
a) Nepotrebne ili redundantne ovisnosti
b) Petlje i nepovezane elemente
c) Nedostatak „startnog“ čvora za aktivnsoti koje počinj zajedno
d) Nedostatak kontrolnih tačaka (tačaka konvergencije)
e) Mreža je isuvište linearna
f) Isuviše prethodnika za jedan čvor.

Procjena odgovornosti, napora i trajanja

Nejasna podjela odgovornosti na projektu obično vodi u konflikte unutar tima, loše
planiranje, i lošu realizaciju plana. Često se dešava da projekat doživi potpuni krah, samo
zbog toga što odgovornosti na projektu nisu bile jasno delegirane.
Kalkulacija kritičnog puta - Kritični put je najduži put kroz mrežu zadataka. Dužina kritičnog
puta predstavlja ukupno trajanje projekta. Zadaci koji su na kritičnom putu su najprioritetniji
jer ako se bilo koji od njih ne završi na vrijeme, cijeli projekt neće biti završen na vrijeme.
Kompromitiranje, odnosno slamanje, kritičnog puta jeste kada pokušvamo smanjiti trajanje
projekta. To je moguće uraditi na više načina:
1. Povećati troškove (dodatno osoblje, eksterni resursi, prekovremeni rad, više opreme)
2. Ponovno razmatranje tačnosti procjena
3. Realociranje resursa sa nekritičnih zadataka
4. Rearanžiranje mreže zadataka
a. Stvoriti više paralelnih zadataka
b. Stvoriti više preklapajućih zadataka sa djelimičnim ovisnostima
5. Pregovaranje o promjeni definicije projekta
a. Smanjiti domen
b. Ojačati resurse
c. Pomjeriti rok završetka
d. Eliminisati neke zadatke

Prilikom slamanja kritičnog puta, potrebno se koncentrisati prvenstveno na zadatke koji se


izvršavaju ranije, odnosno koji su što bliže početku projekta. Razlog toga jeste što o prvim
zadacima imamo više informacija, procjene su tačnije i neizvjesnost je manja.

Razvoj vremenskog okvira predstavlja mrežu aktivnosti i proračun kritičog puta koji daju
vrijeme potrebno za realizaciju individualnih aktivnosti. Vremenski plan daje aktuelne
kalendarske datume. Vremenski plan se obično predstavlja pomoću gantograma.

Kalkulacija korištenih resursa predstavlja matricu odgovornosti koja pridružuje resurse


poslovima.

Razvoj budžeta - Procjena troškova je nužna u fazi planiranja projekta. Ona ima direktan
uticaj na procjenu izvodljivosti.

Definisanje trigera jeste jedna od ključnih komponetni faze pripreme projekta. To znači da je
potrebno jasno definisati događaje koji će aktivirati rezervne planove i to podrazumiejva
sljedeće:
– nedvosmislena definicija događaja
– jasna kvantifikacija
– mehanizam sistematskog praćenja “stanja” trigera

FAZA REALIZACIJE
Faza izvršavanja projekta sastoji se od projektnih zadataka i akcija koje je potrebno izvesti
tokom vremenskog životnog ciklusa projekta. Faza izvršavanja također je i kontrolna tačka u
životnom ciklusu projekta kada se svi projektni planovi integrišu. U većini metodologija,
izvršavanje projekta odnosi 80% - 90% ukupnog učinka (effort) projekta. U fazi izvršavanja
sve već treba biti manje - više poznato. Faza izvršavanja projekta završava se kada su
ispunjeni svi zadaci koji su postavljeni pred projektom.

PROJEKT MENADŽER

Projekt menadžer se razlikuje od običnog menadžera najviše po tome što je ograničen


vremenom. Projekt menadžeri moraju rukovoditi promjenama, jer većina promjena unutar
organizacije, utiče i na promjene unutar projekata. Projekt menadžeri trebaju posjedovati
opća znanja i vještine upravljanja. Za postizanje visokih performansi na projektima, potrebni
su i soft skills, tj. oni vezani za ljudske odnose. Projekt menadžeri moraju biti fleksibilni,
kreativni, ponekad i strpljivi prema ciljevima projekta. Moraju biti uporni. Ukoliko se radi o IT
projektu, projekt menadžer mora biti u stanju omogućiti učinkovito korištenje tehnologija.
Deset najvažnijih vještina i kompetencija za efektivne projekt menadžere:

1. Ljudske vještine
2. Liderstvo
3. Slušanje
4. Integracija, etičko ponašanje, dosljednost
5. Snaga u izgradnji povjerenja
6. Verbalna komunikacija
7. Snaga u izgradnji timova
8. Rješavanje konflikta, konflikt menadžment
9. Kritičko razmišljanje, rješavanje problema
10. Razumijevanje i balansiranje prioriteta

Dobar projekt menadžer zna da ljudi kreiraju ili slamaju projekte tako da se i oni sami moraju
postaviti kao dobar primjer koji tim vodi do uspjeha. No, oni se moraju fokusirati i na to da
posao mora biti završen, i to tako što će obraćati pažnju na detalje u svakodnevnim
zadacima. Umjesto razmišljanja o liderima i menadžerima kao o specifičnim ljudima, bolje je
razmišljati o ljudima koji imaju liderske i menadžerske vještine ujedno i upravo i takve
osobine imaju i projekt menadžeri. Dobar tim lider nagrađuje svoj tim i proslavlja uspjeh
zajedno sa njima. Time on želi da uspostavi sistem vrijednosti, gradi povjerenje unutar tima i
utiče na modele ponašanja. Na kraju najvažnija stvar za projekt menadžera je uspješno
završiti projekat.

UPRAVLJANJE IT PROJEKTIMA

Kada govorimo o IT projektima, potrebno je naglasiti da se oni po određenim


karakteristikama razlikuju od drugih vrsta projekata. Osnovna karakteristika IT projekata
jeste brza zastarjelost, zbog brze promjene tehnologije. Jedno od izazova upravljanja IT
projektima jeste na koji način je moguće vršiti mjerenje rezultata i utjecaja projekta.
Također, jedan od velikih problema upravljanja IT projektima jeste već spomenuta brza
zastarjelost i otpor promjenama. Otpor promjenama se odnosi na to da krajnji korisnici IT
projekata imaju averziju i otpor prema promjenama koje će donijeti implementacija
određenog IT projekta.

Postoje dva pristupa upravljanju IT projektima - „Just Do It“ i sistematični pristup.

● „Just Do It“ princip je pristup upravljanja IT projektima koji polazi od ideje i ako se

projekat barem djelimično uklapa u viziju organizacije, projekat sa realizacijom bez


mnogo razmišljanja o strategiji.

● Sistematični prisup bazira se na razradi strategije, definisanju ciljeva, pripremi

dokumentacije, traženju izvora finansiranja i sve se realizuje korak po korak. Možemo


zaključiti da sistematični pristup ima tačno utvrđenu formu po kojoj se realizuju faze
realizacije projekta.

„Just Do It“ pristup jeste vrlo efektan, dinamičan je, inspirativan i motivirajući. Kod ovog
pristupa se prvi rezultati projekta veoma brzo mogu uočiti, te stoga možemo reći da je
veoma dobar za promociju. Također, jedna od njegovih karakteristika jeste da je
konstruktivan, odnosno da ne potencira probleme, nego rješenja. Međutim, ovaj pristup ima
i svoje nedostatke: (Radi, ali ne dovoljno dobro)

● nejasno je koliko pojedini projekti pridonose ukupnoj viziji


● rezultati rada na projektima su neuvezani, nema sinergije

● projekti su obično zatvoreni u pojedine organizacijske forme, dok ciljevi obično nisu

takvi

● projekti nisu cilj sami po sebi

● primjenom "Just Do It" pristupa, moguće je potpuno odlutati od postavljene vizije

● potencijalni gubitak kontrole.

Sa druge strane, za sistematični pristup dovodi do kreiranja projekata koji su stvarno


potrebni određenoj organizaciji, stanovništvu i slično. Također daje vrlo kvalitetne rezultate
kroz integraciju resursa, maksimizaciju sinergetskih efekta i optimizaciju utroška resursa. U
suštini, ovaj pristup daje sveukupnu stabilnost organizaciji. Međutim, glavni problem jeste
što on uglavnom ne radi. Osnovni razlozi jesu što predugo traje razvijanje plana kod
pristupa, bez ikakvih vidljivih rezultata. Također, kod ovog pristupa se prvenstveno želi
minimizirati svaki mogući rizik projekta, pa tek onda krenuti sa njegovom realizacijom.
Međutim, u praksi to veoma često nije moguće, a pogotovo kod IT projekata koji su veoma
dinamični, podložni promjenama i brzo zastarijevaju. Također, nedostaci sistematskog
pristupa su:

● Jedna organizacija ne radi samo jedan projekt, niti je neki projekt jedini u okruženju

organizacije.

● Sve organizacijske aktivnosti su konkurentne jedna drugoj u smislu uticaja na misiju

● Isto tako, projekt obično ima konkurenciju u okolini.

● Predugo planiranje i analiza slabe kompetitivnu poziciju projekta.

Ustvari, svaki životni ciklus projekta se može realizovati kroz različite modele. Najčešća
podjela modela realizacije projekata jeste na:

● Tradicionalne ili struktuirane modele


o Waterfall model
o Kaskadni model

● Iterativne modele

o Spirani model
o Iterativno poboljšavanje

● Agilne modele

Tradicionalni ili struktuirani pristup je redukcionistički pristup. To znači da se vrši razbijanje


realnosti na manje dijelove do nivoa koje je moguće opisati matematičkom preciznošću.
Osnovne karakteristike ovog pristupa su:

● Funkcionalna dekompozicija – progresivno razbijanje primarnih funkcija u

podfunkcije dok se ne dosegne primitivni nivo analize.

● Izolacija/skrivanje informacija - jedan modul treba da skriva tačno jednu

projektantsku odluku i otkriva što je manje moguće podataka koje koristi.

Struktuirani pristup se sastoji do:

● Strukturirano programiranje je procesno orjentirana tehnika za konstrukciju

kompjuterskih programa koje odlikuje velika jasnoća i konzistentnost. Logiku bilo


kojeg programa moguće izraziti malim skupom kontrolnih struktura

● Strukturirani dizajn je procesno orjentirana tehnika koja velike programe razbija na

manje module što kompjuterske programe čini lakšim za konstrukciju,


implementaciju i održavanje. Program se dizajnira kao top-down hijerarhija modula, a
moduli su grupe instrukcija koje rade neki precizno definiran posao.

● Strukturirana analiza je procesno orjentisana tehnika koja se koristi za modeliranje

korisničkih zahtjeva na sistem. Ova tehnika razbija sistem na procese, ulaze, izlaze i
datoteke što znači da se gradi gradi ulaz-proces-izlaz, protočno orjentiran model
poslovnog sistema, problema ili rješenja.
Suštinska poruka ovog pristupa je da prvo treba analizirati kako sistem trenutno radi i to u
redoslijedu kako radi, pa onda šta radi, a onda dizajnirati novi sistem, ali obrnutim
redoslijedom, šta sistem treba raditi, a onda kako.

Osnovni problemi ovog pristupa se ogledaju u:

● previše vremena na modeliranje postojećeg sistema

● problemi u prelazu sa fizičkih na logičke dijagrame.

● intenzivno korištenje DFD tehnika = zabluda da je procesiranje jedini važan dio sistema

Waterfall model je jedan od najstarijih modela koji je pogodan za rješavanje potpouno


jasnih problema bez izmjena u zahtjevima. To je jednostavan model koji je razmljiv korisniku
i predstavlja vrlo apstraktan prikaz razvojnog procesa sačinjen od niza aktivnosti. Jedna od
njegovih glavnih odlika je ta što ima jasne granice između faza sa izlaznim produktima te
faze. Svaka faza mora biti u potpunosti završena prije nego što se započne sa narednom
fazon. Na kraju svake faze se vrši analiza da bi se utvrdilo da li je projekat na dobrom putu i
da li se treba nastaviti sa projektom ili ga obustaviti. Ova analiza se naziva i završnom
analizom faze.

PREDNOSTI NEDOSTACI

● Svaka faza ima specifične izlazne ● Promjena opsega poslova u toku

proizvode i proces analize. životnog ciklusa može uništiti projekat.

● U jednom trenutku se radi samo na ● Ne postoji radna verzija softvera sve do

jednoj fazi. kraja životog ciklusa.

● Dobar je za male projekte kod kojih su ● Velika je količina rizika i neizvjesnosti.

potpuno definisani i jasni zahtjevi.

● Podržava stav „definiši prije dizajna“ i ● Nije pogodan za složene i objektno-

„dizajniraj prije implementacije“. orijentisane projekte.


Kaskadni model je kolekcija waterfall modela primjenjenih na manje dijelove sistema koji se
u vremenu dešavaju jedan za drugim. Kaskadni model je efektivan zbog „kvadratnog zakona
izračunavanja“, ali ipak pri razbijanju poslova na manje dolazi do stvaranja dodatnih
problema. Ti problemi se ogledaju u tome što uvijek postoji dodatni trošak integracije i pri
razvoju dijelova sistema je moguće doći do „gubitka globalne slike“ sistema čime se može
drastično povećati dodatni trošak integracije tih dijelova.

PREDNOSTI NEDOSTACI

Jednostavnost Ne podržava povratne sprege (feedback)

Lako praćenje projekta Ne ukazuje na način povezivanja faza

Laka primjena modela Razvoj softvera se ne posmatra kao


rješavanje problema

Nelinearni waterfall model predstavlja verziju waterfall pristupa gdje se konceptualne faze
primjenjuju na cijeli sistem linearno, po waterfall modelu, do trenutka u kojem je moguće
sistem podijeliti na manje podsisteme. Onda se razvoj podsistema odvija zasebno i to tako
što se svaki od podsistema razvija po svome životnom ciklusu, opet po waterfall modelu.

Spiralni model je evoluirao usavršavanjem raznih varijanti waterfall modela na osnovu


iskustva sa velikim softverskim projektima. Napredak se postiže kroz ponavljanje iste
sekvence koraka, ali na različitim nivoima detaljnosti, počev od osnovnih konceptualnih
dokumenata, pa do kodiranje pojedinačnih dijelova softvera.

Ima četiri faze: planiranje, analiza rizika, inženjerstvo i evaluacija. Projekat više puta prolazi
ove faze u iteracijama. Zahtjevi se analiziraju u fazi planiranja. U fazi analize rizika identifikuju
se rizici i alternativna rešenja. Prototip se kreira na kraju faze analize rizika. Softver se razvija
u inženjerskoj fazi a na kraju faze se realizuje testiranje. Faza evaluacije omogućava korisniku
da evaluira projekat prije nego što se pređe na narednu spiralu. Kod spiralnog modela se
smanjenje rizika vrši postepeno i ovaj model dozvoljava kombinaciju različitih pristupa u
različitim ciklusima projekta. Svaki ciklus uključuje reviziju, validaciju i dobijanje odobrenja za
nastavak projekta. Spiralni model je kompleksan zbog brojnih razloga. Prvenstveno uključuje
različite pristupe, te takva kompleksnost može dovesti do poteškoća u vođenju procesa
razvoja čak do tog nivoa da izgubimo potpunu kontrolu nad razvojnim procesom.

PREDNOSTI NEDOSTACI

● Visok stepen analize rizika ● Može biti skup model

● Dobar je za velike i kritične projekte ● Analiza rizika zahtjeva visok stepen

ekpertize

● Softver se proizvodi u ranim fazama ● Uspjeh projekta zavisi od faze

životnog ciklusa analize rizika

● Nije dobar za male projekte

Iterativno poboljšanje ili iterativni prototajping razvoj Iterativni prototyping je u suštini


spiralni proces koji započinje od ideje o tome šta hoćemo. Nakon toga se kreće sa kreiranjem
određenog proizvoda koji bi trebao da posluži realizaciji naše ideje. Nakon što isprobamo
(testiramo) kreirani proizvod, dolazimo do jasnije ideje o tome šta zapravo hoćemo i
krećemo ponovo sa kreiranjem novog poboljšanog proizvoda.

Iterativni prototajping razvoj ima mnogo dobrih osobina, a neke od njih su:

● kontinualno, iterativno testiranje

● rad tima je ravnomjernije raspoređen kroz razvojni period

● tim stalno uči i kontinuirano poboljšava razvojni proces

● viši menadžment ima bolji uvid u stanje projekta

Međutim, ne smijemo zaboraviti spomenuti da iterativni prototajping razvoj inherentno


uključuje i neke rizike, a to su:

● Zahtjeva veći menadžerski angažman


● Može uzrokovati nepotrebno ponavljanje razvoja istih dijelova sistema

● Potencijalna slaba konvergencija projekta

● Pretjerani optimizam bez planova

● Pretjerivanje u zahtjevima

● Softver prije specifikacije

● Zabijanje glave u pijesak

Agilne metode su metode koje prihvataju četiri ključne vrijednosti:

1. Ljudi i interakcije prije nego li procesi i alati.


2. Softver koji radi prije nego li sveobuhvatna dokumentacija.
3. Kolaboracija sa klijentom prije nego li pregovori o ugovoru.
4. Odgovoriti na promjene prije nego li pratiti plan.

Agilne metode uključuju iteracija sa kratkim vremenskim intervalima, te razdvajaju zadatke


na male inkremente sa minimalnim planiranjem. Mali timovi zajedno sa stakeholderima
zajedno rade da definišu, koncepte i druga vizuelna sredstva za opisivanje problema koji se
rješava. Tim definiše zahtjeve za iteraciju, razvija kod, definiše i izvršava integrisane testove a
korisnici verifikuju rezultate. Verifikacija se izvršava mnogo ranije u razvojnom procesu nego
kod Waterfall modela.

Inkrementalna isporuka - Inkrementalna isporuka podrazumijeva u više navrata isporuku


funkcionalnih dijelova sistema koji se puštaju u eksploataciju. Tek stvarnim korištenjem
softvera u realnim situacijama

Agilne metode su:

● Rational Unified Process (RUP)


● Crystal

● Feature Driven Development (FDD)

● Dynamic Systems Development Method (DSDM)

● Adaptive Software Development (ASD)

● Extreme Programing (XP)

● Kanban

● Scrum

● Lean development

The Rational Unified Process (RUP) je iterativni i inkrementalni proces razvoja softvera
prema kome se sistem razvija u četiri faze: početak, elaboracija, konstrukcija i tranzicija. Šest
ključnih principa RUP-a su:

1. Iterativni razvoj softvera – Softver se razvija u malim inkrementima i kratkim


iteracijama, što omogućava ranu detekciju rizika i adekvatnu reakciju na njega.
2. Upravljanje zahtjevima – Zahtjevi se mijenjaju u vremenu i to ima najveći uticaj na
kvalitet konačnog rezultata.Stoga se zahtjevima mora sistematično i disciplinovano
upravljati.
3. Korištenje komponentno baziranih arhitektura – Arhitekture koje se sastoje od
jasno odvojenih komponenti su fleksibilnije. Dijelovi sistema koji imaju veću vjerovatnoću
mijenjanja, mogu se izolovati čime se povećava stabilnost cijele arhitekture.
4. Vizuelno modeliranje softvera – Pošto je informacioni sistem komplikovan artefakt,
potrebno ga je modelirati vizuelnim tehnikama (kao, naprimjer, UML) i alatima da bi bio
shvatljiviji.
5. Verifikacija kvalitete softvera – Testiranje i verifikacija kvaliteta se moraju raditi
tokom svake iteracije.
6. Kontrola promjene – Svaka promjena zahtjeva mora biti pažljivo kontrolisana,
uključujući sve promjene koje je ona uzrokovala

Crystal metode predstavljaju grupu metoda koje variraju prema veličini i kompleksnosti
projekta. Svaka metoda je specifična i namjenjena za određenu svrhu, a suštinski su bazirane
na inkrementalnom razvoju. Nazivi metoda su podijeljeni prema geološkim kristalima i
najpoznatije metode su crystal clear, crystal orange, crystal orange web. Jedan od važnih
principa je i direktna kooperacija i komunikacija, što ujedno predstavlja i njihovo
ograničenje.

Temeljni principi su:

1. Različiti projekti trebaju različite metode.


2. Većim timovima treba više komunikacijskih elemenata.
3. Projekti koji potencijalno mogu proizvesti veću štetu traže više validacijskih
elemenata.
4. Malo metode može da učini mnogo dobroga – sve preko toga košta.
5. Formalizmi, procesi i dokumentacija ne mogu zamijeniti disciplinu, vještine i
razumijevanje.
6. Interaktivna komunikacija licem-u-lice je najjeftiniji i najbrži kanal za razmjenu
informacija.
7. Poboljšani odziv i komunikacija reduciraju potrebu za međuproduktima.
8. Paralelni razvoj povećava trošak, ali povećava brzinu i fleksibilnost.
9. Efikasnost je razmjenjiva kategrija – resursi sa nekritičnih zadataka se mogu
preusmjeriti na kritične.
10. Kvalitetni ljudi ubrzavaju razvoj.

Feature Driven Development (FDD) je agilna metoda koja se fokusira na dizajn i razvoj
sistema. Ona objedinjuje iterativni razvoj sa najboljim praksama, te naglašava kvalitetu kroz
cijeli razvoni proces. Pogodna je za projekte koji tek počinju, poboljšavaju i nadograđuju kod,
te kod stvaranja novih verzija postojećih rješenja. FDD zahtijeva istovremeno korištenje što
više "najboljih iskustava" i to tako da ni jedno ne dominira razvojnim procesom. Najčešće
kombinacije (uglavnom već poznatih) različitih "najboljih iskustava" su:
1. Domain Object Modelling – Istraživanjem i definiranjem problemskog domena dobija
se okvir u kojem se dodaje neka funkcionalnost.
2. Razvoj po manjim funkcionalnostima – Sistem se razvija i isporučuje u manjim
dijelovima koji obezbjeđuju manji skup funkcionalnosti.
3. Individualno vlasništvo nad klasom (kodom) – Svakoj klasi je pridružena jedna osoba
koja je odgovorna za njene performanse, konzistentnost i integritet.
4. Timovi vezani za funkcionalnosti – Za svaku od funkcionalnosti sistema se veže jedan
mali i agilan razvojni tim. Timovi se dinamički formiraju i nestaju.
5. Inspekcija – Tokom razvoja su uvijek prisutni mehanizmi detekcije defekata u
funkcionalnosti sistema.
6. Stalna izgradnja – Plan mora biti takav da konstantno postoji razvoj sistema i sistem
sa nekim funkcionalnostima koje su već implementirane.
7. Configuration Management – Sistematičan menadžment verzija koda.
8. Izvještavanje o napretku – Konstantno i na svim organizacijskim nivoima.

Dynamic Systems Development Method (DSDM) je okvir za brzi razvoj aplikacija. Ključna
ideja je da umjesto da se na osnovu fiksirane funkcionalnosti sistema određuju resursi i
vrijeme potrebni da se dobije ta funkcionalnost, treba na osnovu fiksiranih resursa i vremena
odrediti koja se funkcionalnost može dobiti u skladu s njima. DSDM je baziran na osam
principa:

1. Aktivno uključenje korisnika je imperativ – DSDM je korisnički orijentiran pristup i


korisnici moraju biti intenzivno uključeni u sve faze razvoja.
2. DSDM timovi moraju imati moć da donose odluke – DSDM tim se sastoji od korisnika i
developera. Oni moraju imati i sposobnosti i moć da donose odluke tokom izmjene
zahtjeva.
3. Fokus je na frekventnoj isporuci proizvoda – Pristup baziran na produktima je bolji od
pristupa baziranog na aktivnostima. Rad DSDM tima je koncentrisan na proizvod
kojeg treba isporučiti u određenom roku. Iteracije u kojima se isporučuju proizvodi
moraju biti kratke.
4. Esencijalni kriterij za prihvatanje proizvoda je njegovo uklapanje u poslovne potrebe
– Bitno je na vrijeme isporučiti potrebnu funkcionalnost, a softver može biti
rigoroznije optimiziran i kasnije.
5. Da bi se dobila konvergencija ka ispravnom poslovnom rješenju, nužan je iterativan i
inkrementalni razvoj – Sistem raste inkrementalno, tako da developeri dobijaju bolju
povratnu informaciju od korisnika sistema. Sistem se iterativno poboljšava.
6. Promjene koje se dešavaju razvoja su reverzibilne – Configuration Management je
bitan dio posla – za svaki produkt se u svakom trenutku mora znati u kojem je stanju.
7. Testiranje je integrirano u cijeli životni ciklus – Testiranje se ne tretira kao zasebna
aktivnost, ono je ugrađeno u sve faze i sve aktivnosti.
8. Kolaborativni i kooperativni pristup između svih zainteresovanih grupa je od
esencijalne važnosti – Kooperacija treba biti što intenzivnija i ne uvijek formalna.

Adaptive Software Development (ASD) se fokusira na probleme izgradnje velikih i


kompleksnih sisema. Metoda definiše inkrementalni i iterativni razvoj sa konstantnim
prototajpingom. ASD projekt se dešava u ponavljajućim ciklusima koji se sastoje od tri faze:
planiranje, implementacija i učenje. Ključne karakteristike ASD pristupa su:

● Mission Driven – Aktivnosti u svakom ciklusu moraju biti u skladu sa cjelokupnom

projektnom misijom. Kako projekt napreduje, misija može biti adaptirana, ali uvijek
mora biti jasno definirana.

● Component-Based – Razvoje aktivnosti moraju biti koncentrisane na isporuku

djelatnih komponenti sistema, a ne na poslove koje treba uraditi.

● Iterative – Fokus je na popravljanju – komponente sistema se ne mogu proizvesti

kako treba "od prve".

● Time-Boxed – Kompleksni proces razvoja softvera treba razbiti na manje dijelove sa

razumnim rokovima.

● Change-Tolerant – Važnije je biti u stanju adaptirati se na promjene nego ih

kontrolisati.

● Risk-Driven – Razvoj najrizičnijih komponenti treba početi što prije.

Extreme Programming (XP) je najčešće korišćena i najpoznatija agilna metodologija koja se


zasniva na na jednostavnosti, komunikaciji, feedbacku i hrabrosti. Timovi koriste jednostavnu
formu planiranja i praćenja kako bi odlučili šta sljedeće da rade. Timovi kreiraju softver u
seriji malih, potpuno integrisanih izdanja koja su prošla sve testove koje je korisnik definisao.
Predstavnik korisnika je dio tima.

Osnovne karakteristike XP metode su:

1. rapidni razvoj softvera uprkos stalno mijenjajućim zahtjevima je primarni cilj,


2. kratke iteracije, mali release-ovi i brzi odziv,
3. intenzivna participacija korisnika,
4. komunikacija i koordinacija,
5. kontinualna integracija i testiranje,
6. kolektivna odgovornost za kod,
7. limitirana dokumenatcija i
8. programiranje u paru.

Kanban: Osnovne prednosti ove metode su kraće vrijeme razvojnog ciklusa, bolji odaziv na
promjene specifikacije, idealan je za često mijenjanje prioriteta, većina funkcija su usmjerene
ka kupcu, zahtjeva malo priprema za početak, smanjivanje „otpada“, jednostavno uklanjanje
aktivnosti koje ne dodaju vrijednost i brze povratne informacije.

Kanban se zasniva na tri osnovna načela:

● Vizuelizujte ono što radite danas: vidjeti sve stavke u kontekstu jedni druge mogu biti

vrlo informativne

● Ograničiti količinu rada u toku: ovo pomaže u balansiranju pristupa zasnovanog na

tokovima, tako da timovi ne počinju i počinju previše rada istovremeno

● Poboljšanje protoka: kada se nešto završi, sledeća najviša stvar iz zaostalih predmeta

je u igri

Scrum: definiše karakteristike proizvoda kao isporučive proizvode i prioritizuje njihovu


najveću vrijednost kupcu. Ponovo procjenjuje prioritete nakon svake iteracije (sprint) da bi
proizveo potpuno funkcionalne funkcije. Ima četiri faze: analiza, dizajn, izgradnja, testiranje.
Uloge i odgovornosti članova tima su:

● Scrum master – osoba koja vodi tim, ali ne na klasičan način upravljanja, nego se brine

kako bi se uklonile prepreke prema ciljevima, a i savjetuje vlasnika projekta kako


maksimizirati ROI (Return on Investment) projekta

● Vlasnik projekta – onaj za koga se projekt radi (uglavnom je to naručitalj), odgovoran je

prenijeti svoju viziju (što želi postići projektom) scrum timu

● Scrum tim – tim koji direktno učestvuju u realizaciji projekta (developeri, dizajneri, testeri)

● Stakeholderi – svi koji su u vezi s projektom.

Neposredni cilj projekta koji se izvodi prema Scrum metodologiji je: isporučiti poslovnu
vrijednost unutar 30 dana.

Oba pristupa imaju svoje prednosti i mane. Ovisno od situacije, oba mogu ili ne moraju biti
primjenljiva. Međutim, najbolje rješenje jeste simultano vođenje (IT) projekata daje dobar
balans između dva ekstremna pristupa. U okviru ovog pristupa:

● Aktivnosti u koncipiranju, pripremi, realizaciji i zatvaranju projekta mogu se raditi

simultano.

● Više projekata se može voditi simultano.

Principi koji pokušavaju naći balans između dva ekstremna pristupa u: planiranju, vođenju i
definisanju procedura rada.

Principi kojima se vodi simultano planiranje jesu:

1. Smanjuj sve osim vizije.


a. Ne pokreći velike projekte(blokove), pokreći mnogo manjih
b. Ne traži veliki budžet, traži mnogo manjih.
c. Ne angažuj velike i skupe timove, radi sa malim i fleksibilnim timovima.
d. Smanjuj sve što možeš.
2. Ne moraš završiti svo planiranje odjednom (multifazno planiranje)
a. Uradi konceptualno planiranje što prije i sa što manje detalja
b. Počni realizaciju
c. Ubrzavaj realizaciju da što prije dobiješ odziv
d. Detaljno planiranje radi simultano, "usput".
3. Princip: Odgodi planiranje neizvjesnih zadataka.
a. Izoliraj veoma neizvjesne zadatke
b. Oslabi veze između njih
c. Ovo dvoje povećava vjerovatnoću da ćeš ih moći odgoditi
d. Ne gubi vrijeme i resurse na njih - odgodi donošenje odluka i radi na više
izvjesnim zadacima
4. Princip: Pravi prioritete prema uticaju na viziju i kompleksnosti projekata. -
Najprioritetniji projekti su oni koji imaju jak uticaj na ostvarenje vizije, a istovremeno
su i jednostavni.

Principi kojima se vodi simultano vođenje jesu:

1. Budi više lider, a manje menadžer.


a. Menadžment je borba sa kompleksnošću u stabilnim situacijama.
b. Liderstvo je borba sa promjenama i neizvjesnošću.
c. Nemoj misliti da se to događa samo drugima. Nije dovoljno biti samo dobar
menadžer da bi se ostvarila vizija: projektni tim te mora percipirati kao
istinskog lidera.
2. Stvori multifunkcionalne, interorganizacijske i privremene timove.

Principi kojima se vodi definisanje procedura rada su:

1. Koristi situaciono vođenje tima


2. Vodi projekte (segmente) simultano
3. Kontinuirano pregovaraj o novim budžetima
4. Koristi jednostavne procedure rada
a. „Keep It Simple“
b. Kvalitet je obrnuto proporcionalan kompleksnosti
5. Troši mnogo vremena na visokokvalitetnu komunikaciju
a. Forsiraj komunikaciju lice-u-lice
b. Koristi različite komunikacijske medije (fax, telefon - fiksni i mobilni, E-mail,
SMS…) da uštediš što više vremena za komunikaciju lice-u-lice

Očekivani produktivni rezultati Očekivani kapacitativni rezultati

Realizovani projekti koji zajednički Uhodan" tim i procedure rada, bolja


pouzdano vode ka ostvarenju vizije komunikacijska mreža

Projekti koji odgovaraju potrebama


Stabilnije finansiranje
korisnika

Percepcija organizacije kao dinamičnog i


Bolje motivisani i inspirisani projektni timovi
pouzdanog partnera

Infrastruktura koja raste i postaje sve


Mogućnost postavljanja nove vizije,
sposobnija za podršku sve kompleksnijim
ambicioznije i inspirativnije
projektima

Ukratko:

1. Radi stvari simultano


2. Planiraj sistematično i integrativno, ali ne sve odjednom
3. Prvo radi ono što ima najjači uticaj, a nije komplikovano
4. Radi ono što je izvodivo
5. Intenzivno komuniciraj

Lean razvoj softvera (LSD): sedam principa se može posmatrati u ovoj metodologiji:
eliminacija svega što je nepotrebno, povećano učenje, odlučivanje što je kasnije moguće,
isporuka što je brže moguće, osnaživanje tima, izgradnja integriteta i sagledavanje celine.

Waterfall vs Agile Pristup

Waterfall Agile

Planiranje Dugoročno Kratkoročno

Udaljenost korisnika I developera Velika Mala


Vrijeme između speficikacije I implementacije Dugo Kratko

Vrijeme potrebno za otkrivanje problema Dugo Kratko

Rizici vezani za vrijeme implementacije projekta Visoki Niski

Sposobnost odgovora na promjene Loša Dobra

You might also like