21.01.2015 Views

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 ...

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!