Įvadas
Laboratorinių darbų metu studentai:
- Susiskirstę komandomis po 3-4 žmones atlieka projektinius darbus, pristato bei aptaria jų atlikimo eigą ir galutinius darbo rezultatus.
- Individualiai atlieka 4 mini-užduotis ir aptaria jų rezultatus.
Projektinių darbų atsiskaitymo terminai:
- 1 darbas - iki kovo 15;
- 2 darbas - iki balandžio
1926; - 3 darbas - iki gegužės 31.
Įvertinimas už projektinį darbą susideda iš 90% už grupės atliktą darbą (paruoštą dokumentą ar sistemos prototipą) ir 10% už darbo pristatymą. Už darbų rezultatų pristatymą kiekvienas studentas vertinamas individualiai. Kiekvieną pavėluotą savaitę projektinio darbo įvertinimas mažinamas 1 balu. Projektinis darbas vertinamas atsižvelgiant ne tik į galutinį rezultatą, bet ir į darbą semestro metu (darbų eigos pristatymus, iškilusių problemų ir priimtų sprenimų aptarimus laboratorinių darbų metu).
Laboratorinių darbų metu imituojamas projektas, kuriame vystoma egzistuojanti programų sistema (o ne kuriama nauja). Temas studentai turi pasirinkti susikeisdami PSI-I vystytomis temomis.
Darbai turi būti apipavidalinti pagal metodinius reikalavimus kursiniams darbams ir atliekami taikant ICONIX procesą.
1. Pirmasis laboratorinis darbas - reikalavimų apibrėžimas
Pirmame laboratoriniame darbe turi būti apibrėžti reikalavimai sistemai ir atliktos ICONIX proceso veiklos iki reikalavimų peržiūros imtinai, t.y. darbo metu turi būti:
- Apibrėžti reikalavimai sistemai (tai nėra ICONIX proceso žingsnis);
- Apibrėžtas struktūrinis dalykinės srities modelis (angl. Domain modelling);
- Apibrėžtos preliminarios sistemos atliekamos užduotys (angl. Use case modelling);
- Atlikta reikalavimų peržiūra (angl. Requirements review).
- Parengtas techninės architektūros juodraštis.
Rekomenduojama dokumento struktūra:
- Reikalavimai
Šiame skyriuje pateikiami reikalavimai sistemai, apibrėžiantys norimą sistemos pokytį. Reikalavimai turi apimti tiek funkcinius, tiek nefunkcinius PS aspektus, jie turi būti identifikuojami ir suklasifikuoti. ICONIX procese daroma prielaida, kad pradiniai reikalavimai sistemai yra netikslūs, nevienareikšmiški, galbūt prieštaringi, nepilni ir t.t. Tad, darbo pradžioje šiame skyriuje turi būti pateikti pirminiai reikalavimai, kurie darbo eigoje tikslinami. Atsiskaitant pirmą laboratorinį darbą šie reikalavimai turi būti suderinami su struktūriniu dalykinės srities modeliu ir apibrėžtomis užduotimis.
- Struktūrinis dalykinės srities modelis
Šiame skyriuje pateikiamas struktūrinis nagrinėjamos dalykinės srities modelis. Modelis pateikiamas UML klasių diagramomis kartu su žodynu - sąrašu esybių su jų aprašymais. Jei klasės grupuojamos į paketus, turi būti pateikta ir atitinkama paketų diagrama. Darbo pradžioje struktūrinis dalykinės srities modelis apibrėžiamas, nurodant tik klases ir jų ryšius. Apibrėžiant užduotis šis modelis patikslinamas bei papildomas atributais. Skyriaus pabaigoje pateikiama reikalavimų - struktūrinio dalykinės srities modelio atsekamumo matrica.
- Užduotys
Šiame skyriuje pateikiamos sistemos atliekamos užduotys. Kiekviena jų turi turėti pavadinimą, pagrindinį ir alternatyvius scenarijus. Jei reikia, su užduotimis turi būti pateikti ir naudotojo sąsajos eskizai ar kitos priemonės, taikytos užduočių apibrėžimo ir tikslinimo procese. Apibendrintam užduočių pateikimui, turi būti taikomos UML užduočių (angl. use case) ir paketų diagramos. Pabrėžtina, kad šiame skyriuje užduočių tekstas yra svarbesnis nei diagramų turinys. Be užduočių, skyriaus pabaigoje turi būti pateikta ir reikalavimų - užduočių atsekamumo matrica.
Atsiskaitant laboratorinį darbą reikia pateikti ir klaidų, rastų ir pataisytų atliekant reikalavimų peržiūrą, sąrašą.
2. Antrasis laboratorinis darbas - reikalavimų analizė ir techninė architektūra
Antrame laboratoriniame darbe atliekamos sekančios ICONIX proceso veiklos:
- Atlikta robastiškumo analizė (angl. Robustness analysis);
- Atlikta preliminari projekto peržiūra (angl. Preliminary design review);
- Apibrėžiama techninė architektūra (angl. Technical architecture).
Antrojo laboratorinio darbo metu nėra rengiamas naujas dokumentas, o tikslinamas pirmojo darbo metu parengtas dokumentas, t.y. ruošiama antra jo versija. Rekomenduojama dokumento struktūra atsiskaitant antrąjį laboratorinį darbą:
- Reikalavimai
Šiame skyriuje pateikiami patikslinti reikalavimai sistemai. Funkciniai reikalavimai tikslinami, atradus klaidų, atliekant robastiškumo analizę ar preliminarią projekto peržiūrą.
- Statinė programų sistemos struktūra
Šiame skyriuje pateikiamas patikslintas struktūrinis dalykinės srities modelis, papildytas trūkstamomis klasėmis ir atributais. Trūkstamos dalykinės srities esybės čia gali atsirasti dėl klaidų anksčiau vykdytuose proceso žingsniuose, labiau technologinės klasės atsiras atliekant robastiškumo analizę. Atributai pilna apimtimi apibrėžiami atliekant robastiškumo analizę. Dalykinės srities esybių pakeitimai turi atsispindėti ir atsekamumo matricoje.
- Užduotys
Šiame skyriuje pateikiamos patikslintos užduotys. Papildomai pateikiamos ir robastiškumo diagramos, sukurtos atliekant robastiškumo analizę. Užduočių pakeitimai turi atsispindėti ir reikalavimų - užduočių atsekamumo matricoje.
- Techninė sistemos architektūra
Šiame skyriuje pateikiami sistemą sudarantys moduliai, jų ryšiai, išdėstymas vykdymo aplinkose. Apibrėžiant sistemos architektūrą galima naudoti komponentų, dislokavimo ir kitas UML diagramas.
Atsiskaitant laboratorinį darbą reikia pateikti ir klaidų, rastų ir pataisytų atliekant preliminarią projekto peržiūrą, sąrašai.
3. Trečiasis laboratorinis darbas - projektavimas ir kūrimas
Trečiame laboratoriniame darbe atliekamos sekančios ICONIX proceso veiklos:
- Braižomos sekų diagramos kiekvienai užduočiai (angl. Sequence diagrams);
- Atliekama kritinė projekto peržiūra (angl. Critical design review);
- Įgyvendinamas sistemos prototipas (angl. Implementation);
- Atliekama kodo peržiūra ir modelio atnaujinimas (angl. Code review and model update).
Trečiojo laboratorinio darbo metu nėra rengiamas naujas dokumentas, o tikslinamas pirmojo ir antrojo darbų metu parengtas dokumentas, t.y. ruošiama trečia jo versija. Rekomenduojama dokumento struktūra atsiskaitant trečiajį laboratorinį darbą:
- Reikalavimai
Šiame skyriuje pateikiami patikslinti reikalavimai sistemai. Funkciniai reikalavimai tikslinami, atradus klaidų, vykdant elgsenos priskyrimą dalykinės srities klasėms, atliekant kritinę projekto peržiūrą ar atlikus sukurtų programų išeities tekstų peržiūrą.
- Statinė programų sistemos struktūra
Šiame skyriuje pateikiamas patikslintas struktūrinis dalykinės srities modelis, papildytas trūkstamomis klasėmis, atributais ir operacijomis. Trūkstamos klasės ir atributai čia gali atsirasti dėl klaidų anksčiau vykdytuose proceso žingsniuose. Operacijos klasėms priskiriamos, braižant sekų diagramas visoms užduotims. Šiame dokumente pateiktos klasės turi atitikti klases programiniame kode. Dalykinės srities esybių pakeitimai turi atsispindėti ir atsekamumo matricoje.
- Užduotys
Šiame skyriuje pateikiamos patikslintos užduotys. Papildomai pateikiamos ir sekų diagramos, sukurtos atliekant elgsenos priskyrimą klasėms. Atlikus antrą laboratorinį darbą, robastiškumo diagramos tampa nebereikalingos, todėl šiame skyriuje neturi būti pateiktos. Užduočių pakeitimai turi atsispindėti ir reikalavimų - užduočių atsekamumo matricoje.
- Techninė sistemos architektūra
Šiame skyriuje pateikiama patikslinta sistemos architektūra. Šie patikslinimai gali atsirasti vykdant kodo peržiūrą ir modelio atnaujinimą.
- Testavimo planas ir scenarijai
Šiame skyriuje pateikiami užduočių pagrindu sukurti testavimo planai.
Atsiskaitant laboratorinį darbą be šio dokumento reikia pateikti:
- Klaidų rastų ir pataisytų atliekant kritinę projekto peržiūrą, sąrašas.
- Pakeitimų, atliktų vykdant kodo peržiūrą ir modelio atnaujinimą, sąrašas.
- Sukurti ar modifikuoti programų išeities tekstai.
Naudingos nuorodos
- ICONIX process
- ICONIX: Index of Articles and Publications
- Delivering the Agile/ICONIX Process via the Eclipse Process Framework (EPF)
- Agile Development and ICONIX
- Introduction to the ICONIX Process of Software Modeling
- Use Case Driven Object Modeling with UML
- Dalies paskaitų medžiaga
Komandos ir temos
Projektai sukeičiami sekančia tvarka (rodyklės kryptis nusako, kaip pateikiami poreikiai):
- Finansai -> Subtitrai
- Subtitrai -> Restoranai
- Restoranai -> Projektai
- Projektai -> Statybos
- Statybos -> Finansai
Planas:
- 4 (V24) - Finansai, Subtitrai, Restoranai;
- 5 (K02) - Projektai, Statybos, MINI[1];
- 6 (K09) - Atsiskaitymas.