410 likes | 666 Views
Projekto planavimas Project scheduling. Studentas: Rokas Jurevi čius. Kodėl gali vėluoti projektų atlikimas?. Projekto pabaigimo terminas („ d eadline“) yra nustatytas neracionaliai; Poreikių pokyčiai neatsispindi projekto plane;
E N D
ProjektoplanavimasProject scheduling Studentas: RokasJurevič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 variantasProjekto 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:čia: E – projektui atlikti reikalingas žmogaus darbo laikas, žmogaus darbo metais; L –projektoapimtiskodoeilutė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: Nustatyti koncepcijos taikymo sritį; Sudaryti preliminarų koncepcijos kūrimo planą; Įvertinti riziką; Įrodyti koncepcijos svarbą, naudą ar poreikį; Sukuriamas koncepcijos veikimo pavyzdys („demo“); 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ą galime suskirstyti į keturias pagrindines veiklas: Analizė; Projektavimas; Programavimas; Testavimas. Š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