Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Informatyka (S1)

Sylabus przedmiotu Przetwarzanie rozproszone:

Informacje podstawowe

Kierunek studiów Informatyka
Forma studiów studia stacjonarne Poziom pierwszego stopnia
Tytuł zawodowy absolwenta inżynier
Obszary studiów charakterystyki PRK, kompetencje inżynierskie PRK
Profil ogólnoakademicki
Moduł
Przedmiot Przetwarzanie rozproszone
Specjalność przedmiot wspólny
Jednostka prowadząca Katedra Inżynierii Oprogramowania i Cyberbezpieczeństwa
Nauczyciel odpowiedzialny Krzysztof Siedlecki <Krzysztof.Siedlecki@zut.edu.pl>
Inni nauczyciele Krzysztof Siedlecki <Krzysztof.Siedlecki@zut.edu.pl>
ECTS (planowane) 4,0 ECTS (formy) 4,0
Forma zaliczenia zaliczenie Język polski
Blok obieralny 6 Grupa obieralna 9

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
laboratoriaL6 30 2,00,50zaliczenie
wykładyW6 30 2,00,50zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Podstawowa wiedza programistyczna z przedmiotów: Programowanie 1 i 2
W-2Podstawowa wiedza z systemów operacyjnych i sieci komputerowych

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Ukształtowanie wiedzy i umiejętności do opracowywania aplikacji rozproszonych oraz obsługi i rozwijania systemów rozproszonych.
C-2Ukształtowanie świadomego rozumowania samodokształcania się z zakresu tworzenia oprogramowania rozprosonego, jego obsługi i testowania.

Treści programowe z podziałem na formy zajęć

KODTreść programowaGodziny
laboratoria
T-L-1Przedstawienie oraz uruchomienie ze wstępną konfiguracją środowiska MPI2
T-L-2Wykorzystanie podstawowych funkcji środowiskowych do obsługi MPI2
T-L-3MPI : Komunikacja między różnymi procesami - Blokująca (synchroniczna) - Nieblokująca (asynchroniczna)4
T-L-4MPI : Komunikacja grupowa2
T-L-5Laboratoria w zakresie WebServices: - Przedstawienie różnić między WebService REST vs SOAP - Stworzenie WebService typu REST (C#, .Net) oraz klient - Stworzenie WebService typu SOAP (C#, .Net) oraz klienta6
T-L-6Laboratoria w zakresie GoogleDocs - Wprowadzenie do JavaScript w GoogleDocs - Podstawowe komponenty (arkusz, edytor, poczta, mapa) - Programowanie rozproszonego arkusza w chmurze - Programowanie rozproszonego arkusza w chmurze czesc 2 - Programowanie rozproszonego edytora w chmurze - Integracja bibliotek z pocztą Gmail i mapą - Integracja z zewnętrzną bazą14
30
wykłady
T-W-1Podstawowe definicje prrzetwarzania rozproszonego. Operacyjne systemy rozproszone. Trudności w budowaniu aplikacji rozproszontych, ich cele oraz korzyści. Rozproszone bazy danych, replikacja i lokalność. Odprorność na awarie. Przykłady cech przetwarzania rozproszonego na podstawie internetowych systemów (DNS, poczta, itd.) Rodzaje modeli przetwarzania rozproszonego (komunikaty, zdalne usługi, funkcje, RPC i obiekty, agenci mobilni, arcitektury wielowarstwowe).2
T-W-2Komunikaty PVM. Cechy równoległej maszyny wirtualnej. Składniki PVM. Cechy środowiska. Model programowania przyjęty PVM. Zastosowanie PVM. Tolerowanie defektów.2
T-W-3Komunikaty MPI - wprowadzenie, model przekazywania komunikatów, implementacje, kompilatory. Zalety MPI - przenośność, standaryzacja, wydajność obliczeń, funkcjonalność. Historia MPI, wersje oraz dystrybucje.2
T-W-4Komunikaty MPI – komunikacja Point to Point – ogólne zasady. Typy danych i ick konwersja. Metody komunikacji. Blokujące funkcje wysłania i odebrania. Komunikacja bez blokowania.2
T-W-5Komunikaty MPI - komunikacja zbiorcza. Wprowadzenie, argumenty, pojęcie bariery. Broadcast. Operacje równoległej redukcji, skanowanie i operacje nieblokujące.2
T-W-6Komunikacja grupowa MPI - grupy kontekst, komunikatory, cacching. Zarządzanie grupami i komunikatorami. Komunikacja wewnętrzna.2
T-W-7Komunikaty PVM - topologie procesów, zarządzanie procesami, komunikacja jednostronna, interfejsy zewnętrzne, operacje wejścia-wyjścia.2
T-W-8RPC, zdalne wywołanie procesur. Funkcje JAVA RMI.2
T-W-9Programowanie rozproszonych obiektów. Hisroria, komunikacja, implementacja. DCOM, Corba. Programowanie .NET Remoiting, komunikacja binarna, HTTP, singletony, przykłady.2
T-W-10Web Services – SOAP, XML, REST, teoria, przykłady (poczta polska monitoring przesyłek, dane z GUS, allegro). Czytanie specyfikacji, koperta, funkcje i argumenty,2
T-W-11Web Services – kurs praktyczny w środowiskach .NET, PHP i Python.2
T-W-12Cloud computing - wprowadzenie, środowiska, zalety i trudności w projektowaniu systemów. Przetwarzanie w chmurze na przykładzie GoogleDocs - pakietu biurowego i środowiska aplikacji i programowania.2
T-W-13GoogleDocs - javascript. Środowisko programowanie, debuger, pisanie skryptów. Interaktywne elementy. Zdarzenie, przechwytywanie i obsługa. Korzystanie z JDBC.2
T-W-14GoogleDocs - programowanie aplikacji office - arkusz kalkulacyjny, edytor, współpraca z pocztą. Mapy Google.2
T-W-15Grid computing, klastry. Lista najmocniejszych komputerów, celowość budowy, koszty rozwiązania. Systemy rozproszone w Polsce, Internetowe systemy rozproszone. Przyszłość przetwarzania rozproszonego.2
30

Obciążenie pracą studenta - formy aktywności

KODForma aktywnościGodziny
laboratoria
A-L-1Udział w zajęciach30
A-L-2Praca własna20
50
wykłady
A-W-1Udział w wykładach.30
A-W-2Praca własna18
A-W-3Konsultacje.2
50

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykład
M-2Ćwiczenia laboratoryjne

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Ocena stopnia ukończenia zadania i napisania programu na zajęciach laboratoryjnych.
S-2Ocena formująca: Zaliczenie końcowo polegające na formie pytań i odpowiedzi.

Zamierzone efekty uczenia się - wiedza

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_C25.2_W01
Zna podstawowe umiejętności gromadzenia danych i przetawarzania informacji w zakresie systemów rozproszonych oraz zna techniki projektowania i programowania aplikacji do przetwarzania rozproszonego.
I_1A_W03C-1T-W-4, T-W-1, T-W-8, T-W-14, T-W-15, T-W-13, T-L-3, T-L-5, T-L-2, T-L-4, T-L-1, T-L-6M-1S-2

Zamierzone efekty uczenia się - umiejętności

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_C25.2_U01
Potrafi projektować i pisać aplikacje do przetwarzania rozproszonego
I_1A_U04, I_1A_U07C-2, C-1T-L-1, T-L-4, T-L-6, T-W-7, T-W-8, T-W-9, T-W-10, T-W-11, T-W-12, T-W-13M-1, M-2S-1, S-2

Zamierzone efekty uczenia się - inne kompetencje społeczne i personalne

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_C25.2_K01
Rozumie potrzebę dokształcania się programowania aplikacji rozproszonych w czasach obecnej cyfryzacji i trendów informatyzowania obiegu dokumentów.
I_1A_K01C-2, C-1T-W-1, T-W-14, T-W-15, T-W-13M-1, M-2S-2

Kryterium oceny - wiedza

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_C25.2_W01
Zna podstawowe umiejętności gromadzenia danych i przetawarzania informacji w zakresie systemów rozproszonych oraz zna techniki projektowania i programowania aplikacji do przetwarzania rozproszonego.
2,0Nie rozumie istosty przetwarzania rozproszonego. Nie programuje aplikacji rozproszonych, ma trudności z wiedzą z podstaw programowania i programowania obiektowego.
3,0Zna przykłady aplikacji rozproszonych. Rozmie ich wagę w dobie cyfryzacji. Rozumie kod aplikacji rozproszonych, ale brakuje mu umiejętności tworzenia własnych projektów.
3,5Umie podać przykłady i techniki aplikacji rozproszonych oraz kategoryzować ich sposób wytworzenia. Rozumie kod aplikacji rozproszonych, podejmuje próby pisania własnych aplikacji.
4,0Opanował dobrze jedną z technik tworzenia aplikacji rozproszonych. Zna podstawy innych metod. Rozumie kod aplikacji rozproszonych, umie pisać własne aplikacje i dobierać odpowiednie techniki.
4,5Opanował większośćmetod tworzenia technik aplikacji rozproszonych. Rozumie dobrze istotę skomplikowania procesy ich wytwarzania. Swobodnie programuje i operuje technikami tworzenia aplikacji rozproszonych.
5,0Swobodnie tworzy aplikacje dla systemów rozproszonych za pomocą różnych technik. Umijętnie testuje je i waliduje oraz zna cele ich przydatności. Rozwija umiejętności, wykracza poza ramy treści programowych. Porogramowanie aplikacji rozproszonych jest opanowane.

Kryterium oceny - umiejętności

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_C25.2_U01
Potrafi projektować i pisać aplikacje do przetwarzania rozproszonego
2,0Nie umie skonfigurować środowiska, zainstalować komponentów. Napisać podstawowego kodu.
3,0Umie zainstalować środowisko i napisać pod nie podstawową aplikację.
3,5Umie zainstalować środowisko i napisać pod nie podstawową aplikację oraz umiejętnie korzysta z dokumentacji.
4,0Umie zainstalować środowisko i napisać pod nie zaawansowaną aplikację oraz umiejętnie korzysta z dokumentacji.
4,5Umie zainstalować środowisko i napisać pod nie zaawansowaną aplikację oraz umiejętnie korzysta z dokumentacji. Dobrze testuje kod.
5,0Umie zainstalować środowisko i napisać pod nie zaawansowaną aplikację oraz umiejętnie korzysta z dokumentacji. Dobrze testuje kod. Stostuje zaawansowane techniki, które dostarcza środowisko.

Kryterium oceny - inne kompetencje społeczne i personalne

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_C25.2_K01
Rozumie potrzebę dokształcania się programowania aplikacji rozproszonych w czasach obecnej cyfryzacji i trendów informatyzowania obiegu dokumentów.
2,0Nie rozumie celów tworzenia aplikacji rozproszonych. Nie potrafi wskazać ich obechności w życiu codziennych.
3,0Potrafi wskazać przykłady systemów rozprosoznych z jakimi spotyka się w życiu codziennym.
3,5Potrafi wskazać przykłady systemów rozprosoznych z jakimi spotyka się w życiu codziennym. Potrafi je kategoryzować.
4,0Potrafi wskazać przykłady systemów rozprosoznych z jakimi spotyka się w życiu codziennym. Potrafi je kategoryzować, zwaraca uwagę na takie cechy jak bezawaryjność czy bezpieczeństwo.
4,5Potrafi wskazać przykłady systemów rozprosoznych z jakimi spotyka się w życiu codziennym. Potrafi je kategoryzować, zwaraca uwagę na takie cechy jak bezawaryjność czy bezpieczeństwo. Potrafi wskazać obszary, w któych brakuje takich systemów.
5,0Potrafi wskazać przykłady systemów rozprosoznych z jakimi spotyka się w życiu codziennym. Potrafi je kategoryzować, zwaraca uwagę na takie cechy jak bezawaryjność czy bezpieczeństwo. Potrafi wskazać obszary, w któych brakuje takich systemów lub jak je można jeszcze rozwinąć.

Literatura podstawowa

  1. M. Ben-Ari, Podstawy programowania współbieżnego i rozproszonego, WNT, 1996
  2. Tanenbaum Andrew, Systemy rozproszone. Zasady i paradygmaty, WNT, 2006

Literatura dodatkowa

  1. Dokumentacja MPI, http://mpi-forum.org/docs/mpi-3.1/mpi31-report.pdf, 2011

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Przedstawienie oraz uruchomienie ze wstępną konfiguracją środowiska MPI2
T-L-2Wykorzystanie podstawowych funkcji środowiskowych do obsługi MPI2
T-L-3MPI : Komunikacja między różnymi procesami - Blokująca (synchroniczna) - Nieblokująca (asynchroniczna)4
T-L-4MPI : Komunikacja grupowa2
T-L-5Laboratoria w zakresie WebServices: - Przedstawienie różnić między WebService REST vs SOAP - Stworzenie WebService typu REST (C#, .Net) oraz klient - Stworzenie WebService typu SOAP (C#, .Net) oraz klienta6
T-L-6Laboratoria w zakresie GoogleDocs - Wprowadzenie do JavaScript w GoogleDocs - Podstawowe komponenty (arkusz, edytor, poczta, mapa) - Programowanie rozproszonego arkusza w chmurze - Programowanie rozproszonego arkusza w chmurze czesc 2 - Programowanie rozproszonego edytora w chmurze - Integracja bibliotek z pocztą Gmail i mapą - Integracja z zewnętrzną bazą14
30

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Podstawowe definicje prrzetwarzania rozproszonego. Operacyjne systemy rozproszone. Trudności w budowaniu aplikacji rozproszontych, ich cele oraz korzyści. Rozproszone bazy danych, replikacja i lokalność. Odprorność na awarie. Przykłady cech przetwarzania rozproszonego na podstawie internetowych systemów (DNS, poczta, itd.) Rodzaje modeli przetwarzania rozproszonego (komunikaty, zdalne usługi, funkcje, RPC i obiekty, agenci mobilni, arcitektury wielowarstwowe).2
T-W-2Komunikaty PVM. Cechy równoległej maszyny wirtualnej. Składniki PVM. Cechy środowiska. Model programowania przyjęty PVM. Zastosowanie PVM. Tolerowanie defektów.2
T-W-3Komunikaty MPI - wprowadzenie, model przekazywania komunikatów, implementacje, kompilatory. Zalety MPI - przenośność, standaryzacja, wydajność obliczeń, funkcjonalność. Historia MPI, wersje oraz dystrybucje.2
T-W-4Komunikaty MPI – komunikacja Point to Point – ogólne zasady. Typy danych i ick konwersja. Metody komunikacji. Blokujące funkcje wysłania i odebrania. Komunikacja bez blokowania.2
T-W-5Komunikaty MPI - komunikacja zbiorcza. Wprowadzenie, argumenty, pojęcie bariery. Broadcast. Operacje równoległej redukcji, skanowanie i operacje nieblokujące.2
T-W-6Komunikacja grupowa MPI - grupy kontekst, komunikatory, cacching. Zarządzanie grupami i komunikatorami. Komunikacja wewnętrzna.2
T-W-7Komunikaty PVM - topologie procesów, zarządzanie procesami, komunikacja jednostronna, interfejsy zewnętrzne, operacje wejścia-wyjścia.2
T-W-8RPC, zdalne wywołanie procesur. Funkcje JAVA RMI.2
T-W-9Programowanie rozproszonych obiektów. Hisroria, komunikacja, implementacja. DCOM, Corba. Programowanie .NET Remoiting, komunikacja binarna, HTTP, singletony, przykłady.2
T-W-10Web Services – SOAP, XML, REST, teoria, przykłady (poczta polska monitoring przesyłek, dane z GUS, allegro). Czytanie specyfikacji, koperta, funkcje i argumenty,2
T-W-11Web Services – kurs praktyczny w środowiskach .NET, PHP i Python.2
T-W-12Cloud computing - wprowadzenie, środowiska, zalety i trudności w projektowaniu systemów. Przetwarzanie w chmurze na przykładzie GoogleDocs - pakietu biurowego i środowiska aplikacji i programowania.2
T-W-13GoogleDocs - javascript. Środowisko programowanie, debuger, pisanie skryptów. Interaktywne elementy. Zdarzenie, przechwytywanie i obsługa. Korzystanie z JDBC.2
T-W-14GoogleDocs - programowanie aplikacji office - arkusz kalkulacyjny, edytor, współpraca z pocztą. Mapy Google.2
T-W-15Grid computing, klastry. Lista najmocniejszych komputerów, celowość budowy, koszty rozwiązania. Systemy rozproszone w Polsce, Internetowe systemy rozproszone. Przyszłość przetwarzania rozproszonego.2
30

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1Udział w zajęciach30
A-L-2Praca własna20
50
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1Udział w wykładach.30
A-W-2Praca własna18
A-W-3Konsultacje.2
50
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_C25.2_W01Zna podstawowe umiejętności gromadzenia danych i przetawarzania informacji w zakresie systemów rozproszonych oraz zna techniki projektowania i programowania aplikacji do przetwarzania rozproszonego.
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_W03Ma szczegółową wiedzę w zakresie wybranych specjalności informatyki technicznej.
Cel przedmiotuC-1Ukształtowanie wiedzy i umiejętności do opracowywania aplikacji rozproszonych oraz obsługi i rozwijania systemów rozproszonych.
Treści programoweT-W-4Komunikaty MPI – komunikacja Point to Point – ogólne zasady. Typy danych i ick konwersja. Metody komunikacji. Blokujące funkcje wysłania i odebrania. Komunikacja bez blokowania.
T-W-1Podstawowe definicje prrzetwarzania rozproszonego. Operacyjne systemy rozproszone. Trudności w budowaniu aplikacji rozproszontych, ich cele oraz korzyści. Rozproszone bazy danych, replikacja i lokalność. Odprorność na awarie. Przykłady cech przetwarzania rozproszonego na podstawie internetowych systemów (DNS, poczta, itd.) Rodzaje modeli przetwarzania rozproszonego (komunikaty, zdalne usługi, funkcje, RPC i obiekty, agenci mobilni, arcitektury wielowarstwowe).
T-W-8RPC, zdalne wywołanie procesur. Funkcje JAVA RMI.
T-W-14GoogleDocs - programowanie aplikacji office - arkusz kalkulacyjny, edytor, współpraca z pocztą. Mapy Google.
T-W-15Grid computing, klastry. Lista najmocniejszych komputerów, celowość budowy, koszty rozwiązania. Systemy rozproszone w Polsce, Internetowe systemy rozproszone. Przyszłość przetwarzania rozproszonego.
T-W-13GoogleDocs - javascript. Środowisko programowanie, debuger, pisanie skryptów. Interaktywne elementy. Zdarzenie, przechwytywanie i obsługa. Korzystanie z JDBC.
T-L-3MPI : Komunikacja między różnymi procesami - Blokująca (synchroniczna) - Nieblokująca (asynchroniczna)
T-L-5Laboratoria w zakresie WebServices: - Przedstawienie różnić między WebService REST vs SOAP - Stworzenie WebService typu REST (C#, .Net) oraz klient - Stworzenie WebService typu SOAP (C#, .Net) oraz klienta
T-L-2Wykorzystanie podstawowych funkcji środowiskowych do obsługi MPI
T-L-4MPI : Komunikacja grupowa
T-L-1Przedstawienie oraz uruchomienie ze wstępną konfiguracją środowiska MPI
T-L-6Laboratoria w zakresie GoogleDocs - Wprowadzenie do JavaScript w GoogleDocs - Podstawowe komponenty (arkusz, edytor, poczta, mapa) - Programowanie rozproszonego arkusza w chmurze - Programowanie rozproszonego arkusza w chmurze czesc 2 - Programowanie rozproszonego edytora w chmurze - Integracja bibliotek z pocztą Gmail i mapą - Integracja z zewnętrzną bazą
Metody nauczaniaM-1Wykład
Sposób ocenyS-2Ocena formująca: Zaliczenie końcowo polegające na formie pytań i odpowiedzi.
Kryteria ocenyOcenaKryterium oceny
2,0Nie rozumie istosty przetwarzania rozproszonego. Nie programuje aplikacji rozproszonych, ma trudności z wiedzą z podstaw programowania i programowania obiektowego.
3,0Zna przykłady aplikacji rozproszonych. Rozmie ich wagę w dobie cyfryzacji. Rozumie kod aplikacji rozproszonych, ale brakuje mu umiejętności tworzenia własnych projektów.
3,5Umie podać przykłady i techniki aplikacji rozproszonych oraz kategoryzować ich sposób wytworzenia. Rozumie kod aplikacji rozproszonych, podejmuje próby pisania własnych aplikacji.
4,0Opanował dobrze jedną z technik tworzenia aplikacji rozproszonych. Zna podstawy innych metod. Rozumie kod aplikacji rozproszonych, umie pisać własne aplikacje i dobierać odpowiednie techniki.
4,5Opanował większośćmetod tworzenia technik aplikacji rozproszonych. Rozumie dobrze istotę skomplikowania procesy ich wytwarzania. Swobodnie programuje i operuje technikami tworzenia aplikacji rozproszonych.
5,0Swobodnie tworzy aplikacje dla systemów rozproszonych za pomocą różnych technik. Umijętnie testuje je i waliduje oraz zna cele ich przydatności. Rozwija umiejętności, wykracza poza ramy treści programowych. Porogramowanie aplikacji rozproszonych jest opanowane.
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_C25.2_U01Potrafi projektować i pisać aplikacje do przetwarzania rozproszonego
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_U04Potrafi identyfikować związki i zależności w procesach zachodzących w systemach rzeczywistych i na tej podstawie tworzyć modele komputerowe oraz przeprowadzać ich symulacje.
I_1A_U07Potrafi samodzielnie posługiwać się materiałami źródłowymi w zakresie analizy i syntezy zawartych w nich informacji oraz poddawać je krytycznej ocenie w odniesieniu do problemów informatycznych.
Cel przedmiotuC-2Ukształtowanie świadomego rozumowania samodokształcania się z zakresu tworzenia oprogramowania rozprosonego, jego obsługi i testowania.
C-1Ukształtowanie wiedzy i umiejętności do opracowywania aplikacji rozproszonych oraz obsługi i rozwijania systemów rozproszonych.
Treści programoweT-L-1Przedstawienie oraz uruchomienie ze wstępną konfiguracją środowiska MPI
T-L-4MPI : Komunikacja grupowa
T-L-6Laboratoria w zakresie GoogleDocs - Wprowadzenie do JavaScript w GoogleDocs - Podstawowe komponenty (arkusz, edytor, poczta, mapa) - Programowanie rozproszonego arkusza w chmurze - Programowanie rozproszonego arkusza w chmurze czesc 2 - Programowanie rozproszonego edytora w chmurze - Integracja bibliotek z pocztą Gmail i mapą - Integracja z zewnętrzną bazą
T-W-7Komunikaty PVM - topologie procesów, zarządzanie procesami, komunikacja jednostronna, interfejsy zewnętrzne, operacje wejścia-wyjścia.
T-W-8RPC, zdalne wywołanie procesur. Funkcje JAVA RMI.
T-W-9Programowanie rozproszonych obiektów. Hisroria, komunikacja, implementacja. DCOM, Corba. Programowanie .NET Remoiting, komunikacja binarna, HTTP, singletony, przykłady.
T-W-10Web Services – SOAP, XML, REST, teoria, przykłady (poczta polska monitoring przesyłek, dane z GUS, allegro). Czytanie specyfikacji, koperta, funkcje i argumenty,
T-W-11Web Services – kurs praktyczny w środowiskach .NET, PHP i Python.
T-W-12Cloud computing - wprowadzenie, środowiska, zalety i trudności w projektowaniu systemów. Przetwarzanie w chmurze na przykładzie GoogleDocs - pakietu biurowego i środowiska aplikacji i programowania.
T-W-13GoogleDocs - javascript. Środowisko programowanie, debuger, pisanie skryptów. Interaktywne elementy. Zdarzenie, przechwytywanie i obsługa. Korzystanie z JDBC.
Metody nauczaniaM-1Wykład
M-2Ćwiczenia laboratoryjne
Sposób ocenyS-1Ocena formująca: Ocena stopnia ukończenia zadania i napisania programu na zajęciach laboratoryjnych.
S-2Ocena formująca: Zaliczenie końcowo polegające na formie pytań i odpowiedzi.
Kryteria ocenyOcenaKryterium oceny
2,0Nie umie skonfigurować środowiska, zainstalować komponentów. Napisać podstawowego kodu.
3,0Umie zainstalować środowisko i napisać pod nie podstawową aplikację.
3,5Umie zainstalować środowisko i napisać pod nie podstawową aplikację oraz umiejętnie korzysta z dokumentacji.
4,0Umie zainstalować środowisko i napisać pod nie zaawansowaną aplikację oraz umiejętnie korzysta z dokumentacji.
4,5Umie zainstalować środowisko i napisać pod nie zaawansowaną aplikację oraz umiejętnie korzysta z dokumentacji. Dobrze testuje kod.
5,0Umie zainstalować środowisko i napisać pod nie zaawansowaną aplikację oraz umiejętnie korzysta z dokumentacji. Dobrze testuje kod. Stostuje zaawansowane techniki, które dostarcza środowisko.
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_C25.2_K01Rozumie potrzebę dokształcania się programowania aplikacji rozproszonych w czasach obecnej cyfryzacji i trendów informatyzowania obiegu dokumentów.
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_K01Jest gotów do krytycznej oceny posiadanej wiedzy oraz ma świadomość jej znaczenia w procesie rozwiązywania szeregu problemów inżynierskich i technicznych w dziedzinie informatyki.
Cel przedmiotuC-2Ukształtowanie świadomego rozumowania samodokształcania się z zakresu tworzenia oprogramowania rozprosonego, jego obsługi i testowania.
C-1Ukształtowanie wiedzy i umiejętności do opracowywania aplikacji rozproszonych oraz obsługi i rozwijania systemów rozproszonych.
Treści programoweT-W-1Podstawowe definicje prrzetwarzania rozproszonego. Operacyjne systemy rozproszone. Trudności w budowaniu aplikacji rozproszontych, ich cele oraz korzyści. Rozproszone bazy danych, replikacja i lokalność. Odprorność na awarie. Przykłady cech przetwarzania rozproszonego na podstawie internetowych systemów (DNS, poczta, itd.) Rodzaje modeli przetwarzania rozproszonego (komunikaty, zdalne usługi, funkcje, RPC i obiekty, agenci mobilni, arcitektury wielowarstwowe).
T-W-14GoogleDocs - programowanie aplikacji office - arkusz kalkulacyjny, edytor, współpraca z pocztą. Mapy Google.
T-W-15Grid computing, klastry. Lista najmocniejszych komputerów, celowość budowy, koszty rozwiązania. Systemy rozproszone w Polsce, Internetowe systemy rozproszone. Przyszłość przetwarzania rozproszonego.
T-W-13GoogleDocs - javascript. Środowisko programowanie, debuger, pisanie skryptów. Interaktywne elementy. Zdarzenie, przechwytywanie i obsługa. Korzystanie z JDBC.
Metody nauczaniaM-1Wykład
M-2Ćwiczenia laboratoryjne
Sposób ocenyS-2Ocena formująca: Zaliczenie końcowo polegające na formie pytań i odpowiedzi.
Kryteria ocenyOcenaKryterium oceny
2,0Nie rozumie celów tworzenia aplikacji rozproszonych. Nie potrafi wskazać ich obechności w życiu codziennych.
3,0Potrafi wskazać przykłady systemów rozprosoznych z jakimi spotyka się w życiu codziennym.
3,5Potrafi wskazać przykłady systemów rozprosoznych z jakimi spotyka się w życiu codziennym. Potrafi je kategoryzować.
4,0Potrafi wskazać przykłady systemów rozprosoznych z jakimi spotyka się w życiu codziennym. Potrafi je kategoryzować, zwaraca uwagę na takie cechy jak bezawaryjność czy bezpieczeństwo.
4,5Potrafi wskazać przykłady systemów rozprosoznych z jakimi spotyka się w życiu codziennym. Potrafi je kategoryzować, zwaraca uwagę na takie cechy jak bezawaryjność czy bezpieczeństwo. Potrafi wskazać obszary, w któych brakuje takich systemów.
5,0Potrafi wskazać przykłady systemów rozprosoznych z jakimi spotyka się w życiu codziennym. Potrafi je kategoryzować, zwaraca uwagę na takie cechy jak bezawaryjność czy bezpieczeństwo. Potrafi wskazać obszary, w któych brakuje takich systemów lub jak je można jeszcze rozwinąć.