Wydział Informatyki - Informatyka (S2)
specjalność: inżynieria oprogramowania
Sylabus przedmiotu Przetwarzanie rozproszone - Przedmiot obieralny II:
Informacje podstawowe
Kierunek studiów | Informatyka | ||
---|---|---|---|
Forma studiów | studia stacjonarne | Poziom | drugiego stopnia |
Tytuł zawodowy absolwenta | magister | ||
Obszary studiów | nauki techniczne | ||
Profil | ogólnoakademicki | ||
Moduł | — | ||
Przedmiot | Przetwarzanie rozproszone - Przedmiot obieralny II | ||
Specjalność | inżynieria oprogramowania | ||
Jednostka prowadząca | Katedra Inżynierii Oprogramowania | ||
Nauczyciel odpowiedzialny | Valery Rogoza <wrogoza@zut.edu.pl> | ||
Inni nauczyciele | Valery Rogoza <wrogoza@zut.edu.pl>, Krzysztof Siedlecki <Krzysztof.Siedlecki@zut.edu.pl> | ||
ECTS (planowane) | 2,0 | ECTS (formy) | 2,0 |
Forma zaliczenia | zaliczenie | Język | polski |
Blok obieralny | 2 | Grupa obieralna | 2 |
Formy dydaktyczne
Wymagania wstępne
KOD | Wymaganie wstępne |
---|---|
W-1 | Studiowanie danego przedmiotu przewiduje poprzednią znajomość studentów z następującymi rozdziałami technologii informatycznych: podstawami informatyki i algorytmizacji, sieciami komputerowymi, jednym z języków programowania obiektowego (C++, C#, Java), oraz równoległym i rozproszonym przetwarzaniem danych. |
Cele przedmiotu
KOD | Cel modułu/przedmiotu |
---|---|
C-1 | Celem studiowania przedmiotu jest zdobycie studentami wiedzy, umiejętnoci i kompetencji w dziedzinie budowy i posługiwania się metodami i narzędziem programistycznym do tworzenia kodów na zasadach programowania współbieżnego. |
Treści programowe z podziałem na formy zajęć
KOD | Treść programowa | Godziny |
---|---|---|
laboratoria | ||
T-L-1 | Tworzenie i posługiwanie się wątkami w środowisku MS.NET: obliczenia z użyciem i bez użycia dodatkowych wątków, przeniesienie obliczeń do osobnego wątku,usypianie wątku, przerywanie działania wątku, wstrzymywanie i wznawianie działania wątku, zmiana priorytetu wątku, posługiwanie się pulą wątków, synchronizacja wątków, przesyłanie danych do wątków | 2 |
T-L-2 | Posługiwanie się zadaniami w środowisku MS.NET: tworzenie i praca z zadaniami, synchronizacja zadań, fabryka zadań, zarządzanie kolejkowaniem zadań, ustawienia zadań. | 3 |
T-L-3 | Techniki zrównoleglania pętli w środowisku MS.NET: zrównoleglenie pętli FOR i pętli FOREACH, posługiwanie się metodą Invoke, ustawienia pętli równoległych (klasa ParallelOptions), przerywanie pętli za pomocą CancellationToken, kontola wykonywania pętli, synchronizacja pętli równoległych, wielowątkowa klasa Random. | 3 |
T-L-4 | Tworzenie zapytań LINQ: posługiwanie się kolekcjami (techniki LINQ to Objects), porównawcza analiza technik LINQ a DataSet, LINQ a SQL | 3 |
T-L-5 | Posługiwanie się danymi w środowisku MS.NET: praca ze zbiorami danych w programowaniu równoległym (współbieżne struktury danych, kolekcje, tworzenie współbieżnych kolejki i stosu, agregacja dla kolekcji równoległych), zrównoleglone zapytania LINQ (zasady PLINQ), przerywanie zapytań, metoda ForAll | 4 |
15 | ||
wykłady | ||
T-W-1 | Podstawowe modele programowania współbieżnego, zasady równoległego i rozproszonego przetwarzania danych, modele platform sprzętowych, koncepcja warsty pośredniej | 2 |
T-W-2 | Programowanie wielowątkowe w środowisku Visual Studio: użycie wątków, przeniesienie obliczeń i danych do wątków, pula wątków, komunikacje między wątkami, synchronizacja wątków | 2 |
T-W-3 | Zadania jako przepis podstawowy na programowanie współbieżne: praca z zadaniami, przekazanie danych do zadań, ustawienia i synchronizacja zadań | 2 |
T-W-4 | Techniki zrównoleglania pętli w środowisku MS.NET | 2 |
T-W-5 | Opracowanie danych w programach równoległych: współbieżne struktury danych, agregacja dla kolekcji równoległych, zrównoleglone techniki LINQ | 2 |
T-W-6 | Technikiu tworzenia i wykorzystania usug webowych w środowisku MS.NET: platforma WCF, usługi webowe typu SOAP i REST. | 2 |
T-W-7 | Zasady tworzenia dynamicznych środowisk uruchomieniowych, współdziałanie z dynamicznymi językami programowania | 2 |
T-W-8 | Adaptacyjne oraz hybrydowe platformy egzistencjonalne do tworzenia i uruchomienia składników rozproszonych systemów inteligentnych | 1 |
15 |
Obciążenie pracą studenta - formy aktywności
KOD | Forma aktywności | Godziny |
---|---|---|
laboratoria | ||
A-L-1 | Uczęszczenie na zajęcia laboratoryjne | 15 |
A-L-2 | Przygotowanie do zajęć (praca własna studenta) | 4 |
A-L-3 | Udzał w konsultacjach i zaliczeniu formy zajęć | 2 |
A-L-4 | Napisanie sprawozdań z zajęć laboratoryjnych i zaliczenie tematów przed wykładowcą | 4 |
25 | ||
wykłady | ||
A-W-1 | Uczęszczanie na wykłady | 15 |
A-W-2 | Udzał w konsultacjach i zaliczeniu formy zajęć | 2 |
A-W-3 | Przygotowanie do zaliczenia | 12 |
29 |
Metody nauczania / narzędzia dydaktyczne
KOD | Metoda nauczania / narzędzie dydaktyczne |
---|---|
M-1 | Wykłady z wykorzystaniem zasobów multimedialnych, zajęcia laboratoryjne w salach laboratoryjnych na sprzęcie wydziały, konsultacje z przedmiotu |
Sposoby oceny
KOD | Sposób oceny |
---|---|
S-1 | Ocena formująca: Zaliczenie zajęć laboratoryjnych na podstawie oceny jakości wykonywania zadań sformulowanych przez wykładowcę oraz zaliczenie z wykładów |
Zamierzone efekty kształcenia - wiedza
Zamierzone efekty kształcenia | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|
I_2A_D14/O1/2-1_W01 Studenci zdobywają wiedzę z architektur, funkcjonalności i technik tworzenia współczesnych systemów programowania współbieznego na podstawie badania platformy Microsoft.NET 4.0. | I_2A_W04 | — | C-1 | T-W-4, T-W-6, T-W-7, T-W-8, T-W-1, T-W-2, T-W-3 | M-1 | S-1 |
Zamierzone efekty kształcenia - umiejętności
Zamierzone efekty kształcenia | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|
I_2A_D14/O1/2-1_U01 Studenci zdobywają umiejętności w ocenie postawionych zagadnień z punktu widzenia skutecznej realizacji rozwiązania danych zagadnień z wykorzystaniem technik programowania współbieżnego, wyboru odpowiednich metod i narzędzia programistycznego oraz posługiwania się składnikami (komponentami) przechowanymi w bibliotekach systemów projektowania. | I_2A_U04 | — | C-1 | T-W-5, T-W-1, T-L-4, T-L-2, T-L-3 | M-1 | S-1 |
Zamierzone efekty kształcenia - inne kompetencje społeczne i personalne
Zamierzone efekty kształcenia | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|
I_2A_D14/O1/2-1_K01 Po studiowaniu przedmiotu studenci zdobywają kompetencje w dziedzinie posługiwania się zasobami programistycznymi do tworzenia kodów na zasadach programowania współbieżnego. | I_2A_K05 | — | C-1 | T-W-7, T-W-8, T-W-1, T-L-1 | M-1 | S-1 |
Kryterium oceny - wiedza
Efekt kształcenia | Ocena | Kryterium oceny |
---|---|---|
I_2A_D14/O1/2-1_W01 Studenci zdobywają wiedzę z architektur, funkcjonalności i technik tworzenia współczesnych systemów programowania współbieznego na podstawie badania platformy Microsoft.NET 4.0. | 2,0 | Student nie zna modeli platform sprzętowych do programowania współbieżnego, nie ma pojęcia, w jaki sposób mogą być tworzone programy wielowątkowe, nie zna technik tworzenia zadań w programowaniu wspóbieżnym, nie wyjawia wiedzy co do technik LINQ i specyficznych cech platformy WCF. |
3,0 | Student może objaśnić cechy modeli platform sprzętowych do programowania współbieżnego, ma pewne pojęcia, w jaki sposób mogą być tworzone programy wielowątkowe, ale nie zna technik tworzenia zadań w programowaniu wspóbieżnym, nie wyjawia wiedzy co do technik LINQ i specyficznych cech platformy WCF. | |
3,5 | Student może objaśnić cechy modeli platform sprzętowych do programowania współbieżnego, ma pewne pojęcia, w jaki sposób mogą być tworzone programy wielowątkowe, zna niektóre techniki tworzenia zadań w programowaniu wspóbieżnym, ale wyjawia bardzo słabą wiedzę technik LINQ i specyficznych cech platformy WCF. | |
4,0 | Student dobrze zna cechy modeli platform sprzętowych do programowania współbieżnego, ma stałe pojęcia, w jaki sposób mogą być tworzone programy wielowątkowe, zna techniki tworzenia zadań w programowaniu wspóbieżnym, ale napotyka się na trudności podczas objaśnienia technik LINQ i specyficznych cech platformy WCF. | |
4,5 | Student dobrze zna cechy modeli platform sprzętowych do programowania współbieżnego, ma stałe pojęcia, w jaki sposób mogą być tworzone programy wielowątkowe, dobrze zna techniki tworzenia zadań w programowaniu wspóbieżnym, może opisać szczególy technik LINQ i specyficznych cech platformy WCF, ale napotyka się na trudności skutecznego posługiwania się narzędziom programistycznym wbudowanym w platformę MS.NET Feamework dotyczącym posługiwania się usługami webowtmi (np. typu SOAP i REST). | |
5,0 | Student dobrze zna cechy modeli platform sprzętowych do programowania współbieżnego, ma stałe pojęcia, w jaki sposób mogą być tworzone programy wielowątkowe, dobrze zna techniki tworzenia zadań w programowaniu wspóbieżnym, może opisać szczególy technik LINQ i specyficznych cech platformy WCF, ma dobrę wiedzę technik tworzenia usług webowych, platformy WCF oraz tworzenia usług typu SOAP i REST. |
Kryterium oceny - umiejętności
Efekt kształcenia | Ocena | Kryterium oceny |
---|---|---|
I_2A_D14/O1/2-1_U01 Studenci zdobywają umiejętności w ocenie postawionych zagadnień z punktu widzenia skutecznej realizacji rozwiązania danych zagadnień z wykorzystaniem technik programowania współbieżnego, wyboru odpowiednich metod i narzędzia programistycznego oraz posługiwania się składnikami (komponentami) przechowanymi w bibliotekach systemów projektowania. | 2,0 | Student nie wyjawia umiejętności w ocenie funkcjonalności podstawowych platform sprzętowych do programowania współbieżnego, nie może tworzyć programy wielowątkowe, nie w stanie posługiwać się technikami tworzenia zadań w programowaniu wspóbieżnym, nie wyjawia umiejeności w wykorzystaniu technik LINQ i tworzeniu usług webowych (SOAP, REST). |
3,0 | Student wyjawia umiejętności w ocenie cpecyficznych cech podstawowych platform sprzętowych do tworzenia oprogramowania współbieżnego, może tworzyć programy wielowątkowe w środowisku Visual Studio, ale odczuwa trudności w posługiwaniu się technikami tworzenia zadań w programowaniu wspóbieżnym, nie wyjawia zdolności do skutecznego wykorzystania technik LINQ i tworzeniu usług webowych (SOAP, REST). | |
3,5 | Student wyjawia umiejętności w ocenie cpecyficznych cech podstawowych platform sprzętowych do tworzenia oprogramowania współbieżnego, może tworzyć programy wielowątkowe w środowisku Visual Studio, może posługiwać się niektórymi technikami tworzenia zadań w programowaniu wspóbieżnym, ale nie w stanie objaśnić o ile efektywne są wybrane przez niego metody, wyjawia bardzo słabe umiejętności posługiiwania się technikami LINQ i cechami platformy WCF. | |
4,0 | Student wyjawia umiejętności w ocenie cpecyficznych cech podstawowych platform sprzętowych do tworzenia oprogramowania współbieżnego, może tworzyć programy wielowątkowe w środowisku Visual Studio, może posługiwać się technikami tworzenia zadań w programowaniu wspóbieżnym, może objaśnić o ile efektywne są wybrane przez niego metody, ale wyjawia trudności posługiiwania się technikami LINQ i cechami platformy WCF (np. usługami SOAP i REST). Student dobrze zna cechy modeli platform sprzętowych do programowania współbieżnego, ma stałe pojęcia, w jaki sposób mogą być tworzone programy wielowątkowe, zna techniki tworzenia zadań w programowaniu wspóbieżnym, ale napotyka się na trudności podczas objaśnienia technik LINQ i specyficznych cech platformy WCF. | |
4,5 | Student wyjawia dobre umiejętności w ocenie cpecyficznych cech podstawowych platform sprzętowych do tworzenia oprogramowania współbieżnego, może tworzyć programy wielowątkowe w środowisku Visual Studio aktywnie posługiwując wbudowanym w platformę narzędziom, może posługiwać się technikami tworzenia zadań w programowaniu współbieżnym, może objaśnić o ile efektywne są wybrane przez niego metody, wyjawia umiejętności posługiiwania się technikami LINQ i cechami platformy WCF (np. usługami SOAP i REST), ale napotyka się na trudności podczas tworzenia zadań, wspłóbierznego oporacowywaniu danych (np. podczas zrównoleglania pętli). | |
5,0 | Student wyjawia dobre umiejętności w ocenie cpecyficznych cech podstawowych platform sprzętowych do tworzenia oprogramowania współbieżnego, może tworzyć programy wielowątkowe w środowisku Visual Studio aktywnie posługiwując wbudowanym w platformę narzędziom, może posługiwać się technikami tworzenia zadań w programowaniu współbieżnym, może objaśnić o ile efektywne są wybrane przez niego metody, wyjawia umiejętności posługiiwania się technikami LINQ i cechami platformy WCF (np. usługami SOAP i REST), wyjawia dobre umiejętności w tworzeniu zadań, współbierznym oporacowaniu danych (np. podczas zrównoleglania pętli), a także usługami typu SOAP i REST. |
Kryterium oceny - inne kompetencje społeczne i personalne
Efekt kształcenia | Ocena | Kryterium oceny |
---|---|---|
I_2A_D14/O1/2-1_K01 Po studiowaniu przedmiotu studenci zdobywają kompetencje w dziedzinie posługiwania się zasobami programistycznymi do tworzenia kodów na zasadach programowania współbieżnego. | 2,0 | Student nie wyjawia kompetencji w ocenie funkcjonalności i cech podstawowych platform sprzętowych do programowania współbieżnego, w tworzeniu programów wielowątkowych, i w posługiwaniu się technikami tworzenia zadań w programowaniu wspóbieżnym. |
3,0 | Student wyjawia pewne kompetencje w ocenie specyficznych cech podstawowych platform sprzętowych do tworzenia oprogramowania współbieżnego, w tworzeniu programów wielowątkowych w środowisku Visual Studio, ale nie ma kompetencji w posługiwaniu się technikami tworzenia zadań w programowaniu wspóbieżnym i w wykorzystaniu technik LINQ i tworzeniu usług webowych (SOAP, REST). | |
3,5 | Student wyjawia kompetencje w ocenie specyficznych cech podstawowych platform sprzętowych do tworzenia oprogramowania współbieżnego, w tworzeniu programów wielowątkowe w środowisku Visual Studio, w posługiwaniu się niektórymi technikami tworzenia zadań w programowaniu wspóbieżnym, ale nie wyjawia kompetencji w ocenie optymalności wybranych przez niego metod i posługiiwaniu się technikami LINQ i cechami platformy WCF. | |
4,0 | Student wyjawia kompetencje w ocenie specyficznych cech podstawowych platform sprzętowych do tworzenia oprogramowania współbieżnego, w tworzeniu programów wielowątkowych w środowisku Visual Studio, w posługiwaniu się technikami tworzenia zadań w programowaniu wspóbieżnym, w objaśnieniu o ile efektywne są wybrane przez niego metody, ale wyjawia trudności w ocenie skuteczności posługiiwania się technikami LINQ i cechami platformy WCF (np. usługami SOAP i REST). Student dobrze zna cechy modeli platform sprzętowych do programowania współbieżnego, ma stałe pojęcia, w jaki sposób mogą być tworzone programy wielowątkowe, zna techniki tworzenia zadań w programowaniu wspóbieżnym, ale napotyka się na trudności podczas objaśnienia technik LINQ i specyficznych cech platformy WCF. | |
4,5 | Student wyjawia dobre kompetencje w ocenie specyficznych cech podstawowych platform sprzętowych do tworzenia oprogramowania współbieżnego, w tworzeniu programów wielowątkowych w środowisku Visual Studio aktywnie posługiwując wbudowanym w platformę narzędziom, w posługiwamiu się technikami tworzenia zadań w programowaniu współbieżnym, w ocenie efektywności wybranych przez niego metod i w posługiiwaniu się technikami LINQ i cechami platformy WCF (np. usługami SOAP i REST), ale napotyka się na trudności podczas tworzenia zadań, współbierznym opracowywaniu danych (np. podczas zrównoleglania pętli). | |
5,0 | Student wyjawia dobre kompetencje w ocenie specyficznych cech podstawowych platform sprzętowych do tworzenia oprogramowania współbieżnego, w tworzeniu programów wielowątkowych w środowisku Visual Studio, w posługiwaniu się technikami tworzenia zadań w programowaniu współbieżnym, w ocenie efektywności wybranych przez niego metod i zasobów programistycznych, w posługiiwaniu się technikami LINQ i cechami platformy WCF (np. podczas tworzenia usług SOAP i REST), wyjawia dobre kompetencje w tworzeniu zadań, współbierznym opracowaniu danych (np. podczas zrównoleglania pętli), a także tworzeniu usług typu SOAP i REST. |
Literatura podstawowa
- Walery Rogoza, Metody i środki projektowania obiektów interoperabilnych, Akademicka Oficyna Wydawnicza EXIT, Warszawa, 2006
- Valeriy Rogoza, Materiały Dydaktyczne do przedmiotów "Zaawansowane Technologie Oprogramowania" i "Przetwarzanie Równoległe i Rozproszone", Politechnika Szczecińska, Wydział Informatyki, Szczecin, 2007
- Jacek Matulewski, Dawid Borycki i inne, Visual Studio 2010 dla programistów, Heliion, Gliwice, 2011
Literatura dodatkowa
- Foster I., Kesselman C., The Grid: Blueprint for a New Computing Infrastructure, Morgan Kaufmann, USA, 1999
- Mathias Klusch (Ed.), Intelligent Information Agents. Agent-Based Information Discovery and Management on the Internet, Springer-Verlag, Berlin-Heidelberg, 1999
- Ferber J., Reactive Distributed Intelligence: Principles and Applications, Wiley Interscience, USA, 1996, W książce: O'Hare, Jennings N. (Ed.), Foundations of Distributed Artificial Intelligence
- John Sharp, Visual C# 2010, Microsft Press, Warszawa, 2011