Podstawy Inżynierii Oprogramowania prowadzone są w formie ćwiczeń, laboratoriów oraz wykładu
Tematyka wykładu
- Wprowadzenie do przedmiotu. Prezentacja programu kursu, organizacji zajęć i zasad zaliczania. Wprowadzenie podstawowych pojęć inżynierii oprogramowania.
- Procesy cyklu życia oprogramowania. Modele cyklu życia oprogramowania. Metodyki wytwarzania oprogramowania.
- Inżynieria wymagań. Modelowanie zachowania systemów (model przypadków użycia)
- Modelowanie struktury (model danych) systemów informatycznych.
- Język OCL jako formalny język specyfikacji ograniczeń systemu.
- Makietowanie interfejsu systemu jako technika weryfikacji wymagań: normy, projektowanie, narzędzia makietowania.
- Jakość oprogramowania; Testowanie – typy, techniki, testy jednostkowe; narzędzia testowania i pomiarów jakości oprogramowania.
- Zagadnienia zarządzania konfiguracją i zmianą.
Tematyka ćwiczeń
Diagram klas
- Klasa, obiekt
- Relacja generalizacji
- Asocjacja: podstawowe właściwości
- Asocjacja: zaawansowane aspekty (asocjacja rekurencyjna, asocjacja n-arna)
- Typ danych
- Właściwość statyczna (w tym read only)
- Właściwość wnioskowana (derived property)
- Krotności i liczności
- Właściwość identyfikująca obiekty klasy (ograniczenie ID)
- Wartość domyślna właściwości
- Właściwość wielowartościowa (ograniczenie ORDERED. NOUNIQUE)
- Klasa asocjacji
- Agregacja, Kompozycja
Diagram przypadków użycia
- Aktor
- Przypadek użycia
- Asocjacja
- Relacja zawierania (include dependency)
- Relacja rozszerzania (extend dependency)
- Relacja generalizacji: aktorzy
- Relacja generalizacji: przypadki użycia
Diagram aktywności
- Aktywność, a czynność (Activity vs Action)
- Aktywność: przepływ obiektów, węzły obiektów
- Aktywność: przepływ sterowania, węzły sterowania
- Aktywność: węzły wykonawcze (executable nodes)
- Aktywność: grupy aktywności (Activity Groups), partycje aktywności (Activity Partitions)
- Akcja: podział na rodzaje, funkcja przekaźników (Pins)
- Akcja: akcje wywołania (invocation actions)
- Akcja: akcje obiektów (object actions), akcje powiązań (Link End Actions), asocjacji (Link Actions) i akcje obiektów powiązań (Link Object Action)
- Akcja: akcje cech strukturalnych (Structural Feature Action), akcje zmiennych (Variable Actions), akcje odpowiedzi na zdarzenia (Accept Action), pozostałe akcje (Other Actions)
- Akcja: akcje strukturalne (Structured Actions)
- Akcja: obszary rozszerzenia (Expansion Regions)
OCL
- Reguły biznesowe i ich kategorie (definicja terminów biznesowych; fakty pokazujące relacje między terminami; ograniczenia; wnioskowania)
- Ograniczenia na elementy modelu systemu
- niezmienniki dla atrybutów klasy;
- niezmienniki dla asocjacji klasy
- określenia warunków początkowych i końcowych realizacji operacji
- ograniczenia dla zbiorów generalizacji
- Stereotypy związane z ograniczeniami w UML: «invariant», «precondition», «postcondition».
Inżynieria wymagań
- Wymagania wg. UML (diagram przypadków użycia)
- Elementy składni konkretnej diagramu wymagań wg sysML
- Klasyfikacja FURPS+
- Klasyfikacja FURPS+ w odniesieniu do testów (przez analogię do klasyfikacji wymagań wg RUP)
- Wybrane klasyfikacje i metodyki opisu wymagań.
- historyjki
Tematyka Laboratorium
Zakres i tematyka zostanie podana na zajęciach laboratoryjnych przez prowadzących.
Zasady zaliczenia
-
Podstawą zaliczenia ćwiczeń jest uzyskanie wymaganej liczby punktów z (P)rezentacji i (A)ktywności w trakcie ćwiczeń oraz z (K)olokwium.
-
Punkty można uzyskać za:
- (P) Przygotowanie prezentacji na podany temat - max 15pkt (należy przedstawić co najmniej jeden temat w semestrze – ok. 10 min).
- Niezależnie od liczby prezentowanych tematów student może uzyskać max. 15 pkt za prezentację. Prezentacja kolejnych tematów jest wskazana, jeżeli student uzyska małą liczbę punktów przy prezentacji pierwszego tematu.
- O możliwości prezentacji danego tematu na zajęciach decyduje prowadzący.
- (A) Prezentację rozwiązań zadań podanych „na bieżąco” na ćwiczeniach (tylko w wypadku zgłoszenia się studenta) – max 25 (max 4pkt na jednych ćwiczeniach).
- (A) Odpowiedzi na kartkówki, wejściówki, zadania zlecone przez Prowadzącego.
-
Punkty (K) to punkty z kolokwium (max 60)
-
Obecność na zajęciach jest obowiązkowa.
-
Każdy student ma obowiązek uczestnictwa w kolokwium zaliczeniowym.
-
Zaliczenie ćwiczeń w normalnym terminie (bez kolokwium poprawkowego) wymaga spełnienia warunku: (P + K )>40 oraz (P >=8 i K>30). Jeżeli warunek ten jest spełniony, to liczba punktów Z=P+A+K jest podstawą do uzyskania oceny zgodnie z tabelą:
Z |
41 |
52 |
64 |
77 |
90 |
>=98 |
Ocena |
3.0 |
3.5 |
4.0 |
4.5 |
5.0 |
5.5 |
Kolokwium
-
Kolokwium zaliczeniowe odbędzie sie w dniach 19.06.2024-26.06.2024 i jest dostępne poprzez MS Teams.
Materiały źródłowe
- Specyfikacja UML 2.5.1
- Specyfikacja OCL 2.4
- Wrycza i in., UML 2.x, Ćwiczenia zaawansowane, Helion 2012
- Raul Wazlawick, Object-Oriented Analysis and Design for Information Systems, Elsevier, 2014
Oceny
TBA