Wydział Informatyki
Kierunek studiów Informatyka Poziom i forma studiów drugiego stopnia stacjonarne
Specjalność / Ścieżka dyplomowania Inżynieria Oprogramowania Profil kształcenia ogólnoakademicki
Nazwa przedmiotu Wybrane systemy rozproszone Kod przedmiotu INF2WSR
Rodzaj przedmiotu obowiązkowy
Forma zajęć i liczba godzin W Ć L P Ps T S Semestr 3
30 30 Punkty ECTS 4
Przedmioty wprowadzające
Cele przedmiotu

Przedstawienie specyfiki systemów rozproszonych: problemów przy ich tworzeniu oraz korzyści wynikłych z ich używania. Omówienie wybranych technik,algorytmów, narzędzi, rozwiązań używanych w systemach rozproszonych. Nauczenie praktycznego tworzenia i konfigurowania przykładowych systemów rozproszonych oraz korzystania z nich.

Treści programowe

Wykład:
1. Problemy i korzyści w tworzeniu i korzystaniu z systemów rozproszonych.
2. Dobre praktyki (wzorce) w tworzeniu systemów rozproszonych i współdzieleniu zasobów.
3. Podstawowe algorytmy używane w systemach rozproszonych
4. Wybrane modele obliczeniowe stosowane w systemach rozproszonych, m.in.: master-slave, producent-konsument, map-reduce.
5. Systemy chmurowe: koncepcja, technologie, zasady tworzenia aplikacji i konfiguracji.
6. Przechowywanie informacji w systemach rozproszonych: rozproszone systemy plików, bazy danych.
7. Bezpieczeństwo w systemach rozproszonych.

Pracownia specjalistyczna:
Tworzenie i konfigurowanie systemów rozproszonych z wykorzystaniem wybranych technologii, np. HTCondor, Amazon Web Services, Google Cloud Platform, Apache Hadoop, Apache Spark, Apache ZooKeeper, Apache Kafka

Metody dydaktyczne

wykład problemowy,   programowanie z użyciem komputera,   wykład informacyjny,  

Forma zaliczenia

Wykład - ocena z PS + sprawdzian z wiedzy teoretycznej.
Pracownia specjalistyczna - ocena zadań praktycznych wykorzystujących wybrane modele i technologie.

Symbol efektu uczenia się Zakładane efekty uczenia się Odniesienie do kierunkowych efektów uczenia się
EU1 wymienia i opisuje (w tym na przykładzie własnych rozwiązań) wybrane modele i architektury systemów rozproszonych oraz techniki, algorytmy w nich stosowane INF2_W03
INF2_W05
INF2_W06
EU2 wymienia i opisuje (w tym na przykładzie własnych rozwiązań) wybrane modele obliczeniowe używane w systemach rozproszonych INF2_W05
EU3 tworzy rozproszone rozwiązania informatyczne w oparciu o wygrane modele, architektury i technologie INF2_U03
INF2_U08
EU4 używa wybranych modeli obliczeniowych uruchomianych w systemach rozproszonych INF2_U03
INF2_U08
Symbol efektu uczenia się Sposób weryfikacji efektu uczenia się Forma zajęć na której zachodzi weryfikacja
EU1 sprawdzian z wiedzy teoretycznej (W), pytania teoretyczne podczas weryfikacji wykonanych zadań z zakresu systemów rozproszonych (Ps) W, Ps
EU2 sprawdzian z wiedzy teoretycznej (W), pytania teoretyczne podczas weryfikacji wykonanych aplikacji (Ps) W, Ps
EU3 ocena praktycznych zadań realizowanych w semestrze Ps
EU4 ocena praktycznych zadań realizowanych w semestrze Ps
Bilans nakładu pracy studenta (w godzinach) Liczba godz.
Wyliczenie
1 - Udział w wykładach - 15x2h 30
2 - Udział w pracowni specjalistycznej - 15x2h 30
4 - Realizacja zadań programistycznych poza zajęciami 30
5 - Udział w konsultacjach 5
6 - Przygotowanie do zaliczenia 5
RAZEM: 100
Wskaźniki ilościowe GODZINY ECTS
Nakład pracy studenta związany z zajęciami wymagającymi bezpośredniego udziału nauczyciela 65
(5)+(2)+(1)
2.6
Nakład pracy studenta związany z zajęciami o charakterze praktycznym 60
(4)+(2)
2.4
Literatura podstawowa

1. S. A. Tanenbaum, M. van Steen, Systemy rozproszone: zasady i paradymaty, PWN, 2006.
2. T. White, Hadoop: kompletny przewodnik: analiza i przechowywanie danych, Helion, 2016.
3. S. Ryza, U. Laserson, S. Owen, J. Wills, Spark: zaawansowana analiza danych, Helion, 2016.
4. V. Dhillon, D. Metcalf, M. Hooper, Zastosowania technologii blockchain, Wydaw. Naukowe PWN, 2018.
5. M. C. Chu-Carroll, Google App Engine: kod w chmurze, Helion, 2012.

Literatura uzupełniająca

1. F. Buschmann, K. Henney, D. C. Schmidt, Pattern-Oriented Software Architecture, Volume 4: A Pattern Language for Distributed Computing, Wiley & Sons, 2007.
2. M. Kircher, P. Jain, Pattern-Oriented Software Architecture, Volume 3: Patterns for Resource Management, Wiley & Sons, 2004.
3. M. Wittig, A. Wittig, B. W. Forew, Amazon Web Services in action, Manning, 2019.
4. Dokumentacje techniczne omawianych technologii.

Jednostka realizująca Katedra Oprogramowania Data opracowania programu
Program opracował(a) 2020.05.22