Team Se@Msi: Meranie v softvérovom inžinierstve. - FIIT STU ...
Team Se@Msi: Meranie v softvérovom inžinierstve. - FIIT STU ...
Team Se@Msi: Meranie v softvérovom inžinierstve. - FIIT STU ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Kolízie softvérových modelov – ako sa im vyhnúť 35<br />
menšie projekty v rámci predmetov vyučovaných na fakulte, čo znamená<br />
že prebiehaju v dosť neštandardných podmienkach, je zaujímavé<br />
aplikovať opísané postupy aj na takéto projekty. Keďže niektoré z nich<br />
práve bežia, je možné výsledky takej analýzy použiť na vyjasnenie zdrojov<br />
problémov a ich zmiernenie.<br />
Prvý z projektov, ktorý chcem spomenúť je záverečný projekt, ktorý<br />
som riešil v poslednom roku bakalárskeho štúdia na Fakulte.<br />
Zainteresované strany v projekte boli používateľ a vývojár, čím situácia<br />
projektu bola podstatne zjednodušená. Výsledok projektu mal byť<br />
interaktívna aplikácia so silnou orientáciou na užívateľské rozhranie. Už<br />
pri samom začiatku projektu bolo jasné, že ide o vysoko rizikový projekt,<br />
kvôli nedostatočnému poznaniu problémovej oblasti, slabej skúsenosti s<br />
vývojovými prostriedkami a jedným z použitých programovacích jazykov,<br />
a slabej zdokumentovanosti a rozširovateľnosti produktu, na ktorý sa mal<br />
projekt nadväzovať. Ako model procesu bol zvolený vodopádový model.<br />
Viedlo to ku kolízii modelov typu proces-úspech, medzi vodopádovým<br />
modelom a modelom úspechu IKIWISI. Model IKIWISI bol zvolený, aj<br />
keď v tom čase nevedome, z potreby vytvoriť používateľské rozhranie,<br />
ktoré by zodpovedalo požiadavkám používateľa. Táto kolízia sa riešila<br />
osvojením si neformálneho modelu procesu, ktorý sa podobal<br />
špirálovému modelu. Druhý typ kolízie ,ktorý vznikol bol produktprodukt,<br />
ktorý vznikol medzi modelom úspechu Premenlivé požiadavky<br />
zo strany používateľa, a modelom úspechu Stabilné požiadavky zo strany<br />
vývojára. Ďalší typ kolízie viditeľný v pavučine modelových kolízií bol<br />
typu produkt-vlastnosť, kde prišlo do kolízii modelov Množstvo funkcií<br />
na strane užívateľa a Uľahčenie dodržania rozpočtu a rozvrhu na strane<br />
vývojára. Tieto kolízie neboli vyriešené a spôsobili mnoho ťažkostí počas<br />
celej doby trvania projektu. Záverečný projekt skončil pomerne úspešne,<br />
aj pri vysokých rizikách a problémoch, ktoré sa vyskytli.<br />
Druhý z projektov je Tímový projekt, ktorý sa v čase písania tejto<br />
eseje blíži k finálnej fáze. Cieľom projektu je vytvoriť systém pre<br />
počítačovú podporu hodnotenia programov pre predmet Programovanie<br />
jazyku C a rieši ho tím zložený z piatych osôb počas dvoch semestrov. V<br />
jeho prípade by som chcel zdôrazniť iba jednu kolíziu modelov, a spôsob<br />
ako sa s ňou vyrovnalo. Táto kolízia modelov sa zjavila medzi modelmi<br />
typu úspech a produkt. Model úspechu bol zadaný ako podmienka výhry,<br />
znejúca že systém musí byť vyskúšaný v prevádzke do konca druhého<br />
semestra. Model produktu znel, že systém je určený pre podporu<br />
hodnotenia programov pre predmet Programovanie v jazyku C. Pre<br />
druhý model bol nevedome vytvorený nesprávny predpoklad, že je<br />
systém určený pre hodnotenie programov napísaných v jazyku C. Ako sa<br />
neskoršie zistilo, pri písaní programov pre predmet Programovanie v C je<br />
povolené používať aj črty jazyka C++. Možné riešenia boli zakázať<br />
používanie čŕt jazyka C++ v programoch pre tento predmet, alebo<br />
prerobiť systém tak, aby podporoval programy vytvorené aj v jazyku C++.<br />
Obe tieto riešenia boli nevyhovujúce, lebo ich nebolo možné uskutočniť<br />
termíne stanovenom v podmienkach výhry. K riešeniu sa prišlo