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.
Mutácia znovupoužitia<br />
Znovupoužitie – áno či nie Ak áno, tak ako 47<br />
Jedným často využívaným odvodeným spôsobom znovupoužitia je<br />
kopírovanie využiteľných častí zdrojového kódu na viaceré miesta<br />
v programe. Ušetrí sa tým čas na vývoj a testovanie, keďže miernymi<br />
úpravami vieme prispôsobiť tento kód novým požiadavkám. Často sa<br />
však nevyhneme obrovským problémom s údržbou takto vyvinutého<br />
produktu. Chyby z jednej kópie sa rozšíria na viaceré miesta a ich<br />
odstraňovanie je potom veľmi namáhavé.<br />
Sociálne a etické problémy<br />
Pri aplikácii znovupoužitia veľmi často dochádza k problémom<br />
vyplývajúcich z nedostatočnej dôvery využívateľov softvérových súčiastok<br />
k práci vývojárov týchto súčiastok, pretože dostávajú do rúk čierne<br />
skrinky, na ktoré sa musia spoľahnúť. Programátori sa sťažujú i na stratu<br />
nezávislosti a možnosti vlastnej realizácie, pretože do ich predstáv<br />
nemusia vždy zapadnúť ohraničenia, ktoré stanovujú už hotové súčiastky.<br />
Znovupoužitie bez vedomia autora súčiastky<br />
V tejto časti mi nedá, aby som nespomenul veľmi zaujímavý spôsob<br />
znovupoužitia aplikovaný na našej škole, i keď je málo pravdepodobné,<br />
že by niekoho trápili sociálne a etické problémy s ním spojené. Ako sa už<br />
stalo dobrým zvykom na Katedre informatiky a výpočtovej techniky treba<br />
na získanie zápočtu odovzdať jeden či viac programov. Zopár pedagógov<br />
však nepovažuje za potrebné meniť zadanie týchto programov niekoľko<br />
rokov. A tak šikovnejší študenti (ktorí si to vedia dobre zariadiť) len<br />
zoženú hotový program (prehľadajú databázu znovupoužiteľných<br />
súčiastok), ktorý presne vyhovuje danej špecifikácii. Ušetria si tým<br />
náklady a čas na vývoj a testovanie programu, ale prídu o skúsenosti<br />
potrebné na jeho vyhotovenie...<br />
Prínosy znovupoužitia<br />
Okrem výhod uvedených v úvode tejto eseje – 47%-né zníženie<br />
nákladovosti na vývoj softvéru, skrátenie času potrebného na vývoj<br />
softvéru na štvrtinu, zvýšenie kvality výsledného produktu atď., by som<br />
rád uviedol konkrétny príklad z projektov ministerstva obrany USA<br />
[Boehm99], ktorý výhody aplikácie znovupoužitia znázorňuje na obr. 2.<br />
Vo svojej analýze sa neopieral o počet riadkov naprogramovaných<br />
v určitom programovacom jazyku, pretože určitý počet riadkov<br />
naprogramovaných v jazyku štvrtej generácie prináša so sebou oveľa<br />
väčšiu produktivitu ako ten istý počet riadkov v asembleri. Kvôli<br />
nezávislosti od programovacieho jazyka použil vo svojich štatistikách<br />
počet strojových inštrukcií pripadajúcich na daný kód (angl. LOCS).<br />
Sledoval počet strojových inštrukcií a náklady na jednu strojovú<br />
inštrukciu v rozmedzí rokov 1950 – 2000. Aj keď počet strojových<br />
inštrukcií vygenerovaných počas tohto obdobia rástol, náklady na jednu<br />
inštrukciu sa znižovali práve vďaka znovupoužitiu.