Konkurentni sustavi - IEEE– Plan projekta – Dio programskog koda Slika: Glavni artefakti u...
Transcript of Konkurentni sustavi - IEEE– Plan projekta – Dio programskog koda Slika: Glavni artefakti u...
Zavod za telekomunikacije
Poslijediplomski studij
za stjecanje doktorata znanosti
Ak.g. 2008./2009.
Konkurentni sustavi
Siječanj 2009.
Konkurentnost u programskim procesima
Siječanj 2009.Konkurentni sustavi 2 od 126
Sadržaj predavanja
•• Konkurentno inKonkurentno inžženjerstvoenjerstvo
•• Konkurentnost u modelima programskih procesaKonkurentnost u modelima programskih procesa
•• Brzi razvoj programskog proizvodaBrzi razvoj programskog proizvoda
•• Konkurentnost u fazama Konkurentnost u fazama žživotnog ciklusa programskog proizvodaivotnog ciklusa programskog proizvoda
•• PodrPodršška razvoju programskog proizvodaka razvoju programskog proizvoda
–– Upravljanje konfiguracijomUpravljanje konfiguracijom
–– Mjerenja programskih proizvoda i procesaMjerenja programskih proizvoda i procesa
•• Alati za podrAlati za podrššku konkurentnih aktivnosti u procesuku konkurentnih aktivnosti u procesu
Siječanj 2009.Konkurentni sustavi 3 od 126
Konkurentnost
Siječanj 2009.Konkurentni sustavi 4 od 126
Uvod
KVALITETA
PROCES
METODE
POMAGALA
• Razumijevanje• Komunikacija• Poboljšanje procesa• Upravljanje procesom• Automatizirana podrška
izvršavanju procesa
Softverska organizacija
Programski proces
Siječanj 2009.Konkurentni sustavi 5 od 126
Programski proces
♦ Strukturirani skup aktivnostiskup aktivnosti koje zahtijevaju npr. specifikacija, dizajn, validacija, evolucija itd.
♦ Aktivnosti variraju ovisno o organizaciji i sustavu koji se razvija♦ Proces mora biti eksplicitno modeliran - upravljanje
♦♦ ZnaZnaččajke procesaajke procesaRazumljivost
Vidljivost
Pouzdanost
Kvaliteta
♦ Glavno područje za poboljšanje kvalitete programskog proizvoda jer sadrži aktivnosti tijekom kojih se programski proizvod ili neki njegov dio stvarno kreira!!!
Siječanj 2009.Konkurentni sustavi 6 od 126
Konkurentne aktivnosti u životnom ciklusa PP
tZahtjevi Zahtjevi DizajnDizajn Implementacija Implementacija TestiranjeTestiranje Isporuka Isporuka OdrOdržžavanjeavanje
Upravljanje Upravljanje konfiguracijomkonfiguracijom
MjerenjaMjerenja
Upravljanje Upravljanje projektomprojektom
Upravljanje Upravljanje kvalitetomkvalitetom
Siječanj 2009.Konkurentni sustavi 7 od 126
Konkurentnost u životnom ciklusu - primjer
PLP = Product Line ProcessBOS = Bussiness Opportunity Scanning ProcessPPP = Product Provisioning Process
Siječanj 2009.Konkurentni sustavi 8 od 126
Ostali aspekti konkurentnosti
tZahtjevi Zahtjevi DizajnDizajn Implementacija Implementacija TestiranjeTestiranje Isporuka Isporuka OdrOdržžavanjeavanje
♦ Distribuirani razvoj
♦ Rad u timu
♦ Raznovrsni korisnici
♦ BRZI RAZVOJBRZI RAZVOJ♦♦ Osobni i timski procesi
Siječanj 2009.Konkurentni sustavi 9 od 126
Konkurentno inženjerstvo
• Istovremeno, interaktivno i interdisciplinarno uključivanje ljudi različitih tehničkih područja (dizajn, proizvodnja, podrška) u zajedničke projekte s ciljem skraćivanja razvojnog ciklusa održavajući pouzdanost, performanse proizvoda, kvalitetu i podršku korisnicima.
B.S. Dhillon. Engineering and Technology Management Tools and Applications. Artech House, 2002.
Siječanj 2009.Konkurentni sustavi 10 od 126
Konkurentno inženjerstvo
• KI postoji odavno, u svojoj suvremenoj formi početak 1980-tih – FordMotor Company, Taurus model
Siječanj 2009.Konkurentni sustavi 11 od 126
Ciljevi konkurentnog inženjerstva
1. Poboljšati kvalitetu proizvoda
2. Smanjiti troškove razvoja proizvoda
3. Smanjiti troškove proizvodnje
4. Smanjiti vrijeme do pojave na tržištu
5. Poboljšanje kompetitivnosti
6. Smanjiti troškove testiranje7. Povećati granice zarade
8. Smanjiti troškove održavanja
Siječanj 2009.Konkurentni sustavi 12 od 126
Osnovna načela konkurentnog inženjerstva
• Strukturiranje posla
– za razliku od računala ljudi ne mogu raditi istovremeno na nekoliko zadataka
– sistematsko strukturiranje posla ili radne okoline tako da se pojedini zadatak može izvršiti neovisno od strane čovjeka ili računala
Siječanj 2009.Konkurentni sustavi 13 od 126
• Dojam vlasništva
• Postojanost ciljeva i svrhe
• Sklonost timskom radu
• Uzajamno razumijevanje
• Ujednačavanje znanja – velika domena: pomagala za podršku donošenja odluka u kombinaciji s bazom
ljudskog znanja
Osnovna načela konkurentnog inženjerstva
Siječanj 2009.Konkurentni sustavi 14 od 126
Osnovna načela konkurentnog inženjerstva
• Rano otkrivanje problema
• Rano donošenje odluka
• stalna analiza i otkrivanje potencijalnih problema/rizika, pogotovo tijekom početnih faza razvoja
Siječanj 2009.Konkurentni sustavi 15 od 126
Primjena principa KI
• Čimbenici koji definiraju stupanj i potrebe za KI unutar organizacije:
– veličina
– tip proizvoda
– razvojni i proizvodni procesi
– fizička lokacija grana kompanije
Siječanj 2009.Konkurentni sustavi 16 od 126
Timovi unutar konkuretnog inženjerstva
• Suradni timovi
• Članovi koriste svoje ekspertno znanje za postizanje ciljeva tima
Ciljevi:
• pojačana suradnja• efikasna komunikacija
• česte provjere razvoja
• dodjela odgovornosti
Siječanj 2009.Konkurentni sustavi 17 od 126
Suradnja u timu
Elementi:
• suradnja
• komunikacija
• kompromisi
• koordinacija• privrženost
• konsenzus
• kontinuirano poboljšanje
Siječanj 2009.Konkurentni sustavi 18 od 126
Preduvjeti uspješnog rada u timu
• Preduvjeti vezani uz posao
– Posao kojeg tim treba obaviti treba biti eksplicitno definiran
– Posao treba biti razumljiv i smislen
– Tim treba biti dobro upoznat s poslom koji treba obaviti
Siječanj 2009.Konkurentni sustavi 19 od 126
Preduvjeti uspješnog rada u timu
• Preduvjeti vezani uz tim– Članovi tima trebaju biti jasno definirani– Članovi se trebaju međusobno poznavati (ili imati mogućnost
upoznati se na početku projekta)– Članovi trebaju znati vlastitu ulogu u projektu i uloge ostalih članova– Članovi su svjesni svoje odgovornosti i odgovornosti ostalih članova – Članovi trebaju imati znanja i vještine da izvrše zadani posao– Članovi trebaju biti motivirani
Siječanj 2009.Konkurentni sustavi 20 od 126
Preduvjeti uspješnog rada u timu (2)
• Preduvjeti vezani uz nadzor
• Nadzor nad izvršavanjem posla
• Nadzor nad aktivnostima tima
• Nadzor nad odnosima u timu (rješavanje problematičnih situacija, međusobno upoznavanje)
– Tim treba imati nadzor nad aktivnostima koje poduzima za izvršenje zadanog posla
– Tim ima kontrolu nad procesom koji koristi
– Tim treba biti obaviješten o napretku posla
Siječanj 2009.Konkurentni sustavi 21 od 126
Preduvjeti uspješnog rada u timu (3)
• Radni uvjeti tima
– prostor
– načini komunikacije
– tehnologija (obuka!)
– dostup literaturi i ostalim izvorima informacija
– nagrada za izvršeni posao
– ostale pogodnosti
Siječanj 2009.Konkurentni sustavi 22 od 126
Kohezija tima
• Čvrsta povezanost članova tima u radnu cjelinu– tim je smješten na istu fizičku lokaciju i provodi puno vremena
zajedno – članovi komuniciraju slobodno i često– surađuju, uzajamno se poštuju i podupiru jedni druge– članovi dijele iste ciljeve i vrijednosti, te imaju slične prioritete– u timovima s malom kohezijom: članovi djeluju kao pojedinci, bez
velike interakcije s ostalima
Siječanj 2009.Konkurentni sustavi 23 od 126
Visoko efikasni tim
• Postoji odanost timu i želja da se ostvare zadani rezultati
• Postoji i izražen je identitet tima
• Članovi tima imaju potrebne kompetencije
• Članovi posjeduju vještine koje se nadopunjuju s vještinama ostalih članova
• Postoji međusobno povjerenje i uzajamna ovisnost
• Komunikacijski kanali unutar tima su poznati i efikasni
• Postoji i užitak u izvršavanju zadanih poslova.
Siječanj 2009.Konkurentni sustavi 24 od 126
Konkurentnost u modelima programskih procesa
Siječanj 2009.Konkurentni sustavi 25 od 126
Životni ciklus programskog proizvoda
Definicija i analiza zahtjeva
Dizajn sustava
Dizajn programa
Testiranje programa
Implementacija programa
Testiranje sustava
Integracijsko testiranje
Isporuka
Povlačenje iz uporabe
Održavanje
Siječanj 2009.Konkurentni sustavi 26 od 126
Modeli programskih procesa
• Raznolikost procesa razvoja programskog sustava• Ne postoji univerzalni programski proces!• Izbor procesa razvoja ovisi o tipu i veličini programskog proizvoda
Primjeri: ♦ poslovna aplikacija - aplikacija za obradu informacija u stvarnom
vremenu ♦ mala aplikacija (1 programer) – veliki programski sustav
(multinacionalna kompanija)
♦ Različite organizacije - različiti procesi za razvoj istog tipa programskih proizvoda.
Siječanj 2009.Konkurentni sustavi 27 od 126
Modeli programskih procesa(2)
•• VodopadniVodopadni modelmodel (70-te)
•• Evolucijski modelEvolucijski model•• IterativniIterativni
Iteracija 1 Iteracija 2 Iteracija 3
Primjer:♦Rational Unified Process (RUP)
Siječanj 2009.Konkurentni sustavi 28 od 126
Rational Unified Process
Organizirani i dokumentirani skup načela, metoda i procesa koji povećavaju kvalitetu i produktivnost razvoja programskog proizvoda.
Software Best Practices
Siječanj 2009.Konkurentni sustavi 29 od 126
Problemi prilikom razvoja projekata
Simptomi
• zahtjevi nisu ispunjeni• nemogućnost promjene zahtjeva• loša integracija• teško održavanje• kasno otkrivanje grešaka• loša kvaliteta• razmimoilaženje programera
Uzrocinedovoljni zahtjevi
slaba komunikacija
nestabilna arhitektura
prevelika kompleksnost
neotkrivenenedosljednosti
slabo testiranje
subjektivna procjena
vodopadni razvoj
nekontrolirana promjena
nedovoljna automatizacija
•• Iterativni Iterativni razvojrazvoj•• Upravljanje Upravljanje zahtjevimazahtjevima
••Komponentna Komponentna arhitekturaarhitektura
•• Vizualno Vizualno modeliranjemodeliranje(UML)(UML)•• Provjera Provjera kvalitetekvalitete•• Kontrola Kontrola promjenapromjena
BestBestPracticesPractices
Siječanj 2009.Konkurentni sustavi 30 od 126
Rational Unified Process - arhitektura
Vrijeme
Jezgrenediscipline
Discipline podrške
Siječanj 2009.Konkurentni sustavi 31 od 126
Disciplina
• Skup srodnih aktivnosti koje imaju zajedničko područje interesa unutar projekta
• Bolje razumijevanje projekta i redoslijeda aktivnosti
• Svaka disciplina se prikazuje određenim skupom modela:– Model uporabnog slučaja– Dizajn model– Implementacijski model– Testni model
• Radni tok discipline se sastoji od niza međusobno poredanih aktivnosti, s ciljem ispunjenja određenog zadatka
Siječanj 2009.Konkurentni sustavi 32 od 126
Artefakt
• Radni proizvod procesa: Uloge koriste artefakte za obavljanje aktivnosti i pritom proizvode nove
• Artefakti su odgovornost pojedine uloge
• Artefakti nisu samo tekstualni dokumenti
• Podložni su kontroli verzije i upravljanju promjenama
• Primjer:
– Design Model– Plan projekta
– Dio programskog koda
Slika: Glavni artefakti u procesu te tok informacija između njih
Siječanj 2009.Konkurentni sustavi 33 od 126
Uloga
• Definira ponašanje i odgovornosti pojedinca ili tima koji obavlja ulogu– Aktivnosti koje pojedinac mora
obavljati
– Artefakte za koje je odgovoran• Uloge NE PREDSTAVLJAJU
pojedinačne osobe• Jedna osoba može imati više uloga• Više osoba može imati jednu ulogu
Siječanj 2009.Konkurentni sustavi 34 od 126
Pogled na arhitekturu
• Postoji ukupno 4+1 pogleda na arhitekturu:– Slučaj uporabe
– Logički– Implementacijski– Procesni
– Ugradbeni• Odgovara na pitanja:
– Koji su glavni dijelovi?– Kako ih međusobno uklopiti?
– Postoji li okvir na koji se može dodati preostali dio programskog proizvoda?
LogicalView
ImplementationView
ProcessView
DeploymentView
Use CaseView
Analyst / DesignerSW Architect
ProgrammerTester
Performance EngineerSupport
AdministratorDelivery, Installation
StakeholderEnd UserAnalystTester
Project Manager
Siječanj 2009.Konkurentni sustavi 35 od 126
Prilagodba RUP-a pojedinom projektu
• RUP tailoring
• Ovisi o veličini i lokaciji razvojnog tima, veličini i ciljevima projekta projekta
• Identificirati rizike
• Razina formalizama u projektu – što se sve mora dokumentirati?
•• Razina konkurentnostiRazina konkurentnosti
• Broj i format dokumentacije
• Odabrati ono što je neophodno i korisno za određeni projekt
Siječanj 2009.Konkurentni sustavi 36 od 126
Brzi razvoj programskog proizvoda
Siječanj 2009.Konkurentni sustavi 37 od 126
Uvod
Brzi razvojBrzi razvoj (Rapid Application Development - RAD)
• kraće vrijeme do isporuke na tržište• zadržana kvaliteta prog. proizvoda
• veći napori na početku projekta
•• Jedan od glavnih principa RADJedan od glavnih principa RAD--aa:uvođenje konkurentnih aktivnosti (izbjegavanje aktivnosti, rano izvještavanje o rezultatima)
Konkurentne aktivnosti:Konkurentne aktivnosti:♦ postojanje informacija♦ koordinacija♦ kontrola napretka procesa i proizvoda.
Siječanj 2009.Konkurentni sustavi 38 od 126
Brzi razvoj
Pretpostavke brzog razvojaPretpostavke brzog razvoja
• U nekim situacijama 80% rješenje može se proizvesti u 20% vremena potrebnog za izradu cijelog rješenja.
• Poslovni zahtjevi se mogu implementirati u potpunosti čak i ako neki funkcijski zahtjevi nisu implementirani.
• Prihvatljivost se može postići prihvaćanjem min. skupa korisničkih zahtjeva.
Primjena:Primjena:• samostalne aplikacije• sustavi čije performanse nisu kritične• pouzdanost nije kritična• tehnologija starija od 1 godine
Siječanj 2009.Konkurentni sustavi 39 od 126
Brzi razvoj (2)
Za uspjeh:
• potreban dobar balans metoda, pomagala, osoblja i upravljanja
RAD o(ne)mogućavaju:
•• tip programskog proizvodatip programskog proizvoda (složenost domene/aplikacije)
•• projektprojekt (arhitektura, infrastruktura)
• osoblje (vještine, menadžment)
•• platformaplatforma
Siječanj 2009.Konkurentni sustavi 40 od 126
Modeli brzog razvoja
•• VodopadniVodopadni model s preklapanjem fazamodel s preklapanjem faza
•• VodopadniVodopadni model s paralelnim model s paralelnim podprojektimapodprojektima
•• DailyDaily BuildBuild and and SmokeSmoke TestTest
•• JointJoint ApplicationApplication DesignDesign (JAD):(JAD):
Continue withdevelopment
?
Approval?
Yes
Yes
Implementation
JAD Planningphase
system goalsprelim inary efforts
schedule estimates
JAD Designphase
detailed UI designdatabase schema
schedule estimates
Siječanj 2009.Konkurentni sustavi 41 od 126
Konkurentnost u fazama životnog ciklusa programskog proizvoda
Siječanj 2009.Konkurentni sustavi 42 od 126
Konkurentne aktivnosti prikupljanja zahtjeva
POSLOVNI CILJEVI
PROBLEMI KOJE TREBA
RIJEŠITI
OGRANIČENJA SUSTAVA
Utvrđivanje Utvrđivanje ciljevaciljeva
STRUKTURA ORGANIZACIJE
DOMENA APLIKACIJE
POSTOJEĆI SUSTAVI
IDENTIFIKACIJA SUDIONIKA
DODJELA PRIORITETA CILJEVIMA
FILTRIRANJE DOM. ZNANJA
ZAHTJEVI SUDIONIKA
ZAHTJEVI DOMENE
ORGANIZAC. ZAHTJEVI
Prikupljanje Prikupljanje znanjaznanja
Organiziranje Organiziranje znanjaznanja
Dokumentiranje Dokumentiranje zahtjevazahtjeva
Siječanj 2009.Konkurentni sustavi 43 od 126
Praćenje zahtjeva
•• RequirementsRequirements traceabilitytraceability
PraPraććenje s obzirom na izvor zahtjeva:enje s obzirom na izvor zahtjeva:• Veza između zahtjeva i osoba/dokumenata koji ih specificiraju
PraPraććenje s obzirom na naenje s obzirom na naččelo zahtjevaelo zahtjeva:• Veza zahtjeva i objašnjenja zašto je zahtjev specificiran
PraPraććenje s obzirom na druge zahtjeve:enje s obzirom na druge zahtjeve:• Veza između svih zahtjeva koji su međusobno ovisni, veza je dvosmjerna
PraPraććenje s obzirom na arhitekturu:enje s obzirom na arhitekturu:• Veza zahtjeva i podsustava u kojima su zahtjevi implementirani, posebno važno kod
distribuiranog razvoja.
PraPraććenje s obzirom na dizajn:enje s obzirom na dizajn:• Veza zahtjeva i specifične sklopovske ili programske komponente koja se primjenjuje u
implementaciji zahtjeva.Siječanj 2009.Konkurentni sustavi 44 od 126
Konkurentne aktivnosti analize zahtjeva
Provjera nužnosti
Provjera konzistentnosti i
kompletnostiProvjera
izvedivosti
Nepotrebni zahtjevi
Nekonzist. i nekompletni
zahtjeviNeizvedivi
zahtjevi
ANALIZAANALIZA
Diskusija zahtjeva
Dodjela prioriteta zahtjevima Dogovor PREGOVORIPREGOVORI
Siječanj 2009.Konkurentni sustavi 45 od 126
Upravljanje zahtjevima
Siječanj 2009.Konkurentni sustavi 46 od 126
Primjer pomagala za zahtjeve
• Rational RequisitePro, podrška prikupljanju i upravljanju
• mogućnost praćenja - matrica, stablo
Siječanj 2009.Konkurentni sustavi 47 od 126
Primjer pomagala za zahtjeve (2)
Siječanj 2009.Konkurentni sustavi 48 od 126
Primjer pomagala za zahtjeve (3)
Siječanj 2009.Konkurentni sustavi 49 od 126
Distribuirani razvoj
Siječanj 2009.Konkurentni sustavi 50 od 126
Distribuirani razvoj (1)
PokretaPokretačči:i:• Trend globalizacije• Dinamika tržišta (kratki proizvodni ciklusi)Ostale moguOstale moguććnosti:nosti:• Lokalizacija• Pool raspoloživih vještinaTipovi distribuiranih projekata:Tipovi distribuiranih projekata:• Open Source (dobrovoljni razvijatelji dodaju promjene, jezgreni tim
razvijatelja prihvaća ili odbija promjene)• Virtualne korporacije• Organizacije s više sjedišta
Siječanj 2009.Konkurentni sustavi 51 od 126
Distribuirani razvoj (2)
• Distribuirani timovi
☺ Ušteda troškova i vremena
☺ Brzi dostup do eksperata
☺ Brzi dostup do sklopovlja
• Pomagala:
video-konferencije
pomagala grupne podrške
Siječanj 2009.Konkurentni sustavi 52 od 126
Distribuirani razvoj (3)
• Ayoma:
“Distribuirani konkurentni razvoj zamjenjuje sekvencijalni centralizirani razvoj u velikim telekomunikacijskim programskim projektima.”
Prednosti:
• Drastično smanjenje vremena razvoja
• Veća produktivnost
Siječanj 2009.Konkurentni sustavi 53 od 126
Distribuirani razvoj (4)
Osnovni izazovi distribuiranog razvoja:• Komunikacija • Koordinacija
• Vremenski pomak
• Različite kulture
• Različite interpretacije
• Poznavanje ljudi
• Zajednički repozitorij
Siječanj 2009.Konkurentni sustavi 54 od 126
Distribuirani razvoj (5)
Problemi:Problemi:Suradnja Suradnja – (podrška neformalnoj komunikacija i pregovorima - sustavi
grupne podrške)– povećavaju se troškovi i smanjuju mogućnosti u distr. razvoju
Upravljanje dokumentacijomUpravljanje dokumentacijom– Upravljanje konfiguracijom (paralelni rad na više verzija)– Nekonzistentnosti: ne mogu se izbjeći, trebaju se identificirati i
pratiti– Onemogućen centralizirani pristup problemima! (☺?)
Siječanj 2009.Konkurentni sustavi 55 od 126
Distribuirani razvoj (6)
Upravljanje projektom
• Modeliranje i definiranje procesa
• Planiranje i utvrđivanje rokova
• Praćenje procesa
Upravljanje znanjem
• Eksplicitno znanje• “Pronalaženje eksperata”
Lokalizacija
• Različiti centri distribuiranog razvoja imaju različite potrebe
• Različiti centri imaju primjenjuju različite metode/pomagala
Siječanj 2009.Konkurentni sustavi 56 od 126
PP s javno dostupnim kodom – “Open source software”
• Primjer distribuiranog razvoja• Open source SW pruža korisnicima :
– slobodu korištenja – slobodu mijenjanja ili prilagođavanja– slobodu distribucije.
• Uz program se distribuira:– izvorni kod– licenca – pravni dokument koji osigurava ove slobode
• Drugi naziv je slobodan softver (free software)
Siječanj 2009.Konkurentni sustavi 57 od 126
Nastanak “Open Source” softvera
• 1983. godine Richard Stallman pokreće Free Software Foundation -“Free as in free speech, not as in free beer”
• 1991. godine Linus Torvalds počinje pisati jezgru operacijskog sustava kojeg naziva Linux
• 1998. godine nastaje Open Source Initiative
• Razvojem Interneta dolazi i do punog korištenja Open SourceSoftware-a.
Siječanj 2009.Konkurentni sustavi 58 od 126
Primjeri “Open Source” softvera
• Linux– operacijski sustav temeljen na Unixu
• Apache– Web poslužitelj korišten na preko 50% poslužitelja
• Sendmail– poslužitelj koji procesira oko 80% ukupne elektroničke
pošte• OpenOffice
– skup uredskih alata
Siječanj 2009.Konkurentni sustavi 59 od 126
Razvoj “Open Source” softvera
• Tipičan open source projekt ima ove osobine:
– razvoj je baziran na Internetu
– vodeći tim razvijatelja (do 20ak članova) donosi odluke konsenzusom
– svi korisnici mogu se uključiti u proces razvoja i dati svoj doprinos
– projekt se u svakom trenutku može razgranati na dva projekta.
Siječanj 2009.Konkurentni sustavi 60 od 126
Prednosti razvoja “Open Source” softvera
☺ Omogućava neovisne recenzije:
– moguć velik broj recenzenata
– posljedica je kvalitetniji i pouzdaniji programski proizvod
☺ Omogućava lakše otkrivanje i brže ispravljanje neispravnosti
– velik broj razvijatelja može paralelno tražiti i ispravljati neispravnosti
– posljedica je stabilniji i pouzdaniji programski proizvod.
Siječanj 2009.Konkurentni sustavi 61 od 126
Problemi razvoja “Open Source” softvera
Broj razvijatelja može biti velik i oni su najčešće prostorno dislocirani - komunikacija.
Može se dogoditi da više razvijatelja istovremeno radi na istom dijelu koda.
Različiti projekti mogu dijeliti dio koda
Siječanj 2009.Konkurentni sustavi 62 od 126
Sustavi grupne podrške - općenito
• Sustavi koji osiguravaju programsku podršku članovima nekog tima za postizanje zajedničkog cilja.
• Članovi tima:
– rade na različitim mjestima i u različito vrijeme
– ista ili neka druga radna organizacija
– surađuju
– komuniciraju
– stalni - privremeni članovi tima
– zahtjeva se brzi odaziv
– nemogućnost zajedničkog sastanka
– različiti izvori znanja.
Siječanj 2009.Konkurentni sustavi 63 od 126
Sustavi grupne podrške (3)
Prednosti sustava grupne podrPrednosti sustava grupne podršškeke:
☺ Paralelna obrada informacija
☺ Sudjelovanje velikog broja različitih sudionika
☺ Brze diskusije
☺ Agresivni - povučeni sudionici - u jednakom statusu
☺ Uštede na putovanjima.
Nedostaci sustava grupne podrNedostaci sustava grupne podršškeke:
gubitak konteksta i fokusa diskusije
mogućnost nerazumijevanja/nedorečenosti.
Siječanj 2009.Konkurentni sustavi 64 od 126
Sustavi grupne podrške (2)
Anytime/Anyplace Collaboration
• omogućeno preko Web-a
Groupware:
• programska podrška suradnji u timskom distribuiranom radu
• sustavi elektroničkih sastanaka
• sustavi elektroničkih konferencija
Okvir vrijeme/prostorOkvir vrijeme/prostor• Isto vrijeme - isti prostor: Decision Room
• Isto vrijeme - različiti prostor: Video konferencija • Ostale kombinacije vrijeme - prostor: Internet
Siječanj 2009.Konkurentni sustavi 65 od 126
Sustavi grupne podrške (3)
Dvorana za donoDvorana za donoššenje odluka enje odluka ((DecisionDecision roomroom))
• 12-30 umreženih osobnih računala
• računalo-poslužitelj (facilitator computer)
• veliki projekcijski sustav• potreba za medijatorom
sastanka
Siječanj 2009.Konkurentni sustavi 66 od 126
Primjer - Groove sustav
Siječanj 2009.Konkurentni sustavi 67 od 126
Distribuirane inspekcije PP
Siječanj 2009.Konkurentni sustavi 68 od 126
Distribuirane inspekcije PP
• Ispitivanje programskog proizvoda
• Inspekcija - statički pregled koda
• Tijek odvijanja inspekcije:
– Inicijalizacija inspekcije
– Priprema za inspekciju– Odvijanje inspekcije
– Analiza rezultata
• Provjera specifikacije, dizajna i koda
Siječanj 2009.Konkurentni sustavi 69 od 126
Sustavi grupne podrške za inspekcije PP
• Rezultati (+):
☺60 do 80% pronađenih neispravnosti
☺Ušteda do 50% u parametru osoba-sat
☺Probijanje rokova 90% rjeđe
☺Organizacije troše 10 do 20% resursa na inspekcije programskog proizvoda
• Rezultati (-):
Ne znamo rezultate nakon inspekcije
Siječanj 2009.Konkurentni sustavi 70 od 126
Sustavi grupne podrške za inspekcije PP
• Vrste neispravnosti kod programskog proizvoda:
– Veće neispravnosti (majors)
– Manje neispravnosti (minors)
• Parametri kod inspekcija podržanih sustavima grupne podrške:
– Efektivnost (effectiveness)– Učinkovitost (efficiency)
– Učinak (yield)
Siječanj 2009.Konkurentni sustavi 71 od 126
Sustav za podršku elektroničkih sastanaka
• Tip sustava grupne podrške u kojim se komunikacije između sudionika uspostavljaju elektronički
• Lista neispravnosti u čvrsto definiranom formatu (kategorizacija)
• “Tihe sobe”
• Sudionici inspekcije ne moraju biti na istom dijelu koda
Siječanj 2009.Konkurentni sustavi 72 od 126
Rezultati istraživanja inspekcija podržanih sustavima za podršku elektroničkih sastanaka
Efektivnost
0,39
2,27
2,88
6,9
0,03
0,81
0,11
3
0
1
2
3
4
5
6
7
8
bro
j n
eis
pra
vn
ost
i de
tekt
iran
ih p
o s
tra
nic
i ko
da faza pripreme
faza sjednice
ne EMS EMS ne EMS EMSveće neispravnosti manje neispravnosti
Siječanj 2009.Konkurentni sustavi 73 od 126
Proces održavanja
SW sustav
Proces razvoja SW
Korisnik• Implementirani
zahtjevi
• Ispravan rad
• Programski kod• Dokumentacija
Održavanje SW
Potrebno je uključiti održavanje u rane faze životnog ciklusa programskog proizvoda!
Siječanj 2009.Konkurentni sustavi 74 od 126
Proces održavanja
• Primjer konkurentnih aktivnosti u studijskom slučaju procesa održavanja telekomunikacijskog programskog proizvoda
Proces održavanja obuhvaća sljedeće timove:• Registracijski ured• Ured za prihvat rješenja • Ured za održavanje
– ekspert + 3 programera + 2 test makete
Konkurentnost:• istovremeno sudjelovanje u različitim aktivnostima procesa• Istovremeno rješavanje nekoliko problema
Siječanj 2009.Konkurentni sustavi 75 od 126
Studijski slučaj procesa održavanja PP
MR Analiza
DizajnProvjera
Implementacija
EkspertEkspert
EkspertEkspert
Odbijeno
Otvorenakorekcija
Korekcijapripravna za
testiranje
TestiranjeOdobrenje Korekcijatestirana
Odbijeno
Odbijeno ProgramerProgramer
ProgramerProgramerRegistracijski Registracijski uredured
UredUred zaza prihvatprihvatrjerješšenjaenja UredUred zaza odrodržžavanjeavanje
&&
Siječanj 2009.Konkurentni sustavi 76 od 126
Upravljanje konfiguracijom programskog proizvoda
23.1.2009
Siječanj 2009.Konkurentni sustavi 77 od 126
Promjene programskog proizvoda
• Nove verzije prog. proizvoda:
– različita računala/OS
– nove funkcionalnosti
– ispravci identificiranih neispravnosti
– prilagodba specifičnim korisničkom zahtjevima• Rješavanje zahtjeva za promjenama - timski rad
• Promjene:
– zahtjevi
– dizajn
– kod
– dokumentacija
Siječanj 2009.Konkurentni sustavi 78 od 126
Terminologija
Konfiguracija:Konfiguracija:
• kolekcija komponenata (najčešće datoteka) koji zajedno čine programski proizvod
Upravljanje zahtjevima za promjenomUpravljanje zahtjevima za promjenom (Change RequestManagement): ♦ pohranjivanje CR-ova i analiza isplativosti implementacije novih/promijenjenih zahtjeva
Zahtjev za promjenomZahtjev za promjenom (Change Request - CR): ♦ dokumentirana specifikacija traženih funkcijskih i nefunkcijskih promjena u programskom proizvodu♦ izvori: razvijatelji, korisnici, održavatelji
Siječanj 2009.Konkurentni sustavi 79 od 126
Terminologija (2)
Verzija
• Instanca programskog proizvoda koja se funkcijski razlikuje od drugih instanci koje se odnose na isti zahtjev programskog proizvoda.
Isporuka (Release)
• Instanca programskog proizvoda koja se distribuira korisnicima izvan razvojnog tima
• Izvršni kod, konfiguracijske datoteke, instalacijski programi, dokumentacija (elektronička, papirnata)
• CD, WWW
Siječanj 2009.Konkurentni sustavi 80 od 126
Terminologija (3)
• Početni sustav (Baseline) - referentan za sve eventualne nadogradnje
• Ako revizije kreira više od jednog korisnika:obostrani isključivi pristup
Check-out: zaključana datoteka za ostale korisnike
Check-in: pohranjivanje nove revizije
Siječanj 2009.Konkurentni sustavi 81 od 126
Upravljanje programskom konfiguracijom
• Software Configuration Management (SCM)
• Upravljanje promjenama i složenošću programskog proizvoda
– Komunikacija
– Rad u timu
– Distribuirani razvoj
• Razvoj i primjena standarda i procedura za upravljanje evoluirajući prog. proizvodom
• Dio procesa upravljanja kvalitetom
Siječanj 2009.Konkurentni sustavi 82 od 126
Definicija SCM
• Upravljanje konfiguracijom programskog proizvoda je disciplina upravljanja i kontroliranja promjena tijekom evolucije programskog proizvoda.(IEEE Std. 1042-1987)
• Pomaže bolju koordinaciju pojedinaca koji rade u istoj fazi razvoja nekog dijela programskog proizvoda
• Osigurava informacije vezane uz:
– trenutno stanje verzija
– ispravak neispravnosti
• Omogućava oporavak u slučaju gubitka bilo kojeg dijela prog. proizvoda.
Siječanj 2009.Konkurentni sustavi 83 od 126
Problemi vezani uz SCM
Simultano ažuriranje
• Dva ili više razvijatelja rade istovremeno na istom kodu
Podijeljeni kod
• Unosi se promjena u kod o kojem ovisi rad drugih razvijatelja (treba ih pravovremeno obavijestiti ili im dostaviti promijenjeni kod).
Zajednički kod
• promjene se unose u biblioteke komponenata za višestruko korištenje
Siječanj 2009.Konkurentni sustavi 84 od 126
Kontrola promjena
• koristi se za upravljanje repozitorijom komponenti
• omogućava pohranjivanje različitih komponenti prog. proizvoda i njihovih verzija sigurno i jednoznačno
• Nakon svake promjene kreira se revizija neke datoteke
dat.1, dat.2, dat.3, ....
History - bilježi se tko je napravio reviziju i kada, eventualno dodavanje posebnih komentara (zašto?) - zasebna datoteka
• Revizije ne moraju nužno biti sekvencijalne
• Nova grananja: dat.2, dat.2.1, dat.2.2
Siječanj 2009.Konkurentni sustavi 85 od 126
Struktura generiranja novih verzija
1.0 1.1 1.2
1.1.b 1.1.1
1.1.a
2.0 2.1 2.2
Primjer:
Siječanj 2009.Konkurentni sustavi 86 od 126
Praktični aspekti kvalitete procesa
• Upravljanje zahtjevima za promjenom (Change RequestManagement): pohranjivanje CR-ova i analiza isplativosti implementacije zahtjeva
• Upravljanje konfiguracijom(ConfigurationManagement):podjela poslova, kontrola verzija, upravljanje resursima, paralelni razvoj, koordiniranje aktivnosti
Configuration management
Siječanj 2009.Konkurentni sustavi 87 od 126
Upravljanje zahtjevima za promjenom
ZAHTJEV ZA PROMJENOM
DOKUMENTIRANJE
PRIHVAT PROMJENE?
Formulari zahtjeva za promjenom
Siječanj 2009.Konkurentni sustavi 88 od 126
Planiranje SCM-a
• rane faze projekta
• za velike sustave:
– veliki broj procesne dokumentacije (zahtjevi, specifikacije, kod, test-podaci, korisnički priručnici. itd.)
• Odrediti nivo formalizma (ovisi o veličini projekta, prog. proizvoda, timu, SW organizaciji)
• Poseban naglasak - dokumentacija za održavanje
Siječanj 2009.Konkurentni sustavi 89 od 126
SCM plan
Definiranje:
• tipovi dokumenata
• standardi imenovanja
• odgovornosti za CM
• politika kontrole promjena i upravljanje verzijama
• pomagala• održavanje CM zapisa
Siječanj 2009.Konkurentni sustavi 90 od 126
Pomagala za SCM
RCS
• staro pomagalo, upravljanje različitim verzijama sustava
CVS
• kasnije će biti detaljno objašnjeno
ClearCase
• više servera, modeliranje procesa, mehanizmi provjere
Siječanj 2009.Konkurentni sustavi 91 od 126
RCS - Revision Control System
Verzija 1.0 Verzija 1.1 Verzija 1.2 Verzija 1.3
D1 D2 D3
Datum kreiranja
♦ Pohranjuju se samo razlike između verzija i početnog programskog proizvoda (baseline)
Siječanj 2009.Konkurentni sustavi 92 od 126
Paralelni razvoj s RCS-om
Verzija 1.0 Verzija 1.1 Verzija 1.2 Verzija 1.3 Verzija 1.4
Verzija 2.0 Verzija 2.1
D1.1 D1.2 D1.3 D1.4
D2.1Isporuka 1
Isporuka 2
Siječanj 2009.Konkurentni sustavi 93 od 126
Sustav konkurentnih verzija (CVS - Concurrent VersionsSystem)
• CVS je sustav za praćenje verzija izvornog koda
• omogućuje:
– dohvat starih verzija koda – npr. zato da bi se vidjelo koja je promjena u kodu uzrokovala neispravnost
– da više razvijatelja istovremeno radi na istom kodu
– grananje na dva ili više projekta i po potrebi njihovo kasnije “stapanje” u jedan projekt
• također omogućuje praćenje verzija i kod:
– tekstualnih dokumenata
– HTML stranica
Siječanj 2009.Konkurentni sustavi 94 od 126
CVS poslužitelj
Princip rada CVS-a
• originalne verzije koda se čuvaju u CVS repozitoriju
• razvijatelji rade na kopijama koje se poslije “stapaju” u novu verziju originala
• “stapanje” i otkrivanje mogućih konflikata je automatizirano
repozitorij
razvijatelj A
aktualnaaktualnaverzijaverzijakodakoda
kopijakoda
razvijatelj B
kopijakoda
razvijatelj C
kopijakoda
Siječanj 2009.Konkurentni sustavi 95 od 126
Dobre i loše strane CVS-a
• dobre strane:– olakšava traženje neispravnosti– eliminira potrebu za strogom koordinacijom razvijatelja– automatizira spajanje koda različitih razvijatelja– CVS je open source softver
• loše strane:– ne snalazi se najbolje s binarnim datotekama– nema ugrađen sustav za praćenje neispravnosti
Siječanj 2009.Konkurentni sustavi 96 od 126
Konkurentnost u upravljanju projektima
Siječanj 2009.Konkurentni sustavi 97 od 126
Projekt - definicija
Projekt je privremeni usmjereni napor poduzet kako bi se razvio Projekt je privremeni usmjereni napor poduzet kako bi se razvio jedinstveni proizvod, usluga ili ostvario neki drugi specifijedinstveni proizvod, usluga ili ostvario neki drugi specifiččni rezultat.ni rezultat.[PMBOK 2004]
Siječanj 2009.Konkurentni sustavi 98 od 126
Svojstva projekta
• Svojstvo privremenosti:privremenosti:– vrijeme trajanja (početak, kraj)– projektni tim– tržište i sl.
–– Kraj projekta:Kraj projekta:• ciljevi ostvareni• znanje o nemogućnosti ostvarivanja ciljeva projekta• ne postoji više potreba za projektom.
• Svojstvo jedinstvenostijedinstvenosti
– prisutnost ponavljajućih elemenata u projektima ne mijenja njegovu jedinstvenost (na primjer korištenje prethodnog iskustva).
Siječanj 2009.Konkurentni sustavi 99 od 126
Svojstva projekta
• Svojstvo privremenosti:privremenosti:– vrijeme trajanja (početak, kraj)– projektni tim– tržište i sl.
–– Kraj projekta:Kraj projekta:• ciljevi ostvareni• znanje o nemogućnosti ostvarivanja ciljeva projekta• ne postoji više potreba za projektom.
• Svojstvo jedinstvenostijedinstvenosti
– prisutnost ponavljajućih elemenata u projektima ne mijenja njegovu jedinstvenost (na primjer korištenje prethodnog iskustva).
Siječanj 2009.Konkurentni sustavi 100 od 126
Svojstva projekta (2)
• Svojstvo progresivne elaboracije:progresivne elaboracije:
– ujedinjuje svojstva privremenosti i jedinstvenosti
– razvoj projekta u koracima
– opseg projekta se definira na početku
– tijekom trajanja projekta povećava se znanje projektnog tima o cilju i očekivanim rezultatima
– opseg projekta se redefinira
– projekt postaje eksplicitniji
– potreban nadzor opsega
Siječanj 2009.Konkurentni sustavi 101 od 126
Rezultati projekta
•• Jedinstveni proizvod, usluga ili ostvarenje nekog drugog rezultaJedinstveni proizvod, usluga ili ostvarenje nekog drugog rezultatata
•• Materijalni proizvodMaterijalni proizvod koji se može kvantificirati - konačni proizvod ili pojedina komponenta
•• MoguMoguććnost prunost pružžanja neke uslugeanja neke usluge (poslovne usluge koje podržavaju razvoj, distribuciju i sl.)
•• DokumentacijaDokumentacija
•• ZnanjeZnanje (istraživački projekti) - potrebno ga je adekvatno opisati.
Siječanj 2009.Konkurentni sustavi 102 od 126
Upravljanje projektom - definicija
Upravljanje projektom je primjena znanja, tehnika, vjeUpravljanje projektom je primjena znanja, tehnika, vješština, i pomagala tina, i pomagala na definirane aktivnosti projekta kako bi se ostvarili ciljevi pna definirane aktivnosti projekta kako bi se ostvarili ciljevi projekta.rojekta.[PMBOK 2004]
•• Projektni menadProjektni menadžžer:er: osoba odgovornaodgovorna za realizaciju projektnih ciljeva
Siječanj 2009.Konkurentni sustavi 103 od 126
Upravljanje projektom - aktivnosti
• Identifikacija:
– zahtjeva– jasnih i realnih ciljeva
• Balansiranje zahtjeva za kvalitetom, opsegom, vremenom i troškovima
Troškovi Vrijeme
Opseg
Kvaliteta
Siječanj 2009.Konkurentni sustavi 104 od 126
Ekspertna područja tima za upravljanje projektom
Područja ekspertize projektnog tima [PMBOK 2004]
Siječanj 2009.Konkurentni sustavi 105 od 126
Projektna okolina
Projekti imaju pozitivan /negativan utjecaj na okoline:
• Kulturalna/sociološka okolina - način na koji projekt utječe na ljude i kako ljudi utječu na projekt
• Međunarodna/politička okolina - zakoni, običaji, politika, nacionalni praznici, putovanja
• Fizikalna okolina - okoliš, geografija
Potrebno je razmotriti projekt u kontekstu njegove okoline, s Potrebno je razmotriti projekt u kontekstu njegove okoline, s obzirom na svrhu projektaobzirom na svrhu projekta.
Siječanj 2009.Konkurentni sustavi 106 od 126
Podprojekti
• Podjela projekata na manje cjelina kako bi se olakšalo upravljanje.
• Podprojekti se mogu smatrati zasebnim projektima
Primjer:
• Projektni proces - pojedina faza životnog ciklusa projekta
• Zahtjevi za specifičnim vještinama pojedinih ljudskih resursa• Tehnologije (npr. automatsko testiranje programa)
Siječanj 2009.Konkurentni sustavi 107 od 126
Najčešći mitovi vezani uz upravljanje projektima (1)
"To je samo mali projekt. Upravljanje nije potrebno. Treba se odmah samo baciti na posao."
• Svaki projekt treba upravljanje.
• U malim projektima menadžer može imati i druge uloge
• Za svaki projekt, pa i najmanji, treba postojati plan
• Nadzor projekta: ciljevi, rokovi ....
Siječanj 2009.Konkurentni sustavi 108 od 126
Najčešći mitovi vezani uz upravljanje projektima (2)
"Upravljanje projektom će odnijeti znatan dio vremena zbog dokumentacije."
• Djelomično točno.
• Razina formalizma u projektu:
– tip projekta
– metoda/sustav za upravljanje
• Vještina projektnog menadžera da prilagodi potrebe projekta i razinu formalizma specifičnim okolnostima projekta.
Siječanj 2009.Konkurentni sustavi 109 od 126
Najčešći mitovi vezani uz upravljanje projektima (3)
"Svaki projekt kojim se dobro upravlja ima vjerojatnost uspjeha 100%."
• Nije moguće nadzirati sve aspekte projekta.
• Upravljanje ne može kompenzirati nedostatak znanja/vještina tima, lošu/pogrešnu tehnologiju, nedostatak povratne veze unutar tima/od strane korisnika i sl, nerealne rokove i neadekvatnu podršku sponzora.
Siječanj 2009.Konkurentni sustavi 110 od 126
Najčešći mitovi vezani uz upravljanje projektima (4)
Glavna zadaća projektnog menadžera je osigurati zadovoljenje rokova.
• To je jedna u nizu zadaća i odgovornosti.
• Osiguranje i nadzor kvalitete, ostanak u granicama budžeta, izgradnja tima, ...
• Primjena pomagala za upravljanje projektima ne može nadomjestiti znanje, vještine, intuiciju, praksu projektnog menadžera, ali ih može nadopuniti.
Siječanj 2009.Konkurentni sustavi 111 od 126
Definicija projektnog procesa
Projektni proces:Projektni proces:•• Skup međusobno povezanih aktivnosti koje se izvrSkup međusobno povezanih aktivnosti koje se izvrššavaju kako bi se avaju kako bi se
ostvario prethodno specificirani skup rezultata, proizvoda ili uostvario prethodno specificirani skup rezultata, proizvoda ili usluga.sluga.
•• Procesi zajedniProcesi zajedniččki veki veććini projekata veini projekata većći dio vremena i dio vremena (pokretanje, planiranje, izvršavanje, praćenje i nadzor, završavanje projekta)
•• Procesi orijentirani prema proizvodu Procesi orijentirani prema proizvodu (specifični za određenu domenu, životni ciklus proizvoda)
Siječanj 2009.Konkurentni sustavi 112 od 126
Odabir projektnih procesa
•• Projektni menadProjektni menadžžer, uer, u suradnji s projektnim timom suradnji s projektnim timom, o, odgovoran dgovoran je za određivanje koji procesi su prikladni za određeni projektje za određivanje koji procesi su prikladni za određeni projekt, te , te potrebne razine formalizma i strogosti u implementaciji tih potrebne razine formalizma i strogosti u implementaciji tih procesa.procesa.
• Projekt može biti vođen na različite načine:
– složenost, veličina, trajanje, iskustvo tima, pristup resursima, zrelost organizacije u PM-u, industrija, domena ......
Siječanj 2009.Konkurentni sustavi 113 od 126
Načelo identifikacije projektnih procesa
PlaniranjePlaniranje IzvrIzvrššavanjeavanje
ProvjeraProvjeraDjelovanjeDjelovanje
Siječanj 2009.Konkurentni sustavi 114 od 126
Grupe procesa zajedničke većini projekata
• Grupa procesa za pokretanje projekta
• Grupa procesa za planiranje
• Grupa procesa za izvršavanje
• Grupa procesa za praćenje i nadzor
• Grupa procesa za završavanje projekta
Siječanj 2009.Konkurentni sustavi 115 od 126
Interakcije između projektnih procesa
Planiranje
Izvršavanje
Pokretanje Završavanje
Praćenje i nadzor
Siječanj 2009.Konkurentni sustavi 116 od 126
Baza
Pokretač/Sponzor
Granice projekta
Planiranje
Izvršavanje
Pokretanje Završavanje
Praćenje i nadzor
Granice projekta
Ulazi
Izlazi
Dokumentacija
Pokretač/Sponzor
Siječanj 2009.Konkurentni sustavi 117 od 126
Definicija životnog ciklusa projekta
ŽŽivotni ciklus projekta:ivotni ciklus projekta:•• Skup uglavnom slijednih faza projekta koje se definiraju s obzirSkup uglavnom slijednih faza projekta koje se definiraju s obzirom om
na potrebe nadzora projekta.na potrebe nadzora projekta.
•• FazeFaze koje povezuju početak i kraj projekta. • Može biti dokumentiran određenom projektnom metodologijom.
Siječanj 2009.Konkurentni sustavi 118 od 126
Životni ciklus projekta
Određuje:
• Posao koji treba napraviti u određenoj fazi
• Rezultat svake pojedine faze
• Način provjere rezultata (inspekcije)• Sudionike pojedine faze
• Način nadzora i odobravanja faze
Siječanj 2009.Konkurentni sustavi 119 od 126
Rezultati izvršenja projektne faze
• zaključenje pojedine faze ne znači automatsko započinjanje nove
• svaka nova faza se formalno inicira specifikacijom što je u njoj dozvoljeno i očekivano - nadzor, upravljanje
Inspekcije po zavrInspekcije po završšetku pojedine faze:etku pojedine faze:• suglasnost za zaključenje dotične faze
• inicijacija sljedeće• phase exit, phase gate, kill point
Siječanj 2009.Konkurentni sustavi 120 od 126
Definiranje životnog ciklusa projekta
• Ne postoji jedinstvena definicija
• Mogućnosti:
– standardizacija za sve projekte unutar pojedine kompanije
– određivanje za svaki projekt posebno
– preferirani životni ciklusi ovisno o industrijskoj okolini projekta.
Siječanj 2009.Konkurentni sustavi 121 od 126
Faze životnog ciklusa projekta
Rezultat izvrRezultat izvrššavanja pojedine faze:avanja pojedine faze:• mjerljiva količina posla koja se može provjeriti
• specifikacija, studija izvodljivosti, izvještaj, dokumentacija, prototip
• za nadzor odvijanja projekta i postizanje njegovog konačnog cilja
Faza Faza nnFaza Faza nn11 Faza Faza nn22
PRIMARNA FAZAPRIMARNA FAZA
PODAFAZEPODAFAZE
Siječanj 2009.Konkurentni sustavi 122 od 126
Odnos faza životnog ciklusa projekta
Faza 1Faza 1Tehnički prijenos
Inspekcija
SUGLASNOST
Rezultati
Faza 2Faza 2
Siječanj 2009.Konkurentni sustavi 123 od 126
Preklapanje faza životnog ciklusa projekta
Faza 1Faza 1
Inspekcija
SUGLASNOST
Rezultati
Faza 2Faza 2
t
♦ Moguće ako preklapanje faza nosi mali rizik za projekt.
Siječanj 2009.Konkurentni sustavi 124 od 126
Faze životnog ciklusa projekta
Podjela na faze ovisi o:
• veličini projekta• složenosti
• rizicima
• toku novca
• Svaka podfaza treba imati definirane svoje rezultate - povezani su s rezultatima primarne faze
Siječanj 2009.Konkurentni sustavi 125 od 126
Rezultati izvršenja projektne faze
Faza 1Faza 1
Inspekcija
• SUGLASNOST• DORADA
Rezultati
Faza 2Faza 2
• ZAKLJUČENJE PROJEKTA
♦ Formalno zaključivanje pojedine faze ne znači automatsko započinjanje nove
Siječanj 2009.Konkurentni sustavi 126 od 126
PROIZVOD USLUGA PROIZVOD USLUGA REZULTATREZULTAT
InicijalnaInicijalna
Slijed faza u projektu
KonstrukcijskeKonstrukcijske ZavrZavrššnana
UlaziUlazi
FazeFaze
Izlazi vaIzlazi važžni za ni za upravljanje upravljanje projektomprojektom
Projektni Projektni rezultatirezultati
SuglasnostSuglasnost
IsporukaIsporukaIzvještaj o opsegu
Prijedlog Progres
PrihvaćenostOsnova za usporedbu
Plan
Ideja
Tim za upravljanje projektom