Przykładowe pytania na kolokwium zaliczeniowe
z wykładu:
- Co
to jest inżynieria oprogramowania ?
- Wymień
i scharakteryzuj podstawowe fazy cyklu życiowego oprogramowania.
- Jakie
są dwa podstawowe kierunki rozwoju inżynierii oprogramowania?
- Co
to jest kryzys oprogramowania, skąd się bierze, jakie są jego przyczyny i
objawy?
- Co
rozumiesz poprzez „jakość oprogramowania”?
- Omów
ogólnie problematykę różnych modeli cyklu życia oprogramowania.
- Scharakteryzuj
i porównaj: model kaskadowy, prototypowanie oraz montaż z gotowych
komponentów. Oceń wady i zalety obu rozwiązań.
- Scharakteryzuj
i porównaj: model kaskadowy oraz modele ewolucyjne. Oceń wady i zalety obu
rozwiązań.
- Porównaj tradycyjne (np. z modelem kaskadowym) oraz lekkie (agile) metodyki tworzenia oprogramowania.
- Jakie
kryteria, czynności i decyzje występują w fazie strategicznej ?
- Co
wpływa na koszty konstruowanego oprogramowania? Jakie znasz metody
szacowania kosztu oprogramowania?
- Jakie
znasz metody rozpoznawania i specyfikacji wymagań?
- Czego
dotyczą wymagania funkcjonalne i niefunkcjonalne? Jak się je dokumentuje?
- Co
jest przedmiotem i wynikiem fazy analizy (modelowania) ?
- Jakie
znasz rodzaje notacji oraz strategie budowy logicznego modelu systemu?
- Omów znaczenie notacji UML w procesie tworzenia oprogramowania.
Narysuj dwa przykładowe diagramy modelujące strukturę i zachowanie jakiegoś systemu.
- Omów zagadnienie programowania uogólnionego z wykorzystaniem szablonów.
Odpowiedź zilustruj definicją szablonu dowolnej funkcji lub klasy zapisaną w języku C++
- Omów znaczenie koncepcji wzorców projektowych w procesie tworzenia oprogramowania.
Odpowiedź zilustruj opisem dwóch wybranych wzorców projektowych.
- Jakie
znasz niebezpieczne techniki programowania? Jaki jest ich wpływ na jakość
tworzonego oprogramowania?
- Na
czym polega strategia unikania błędów? Czym się różni od strategii tolerancji błędów?
- Czym
się różni weryfikacja od walidacji? Jakie są podstawowe techniki
przeprowadzania obu tych procesów?
- Czym się różni testowanie statyczne od testowania dynamicznego? Podaj przykłady obu rodzajów testów.
- Omów
zagadnienie pomiarów poprawności oprogramowania.
- Co to są testy jednostkowe. Omów zalety i wady automatyzacji testów.
- Jakie
rodzaje testów i w jakiej kolejności powinieneś zastosować, gdybyś miał
wykonać zadanie przetestowania dużego systemu informatycznego?