Egzamin pisemny składający się z dwóch części. Część pierwsza zawiera 6 pytań otwartych dotyczących ogólnej znajomości procesu projektowania i stosowanych metod, częśc druga składa się z 10 pytań zamkniętych (jednokrotnego wyboru) dotyczących szczegółowych zagadnień modelowania logicznego, fizycznego, implementacji i testowania. Pytania są punktowane od 0 do 1 pkt, przy czym suma punktów za pytania zamknięte jest mnożona przez wagę 75%. Końcowa ocena za przedmiot uwzględnia 70% oceny z egzaminu oraz 30% oceny z zaliczenia (wymagane jest pozytywne zdanie egzaminu).
Treści merytoryczne przedmiotu:
Wstęp (3 godziny)
- Zastosowania informatyki: modele obliczeniowe, modele semantyczne, modele morfologiczne, co to jest dobry program, projekt, zarządzanie projektem
Tworzenie systemów informatycznych (4 godziny)
- Fazy projektów i modele konstrukcji systemów oprogramowania: Szczegółowe omówienie faz projektowania. Modele projektowania: kaskadowy, przyrostowe, model V, modele iteracyj-ne, pragmatyczny, prototypów prowizorycznych, model ewolucyjnej konstrukcji prototypów, prototypowanie wynalazcze, modele błyskawicznego tworzenia aplikacji (RAD, JAD), model spiralny Boehma, model RUP, model rozwoju oprogramowania wielokrotnego użycia,.
Analiza wymagań i modelowanie systemu informatycznego (model logiczny) (11 godzin)
- Przygotowanie specyfikacji: cel, zawartość, atrybuty, pisanie specyfikacji
- Zadania projektowe i ich rezultaty w fazie modelowania strukturalnego: model środowiska, model behawioralny: model funkcjonalny, model danych, model zmian stanów systemu
- Podstawowe fazy modelowania strukturalnego: ogólna definicja zadań, lista bodźców zewnętrznych, diagram kontekstowy, diagramy przepływu danych,
- Modelowanie obiektowe - wstęp do obiektów i klas
- Zadania projektowe i ich rezultaty w fazie modelowania obiektowego: charakterystyki obiektów: stan wewnętrzny, sposób zachowania, unikalna tożsamość, podstawowe własności projektowania i programowania obiektowego: enkapsulacja, relacja dziedziczenia, polimorfizm, paradygmat programowania z użyciem abstrakcyjnych struktur danych a paradygmat programowania obiektowego, fazy analizy: konstrukcja modelu wymagań użytkownika, identyfikacja klas i obiektów, identyfikacja atrybutów i operacji obiektów oraz zdefiniowanie odpowiedzialności klas, konstrukcja diagramów struktur obiektowych i klas
-Modelowanie obiektowe - metodologia OMT: struktura statyczna aplikacji: model obiektów i diagramy - układy hierarchiczne z więzami, rozwiązanie przykładu z opisem szczegółowym specyfikacji, analizą (proponowane klasy i obiekty, powiązania i połączenia, zastosowanie generalizacji, przedstawienie diagramu obiektowego), zmiany stanu aplikacji w czasie: model dynamiczny i diagramy zmiany stanu obiektów, obliczenia dokonywane w systemie: model funkcjonalny i diagramy przepływu danych, wzajemne związki modeli, model przypadków użycia
Projektowanie systemu informatycznego (model fizyczny) (3 godziny)
- Kryteria poprawnej definicji projektu systemu informatycznego: kryteria poprawnej dekompozycji systemu informatycznego, sposoby wiązania modułów,
- Zadania projektowe i ich rezultaty w fazie projektowania strukturalnego: projektowanie proceduralne, projektowanie oparte na architekturze sprzętowej, projektowanie oparte na analizie transformacyjnej, projektowanie oparte na analizie transakcyjnej
- Zadania projektowe i ich rezultaty w fazie modelowania obiektowego
Implementacja i testowanie systemu informatycznego (3 godziny)
- etapy fazy implementacji i testowania
- podstawowe zagadnienia kodowania
- obiektowe języki programowania na przykładzie C++, Java (z przykładami)
- stosowanie wzorców projektowych
- metody testowania oprogramowania
5