Projekto planavimas Project scheduling

Download Report

Transcript Projekto planavimas Project scheduling

Projekto planavimas
Project scheduling
STUDENTAS: ROKAS JUREVIČIUS
Kodėl gali vėluoti projektų atlikimas?
 Projekto pabaigimo terminas („deadline“) yra




nustatytas neracionaliai;
Poreikių pokyčiai neatsispindi projekto plane;
Netinkamai įvertintas reikalingas darbo laikas
užduotims atlikti;
Nenumatytos techninės / žmogiškosios kliūtys;
???
Skaidrė 2 iš 37
Turinys
 Pagrindiniai principai
 Darbo kainos ir projekto trukmės priklausomybė
 Darbo laiko paskirstymas
 Užduočių rinkinio formavimas
 Projekto planavimas
 Objektiškai orientuoto projekto vykdymo stebėjimas
 Atlikto darbo vertės analizė
 Išvados
Skaidrė 3 iš 37
Pagrindiniai principai (1/2)
 Projekto išskaidymas (Compartmentalization)
Darbo procesą galime skaidyti į veiklas, veiksmus ir užduotis;
Produktas skaidomas į atskiras nepriklausomai veikiančias
dalis / funkcijas;
 Užduočių tarpusavio ryšys (Interdependancy)
Būtina žinoti kurios užduotys galėtų būti atliekamos lygiagrečiai,
kurios negali būti pradėtos kitų neatlikus;
 Laiko išskyrimas (Time allocation)
Projekto veikloms, užduotims atlikti skiriams nustatytas
laikotarpis. Laikotarpis matuojamas žmogaus darbo laiko
vienetais (pvz. žmogaus darbo dienomis);
Skaidrė 4 iš 37
Pagrindiniai principai (2/2)
 Atsakomybių nustatymas (Defined Responsibilities)
Kiekviena užduotis ar veikla turi turėti atsakingą asmenį;
 Užduoties rezultatų nustatymas (Defined outcomes)
Užduotis tampa atlikta tuomet, kai darbo rezultatas atitinka iš anksto
nustatytus kriterijus;
 Gairių nustatymas (Defined Milestones)
Gairė – esminė laiko žymė, kurios metu turi būti pabaigtos su ja
susijusios veiklos ir užduotys;
 Pastangų įvertinimas (Effort validation)
Įvertinama ar suplanuotų užduočių atlikimo terminai atitinka turimus
išteklius;
Skaidrė 5 iš 37
Projektų planavimas
 Pagrindiniai principai
 Darbo kainos ir projekto trukmės priklausomybė
 Darbo laiko paskirstymas
 Užduočių rinkinio formavimas
 Projekto planavimas
 Objektiškai orientuoto projekto vykdymo stebėjimas
 Atlikto darbo vertės analizė
 Išvados
Skaidrė 6 iš 37
Darbo kainos ir projekto trukmės priklausomybė
Pagrindiniai principai:
 Projekto atlikimo laiko ir prie projekto dirbančių
žmonių skaičiaus priklausomybė yra netiesinė;
 Projektą gali atlikti ir vienas žmogus, tačiau daugiau
žmonių gali tą patį projektą atlikti ne tik greičiau, bet
ir kokybiškiau;
 Projekto pabaigimo terminas (deadline) gali būti
koreguojamas ir tai priklauso nuo žmogiškųjų
išteklių.
Skaidrė 7 iš 37
Darbo kainos ir projekto trukmės priklausomybė
Putnam-Norden-Rayleigh (PNR) kreivės galimas variantas
Projekto sąmatos priklausomybė nuo gamybos trukmės
Skaidrė 8 iš 37
Darbo kainos ir projekto trukmės priklausomybė
Projektui atlikti reikalingo darbo išraiška:
𝐿3
𝐸 = 3 4,
𝑃 𝑡
čia:
E – projektui atlikti reikalingas žmogaus darbo laikas, žmogaus
darbo metais;
L – projekto apimtis kodo eilutėmis, tūkst. kodo eilučių
(KLOC);
P – produktyvumo koeficientas, priklauso nuo daugelio
faktorių, įprastai intervale 2000-12000;
t – projekto trukmė, kalendoriniais mėnesiais.
Ši formulė parodo žymų žmogaus darbo laiko priklausomybės nuo
projekto trukmės netiesiškumą. Galimi atvejai, kad nežymiai
prailginus projekto trukmę gausime daug mažesnį darbo jėgos poreikį.
Skaidrė 9 iš 37
Projektų planavimas
 Pagrindiniai principai
 Darbo kainos ir projekto trukmės priklausomybė
 Darbo laiko paskirstymas
 Užduočių rinkinio formavimas
 Projekto planavimas
 Objektiškai orientuoto projekto vykdymo stebėjimas
 Atlikto darbo vertės analizė
 Išvados
Skaidrė 10 iš 37
Darbo laiko paskirstymas
R. S. Pressman‘as rekomenduoja darbo laiką skirstyti
naudojantis 40-20-40 taisykle:
 40% - analizė ir projektavimas;
 20% - programos kodo rašymas;
 40% - testavimas, klaidų paieška.
Šis santykis yra tik kaip pagrindas, įverčiai keičiasi
priklausomai nuo projekto specifikos.
„Agile“ metodikos su šia taisykle „pykstasi“, jos teigia, kad
programavimas turėtų prasidėti anksčiau.
Skaidrė 11 iš 37
Projektų planavimas
 Pagrindiniai principai
 Darbo kainos ir projekto trukmės priklausomybė
 Darbo laiko paskirstymas
 Užduočių rinkinio formavimas
 Projekto planavimas
 Objektiškai orientuoto projekto vykdymo stebėjimas
 Atlikto darbo vertės analizė
 Išvados
Skaidrė 12 iš 37
Užduočių rinkinio formavimas
 Užduočių rinkinys – tai esminės užduotys ir gairės
(milestones), kuriomis vadovaujantis gaunamas
rezultatas (pvz.: veikianti programinė įranga);
 Užduočių rinkinys privalo būti sudaromas skirtingai,
priklausomai nuo:



pasirinkto kūrimo proceso modelio (nuoseklus, inkrementinis,
evoliucinis ar kitas);
projekto apimties;
projekto tipo.
Skaidrė 13 iš 37
Užduočių rinkinio formulavimas
Organizacijos dažniausiai susiduria su šiais projektų tipais:
 Koncepcijos vystymas;
 Naujos programinės įrangos kūrimas;
 Programinės įrangos tobulinimas;
 Programinės įrangos priežiūra;
 Programinės įrangos perdarymas.
Skaidrė 14 iš 37
Užduočių rinkinio formulavimas
Netgi tam pačiam projekto tipui užduočių rinkinys gali
priklausyti nuo skirtingų faktorių:
 Apimtis;
 Vartotojų skaičius;
 Stabilumo reikalavimai;
 Taikomos technologijos naujumo;
 Kūrėjo – vartotojo bendravimo galimybių;
 ???
Skaidrė 15 iš 37
Užduočių rinkinio formulavimas
Koncepcijos kūrimo užduočių rinkinys:
1. Nustatyti koncepcijos taikymo sritį;
2. Sudaryti preliminarų koncepcijos kūrimo planą;
3. Įvertinti riziką;
4. Įrodyti koncepcijos svarbą, naudą ar poreikį;
5. Sukuriamas koncepcijos veikimo pavyzdys
(„demo“);
6. Stebime kliento reakciją ir įvertiname rezultatą.
Skaidrė 16 iš 37
Užduočių rinkinio išskaidymas formulavimas
1.1 punkto skaidymo pavyzdys:
1.1.1. Nustyti poreikius, naudą, potencialius klientus;
1.1.2. Nustatyti programos veikimo rezultatus,
valdymą
bei įvesties įvykius, kuriais programa
bus valdoma;
1.1.3. Nustatyti kiekvienos programos dalies
funkcionalumą ir veikimo principą;
1.1.4. Atlikti esamų kuriamos programinės įrangos
analogų tyrimą;
1.1.5. Įvertinti programos tinkamumą;
1.1.6. Apytiksliai įvertinti programos dydį;
1.1.7. Apibrėžti taikymo sritį.
Skaidrė 17 iš 37
Užduočių tinklas
Kai kurias užduotis galima pradėti tik kitas pabaigus, o kai
kurios gali būti atliekamos lygiagrečiai.
Skaidrė 18 iš 37
Projektų planavimas
 Pagrindiniai principai
 Darbo kainos ir projekto trukmės priklausomybė
 Darbo laiko paskirstymas
 Užduočių rinkinio formavimas
 Projekto planavimas
 Objektiškai orientuoto projekto vykdymo stebėjimas
 Atlikto darbo vertės analizė
 Išvados
Skaidrė 19 iš 37
Projekto planavimas
R. S. Pressman‘as siūlo dvi univarsalias metodikas projektų
planavimui ir valdymui:
 Program evaluation and review techniqure (PERT);
 Critical path method (CPM).
Abiem metodikom informaciją iš jau pabaigtų projektų:
 Pastangų įverčiai;
 Produkto funkcijų skaidymas;
 Tinkamo vystymo proceso ir užduočių rinkinio
pasirinkimas;
 Užduočių skaidymas.
Skaidrė 20 iš 37
Projekto planavimas
Projekto vadovas sudaro projekto užduočių
rinkinį ir atskiroms užduotims priskiria pradžios ir
pabaigos datas. Tuo naudojantis galima sudaryti
projekto laiko užduočių atlikimo grafiką (angl.
Timeline chart).
Naudojantis projektų planavimo įrankiais šiuos
grafikus galima automatiškai generuoti. Taip pat
tokius grafikus galima sudaryti ir atskiroms projekto
dalims / funkcijoms.
Skaidrė 21 iš 37
Projekto darbo grafikas
Skaidrė 22 iš 37
Projekto vykdymo stebėjimo būdai
 Susitikimai su darbuotojais, pasidomėti jų progresu;
 Įvertinant rezutaltus po projekto peržiūrų;
 Įvertinant ar gairės (milestones) buvo įvykdytos
pagal grafiką;
 Įvertinant ar projekto užduotys buvo pradėtos ir
pabaigtos pagal grafiką;
 Išklausyti trečios šalies profesionalių vertintojų
nuomonę;
 Įvertinant atlikto darbo vertę (apie tai sužinosime
vėliau).
Skaidrė 23 iš 37
Projektų planavimas
 Pagrindiniai principai
 Darbo kainos ir projekto trukmės priklausomybė
 Darbo laiko paskirstymas
 Užduočių rinkinio formavimas
 Projekto planavimas
 Objektiškai orientuoto projekto vykdymo
stebėjimas
 Atlikto darbo vertės analizė
 Išvados
Skaidrė 24 iš 37
OO projekto vykdymo stebėjimas
OO projektą
pagrindines veiklas:
 Analizė;
 Projektavimas;
 Programavimas;
 Testavimas.
galime
suskirstyti
į
keturias
Šios veiklos būdingos visiems programinės
įrangos kūrimo projektams, tačiau galime specifikuoti
jų pabaigimą pagal objektinio programavimo bruožus.
Skaidrė 25 iš 37
OO projekto analizė baigta, kai:
 Visos klasės išbaigtos, klasių hierarchija baigtinė ir




peržiūrėta;
Klasių atributai ir metodai susieti su klasėmis yra
išbaigti ir peržiūrėti;
Ryšiai tarp klasių yra nustatyti ir peržiūrėti;
Elgsenos modelis yra nustatytas ir peržiūrėtas;
Pakartotinam naudojimui skirtos klasės yra
pažymėtos.
Skaidrė 26 iš 37
OO projekto projektavimas baigtas, kai:
 Projekto posistemės yra apibrėžtos ir peržiūrėtos;
 Klasės priskirtos posistemėms ir peržiūrėtos;
 Užduočių skirstymas yra sudarytas ir peržiūrėtas;
 Užbaigtas ir nustatytas klasių CRC (Class-
Responsibility-Collaborator) modelis;
 Komunikacijos modelis yra suprojektuotas ir
peržiūrėtas.
Skaidrė 27 iš 37
OO projekto programavimas baigtas, kai:
 Visos suprojektuotos klasės yra sukoduotos;
 Pakartotinai panaudojamos klasės yra įgyvendintos;
 Programos dalis yra veikianti.
Skaidrė 28 iš 37
OO projekto testavimas baigtas, kai:
 Projekto ir analizės modelių teisingumas ir




integracija yra peržiūrėta;
Klasių CRC modelių tinklas yra išvystytas ir
peržiūrėtas;
Visi testavimo atvejai (angl. test-cases) ir visų klasių
testai yra atlikti;
Testavimo atvejai suprojektuoti, atskiros klasių
grupės (angl. cluster) ištestuotos ir klasės yra
integruotos į sistemą;
Baigtinės sistemos (produkto) testai atlikti.
Skaidrė 29 iš 37
Projektų planavimas
 Pagrindiniai principai
 Darbo kainos ir projekto trukmės priklausomybė
 Darbo laiko paskirstymas
 Užduočių rinkinio formavimas
 Projekto planavimas
 Objektiškai orientuoto projekto vykdymo stebėjimas
 Atlikto darbo vertės analizė
 Išvados
Skaidrė 30 iš 37
Atlikto darbo vertės analizė
 Atlikta vertė (angl. earned value) – kiekybinis matas
priskiriamas kiekvienai užduočiai, vertinant pagal jį
galime procentais įsivertinti projekto progresą ir
išbaigtumą;
 Apskaičiavus kiekvienos užduoties vertę projekte ir
žinant užbaigtas užduotis projekto eiga pasidaro
aiški ir nebelieka poreikio spėlioti progreso pagal
nuojautą;
Skaidrė 31 iš 37
Atlikto darbo vertės analizė
Norint apskaičiuoti atliktą vertę reikia atlikti šiuos
žingsius:
 Apskaičiuojam kiekvienos užduoties biudžetinę vertę
(angl. Budgeted cost of work scheduled, BCWS);
 Apskaičiuojam viso projekto biudžetą (angl. Budget
at completion, BAC),
𝐵𝐴𝐶 = 𝐵𝐶𝑊𝑆𝑘 ;
 Apskaičiuojam atliktų užduočių biudžetinę vertę
(angl. Budgeted cost of work perfomed, BCWP).
Skaidrė 32 iš 37
Atlikto darbo vertės analizė
Turint prieš tai pateiktus įverčius galime apskaičiuoti
informatyvius projekto koeficientus:
 Projekto darbotvarkės efektyvumo indeksas (angl.
Scheduled perfomance index, SPI):
𝑆𝑃𝐼 =
𝐵𝐶𝑊𝑃
;
𝐵𝐶𝑊𝑆
 Projekto darbotvarkės variacija (angl. Schedule
variance, SV)
𝑆𝑉 = 𝐵𝐶𝑊𝑃 − 𝐵𝐶𝑊𝑆;
Skaidrė 33 iš 37
Atlikto darbo vertės analizė
 Galime apskaičiuoti darbo, kuris turėtų būti atliktas
duotuoju momentu pagal grafiką:
𝐵𝐶𝑊𝑆
;
𝐵𝐴𝐶
 Darbas kuris yra atliktas:
𝐵𝐶𝑊𝑃
;
𝐵𝐴𝐶
Skaidrė 34 iš 37
Atlikto darbo vertės analizė
Jeigu atlikti užduotims reikėjo daugiau nei buvo
planuota galima paskaičiuoti tikrąją atliktų darbų
vertę (angl. Actual cost of work performed, ACWP).
Tuomet galime apskaičiuoti:
 Darbo vertės efektyvumo indeksas (angl. Cost
perfomance index, CPI):
𝐶𝑃𝐼 =
𝐵𝐶𝑊𝑃
;
𝐴𝐶𝑊𝑃
 Darbo vertės variacija (angl. Cost variance, CV):
𝐶𝑉 = 𝐵𝐶𝑊𝑃 − 𝐴𝐶𝑊𝑃;
Skaidrė 35 iš 37
Projektų planavimas
 Pagrindiniai principai
 Darbo kainos ir projekto trukmės priklausomybė
 Darbo laiko paskirstymas
 Užduočių rinkinio formavimas
 Projekto planavimas
 Objektiškai orientuoto projekto vykdymo stebėjimas
 Atlikto darbo vertės analizė
 Išvados
Skaidrė 36 iš 37
Išvados
Programinės įrangos kūrimo projektai gali
pasirodyti ganėtinai sunkiai nuspėjami ir valdomi,
kadangi kūrimo metu vykstantys procesai gali būti ir
nelabai aiškūs ar prastai suplanuoti.
Šiame
pristatyme
pabandžiau
išdėstyti
metodikas (projektų planavimo, stebėjimo, progreso
analizės) kuriomis vadovaujantis galime įvesti daugiau
tvarkos ir aiškumo programinės įrangos kūrimo
projektuose.
Skaidrė 37 iš 37
Ačiū už dėmesį!