Presentation is loading. Please wait.

Presentation is loading. Please wait.

Asmeninis programų kūrimo procesas (PSP)

Similar presentations


Presentation on theme: "Asmeninis programų kūrimo procesas (PSP)"— Presentation transcript:

1 Asmeninis programų kūrimo procesas (PSP)
3 paskaita Saulius Ragaišis, VU MIF

2 Tarpinis PSP ir ADS egzaminas
Siūloma data: balandžio 9 d. (trečiadienį) nuo 8:30 Alternatyvūs variantai: 1) balandžio 2 d. (trečiadienį) nuo 8:30 2) balandžio 3 d. (ketvirtadienį) nuo 8:30 3) balandžio 4 d. (penktadienį) nuo 18:00 4) balandžio 7 d. (pirmadienį) nuo 18:00 5) balandžio 10 d. (ketvirtadienį) nuo 8:30 6) balandžio 11 d. (penktadienį) nuo 18:00 Galutinis sprendimas dėl datos bus priimamas kovo 6 d. per ADS paskaitą.

3 Einamoji situacija Grupė Studentų Vidurkis U1-PD U2-LFF&SVS 1 23 0,71
100,00% 8,70% 2 24 0,53 3 26 0,57 4 0,63 5 22 0,60 90,91% Iš viso: 119 0,61 98,32% 1,68% Duomenys :10 (įskaitant 5 studentus, kartojančius kursą)

4 Papildoma informacija dėl 2-os užduoties
Užduoties tikslas yra užfiksuoti, kam ir kiek skiriama laiko: - atliekant užduotį nebūtina pradėti daryti tai, ko nebuvo daroma (pvz., planuoti); - fiksuojami duomenys turi atitikti realybę (negalima fiksuoti to, ko nebuvo) Būtina fiksuoti visą laiką, susijusį su studijomis ir skiriamą nurodytoms veikloms (Paskaita/pratybos, Skaitymas, Planavimas, Projektavimas, Programavimas (kodavimas), Kompiliavimas, Testavimas, Atsiskaitymas, PSP veikla) Su kitu laiku, pvz., namų darbai (rašymas), galima elgtis dvejopai: - fiksuoti LFF su savu tinkamu veiklos pavadinimu, bet neperkelti į SVS - nefiksuoti Svarbiausias laikas, skiriamas programų kūrimui, todėl veiklą parenkame pagal prioritetus: (1) Planavimas, Projektavimas, Programavimas (kodavimas), Kompiliavimas, Testavimas, (2) Atsiskaitymas, PSP veikla , (3) Skaitymas, (4) Paskaita/pratybos Fiksuodami laiką LFF, kiekvieną kartą sugaištame po dalį minutės – suminį per dieną tam sugaištą laiką galim užfiksuoti 1 eilute Formose neturėtų būti rašomi 0 (SVS formose reikia užpildyti tik tuos langelius, kuriuose yra duomenys, nes 0 surašymas į likusius labai pasunkina SVS nagrinėjimą)

5 2-os užduoties atsiskaitymo problemos šiais metais
Keistoki vienetai (pvz., PSP veikla – SVS1 užpildymas: 1 psl.) Pažymėta, kad programa baigta kurti, bet nenurodytas jos dydis (stulpelyje Vnt.) – kadangi atsiskaitymo metu programos dydis gali keistis, jį būtina nurodyti net ir tuo atveju, jei jis buvo nurodytas anksčiau (kai programa buvo baigta kurti ir buvo nuspręsta, kad ją jau galima atsiskaityti) Iš pirmo žvilgsnio sunkiai suprantama LFF (pvz., viename laiko intervale fiksuojamos kelios veiklos ir “Baigta” bei vienetai (sukurtos programos dydis) nurodomi ties pirmąja veikla) B(aigta) žymima po kiekvienos programos kūrimo veiklos Nekorektiškai suskaičiuojamas laikas Pastaba: kol kas atsiskaitinėjo labai mažai žmonių, todėl problemos vienetinės. Priminimas: 2-os užduoties atsiskaitymo terminas kovo 16 d. Tikėtina, kad prieš pat atsiskaitymo pabaigą bus pateikta labai daug užduočių, todėl negalės būti užtikrintas užduočių patikrinimas per žadėtą terminą (72 val.)

6 2-os užduoties atsiskaitymo problemos pernai metais
Pagal pateiktas formas darbas neatliktas – formos antraštėje nurodoma data, kada forma pradėta pildyti: jei LFF antraštėje nurodyta , reiškia laikas pradėtas fiksuoti nuo Nekorektiškos laiškų antraštės, pvz.: nurodyta neteisinga grupė; nenurodytas autorius; nurodyta neteisinga užduotis Savaitė prasideda nuo ketvirtadienio Nekorektiškai fiksuojamos veiklos – nurodomos nestandartinės veiklos (pvz., Filosofijos paskaita) – nurodyta kažkokia viena veikla, o komentaruose ji detalizuojama į kitas veiklas (pvz., Laikas: 200; Veikla: “Kodavimas”; Komentarai: “Projektavimas 20, Kodavimas 100, Kompiliavimas 30, Testavimas 50”) (vienoje eilutėje turi būti nurodoma tik viena veikla) Pateikiama “niekieno” forma – neužpildyta formos antraštė Nekorektiškai užfiksuotas/suskaičiuotas laikas LFF – negalimas laiko intervalas (Nuo > Iki): pvz., 14:10 – 13:30 – persidengiantys laiko intervalai: pvz., 14:10-15:30 ir 15:10-16:30 – nesuderinti duomenys (Iki - Nuo  Laikas + Trukdžiai) Nesutampa LFF ir SVS duomenys – SVS užfiksuotas veiklai per dieną skirtas laikas nesutampa su LFF užfiksuotų tai veiklai skirtų laikų suma

7 2-os užduoties atsiskaitymo problemos pernai metais (2)
Data kartojama kiekvienoje eilutėje – reikia nurodyti tik tada, kai ji keičiasi “Iki” nurodoma ir data – reikia nurodyti tik laiką, jei veikla iš esmės “pereina” į kitą dieną (>2 val.), ji fiksuojama atskiromis eilutėmis kiekvienai dienai Tam pačiam laiko intervalui fiksuojant kelias veiklas laikas kartojamas arba “Nuo” ir “Iki” paliekami tušti – “Nuo” ir “Iki” turi būti dedami –” – B(aigta) žymima po kiekvienos programos kūrimo veiklos – programos kūrimo atveju B(aigta) turi būti žymima tik tada, kai kūrimas iš tikrųjų baigtas Neužfiksuotas galutinis programos dydis – baigus programos kūrimą, būtina užfiksuoti jos dydis (kūrimo eigoje dydis gali būti fiksuojamas) Per daug dažnai pažymėta B(aigta) (pvz., LFF pildymas baigtas kiekvieną dieną) Nefiksuojami vienetai arba naudojami netinkami vienetai (pvz., eilutės kompiliavimui arba programos testavimui) Lieka neaišku, kokie vienetai naudojami Nefiksuojamas laikas, sugaištamas LFF pildymui dienos eigoje Nepakankamai tiksliai įvardinama kuriama programa (pvz., tik ADS – ADS1 jau būtų tinkamas įvardinimas) Nėra kažkurios darbo dienos duomenų ir nenurodyta priežastis SVS užpildyta 0 SVS įrašyta “Sirgau” Fiksuojami suminiai trukdžiai (pvz., Pertrauka 28) Prie laiko visur prirašyta “min.” Nekorektiškai nurodyta grupė antraštėje – reikia nurodyti tik numerį Labai mažai veiklos

8 Projekto pradžios pavyzdys
Situacija: konkurentai išleido naują produktą, kuriuo susidomėjo daug klientų. Vadovybės sprendimas: inicijuoti projektą ir mažiau kaip per 9 mėnesius sukurti naują dar geresnį produktą, nes kitu atveju kompanija praras labai daug klientų. Projekto komanda ką tik baigė nesėkmingą projektą, trukusį 2 metus, o naujas darbas tikrai nėra paprastesnis.

9 Projekto pradžios pavyzdys (2)
Tradiciškai planavimui skiriamos 4 dienos. Komanda supranta, kad nespės projekto padaryti per 9 mėnesius. Kieno įsipareigojimas 9 mėnesiai? Ką daryti? Tradicinis scenarijus: einama pas vadovybę, sakoma, kad nespės, bet kadangi reikia, pažadama padaryti viską, kas įmanoma, t.y. prisiimami įsipareigojimai. Kas lieka kaltas, kai nepavyksta? Gal neverta planuoti? Galima sutaupyti 4 dienas, nėra pakankamai informacijos planavimui. Kada bus pakankamai informacijos? Kada labiausiai reikia plano?

10 Projekto pradžios pavyzdys (3)
Rezultatas: komanda baigė projektą 6 savaitėmis anksčiau nei vadovybės patvirtinti 18 mėnesių (komandos nariai buvo įsisavinę PSP).

11 PSP tikslas PSP yra savęs tobulinimo procesas, padedantis kontroliuoti, valdyti ir gerinti savo darbą. Tai rinkinys formų, nurodymų ir procedūrų, skirtų programų kūrimui. Tinkamai naudojamas PSP suteikia duomenis, reikalingus prisiimti ir įvykdyti įsipareigojimus, be to, rutininius darbo elementus jis padaro labiau prognozuojamus ir efektyvius. Vienintelis PSP tikslas yra padėti gerinti programų sistemų inžinerijos įgūdžius. Pavyzdžiui, valdyti savo darbą, įvertinti savo galimybes, formuoti įgūdžius, daryti geresnius planus, stebėti savo produktyvumą ir matuoti kuriamų produktų kokybę. Ką bedarytum, PSP gali padėti atlikti darbą geriau. PSP pateikia būdus suprasti, kodėl daromos klaidos, kaip geriausia jas rasti, pataisyti ir jų išvengti.

12 3-ia užduotis: U3-PSF Projekto planavimas ir eigos sekimas
1 taškas iki kovo 30 d. (0,5 iki kovo 31; vėliau šios užduoties atsiskaitymai nebepriimami) Priminimas: galutinį egzaminą gali laikyti tik atsiskaitę ne mažiau kaip 3 praktines užduotis. Užduotis turi būti pradėta daryti prieš pradedant kurti programą ir baigta po programos sukūrimo pageidautina, kad atsiskaitant užduotį programa jau būtų atsiskaityta. Atsiskaitymui pateikti: (1) LFF, (2) DTS, (3) DFF, (4) PSF ir (5) sukurtos programos išeities kodą. viskas siunčiama vienu laišku; atsiskaitinėjant pakartotinai vėl siunčiami visi failai.

13 Papildoma informacija dėl 3-ios užduoties
Užduoties tikslai: - (pabandyti) suplanuoti, kiek laiko prireiks visos užduoties atlikimui ir konkrečioms veikloms; - užfiksuoti duomenis apie vienos programos kūrimą (sugaištą laiką ir defektus - kiek ir kuriose veiklose jie padaromi bei pašalinami). Rekomenduojama planuoti ir vykdyti visas numatytas programos kūrimo veiklas (Planavimas, Projektavimas, Kodavimas, Kompiliavimas, Testavimas, Atsiskaitymas, PSP veikla) Jei atsiskaitymo metu dėstytojas rado jūsų programos defektų, jie fiksuojami taip: - PSF paskutinėje eilutėje "Po kūrimo“, - DFF “Pašalintas fazėje” – “Aptarimas” Jei vykdomos papildomos veiklos, nenumatytos šioje užduotyje siūlomame procese (pvz., Peržiūra, Dokumentavimas, Skaitymas), jų duomenis (laiką ir defektus) priskirti pagrindinei veiklai (pvz., jei kodavimo metu teko paskaityti C dokumentaciją, o prieš kompiliuojant programa dar buvo peržiūrėta, tai visas sugaištas laikas priskiriamas Kodavimui) Nauja programos kūrimo fazė “Aptarimas” (postmortem), kurios tikslas peržiūrėti programos kūrimą ir jo metu surinktus duomenis: kaip jis vyko, kas buvo gerai ir kas blogai, ar visi duomenys užfiksuoti ir korektiški, kaip procesas turėtų būti gerinamas

14 PSP struktūra

15 Papildoma informacija dėl 3-ios užduoties: užduoties atlikimo eiga
Planavimas Projektavimas Kodavimas Kompiliavimas Testavimas „Aptarimas“ Paruošiamos visos formos (užpildomos antraštės) Suplanuojama, kiek laiko užims visas užduoties atlikimas ir kiekviena veikla Plano informacija surašoma į PSF (dalis “Planas”) Kuriama programa Kūrimo eigos duomenys fiksuojami LFF ir DFF Jei padaroma daug vieno tipo defektų, gali būti patikslintas DTS Programa atsiskaitoma (pageidautina) Patikrinamos LFF ir DFF Peržiūrima, kaip vyko programos kūrimas Duomenys iš LFF ir DFF perkeliami į PSF (dalys “Faktas” ir “Iki šiol”) Pavaizduotas atvejis, kai programa kuriama vienu ciklu. Kuriant keliais ciklais, projektavimas, kodavimas, kompiliavimas ir testavimas kartojami.

16 Papildoma informacija dėl 3-ios užduoties: atliekamos veiklos ir jų priskyrimas fazėms
Planavimas Projektavimas Kodavimas Kompiliavimas Testavimas „Aptarimas“ Atsiskaitymas PSP veikla (iš visų fazių) Planavimas (laiko) PSP veikla (formų pildymas) PSP veikla (formų pildymas) Eilutėse pateikti 2 galimi veiklų priskyrimo fazėms variantai. Kiekvienas pasirenka jo nuomone tinkamesnį variantai. Koks variantas buvo pasirinktas turi būti aiškiai matoma iš LFF.

17 PSP siūlomas defektų tipų standartas
Nr Tipo pavadinimas Aprašas 10 Dokumentavimas komentarai, pranešimai Documentation comments, messages 20 Sintaksė sintaksinės klaidos Syntax spelling, punctuation, typos, instruction formats 30 Versijavimas pakeitimų valdymas, versijų kontrolė Build, package change management, library, version control 40 Vardai aprašai, vienodi vardai, galiojimo sritis Assignment declaration, duplicate names, scope, limits 50 Interfeisas funkcijų/procedūrų iškvietimai, įvedimas-išvedimas, vartotojo formatai Interface procedure calls and references, I/O, user formats 60 Kontrolė klaidų pranešimai, nepakankama kontrolė Checking error messages, inadequate checks 70 Duomenys duomenų struktūros ir turinys Data structure, contents 80 Funkcionalumas logika, rodyklės, ciklai, rekursija, skaičiavimai, funkcionalumo defektai Function logic, pointers, loops, recursion, computation, function defects 90 Sistema konfigūracija, sinchronizavimas, atminties valdymas System configuration, timing, memory 100 Aplinka aplinkos (projektavimo, kompiliavimo, testavimo ar kt.) problemos Environment design, compile, test, or other support system problems

18 Papildoma informacija dėl 3-ios užduoties: keli patarimai savikontrolei
Fiksuojant programos dydį turi būti neįskaitomos tuščios ir komentarų eilutės Pateiktame LFF turi būti aišku, kurios veiklos yra susijusios su šia užduotimi, arba nesusijusių veiklų turi nebūti Detalūs projekto vykdymo duomenys, užfiksuoti LFF ir DFF, ir suminiai duomenys PSF turi sutapti (pavyzdžiui, suma DFF laikų, sugaištų defektų šalinimui kažkurioje fazėje, negali būti didesnė už tos fazės laiką PSF) PSF “Faktas” ir “Iki šiol” turi sutapti Padarytų ir pašalintų defektų skaičiai turi sutapti (PSF: visi defektai padaromi kūrimo metu, o pašalinami kūrimo metu arba po kūrimo) LFF turi būti užfiksuota, kad darbas baigtas ir sukurtos programos dydis Galima, bet pakankamai reta situacija – defekto padarymo ir pašalinimo fazės sutampa (vertėtų pasitikrinti, ar tai ne klaida)

19 Klausimai ?


Download ppt "Asmeninis programų kūrimo procesas (PSP)"

Similar presentations


Ads by Google