SylabUZ

Wygeneruj PDF dla tej strony

Podstawy modelowania programów - opis przedmiotu

Informacje ogólne
Nazwa przedmiotu Podstawy modelowania programów
Kod przedmiotu 11.3-WI-INFP-PMP
Wydział Wydział Nauk Inżynieryjno-Technicznych
Kierunek Informatyka / Sieciowe systemy informatyczne
Profil ogólnoakademicki
Rodzaj studiów pierwszego stopnia z tyt. inżyniera
Semestr rozpoczęcia semestr zimowy 2016/2017
Informacje o przedmiocie
Semestr 5
Liczba punktów ECTS do zdobycia 6
Typ przedmiotu obieralny
Język nauczania polski
Sylabus opracował
  • dr inż. Łukasz Hładowski
Formy zajęć
Forma zajęć Liczba godzin w semestrze (stacjonarne) Liczba godzin w tygodniu (stacjonarne) Liczba godzin w semestrze (niestacjonarne) Liczba godzin w tygodniu (niestacjonarne) Forma zaliczenia
Wykład 30 2 18 1,2 Egzamin
Laboratorium 30 2 18 1,2 Zaliczenie na ocenę
Projekt 15 1 9 0,6 Zaliczenie na ocenę

Cel przedmiotu

- ukształtowanie podstawowych umiejętności w zakresie modelowania oprogramowania

- zapoznanie studentów z praktycznym zastosowaniem modelowania programów dla prostych systemów informatycznych

- zapoznanie studentów z prawidłowym sposobem praktycznej implementacji rozwiązania prostego problemu przy wykorzystaniu podstawowych wzorców projektowych

Wymagania wstępne

Programowanie obiektowe, Inżynieria oprogramowania

Zakres tematyczny

Zagadnienia wprowadzające. Tło i historia współczesnych technik modelowania. Zunifikowany proces cyklu życia aplikacji. Analiza i projektowanie systemowe. Paradygmat obiektowości. Modelowanie obiektowe i jego rola w projektowaniu systemów informatycznych. Procesy wytwarzania oprogramowania. Wstęp do notacji i diagramów Zunifikowanego Języka Modelowania (UML). Geneza i cele powstania UML. Zakres i struktura warstwowa UML. Modelowanie strukturalne. Podstawowe pojęcia i elementy obiektowości. Klasy, obiekty, abstrakcja, enkapsulacja, dziedziczenie, polimorfizm, komunikacja, relacje i powiązania między obiektami. Statyczne diagramy strukturalne: klas i obiektów. Modelowanie asocjacji między klasami. Agregacja, kompozycja, generalizacja, specjalizacja, zależności i realizacje. Pakiety i podsystemy. Typy, interfejsy i klasy implementacji Diagramy implementacyjne: komponentów i wdrożenia. Wymagania i ich specyfikacja. Diagramy przypadków użycia. Analiza i związki między przypadkami użycia: zawieranie, rozszerzenie, grupowanie i uogólnienie. Modelowanie behawioralne. Diagramy sekwencji i kolaboracji. Role, komunikaty i bodźce. Interakcje i kolaboracje. Analiza stanów systemu. Diagramy stanów i aktywności. Przejścia przepływu. Decyzje. Współbieżność. Sygnały i komunikacja. Wzorce projektowe. Formułowanie problemów programistycznych. Przegląd najczęściej stosowanych wzorców konstrukcyjnych, strukturalnych i behawioralnych. Tworzenie i testowanie wzorców. Zagadnienia praktyczne. Analiza domeny. Praca nad przypadkami użycia. Ogólne spojrzenie na projektowanie, wdrażanie i testowanie. Przegląd wybranych narzędzi projektowania w UML-u. Modelowanie systemów wbudowanych.

Metody kształcenia

wykład: burza mózgów, dyskusja, zajęcia praktyczne, wykład konwencjonalny

laboratorium: burza mózgów, praca z dokumentem źródłowym, dyskusja, praca w grupach, zajęcia praktyczne, wykład konwencjonalny

projekt: burza mózgów, praca z dokumentem źródłowym, dyskusja, praca w grupach, zajęcia praktyczne, wykład konwencjonalny

Efekty uczenia się i metody weryfikacji osiągania efektów uczenia się

Opis efektu Symbole efektów Metody weryfikacji Forma zajęć

Warunki zaliczenia

Wykład - warunkiem zaliczenia jest uzyskanie pozytywnej oceny z egzaminu przeprowadzonego w formie zaproponowanej przez prowadzącego.

Laboratorium - warunkiem zaliczenia jest uzyskanie pozytywnych ocen ze wszystkich ćwiczeń laboratoryjnych, przewidzianych do realizacji w ramach programu laboratorium.

Projekt - warunkiem zaliczenia jest uzyskanie pozytywnych ocen ze wszystkich zadań projektowych, przewidzianych do realizacji w ramach zajęć projektowych.

Składowe oceny końcowej = wykład: 30% + laboratorium: 30% + projekt: 40%

Obciążenie pracą Studia stacjonarne
(w godz.)
Studia niestacjonarne
(w godz.)
Godziny kontaktowe (udział w zajęciach; konsultacjach; egzaminie, itp.) 75 45
Samodzielna praca studenta (przygotowanie do: zajęć, kolokwium, egzaminu; studiowanie literatury przygotowanie: pracy pisemnej, projektu, prezentacji, raportu, wystąpienia; itp.) 75 105
Łącznie 150 150
Punkty ECTS Studia stacjonarne Studia niestacjonarne
Zajęcia z udziałem nauczyciela akademickiego 3 2
Zajęcia bez udziału nauczyciela akademickiego 3 4
Łącznie 6 6

Literatura podstawowa

 

  1. Martin R.C.: Czysty kod. Podręcznik dobrego programisty, Helion, Gliwice 2010

  2. Beck K.: TDD. Sztuka tworzenia dobrego kodu, Helion, Gliwice 2014

  3. Freeman E., Freeman E., Bates B., Sierra K.:Wzorce projektowe – Rusz głową!, Helion, Gliwice 2010

  4. Larman C.: UML i wzorce projektowe. Analiza i projektowanie obiektowe oraz iteracyjny model wytwarzania aplikacji. Wydanie III, Helion, Gliwice 2011

  5. Cheesman J., Daniels J.: Komponenty w UML, WNT, Warszawa, 2004

Literatura uzupełniająca

 

  1. Martin R.C., Martin M.: Agile. Programowanie zwinne: zasady, wzorce i praktyki zwinnego wytwarzania oprogramowania w C#, Helion 2008

  2. Seidl, M., Scholz, M.: UML @ Classroom: An Introduction to Object-Oriented Modeling, Springer 2015

  3. Way J.: Laravel Testing Decoded, Leanpub 2013

Uwagi


Zmodyfikowane przez prof. dr hab. inż. Krzysztof Patan (ostatnia modyfikacja: 19-09-2016 17:09)