Softvérové inžinierstvo I

Zaradený v študijných programoch

informačný manažment

Výsledky vzdelávania

Znalosti (vedomosti)
A. Rozumieť príčinám softvérovej krízy a prístupom k jej riešeniu vrátane poznania životného cyklu softvéru.
C. Poznať viaceré metódy analýzy a návrhu softvérových systémov a rozumieť kritériám výberu primeranej metódy pre konkrétny problém.
F. Rozumieť podstate modelov softvérových procesov a poznať silné a slabé stránky jednotlivých metodík vývoja softvéru.
Zručnosti
B. Analyzovať potreby používateľov a zaznamenávať ich pomocou techník zodpovedajúcich zvolenej metóde analýzy a návrhu.
D. Definovať funkčné a nefunkčné požiadavky na softvérový systém.
E. Definovať konceptuálny dátový a funkčný model problémovej domény.
I. Vypracovať technickú dokumentáciu (správu) popisujúcu navrhnuté softvérové riešenie.
Kompetentnosti
G. Chápať organizáciu a spôsob práce vývojového tímu a efektívne pôsobiť ako jeho súčasť.
H. Prezentovať a obhajovať navrhované riešenia na profesionálnej úrovni s využitím odborných argumentov.
I. Niesť zodpovednosť za kvalitu, zrozumiteľnosť a úplnosť technickej dokumentácie a prezentovaných riešení.

Stručná osnova predmetu

1. Vymedzenie softvérového inžinierstva. Softvérová kríza. Softvér ako výrobok. Vlastnosti softvérových produktov. Životný cyklus softvéru. Rola chýb v softvérovom procese
2. Prehľad metód softvérového inžinierstva (štruktúrovaný prístup, dátovo-orientovaný prístup, objektovo-orientovaný prístup),
3. Špecifikácia požiadaviek (Definícia požiadaviek ), Analýza a špecifikácia požiadaviek (funkčné a nefunkčné požiadavky, validácia požiadaviek, formálne špecifikácie), Špecifikačný dokument, Metóda tvorby zoznamu požiadaviek, Metódy špecifikácie požiadaviek.
4. Úvod do problematiky analýzy a návrhu softvérových systémov. Funkcionálny model, model údajov a model správania sa. Konceptuálne modely domény.
5. Konceptuálne modelovanie údajov, entito-relačné diagramy, logické dátové model
6. Štruktúrovaná analýza
7. Modelovanie funkčných požiadaviek prostredníctvom prípadov použitia
8. Modelovanie automatov – stavové diagramy
9. Modely softvérových procesov, modely životného cyklu softvéru
10. Agilné metodiky vývoja
11. Fáza návrhu a úvod do architektúry softvérového systému
12. Vizuálne modelovanie
13. Úvod do UML

Odporúčaná literatúra

1. Russev S. a kol.:Softvérové inžinierstvo, Ekonóm Bratislava 2006
2. Somerville, I.: Software Engineering, Addison-Wesley, 9. edition, 2011
3. Bieliková M.: Ako úspešne vytvoriť projekt, Slovenská technická univerzita v Bratislave, STU, Bratislava 2000, ISBN 80-227-1329-5
4. Richta, K., Sochor, J.: Softwarové inženýrství I. Praha, ČVUT 1996.

Sylabus predmetu

1. Predmet uvádza základné vymedzenie softvérového inžinierstva a historické pozadie vzniku softvérovej krízy. Softvér je prezentovaný ako špecifický výrobok so svojimi vlastnosťami, životným cyklom a významom chýb v softvérovom procese. 2. Pozornosť sa venuje prehľadu hlavných metód softvérového inžinierstva. Rozoberajú sa štruktúrovaný, dátovo-orientovaný a objektovo-orientovaný prístup a ich vplyv na analýzu, návrh a implementáciu softvéru. 3. Obsahom je špecifikácia požiadaviek ako základná fáza vývoja softvéru. Rozlišujú sa funkčné a nefunkčné požiadavky, ich analýza, validácia a dokumentovanie vrátane metód tvorby zoznamu požiadaviek. 4. Preberá sa úvod do analýzy a návrhu softvérových systémov. Vysvetľuje sa funkcionálny model, model údajov a model správania sa systému spolu s konceptuálnymi modelmi domény. 5. Pozornosť sa sústreďuje na konceptuálne modelovanie údajov. Vysvetľujú sa entito-relačné diagramy a ich transformácia do logických dátových modelov. 6. Rozoberá sa štruktúrovaná analýza ako tradičný prístup k analýze softvérových systémov. Dôraz sa kladie na rozklad systému na funkčné časti a ich vzájomné vzťahy. 7. Predmet sa venuje modelovaniu funkčných požiadaviek prostredníctvom prípadov použitia. Vysvetľuje sa význam aktérov, scenárov a väzieb medzi prípadmi použitia. 8. Preberá sa modelovanie automatov pomocou stavových diagramov. Zdôrazňuje sa zachytenie správania systému v závislosti od stavov a udalostí. 9. Obsahom sú modely softvérových procesov a modely životného cyklu softvéru. Porovnávajú sa jednotlivé prístupy z hľadiska riadenia vývoja a kontroly kvality. 10. Pozornosť sa venuje agilným metodikám vývoja softvéru. Zdôrazňuje sa iteratívny charakter vývoja, spolupráca so zákazníkom a schopnosť reagovať na zmeny. 11. Preberá sa fáza návrhu softvérového systému a úvod do jeho architektúry. Vysvetľuje sa význam architektonických rozhodnutí pre kvalitu a udržateľnosť systému. 12. Predmet sa venuje vizuálnemu modelovaniu ako nástroju porozumenia a komunikácie pri vývoji softvéru. Zdôrazňuje sa jeho význam pri analýze, návrhu a dokumentovaní systémov. 13. Záverečná časť poskytuje úvod do jazyka UML. Vysvetľuje sa jeho význam ako štandardu pre vizuálne modelovanie a prehľad základných typov diagramov.

Podmienky na absolvovanie predmetu

Skúška 60% hodnotenia. Skúška pozostáva z dvoch častí: testu a konkrétnej problémovej úlohy na riešenie. Testom sa overuje dosiahnutá úroveň výsledkov vzdelávania A., C., F., G., riešením problémovej úlohy sa overuje dosiahnutá úroveň výsledkov vzdelávania B., C., D., E.
Cvičenia 40% Náplňou cvičení je vypracovanie a obhájenie projektu, na ktorom študenti pracujú v skupinách, ktoré majú definovaného svojho tím lídra. Tím lídra si volia študenti spomedzi seba. Prácu v skupinách si študenti organizujú autonómne a riadi ju teamlíder. Hodnotenie výsledkov práce skupiny (predložený projekt) je hodnotený ako celok za celú skupinu, ohodnotenie príspevku individuálnych členov skupiny na hodnotení skupiny je výsledkom internej dohody skupiny. Súčasťou hodnotenia individuálneho študenta je tiež jeho aktivita na oponovaní a hodnotení projektov iných skupín. Výsledky práce (projekt) sú skupinou predložené na hodnotenie počas semestra tri krát. Hodnotením projektov a hodnotením oponovania výsledkov práce iných skupín sa hodnotia nasledovné výsledky vzdelávania: B., C., D., E., G., H., I.

Pracovné zaťaženie študenta

Pracovné zaťaženie študenta (v hodinách):
5 kreditov x 26 hodín = 130 hodín
Rozdelenie študijného zaťaženia:
Účasť na prednáškach a seminároch: 52 hodín
Príprava na semináre: 13 hodín
Písomné úlohy: 45 hodín
Príprava na záverečnú skúšku: 20 hodín

Jazyk, ktorého znalosť je potrebná na absolvovanie predmetu

slovenský

Dátum schválenia: 04.03.2025

Dátum poslednej zmeny: 04.01.2026

Dátum schválenia: 04.03.2025

Dátum poslednej zmeny: 04.01.2026