Wykonaj model (diagram klas) następującego fragmentu rzeczywistości:
Kierunek studiów ma nazwę oraz minimalną ilość punktów niezbędną do uzyskania absolutorium. W ramach kierunku studiów oferowanych jest od 30 do 100 kursów. Każdy kurs ma unikalną w obrębie kierunku nazwę. Każdy kurs ma liczbę punktów, którą uzyskuje się za zaliczenie tego kursu. Kurs może być obowiązkowy lub nie. Kurs może być kursem z egzaminem lub bez egzaminu. Kurs bez egzaminu uznaje się za zaliczony jeśli student zaliczy ćwiczenia na ocenę co najmniej dostateczną. Kurs z egzaminem uznaje się za zaliczony jeśli student zaliczy ćwiczenia na ocenę co najmniej dostateczną i zda egzamin na ocenę co najmniej dostateczną. Student uzyskuje absolutorium jeśli zaliczy wszystkie kursy obowiązkowe i zgromadzi ilość punktów nie mniejszą niż minimalna liczba punktów niezbędna do uzyskania absolutorium na tym kierunku.
Student uzyskuje tytuł magistra jeśli uzyska absolutorium i zda egzamin magisterski na ocenę co najmniej dostateczną.
Klasa Student definiuje bezparametrową operację-zapytanie OcenaSredniaZeStudiow , która zwraca:
0 jeśli student nie posiada tytułu magistra
średnią ze studiów (S) jeśli student jest magistrem. Średnia ze studiów wyliczana jest wg wzoru:
S = 0.5 * E + 0.5 * K
gdzie:
E - ocena z egzaminu magisterskiego;
K - średnia ocen z wszystkich kursów zaliczonych. Ocena z kursu to ocena z zaliczenia ćwiczeń w przypadku kursów bez egzaminu albo ocena z egzaminu w przypadku kursów z egzaminem.
Uwagi: Model na ocenę 5.0 musi uwzględniać dokładnie, precyzyjnie, jednoznacznie i poprawnie wszystkie wyspecyfikowane w treści zadania obiekty, atrybuty, związki, relacje i ograniczenia (OCL), oraz powinien być odpowiednio zoptymalizowany (np. bez niepotrzebnej nadmiarowości identycznych atrybutów klas itd.).
Wszystkie ograniczenia niepokazane na diagramie należy wyrazić w postaci odpowiednich ograniczeń OCL (może być w formie tekstowej pod diagramem klas). W modelu można umieścić pomocnicze składowe: operacje-zapytania i atrybuty/powiązania pochodne. Należy jednak przy pomocy OCL określić sposób ich wyliczenia. Materiały pomocnicze: 1. Wykład i materiały pomocnicze podane na wykładzie.
3. Przykładowe informacje o OCL w sieci (nie weryfikowałem dokładnie ich poprawności):
http://www.csci.csusb.edu/dick/samples/ocl.html http://wazniak.mimuw.edu.pl/images/f/f3/Io-6-wyk.pdf http://www.ii.pw.edu.pl/~ibl/iop2-laboratorium/01/0105.html http://brasil.cel.agh.edu.pl/~09sbfraczek/ocl-wstep,1,22.html http://brasil.cel.agh.edu.pl/~09sbfraczek/podstawowe-konstrukcje,1,23.html
... zobacz całą notatkę
Komentarze użytkowników (0)