Wydział Informatyki - Informatyka (S2)
Sylabus przedmiotu Programowanie sieciowe:
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 | Programowanie sieciowe | ||
Specjalność | inżynieria oprogramowania | ||
Jednostka prowadząca | Katedra Inżynierii Oprogramowania | ||
Nauczyciel odpowiedzialny | Sławomir Wernikowski <Slawomir.Wernikowski@zut.edu.pl> | ||
Inni nauczyciele | Sławomir Wernikowski <Slawomir.Wernikowski@zut.edu.pl> | ||
ECTS (planowane) | 3,0 | ECTS (formy) | 3,0 |
Forma zaliczenia | zaliczenie | Język | polski |
Blok obieralny | — | Grupa obieralna | — |
Formy dydaktyczne
Wymagania wstępne
KOD | Wymaganie wstępne |
---|---|
W-1 | Biegła umiejętność programowania w dowolnym języku z rodziny C (C/C++/C#/Java) |
Cele przedmiotu
KOD | Cel modułu/przedmiotu |
---|---|
C-1 | Ukształtowanie umiejętności oprogramowania zagadnień wymagających komunikacji w sieciach TCP/IP w oparciu o gniazda BSD |
C-2 | Zapoznanie ze standardami dokumentowania i publikowania norm regulujących strukturę i wykorzystanie współczesnych protokołów sieciowych |
Treści programowe z podziałem na formy zajęć
KOD | Treść programowa | Godziny |
---|---|---|
laboratoria | ||
T-L-1 | Zapoznanie z RFC 2045; Implementacja kodera/dekodera kodu base64 | 2 |
T-L-2 | Zapoznanie z RFC 1939; Implementacja prostego klienta protokołu POP3 | 2 |
T-L-3 | Zapoznanie z RFC 2821; implementacja prostego klienta protokołu SMTP z możliwością wysyłania załączników MIME | 2 |
T-L-4 | Zapoznanie z RFC 959; Implementacja klienta FTP. | 4 |
T-L-5 | Zapoznanie z RFC 2616; Implementacja crawlera HTTP | 2 |
T-L-6 | Implementacja wielowątkowego serwera HTTP | 3 |
15 | ||
wykłady | ||
T-W-1 | Kodowanie i dekodowanie informacji w sieciach komputerowych - uwarunkowania historyczne, kodowanie treści binarnych w kanałach znakowych (kodowanie UU, XX, base64, MIME). | 3 |
T-W-2 | Podstawy teoretyczne i praktyczne wykorzystania gniazd BSD (model ISO/OSI, implementacja modelu w sieciach TCP/IP, protokoły połączeniowe i bezpołączeniowe, funkcje systemowe dotyczące gniazd reguły pisania klientów i serwerów protokołów opartych o TCP z wykorzystanie bibilioteki BSD Sockets) | 3 |
T-W-3 | Protokół POP3 jako przykład jednostrumieniowego protokołu pytanie-odpowiedź; API gniazd w różnych językach programowania i na różnych platformach (klasy i funkcje obudowujące w językach wysokiego poziomu – C#/Java) | 2 |
T-W-4 | Protokół FTP jako przykład dwustrumieniowego protokołu pytanie-odpowiedź; | 2 |
T-W-5 | Protokół HTTP - specyfikacja, wersji, szczegóły implementacyjne, osobliwości. | 2 |
T-W-6 | Protokół CGI (umiejscowienie skryptów CGI w systemie operacyjnym, metody GET i POST, odpowiedź skryptu CGI) | 3 |
15 |
Obciążenie pracą studenta - formy aktywności
KOD | Forma aktywności | Godziny |
---|---|---|
laboratoria | ||
A-L-1 | uczestnictwo w zajęciach laboratoryjnych | 15 |
A-L-2 | indywidualne przygotowanie do zajęć laboratoryjnych | 10 |
A-L-3 | implementacja zadań laboratoryjnych (praca zdalna) | 10 |
A-L-4 | Udzał w konsultacjach i zaliczeniu formy zajęć | 2 |
37 | ||
wykłady | ||
A-W-1 | udział w wykładach | 15 |
A-W-2 | samodzielne studiowanie tematyki wykładów | 25 |
A-W-3 | Udzał w konsultacjach i zaliczeniu formy zajęć | 2 |
42 |
Metody nauczania / narzędzia dydaktyczne
KOD | Metoda nauczania / narzędzie dydaktyczne |
---|---|
M-1 | wykład informacyjny |
M-2 | wykład problemowy |
M-3 | ćwiczenia laboratoryjne (praca on-site) |
M-4 | ćwiczenia laboratoryjne (praca off-site) |
Sposoby oceny
KOD | Sposób oceny |
---|---|
S-1 | Ocena formująca: ocena zgodności wykonanych zadań laboratoryjnych ze specyfikacją wymagań |
S-2 | Ocena formująca: ocena poprawności implementacji na podstawie wyników testów akceptacyjnych |
S-3 | Ocena podsumowująca: kolokwium zaliczeniowe (test wielokrotnego wyboru) |
S-4 | Ocena podsumowująca: egzamin ustny z obroną implementacji zadań laboratoryjnych |
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/07_W01 Student potrafi definiować podstawowe pojęcia opisujące strukturę i działanie protokołow transmisyjnych w sieciach TCP/IP | I_2A_W07, I_2A_W10 | — | C-1 | T-W-2, T-W-1 | M-1, M-2 | S-4 |
I_2A_D14/07_W02 Student potrafi opisać funkcjonowanie sieciowych protokołów transmisyjnych oraz wytłumaczyć zależności i różnice pomiędzy nimi. | I_2A_W06 | — | C-2 | T-L-2, T-L-3, T-L-1, T-L-4, T-L-5 | M-1, M-2 | S-4 |
I_2A_D14/07_W03 Student potrafi wskazać środki programistyczne adekwatne do postawionego problemu implementacyjnego. | I_2A_W05 | — | C-1 | T-W-2 | M-1, M-2 | S-3 |
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/07_U01 Student potrafi rozwiązywać praktyczne problemy implementacji zagadnień wymagających zastosowanie niskopoziomowej komunikacji sieciowej w oparciu o protokoły rodziny TCP/IP i wyższe. | I_2A_U08 | — | C-1 | T-L-6, T-W-5, T-W-3, T-W-4 | M-3, M-4 | S-1, S-2 |
I_2A_D14/07_U02 Student potrafi wykorzystywać dokumenty normalizacyjne w celu podnoszenia własnych kwalifikacji i jakości wytwarzanego oprogramowania | I_2A_U16, I_2A_U02 | — | C-2 | T-L-2, T-L-3, T-L-1, T-L-4, T-L-5 | M-3, M-4 | S-1, S-2 |
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/07_K01 Student nabywa zdolności do samodzielnego zdobywania, zgłębiania i interpretowania wiedzy zdefiniowanej w międzynarodowych dokumentach normalizacyjnych | I_2A_K02 | — | C-2 | T-W-2 | M-3, M-4 | S-3 |
Kryterium oceny - wiedza
Efekt kształcenia | Ocena | Kryterium oceny |
---|---|---|
I_2A_D14/07_W01 Student potrafi definiować podstawowe pojęcia opisujące strukturę i działanie protokołow transmisyjnych w sieciach TCP/IP | 2,0 | niespełnienie kryteriów uzyskania oceny 3,0 |
3,0 | znajomość organizacji stosu protokołów TCP/IP oraz ich przełożenia na warstwy modelu ISO/OSI | |
3,5 | biegła znajomość organizacji stosu protokołów TCP/IP oraz ich przełożenia na warstwy modelu ISO/OSI | |
4,0 | biegła znajomość organizacji stosu protokołów TCP/IP oraz ich przełożenia na warstwy modelu ISO/OSI; znajomość przeznaczenia i zastosowań protokołów stosu TCP/IP | |
4,5 | biegła znajomość organizacji stosu protokołów TCP/IP oraz ich przełożenia na warstwy modelu ISO/OSI; biegła znajomość przeznaczenia i zastosowań protokołów stosu TCP/IP | |
5,0 | biegła znajomość organizacji stosu protokołów TCP/IP oraz ich przełożenia na warstwy modelu ISO/OSI; biegła znajomość przeznaczenia i zastosowań protokołów stosu TCP/IP; znajomość semantyki wybranych protokołów stosu TCP i warstwy aplikacji | |
I_2A_D14/07_W02 Student potrafi opisać funkcjonowanie sieciowych protokołów transmisyjnych oraz wytłumaczyć zależności i różnice pomiędzy nimi. | 2,0 | niespełnienie kryteriów uzyskania oceny 3,0 |
3,0 | wiedza nt. przeznaczenia i stosowania wybranych protokołów warstwy aplikacji | |
3,5 | wyczerpująca wiedza nt. przeznaczenia i stosowania wybranych protokołów warstwy aplikacji | |
4,0 | wyczerpująca wiedza nt. przeznaczenia i stosowania wybranych protokołów warstwy aplikacji; wiedza nt. semantyki wybranych protokołów warstwy aplikacji | |
4,5 | wyczerpująca wiedza nt. przeznaczenia i stosowania wybranych protokołów warstwy aplikacji; wyczerpująca wiedza nt. semantyki wybranych protokołów warstwy aplikacji | |
5,0 | wyczerpująca wiedza nt. przeznaczenia i stosowania wybranych protokołów warstwy aplikacji; wyczerpująca wiedza nt. semantyki wybranych protokołów warstwy aplikacji; wiedza nt. sposobów implementacji wybranych protokołów warstwy aplikacji w różnych językach programowania | |
I_2A_D14/07_W03 Student potrafi wskazać środki programistyczne adekwatne do postawionego problemu implementacyjnego. | 2,0 | niespełnienie kryteriów uzyskania oceny 3,0 |
3,0 | znajomość podstawowej implementacji gniazd BSD | |
3,5 | biegła znajomość podstawowej implementacji gniazd BSD | |
4,0 | biegła znajomość podstawowej implementacji gniazd BSD; znajomość wybranej implementacji gniazd BSD w językach obiektowych | |
4,5 | biegła znajomość podstawowej implementacji gniazd BSD; biegłaznajomość wybranej implementacji gniazd BSD w językach obiektowych | |
5,0 | biegła znajomość podstawowej implementacji gniazd BSD; biegłaznajomość wybranej implementacji gniazd BSD w językach obiektowych;znajomośc wybranych klas opakowujących protokoły warstw aplikacji dostępnych w językach obiektowych |
Kryterium oceny - umiejętności
Efekt kształcenia | Ocena | Kryterium oceny |
---|---|---|
I_2A_D14/07_U01 Student potrafi rozwiązywać praktyczne problemy implementacji zagadnień wymagających zastosowanie niskopoziomowej komunikacji sieciowej w oparciu o protokoły rodziny TCP/IP i wyższe. | 2,0 | niespełnienie kryteriów uzyskania oceny 3,0 |
3,0 | umiejętnośc powtórnego wykorzystania i modyfikowania gotowego kodu źródłowego do rozwiązania postawionych zadań | |
3,5 | wyróżniająca umiejętnośc powtórnego wykorzystania i modyfikowania gotowego kodu źródłowego do rozwiązania postawionych zadań | |
4,0 | wyróżniająca umiejętnośc powtórnego wykorzystania i modyfikowania gotowego kodu źródłowego do rozwiązania postawionych zadań; umiejętnośc pisania własnego kodu źródłowego wykorzystującego gotowe klasy opakowujące do rozwiązania postawionych zadań | |
4,5 | wyróżniająca umiejętnośc powtórnego wykorzystania i modyfikowania gotowego kodu źródłowego do rozwiązania postawionych zadań; wyróżniająca umiejętnośc pisania własnego kodu źródłowego wykorzystującego gotowe klasy opakowujące do rozwiązania postawionych zadań | |
5,0 | wyróżniająca umiejętnośc powtórnego wykorzystania i modyfikowania gotowego kodu źródłowego do rozwiązania postawionych zadań; wyróżniająca umiejętnośc pisania własnego kodu źródłowego wykorzystującego gotowe klasy opakowujące do rozwiązania postawionych zadań; umiejętnośc pisania w pełni oryginalnego własnego kodu źródłowego | |
I_2A_D14/07_U02 Student potrafi wykorzystywać dokumenty normalizacyjne w celu podnoszenia własnych kwalifikacji i jakości wytwarzanego oprogramowania | 2,0 | niespełnienie kryteriów uzyskania oceny 3,0 |
3,0 | umiejętność przeszukiwania dokumentów RFC celem pozyskania informacji niezbędnych do rozwiązania postawionych zadań | |
3,5 | biegła umiejętność przeszukiwania dokumentów RFC celem pozyskania informacji niezbędnych do rozwiązania postawionych zadań | |
4,0 | biegła umiejętność przeszukiwania dokumentów RFC celem pozyskania informacji niezbędnych do rozwiązania postawionych zadań; rozumienie struktury dokumentów RFC i hierarchii uaktualnień oraz wokabulariusza dokumentów RFC | |
4,5 | biegła umiejętność przeszukiwania dokumentów RFC celem pozyskania informacji niezbędnych do rozwiązania postawionych zadań; wyróżniające rozumienie struktury dokumentów RFC i hierarchii uaktualnień oraz wokabulariusza dokumentów RFC | |
5,0 | biegła umiejętność przeszukiwania dokumentów RFC celem pozyskania informacji niezbędnych do rozwiązania postawionych zadań; wyróżniające rozumienie struktury dokumentów RFC i hierarchii uaktualnień oraz wokabulariusza dokumentów RFC; umiejętnośc tworzenia własnych dokumentów normalizacyjnych opartych o RFC |
Kryterium oceny - inne kompetencje społeczne i personalne
Efekt kształcenia | Ocena | Kryterium oceny |
---|---|---|
I_2A_D14/07_K01 Student nabywa zdolności do samodzielnego zdobywania, zgłębiania i interpretowania wiedzy zdefiniowanej w międzynarodowych dokumentach normalizacyjnych | 2,0 | niespełnienie kryteriów uzyskania oceny 3,0 |
3,0 | zdolność do posługiwania się dokumentami normalizacyjnymi w pracach projektowych implementacyjnych | |
3,5 | biegła zdolność do posługiwania się dokumentami normalizacyjnymi w pracach projektowych implementacyjnych | |
4,0 | biegła zdolność do posługiwania się dokumentami normalizacyjnymi w pracach projektowych implementacyjnych; zdolność do kreowania własnych dokumentów normalizacyjnych spełniających powszechnie stosowane wzorce | |
4,5 | biegła zdolność do posługiwania się dokumentami normalizacyjnymi w pracach projektowych implementacyjnych; wyróżniająca zdolność do kreowania własnych dokumentów normalizacyjnych spełniających powszechnie stosowane wzorce | |
5,0 | biegła zdolność do posługiwania się dokumentami normalizacyjnymi w pracach projektowych implementacyjnych; wyróżniająca zdolność do kreowania własnych dokumentów normalizacyjnych spełniających powszechnie stosowane wzorce; zdolnośc do projektowania eksperymentów weryfikujących zgodność implementacji z dokumentami normalizacyjnymi |
Literatura podstawowa
- Richard W. Stevens, UNIX. Programowanie usług sieciowych, WNT, Warszawa, 2002
Literatura dodatkowa
- Internet Engineering Task Force, RFC Pages, 2011, http://www.ietf.org/rfc.html