Zkouška Nečaský 11. 6. 2021
Vyjmenujte typické aktivity vykonávané v rámci softwarového procesu a každou charakterizujte 1-2 větami. (2 body) ní, aby se různé modifikace specifikace daly zakomponovat do softwaru.
Vysvětlete rozdíl mezi uživatelským požadavkem (user requirement) a systémovým požadavkem (system requirement) a uveďte příklad každého z nich. (2 body)
Proč je vhodné při analýze požadavků modelovat doménu jako několik oddělených subdomén? (2 body)
Co je to regresní testování (regression testing)? Kdy a s jakým cílem jej provádíme? Jak ho nejlépe zajistíme? (2 body)
Uveďte 1 výhodu vývoje software v agilním procesu (agile process) a 1 výhodu vývoje software v plánem řízeném procesu (plan-driven process) (2 body)
Vyjmenujte alespoň 2 metody pro odhad ceny softwarového díla, které znáte. Krátce je charakterizujte. (2 body)
Jaké faktory ovlivňují cenu údržby software a proč? Uveďte alespoň 2 faktory. (2 body) Jednak délka a komplexnost kodu, protože čím delší kod, tak tím hůř se software udržuje. A taky důležitý faktor je staff skills, protože nemusejí dodržovat doporučené postupy nebo zacházení se softwarem Pro následující otázky uvažujte softwarový systém v kině. Jste na meetingu s managementem kina, kde diskutujete jejich uživatelské požadavky. Padl následující požadavek: “Zákazník se může do 20 minut po začátku promítání filmu rozhodnout, že se na něj nechce dívat a sál opustit. V tom případě může na pokladně předložit lístek a bude mu vráceno 80 % z ceny lístku. Pracovník na pokladně naskenuje čárový kód vstupenky a provede její zrušení. Analyzovali jsme si, že tato možnost zvýší návštěvnost kina od 5 % a potřebujeme ji mít v našem systému implementovánu do 3 týdnů.”
Je uvedený požadavek funkční požadavek nebo kvalitativní požadavek? Je požadavek dostatečně přesný? Pokud ano, popište jeho scénář. Pokud ne, uveďte 2 otázky, které byste na schůzce položil/a pro zpřesnění. (3 body)
I s touto malou znalostí se pokuste načrtnout konceptuální model té části domény (problem domain), které se požadavek dotýká. Model načrtněte jako UML diagram tříd. (6 body)
Dále se pokuste s touto omezenou znalostí identifikovat 3 případy užití (angl. use cases) v doméně rezervací lístků do kina. Nakreslete je jako UML diagram případů užití (angl. use case diagrams) a pro 1 vybraný případ užití vyjádřete jeho scénář jako UML activity diagram. (6 body)
Uveďte 1 riziko ohrožující úspěšnou realizaci uvedeného požadavku a analyzujte jej. (2 body)
Vyberte si jeden z vámi navržených případů užití a vysvětlete na něm, co znamená akceptační testování. (2 body)