185
AKADEMIA PODLASKA WYDZIAŁ NAUK ŚCISŁYCH Kierunek INFORMATYKA INFORMATOR -SYLABUS- studia II stopnia (magisterskie uzupełniające) czas trwania: 4 semestry Siedlce 2009/2010

INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

Embed Size (px)

Citation preview

Page 1: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

AKADEMIA PODLASKA

WYDZIAŁ NAUK ŚCISŁYCH

Kierunek INFORMATYKA

INFORMATOR

-SYLABUS-

studia II stopnia

(magisterskie uzupełniające)

czas trwania: 4 semestry

Siedlce 2009/2010

Page 2: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

2

SPIS TREŚCI

OBLICZENIA NAUKOWE I METODY NUMERYCZNE COMPUTATIONAL AND NUMERICAL METHODS IN SCIENCE ......................................................................................................................................................................... 3

BADANIA OPERACYJNE OPERATIONAL RESEARCH ......................................................................................... 10

MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH MODELING AND ANALYSIS OF INFORMATION SYSTEMS ........................................................................................................................................................ 16

ZASTOSOWANIA INFORMATYKI I COMPUTER SCIENCE APPLICATIONS I ........................................................ 23

METODY EWOLUCYJNE I SIECI NEURONOWE EVOLUTIONARY METHODS AND NEURAL NETWORKS.............. 28

INTELIGENTNE SYSTEMY AGENTOWE INTELLIGENT AGENT SYSTEMS ............................................................ 34

ZAAWANSOWANE TECHNOLOGIE PROGRAMISTYCZNE ADVANCED PROGRAMMING TECHNOLOGIES .......... 40

MULTIMEDIALNE INTERFEJSY UŻYTKOWNIKA MULTIMEDIA USER INTERFACES ............................................ 46

SIECI I SYSTEMY WIRTUALNE VIRTUAL NETWORKS SYSTEMS ........................................................................ 52

ROZPROSZONE SYSTEMY SZTUCZNEJ INTELIGENCJI DISTRIBUTED SYSTEMS OF ARTIFICIAL INTELLIGENCE .... 58

ZASTOSOWANIA INFORMATYKI II - PROJEKT ZESPOŁOWY COMPUTER SCIENCE APPLICATIONS II - TEAM PROGRAMMING PROJECT .............................................................................................................................. 65

ŚRODOWISKA PRZETWARZANIA ROZPROSZONEGO DISTRIBUTED PROCESSING ENVIRONMENT .................. 71

PROJEKTOWANIE SYSTEMÓW ROZPROSZONYCH DISTRIBUTED SYSTEMS DESIGN ........................................ 78

ZAAWANSOWANE SIECI KOMPUTEROWE ADVANCED COMPUTER NETWORKING ......................................... 85

PROJEKTOWANIE SIECI KOMPUTEROWYCH COMPUTER NETWORKS DESIGN ............................................... 91

ALGORYTMY I ŚRODOWISKA RÓWNOLEGŁE ALGORITHMS AND PARALLEL ENVIRONMENTS ........................ 98

ZARZĄDZANIE SIECIAMI KOMPUTEROWYMI I SYSTEMAMI ROZPROSZONYMI MANAGEMENT IN COMPUTER NETWORKS AND DISTRIBUTED SYSTEMS ..................................................................................................... 104

SYSTEMY KRYPTOGRAFICZNE CRYPTOGRAPHIC SYSTEMS ........................................................................... 111

TECHNOLOGIE I SYSTEMY BEZPIECZEOSTWA KOMPUTEROWEGO TECHNOLOGIES AND SYSTEMS OF COMPUTER SECURITY................................................................................................................................... 118

BEZPIECZEOSTWO APLIKACJI W ŚRODOWISKU SIECIOWYM APPLICATION SECURITY IN NETWORK ENVIRONMENTS ........................................................................................................................................... 124

SYSTEMY WYKRYWANIA WŁAMAO INTRUSION DETECTION SYSTEMS ........................................................ 130

PROJEKTOWANIE APLIKACJI I SYSTEMÓW BEZPIECZEOSTWA KOMPUTEROWEGO DESIGN OF COMPUTER SECURITY APPLICATIONS AND SYSTEMS ...................................................................................................... 136

ZARZĄDZANIE BEZPIECZEOSTWEM SYSTEMÓW KOMPUTEROWYCH COMPUTER SYSTEMS SECURITY MANAGEMENT............................................................................................................................................. 142

PROJEKTOWANIE APLIKACJI INTERNETOWYCH I ROZPROSZONYCH INTERNET AND DISTRIBUTED APPLICATIONS DESIGN ................................................................................................................................. 149

MULTIMEDIALNE I OBIEKTOWE BAZY DANYCH MULTIMEDIA AND OBJECT-ORIENTED DATABASES ............ 155

ANALIZA I EKSPLORACJA DANYCH DATA MINING ........................................................................................ 160

HURTOWNIE DANYCH DATA WAREHOUSES ................................................................................................ 167

ADMINISTROWANIE SYSTEMAMI BAZ DANYCH DATABASE SYSTEMS ADMINISTRATION ............................ 174

PROJEKTOWANIE ZINTEGROWANYCH SYSTEMÓW INFORMATYCZNYCH INTEGRATED INFORMATION SYSTEMS DESIGN.......................................................................................................................................... 180

Page 3: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

3

Kierunek: Informatyka

Przedmiot:

Obliczenia naukowe i metody numeryczne

Computational and Numerical Methods in Science

Czas trwania: semestr 1

Przedmiot: podstawowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr Anna Wawrzyńczak-Szaban 15 zaliczenie na ocenę 3

Ćwiczenia dr Anna Wawrzyńczak-Szaban 15 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Analiza Matematyczna,

Algebra liniowa,

Matematyka Dyskretna,

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Zasadniczym celem przedmiotu Obliczenia naukowe i metody numeryczje jest przekazanie

wiedzy z zakresu narzędzi matematycznych umozliwiających prowadzenie rozmaitych

symulacji numerycznych zarówno w ramach pracy magisterskiej, jaki i w przyszłej pracy

zawodowej.

Rozwiniętymi celami szczegółowymi są:

tworzenie modeli matematycznych

metody numeryczne przybliżania rozwiązania równań algebraicznych,

metody numeryczne rozwiązywania układów równań algebraiczncych

interpolacja i aproksymacja

metody numeryczne rozwiązywania równań różniczkowych zwyczajnych

Celem laboratorium jest nabycie umiejętności skutecznego wykorzystania oprogramowania

naukowego jakim jest MatLab. Wykorzystanie MatLab’a do rozwiazywania konkretnych

zagadnien umozliwi przeniesienie ciezaru wykonywania standardowych obliczen na program

komputerowy, pozwalajac studentom skoncentrowac sie na istotnych cechach poszczególnych

Page 4: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

4

schematów numerycznych.Cele szczegółowe laboratorium obejmują następujące

umiejętności praktyczne:

szukanie rozwiązań równań algebraicznych

rozwiązywanie układów równań algebraicznych

interpolacja i aproksymacja danych eksperymentalnych

rozwiązywanie równań różniczkowych zwyczajnych rzędu pierwszego

WYKŁAD

1. Podstawowe pojęcia matematyki obliczeń naukowych

Matematyczny model procesu

Pojęcie przybliżonego rozwiązania zagadnienia

Etapy modelowania

2. Błędy obliczeń numerycznych

Błędy obliczeń numerycznych. Błąd względny i bezwzględny. Podstawowe źródła

błędów. Ogólna postać błędu.

Zapis maszynowy liczby zmiennoprzecinkowej i błędy operacji na tych liczbach

Propagacja błędu

3. Metody przybliżonego rozwiązania równań algebraicznych - część I

Metoda bisekcji

Metoda interpolacji liniowej

Warunki zbieżności metod numerycznych

4. Metody przybliżonego rozwiązania równań algebraicznych - część II

Metoda iteracji

Metoda Newtona- Rapsona

Porównanie zbieżności metod

5. Metody numerycznego rozwiazania układów równan algebraicznych - cześć I

Metoda eliminacji Gaussa

Dekompozycja LU

Metoda Crout’a (Thomasa)

6. Metody numerycznego rozwiązania układów równań algebraicznych - część II

Metoda iteracji Jakobiego

Metoda iteracji Gaussa-Seidla

Metoda relaksacji

7. Interpolacja zbioru danych eksperymentalnych

Interpolacja za pomocą wielomianów

Page 5: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

5

Wzór interpolacyjny Lagrange’a

Interpolacja Newtona dla węzłów równoodległych

Interpolacja wielomianami sklejanymi

8. Aprokdymacja danych eksperymentalnych

Zasady doboru odpowiedniej funkcji aproksymującej

Określenie dokładności aproksymacji

Regresja liniowa

Aproksymacja wielomianem

9. Metody numeryczne przybliżania pochodnych

Wzór Taylora

Wzór Stirlinga

Różnice centralne

10. Metody numeryczne przybliżania wartości całek oznaczonych

Wzór Prostokątów

Kwadratury Newtona-Cotesa

Metoday Simpsona

11. Podstawowe wiadomości z równań różniczkowych zwyczajnych

Podstawowa definicja równania różniczkowego zwyczajnego

Interpretacja geometryczna równania różniczkowego zwyczajnego pierwszego rzędu

Podstawowe typy równań różniczkowych zwyczajnych

Określenie całki ogólnej i szczególnej

12. Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu

pierwszego - część I

Istnienie i jednoznaczność rozwiązań

Zastosowanie wzoru Taylora dla przybliżenia pochodnej funkcji

Zagadnienie Cauchy’ego

13. Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu

pierwszego - część II metody jednokrokowe

Metoda Euler’a

Metoda Heun’a

Metoda Rungego - Kutty (rząd 3,4,5)

Metoda Rungego-Kutta-Fehlberga

14. Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu

pierwszego- część III metody wielokrokowe

Metody z zmiennym krokiem całkowania

Jawna metoda Adamsa-Bashfortha

Page 6: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

6

Niejawna metoda Adamsa-Moultona

15. Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych

wyższych rzędów

Sprowadzanie równania rzędu większego jeden do układu równań rzędu pierwszego

Metody numeryczne rozwiązywania układów równań różniczkowych zwyczajnych

rzędu pierwszego

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Podstawowe operacje w MatLab

Typy zmiennych

Macierze i operacje na nich

Wykreślanie wykresów funkcji

2. Funkcje i skrypty w MatLab

Podstawowe instrukcje języka MatLab

Struktura funkcji języka MatLab

Tworzenie skryptów języka MatLab

3. Rozwiązywanie równań algebraicznych - część I

Funkcje wbudowane MatLab znajdowania pierwiastków równań algebraicznych

Metoda bisekcji

Metoda siecznych

4. Rozwiązywanie równań algebraicznych - część II

Metoda iteracji

Metoda secant

Porównanie efektywności metod numerycznych rozwiązywania równań

algebraicznych

5. Rozwiązywanie układów równań algebraicznych - część I

Page 7: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

7

Reprezentacja macierzowa układu równań algebraicznych

Funkcje wbudowane MatLab znajdowania rozwiązania układu równań algebraicznych

6. Rozwiązywanie układów równań algebraicznych - część II

Metoda Crout’a (Thomasa) dla układów trójprzekątniowych

Metoda iteracji Jakobiego

Metoda iteracji Gaussa-Seidla

7. Rozwiązywanie zadań interpolacji danych

Funkcje wbudowane MatLab znajdowania interpolacji danych

Interpolacja funkcjami dwóch i trzech zmiennych

Interpolacja wielomianami

8. Zadania aproksymacji danych eksperymentalnych

Funkcje wbudowane MatLab znajdowania aproksymacji danych

Zastosowanie równania aproksymacji

Metoda najmniejszych kwadratów

9. Rózniczkowanie numeryczne

Funkcje wbudowane MatLab obliczania pochodnych funkcji

Zastosowanie różnic skonczonch

10. Całkowanie numeryczne

Funkcje wbudowane MatLab znajdowania wartości całek oznaczonych

Metoda Simpsona

11. Rozwiązywanie numeryczne równań różniczkowych zwyczajnych - część I

Funkcje wbudowane MatLab znajdowania rozwiązania równań różniczkowych

zwyczajnych

Zastosowanie metody Euler’a

Zastosowanie metody Heuna

12. Rozwiązywanie numeryczne równań różniczkowych zwyczajnych - część II

Rozwiązywanie niesztywnych układów równań różniczkowych w oparciu o metodę

Rungego - Kutty

Funkcje wbudowane MatLab ode45(), ode23()

Porównanie efektywności poznanych metod

13. Rozwiązywanie numeryczne równań różniczkowych zwyczajnych - część III metody

wielokrokowe

Metoda Adamsa-Bashforth’a

Metoda Adamsa-Moulton’a

Page 8: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

8

14. Rozwiązywanie numeryczne równań różniczkowych zwyczajnych - część IV metody

typu predyktor-korektor

Funkcje wbudowane MatLab ode113(), ode23()

Metoda Adams’a - Bashforth’a - Moulton’a

Metoda Milne’a- Hamminga

15. Rozwiązywanie numeryczne równań różniczkowych zwyczajnych wyższych rzędów

Sprowadzenie równania różniczkowego zwyczajnego wyższego rzędu do układu

rónań rzędu pierwszego

Zastosowanie funkcji wbudowanych MatLab ode45(), ode23()dla układu równań

różniczkowych

Metody Euler’a i Rungego-Kutty dla układu równań różniczkowych

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 14 zajęć może uzyskać od 0 do 140 pkt.

Łączna ocena punktowa zajęć laboratoryjnych zawiera się w granicach 0-140 pkt. Ocena

końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg skali

ECTS):

Zakres Ocena Zakres Ocena

0-70 pkt. ndst (F) 99-112 pkt. db (C)

71-84 pkt. dst (E) 113-126 pkt. db+ (B)

85-98 pkt. dst+ (D) 127-140 pkt. bdb (A)

LITERATURA

1. D. Kincaid, W. Cheney "Analiza numeryczna", WNT, 2006.

2. A. Palczewski " Równania Różniczkowe Zwyczajne, teoria i metody numeryczne z

wykorzystaniem komputerowego systemu obliczeń symbolicznych", WNT,

Warszawa, 1999.

3. W.Y.Yang, W.Cao, T, Chung, J. Morris "Applied Numerical Methods Using

MatLab", Wiley-Interscience, 2005.

4. K. Sankara Rao " Numerical Methods for Scientists and Engineers", Prentice Hall,

2004

5. M. Stachurski "Metody numeryczne w programie Matlab", Mikom, 2003.

Page 9: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

9

6. R. Pratap "MatLab 7 dla naukowców i inżynierów", PWN, 2007.

7. V.P. Demidowicz , I.A. Maron, E.Z. Szuwałowa "Metody numeryczne", cz II. PWN,

Warszawa 1965

8. A. Zalewski, R Cegiełka " MatLab- obliczenia numeryczne i zastosowania", Nakom,

Poznań, 1996.

Page 10: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

10

Kierunek: Informatyka

Przedmiot:

Badania operacyjne

Operational Research

Czas trwania: semestr 2

Przedmiot: podstawowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr Anna Wawrzyńczak-Szaban 15 zaliczenie na ocenę 3

Ćwiczenia dr Anna Wawrzyńczak-Szaban 15 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Analiza matematyczna

Metody probabilistyczne i statystyka

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Zasadniczym celem przedmiotu Badania operacyjne jest przekazanie wiedzy z zakresu

najważniejszych i jednocześnie podstawowych metod rozwiązywania zadań z zakresu teorii

podejmowania decyzji zarówno w sytuacjach pełnej, jak i niepełnej informacji; oraz

możliwościami wykorzystania metod badań operacyjnych w praktyce podejmowania i analizy

decyzji.

Rozwiniętymi celami szczegółowymi są:

budowanie modeli optymalizacyjnych opisujących najprostsze sytuacje decyzyjne

spotykane w praktyce,

dobieranie właściwych narzędzi (programów komputerowych) służących do

rozwiązywania zbudowanych modeli optymalizacyjnych.

Celem laboratorium jest nabycie umiejętności zastosowania metod matematycznych

podejmowania optymalnych decyzji w sytuacjach pełnej, jak i niepełnej informacji .

Cele szczegółowe laboratorium obejmują następujące umiejętności praktyczne:

rozwiązywanie zagadnień programowania liniowego

Page 11: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

11

rozwiązywanie zagadnień transportowych

znalezienie rozwiązania gry o sumie zero

WYKŁAD

1. Matematyczny model procesu decyzyjnego i etapy jego budowy.

Pojęcie problemu decyzyjnego.

Etapowość rozwiązywania problemów decyzyjnych

2. Programowanie matematyczne - struktura i klasyfikacje.

Klasyfikacja modeli decyzyjnych

Zapis matematyczny problemów optymalizacyjnych

3. Modele programowania liniowego w postaci standardowej i kanonicznej.

Podstawowe założenia i określenia.

Rozwiązanie dopuszczalne, podstawowe i optymalne.

Ustalanie rozwiązań podstawowych.

4. Podstawowe twierdzenia programowania liniowego.

Matematyczne uzasadnienie metody simpleks.

Etapy w metodzie simpleks. Algorytm simpleks.

Ustalanie początkowego rozwiązania podstawowego.

5. Metoda sztucznej bazy.

Zastosowanie metody sztucznej bazy.

Modele dualne i ich rozwiązywanie.

Interpretacja zmiennych dualnych.

Rozwiązywanie zadań z wykorzystaniem twierdzeń o dualiźmie.

6. Analiza wrażliwości zadania programowania liniowego.

Analiza wrażliwości ze względu na zmiany parametrów funkcji celu.

Analiza wrażliwości ze względu na zmiany ograniczeń.

7. Zagadnienie transportowe.

Budowa modelu.

Rozwiązanie zbilansowanego i niezbilansowanego zadania transportowego (metoda

potencjałów).

Zastosowanie różnych metod wyznaczania rozwiązania początkowego w algorytmie

transportowym.

8. Problem lokalizacyjno-transportowy

Rozwiązywanie zadań pokrewnych: transportowo-produkcyjnego.

Page 12: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

12

Problem pustych przebiegów.

9. Programowanie dyskretne.

Programowanie całkowitoliczbowe.

Metoda podziału i ograniczeń.

10. Optymalizacja dyskretna

Problem załadunku.

Problem rozkroju.

11. Podstawy teorii gier

Gry dwuosobowe o sumie zero

Gry z naturą

12. Gry i strategie

Strategie mieszane.

Gry a zadanie programowania liniowego

13. Programowanie dynamiczne

Schemat ogólny programowania dynamicznego

Składowe wieloetapowego procesu decyzyjnego

14. Przykłady wykorzystania programowania dynamicznego

Zagadnienie rozdziału środka

Zagadnienie alokacji

15. Zagadnienie kolejek

Kolejki i ich modele.

Modele otwartych i zamkniętych sieci kolejek.

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

Page 13: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

13

LABORATORIUM

1. Zagadnienia programowania liniowego- część I

Analiza modelu

Definiowanie funkcji celu

2. Zagadnienia programowania liniowego- część II

Optymalny wybór asortymentu

Metoda graficzna

3. Zagadnienia programowania liniowego- część III

Zagadnienie wyboru procesu technologicznego

Funkcje wbudowane MatLab dla zagadnienia liniowego

4. Algorytm Simplex- część I

Postać kanoniczna problemu liniowego

Metody identyfikacji zmiennych tablicy simplexowej

5. Algorytm Simplex- część II

Zastosowanie algorytmu simplex do zadań programowania liniowego w postaci

klasycznej

Zastosowanie algorytmu simplex do zadań programowania liniowego o mieszanych

warunkach ograniczajacych

6. Algorytm Simplex- część III

Zagadnienia dualne

Zagadnienia zdegenerowane

7. Analiza wrażliwości

Metoda graficzna

Analiza rozwiązania metody simplex

8. Zagadnienia transportowe - część I

Etapy rozwiązywania zagadnienia

Metody wyznaczania rozwiązania wstępnego

9. Zagadnienia transportowe - część II

Ocena optymalności rozwiązania

Modyfikacja rozwiązania nieoptymalnego

10. Zagadnienia transportowe - część III

Page 14: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

14

Zamknięte zagadnienie transpotrowe

Otwarte zagadnienie transpotrowe

11. Zagadnienia transportowe - część IV

Zagadnienie lokalizacji produkcji

Minimalizacja pustych przebiegów

12. Programowanie dyskretne

Metoda podziału i ograniczeń

Metoda cięć

13. Optymalizacja dyskretna

Zagadnienie optymalnego przydziału

Zagadnienie lokalizacji produkcji

14. Gry dwuosobowe o sumie zero

Strategia czysta

Strategia mieszana

15. Gry z naturą

Kryterium Walda

Kryterium Hurwicza

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 14 zajęć może uzyskać od 0 do 140 pkt.

Łączna ocena punktowa zajęć laboratoryjnych zawiera się w granicach 0-140 pkt. Ocena

końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg skali

ECTS):

Zakres Ocena Zakres Ocena

0-70 pkt. ndst (F) 99-112 pkt. db (C)

71-84 pkt. dst (E) 113-126 pkt. db+ (B)

Page 15: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

15

85-98 pkt. dst+ (D) 127-140 pkt. bdb (A)

LITERATURA

1. Ignasiak, E., Badania operacyjne, PWE, Warszawa, 1996.

2. Kozubski, J., Wprowadzenie do badań operacyjnych, Wydawnictwo Uniwersytetu

Gdańskiego, Gdańsk, 2000.

3. Trzaskalik T., Wprowadzenie do badań operacyjnych z komputerem, Polskie

Wydawnictwo Ekonomiczne, Warszawa, 2003.

4. Jędzejczyk Z., Kukuła K. (red.), Skrzypek J., Walkosz A., Badania operacyjne w

przykładach i zadaniach, Wydawnictwo naukowe PWN, Warszawa, 2002.

Page 16: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

16

Kierunek: Informatyka

Przedmiot:

Modelowanie i analiza systemów informatycznych

Modeling and Analysis of Information Systems

Czas trwania: semestr 1

Przedmiot: kierunkowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr inż. Jacek Florek 30 egzamin 5

Laboratorium mgr Marek Pilski 30 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest ogólna znajomość zagadnień związanych z

funkcjonowaniem instytucji gospodarczych i problematyką zarządzania nimi, a ponadto zasad

i reguł tworzenia systemów informatycznych zawartych m.in. w takich pozycjach

literaturowych jak:

1. Wrycza S.: Analiza i projektowanie systemów informatycznych zarządzania.

Wydawnictwo Naukowe PWN. Warszawa 1999

2. Jaszkiewicz A.: Inżynieria oprogramowania. Wyd. HELION. Warszawa 1997

lub znajomość literatury z tych przedmiotów.

ZAŁOŻENIA I CELE

Podstawowym celem wykładów jest przedstawienie zasad obowiązujących podczas tworzenia

zintegrowanych systemów informatycznych zarządzania, ze szczególnym uwzględnieniem

etapów analizy i modelowania. Rozwiniętymi celami szczegółowymi sa:

analiza szczegółowych cech systemów informatycznych

zapoznanie z metodami modelowania architektury informacyjnej przedsiębiorstwa

zapoznanie z wybranych metodami modelowania organizacji i systemów oraz

związanych z nimi artefaktów

zapoznanie z wybranymi technikami analizy systemów informatycznych i

związanych z nimi artefaktów

Celem laboratorium jest nabycie umiejętności w konstruowaniu modeli w wybranym

obszarze informatyki i umiejętnego posługiwania się nimi. Cele szczegółowe laboratorium

obejmują następujące umiejętności praktyczne:

zapoznanie z wykorzystaniem pakietów CASE w procesie analizy i modelowania SI

Page 17: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

17

tworzenia modeli systemów informatycznych z wykorzystaniem podejścia

strukturalnego w oparciu o pakiet Oracle Designer 6i (diagramy przepływu procesów,

diagramu związków encji, tworzenie hierarchii funkcji i diagramu przepływu danych

dla wybranego obszaru dziedzinowego)

tworzenia modeli systemów informatycznych z wykorzystaniem podejścia

obiektowego w oparciu o pakiet worzenia modeli systemów informatycznych z

wykorzystaniem podejścia strukturalnego w oparciu o pakiet Rational Rose

(diagramów przypadków użycia, diagramu klas, diagramów interakcj, diagramów

stanów oraz diagramów komponentów i rozmieszczenia dla wybranego obszaru

dziedzinowego)

WYKŁAD

1. Pojęcia podstawowe w modelowaniu i analizie systemu informacyjnego

istota i rola zasobów informacyjnych w przedsiębiorstwie

kategorie pojęć

wybrane definicje pojęć

system informacyjny przedsiębiorstwa

2. Aspekty informacyjno-decyzyjne w organizacji

rola zasobów informacyjnych w przedsiębiorstwie,

procesy informacyjno-decyzyjne w przedsiębiorstwie

informacja a procesy podejmowania decyzji

3. Model architektury informacyjnej przedsiębiorstwa

architektura informacyjna,

modele formalne funkcjonowania organizacji, architektura korporacyjna,

siatka Zachmana

indeks Boara,

model Gartners Group,

zarządzanie architekturą korporacyjną

4. Analiza strukturalna systemów informacyjnych przedsiębiorstwa

analiza systemów informatycznych,

analiza potrzeb (konieczność komunikacji)

precyzowanie zakresu

standardy tworzenia specyfikacji (schemat Bolera)

5. Metody i narzędzia planowania i analizy SI przedsiębiorstwa

podejście sytuacyjne do planowania i analizy,

sesja MetaPlan,

sesja SWOT,

metoda BSP

metoda krytycznych czynników sukcesu,

model spójności dynamiki zmian Broekstry.

Page 18: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

18

6. Modelowanie systemu informacyjnego przedsiębiorstwa

procesy budowy modelu,

modele modułowe systemu informacyjnego,

modele przepływu informacji,

hierarchia modelu,

charakterystyka obiegu informacji w organizacji(przykład),

7. Metody i techniki modelowania systemów informacyjnych

podejścia do analizy i modelowania (strukturalne, obiektowe, społeczne)

charakterystyka podejścia strukturalnego,

charakterystyka podejścia obiektowego,

charakterystyka podejścia społecznego,

8. Podejście strukturalne modelowania systemów informacyjnych

podstawowe pojęcia, model logiczny i fizyczny,

funkcje encje, związki i diagramy

modelowanie funkcji (hierarchia, zależność i logika i opis funkcji), danych i procesów

czas rzeczywisty,

metody modelowania funkcji przedsiębiorstwa i systemów,

przykłady realizacji

9. Modelowanie hierarchii i zależności funkcji

cele, funkcje elementarne

diagram hierarchii funkcji - tworzenie i przykłady

powiązania, następstwa funkcji

zależności informacyjne i prawne

diagram zależności funkcji - tworzenie i przykłady

10. Modelowanie danych i procesów

cele i metody opisania potrzeb informacyjnych

diagram związków encji - tworzenie i przykłady,

określenie zależności pomiędzy procesami w przedsiębiorstwie,

diagramy przepływu danych - elementy, tworzenie i przykłady

klasyfikacja (kontekstowe, zerowe i szczegółowe) - przykłady

11. Modelowanie w czasie rzeczywistym

czas rzeczywisty - zasady i pojęcia,

cele i metody,

diagram przejść stanów - tworzenie i przykłady

12. Podejście obiektowe modelowania systemów informacyjnych

obiektowość i metodyka obiektowa,

perspektywy (pojęciowa, projektowa i implementacyjna)

Page 19: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

19

model przypadków użycia

model obiektowy (statyczny)

model zachowań (dynamiczny)

13. Modelowanie przypadków użycia (analiza funkcjonalna)

podstawowe pojęcia

strukturalizacja przypadków użycia

diagram przypadków użycia - tworzenie i przykłady

14. Budowa statycznego modelu klas i dynamicznego modelu zachowań

identyfikacja klas i obiektów,

identyfikacja związków klas i obiektów,

identyfikacja i definiowanie pól

diagramy klas i obiektów - tworzenie i przykłady

identyfikacja i definiowanie metod i komunikatów,

analiza scenariuszy

modelowanie przejść stanów

diagramy stanów, aktywności i interakcji - tworzenie i przykłady

15. Wykorzystanie narzędzi CASE w analizie i modelowaniu

klasyfikacja narzędzi CASE

charakterystyka porównawcza narzędzi CASE (Oracle Designer i Rational Rose )

przykłady realizacji analizy i modelowania

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Wprowadzenie

zapoznanie ze sposobem pracy w Oracle Designer,

utworzenie nowego systemu aplikacyjnego,

zapoznanie się z narzędziem Repository Object Navigaror,

eksportowanie i importowanie projektu.

2. Oracle Designer. Tworzenie diagramu przepływu procesów

Page 20: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

20

utworzenie nowego procesu podstawowego,

wprowadzenie nowych jednostek organizacyjnych do diagramu,

dodanie do diagramu kroków procesu.

dodanie przepływów pomiędzy krokami procesu.

3. Oracle Designer. Tworzenie diagramu przepływu procesów (część 2)

dodanie reguł dla odpowiednich przepływów,

dekompozycja wybranych kroków procesów,

dodanie do diagramu procesów wyzwalaczy i wyników.

4. Oracle Designer. Budowa diagramu związków encji

dodanie nowych encji,

utworzenie relacji pomiędzy encjami,

zdefiniowanie atrybutów dla encji.

5. Oracle Designer. Budowa diagramu związków encji (część 2)

definiowanie domen,

przypisanie domen wybranym atrybutom,

zapoznanie się z funkcją AutoLayout rozmieszczania komponentów na diagramie,

6. Oracle Designer. Tworzenie hierarchii funkcji

utworzenie nowego diagramu, opartego na nowej funkcji korzeń,

dodanie funkcji podrzędnych z Repozytorium,

zdefiniowanie własnych funkcji,

zdefiniowanie właściwości Unit i Response dla wybranych funkcji hierarchii.

7. Oracle Designer. Definiowanie użyć funkcja-encja

określenie użyć encji dla funkcji w Function Hierarchy Diagrammer,

budowa macierzy użyć Funkcja-Encja w narzędziu Matrix Diagrammer,

analiza modelu.

8. Oracle Designer. Definiowanie użyć funkcja-atrybut

określenie użyć atrybutów dla funkcji w Function Hierarchy Diagrammer,

budowa macierzy użyć Funkcja-Atrybut w narzędziu Matrix Diagrammer,

analiza modelu.

9. Oracle Designer. Tworzenie diagramu przepływu danych

utworzenie nowego diagramu,

zdefiniowanie i utworzenie przepływu danych.

10. IBM Rational Software Modeler. Budowanie diagramów przypadków użycia

zapoznanie się ze interfejsem i strukturą projektu RUP

Page 21: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

21

dodawanie aktorów do diagramu,

wstawienie przypadków użycia,

dodawanie powiązań pomiędzy komponentami diagramu,

11. IBM Rational Software Modeler. Budowanie diagramu klas

dodawanie klas do diagramu,

przypisanie klasom atrybutów i operacji,

utworzenie relacji pomiędzy klasami.

12. IBM Rational Software Modeler. Budowanie diagramów interakcji

utworzenie diagramów sekwencji i współdziałania,

dodanie nowych obiektów,

dodanie komunikatów,

sprawdzenie poprawności modelu.

13. IBM Rational Software Modeler. Budowanie diagramów stanów

dodanie stanów do diagramu,

definiowanie akcji,

utworzenie linii przejść.

14. IBM Rational Software Modeler. Budowanie diagramów komponentów i

rozmieszczenia

dodawanie nowych komponentów diagramu,

dodawanie powiązań pomiędzy komponentami,

generowanie kodu źródłowego.

15. Konsultacja końcowej postaci projektu

dyskusja,

ocena projektów.

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 14 zajęć może uzyskać od 0 do 140 pkt.

Page 22: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

22

Łączna ocena punktowa zajęć laboratoryjnych zawiera się w granicach 0-140 pkt. Ocena

końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg skali

ECTS):

Zakres Ocena Zakres Ocena

0-70 pkt. ndst (F) 99-112 pkt. db (C)

71-84 pkt. dst (E) 113-126 pkt. db+ (B)

85-98 pkt. dst+ (D) 127-140 pkt. bdb (A)

LITERATURA

1. Barczak. A., Florek J., Sydoruk T.: Projektowanie zintegrowanych systemów

informatycznych zarządzania, Wyd. AP, Siedlce 2006

2. Barker R., Longman C.: Modelowanie funkcji i procesów. WNT. Warszawa 1996

3. Barker R.: Modelowanie związków encji. WNT. Warszawa 2005

4. Chmielarz W.: "Systemy informatyczne wspomagające zarządzanie. Aspekt

modelowy w budowie systemów". Elipsa, Warszawa 1996

5. Dąbrowski W., Stasiak A., Wolski M.: "Modelowanie systemów informatycznych w

języku UML 2.1 w praktyce", PWN, Warszawa 2007

6. Krol P., Kruchten P.: "Rational Unified Process od strony praktycznej", WNT,

Warszawa 2006

7. Kruchten P.: "Rational Unified Process od strony teoretycznej", WNT, Warszawa

2007

8. Płodzień J, Stemposz E.: Analiza i projektowanie systemów informatycznych, Wyd.

PJWSTK, Warszawa 2003

9. Roszkowski J.: Analiza i projektowanie strukturalne, Helion. Warszawa 2002

10. Sęczyn S. (red): Analiza i modelowanie systemu informacyjnego przedsiębiorstwa -

wybrane zagadnienia, Wyd. Politechniki Śląskiej, Gliwice 2000

11. Wendy Boggs, Michael Boggs: Mastering UML with Rational Rose, Sybex, 2002.

12. Dokumentacja techniczna firmy Oracle na stronie WWW:

http://www.oracle.com/technology/documentation/designer.html#6i

13. Multimedialne tutoriale konstruowania diagramów na stronie WWW:

http://homepages.uel.ac.uk/D.Bowden/

Page 23: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

23

Kierunek: Informatyka

Przedmiot:

Zastosowania informatyki I

Computer Science Applications I

Czas trwania: semestr 1

Przedmiot: kierunkowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr hab. Andrzej Wiśniewski 24 egzamin 5

Seminarium dr hab. Andrzej Wiśniewski 21 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsza znajomość literatury obowiązującej

przynajmniej w następujacych przedmiotach

Technologie sieciowe,

Bazy i hurtownie danych,

Metody Sztucznej Inteligencji

Aplikacje multimedialne i internetowe

Architektura sieci i systemów informatycznych

ZAŁOŻENIA I CELE

Głównym celem wykładu jest wprowadzenie do dziedziny wiedzy związanej z nowoczesnymi

zastosowaniami informatyki przemyśle, wojsku, nauce, rolnictwie, zarządzaniu, itp. Wykład

obejmuje genezę i perspektywy komputeryzacji, informatyzacji i robotyzacji w wybranych

obszarach zastosowań oraz dla wybranej dziedziny prezentację studium przypadku

przedsięwzięcia informatycznego. szczególna uwaga zostanie zwrócona na zastosowania

informatyki wynnikajace z teorii sterowania i systemów, elestycznych systemnów

produkcyjnych i fabryk bezludnych.

Celem Seminarium jest nabycie i opanowanie praktycznych umiejętności redagowania i

analizowania wymagań w wielkich przedsięwzięciach informatycznych dotyczących

wybranego obszaru. Studenci otrzymają do opracowania indywidualne problemy z zakresu

zastosowań informatyki, które nastepnie będą prezentowli na Seminarium i prowadzili

dyskusje problemową.

WYKŁAD

1. Inteligentne systemy elastycznego wytwarzania 1

wprowadzenie do elastycznej automatyzacji wytwarzania

Page 24: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

24

podstawy systemów elastycznego wytarzania,

składniki automatyzacji obrabiarek i systemów obróbkowych,

2. Inteligentne systemy elastycznego wytwarzania 2

elastyczne stacje i systemy obróbkowe,

komputerowa integracja wytwarzania,

3. Informatyczne wspomaganie zarządzania gospodarką energetyczną 1

ewolucja systemu energetycznego w Polsce,

problemy przyszłości energetyki,

rozbudowa systemów informatycznych w dziedzinach przesyłu, dostępu i

przetwarzania,

4. Informatyczne wspomaganie zarządzania gospodarką energetyczną 2

Modelowanie systemów w czasie rzeczywistym,

Symulacja zagrożeń i awarii,

Moduły doradcze w systemach sterowania dyspozytorskiego

5. Systemy zarządzania kryzysowego 1

klasyfikacja zagrożeń i sytuacji kryzysowych

rodzaje centrów zarządzania kryzysowego i powiadamiania ratunkowego w Polsce,

przykładowa struktura centrum zarządzania kryzysowego

6. Systemy zarządzania kryzysowego 2

architektura komputerowego wspomagania centrum,

moduły GIS, GPS systemu wspomagania

7. Systemy zarządzania w opiece zdrowotnej 1

modele informacyjne jednostek opieki medycznej,

metody i typy danych medycznych,

akwizycja danych medycznych

8. Systemy zarządzania w opiece zdrowotnej 2

przetwarzanie danych obrazowych,

medyczne systemy doradcze,

medyczne systemy informacyjne

9. Informatyczne systemy bankowe 1

etapy rozwoju informatyki bankowej,

cechy systemów bankowych,

klasyfikacja systemów bankowych,

Page 25: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

25

10. Informatyczne systemy bankowe 2

Operacyjne systemy zorientowane na księgowość, produkty, klienta,

Architektura bankowych systemów informatycznych,

Modele scoringowe

11. Studium przypadku zastosowania credit scoringu (1H)

System scoringowy: zalety i wady

Etapy budowy systemu scoringowego

Tabele punktowe i ogólne statystyki

12. Wprowadzenie do fabryk bezludnych

Definicja fabryki bezludnej

Od manipulatorów i robotów do fabryk bezludnych

Przykłady współczesnych fabryk bezludnych

Model systemu elektroeneregtycznego jako fabryki bezludnej

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Wstęp do teorii sterowania i systemów:

Przestrzeń stanów

Równanie stanu i równanie wyjścia

Schematy blokowe zmiennych stanu

Symulacja systemów sterowania

2. Wstęp do projektowania FMS 1 oraz FMS 2:

Planowanie procesów technologicznych - systemy CAD/CAM

Planowanie strategiczne,

Wybór asortymentu produkcji

3. Modelowanie systemów energetycznych:

Modelowanie systemów energetycznych w przestrzeni stanów

Page 26: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

26

Identyfikacja systemów wielkich w środowisku MATLAB i Simulink

Symulacja awarii systemu elektroeneregtycznego

4. Identyfikacja systemów techniczno-ekonomicznych

Przygotowanie danych i eksperymentu

Możliwości wykorzystania wiedzy wynikajacej z macierzy TH

Modele transmitancyjne i modele w przestrzeni stanów

Przekształcenia modeli

5. Systemy nawigacji satelitarnej:

Moduły systemu nawigacji satelitarnej GPS,

GPS API w języku Java

6. Geograficzne systemy informacyjne:

Wykorzystanie danych serwisów internetowych (maps.google.com)

Projektowanie systemów warstwowych

7. Protokoły i standardy danych medycznych:

HL7,DICOM, EDIfact, itp.

ASC X12 (Accredited Standards Committee mesage format),

IEEE MIB (Medical Infomation Bus,IEEEE 1073)

Zastosowania ebXML w medycynie

8. Systemy ekspertowe czasu rzeczywistego

Własności systemów ekpertowych czasu rzeczywistego

Mozliwości symulacyjne funkcjonowania systemów ekspertowych czasu

rzeczywistego w środowisku MATLABA i Simulinka

9. Budowa systemu scoringowego:

Metody oceny zdolności kredytowej,

hurtownie danych w systemach bankowych

Niestatystyczne modele scoringowe

Statystyczne modele scoringowe

10. Modele zanurzeniowe systemów wielkich w środowisku MATLAB

Pojęcie subsystemu i zanurzenia

Hierarchiczne modele zanurzeniowe

Zmiany parametrów modelu

11. Symulacja rozwoju systemów wielkich

Zmiany parametryczne

Zmiany strukturalne

Page 27: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

27

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

15pkt. Łącznie student za 10 zajęć może uzyskać od 0 do 150 pkt. ponadto student

przygotowuje własne wystąpienie seminaryjne za które może otrzymać od 0 do 50 pkt.

Łączna ocena punktowa Seminarium zawiera się w granicach 0-200 pkt. Ocena końcowa

zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. Ball, M.J.etal., Systemy zarządzania informacją w opiece zdrowotnej, Warszawa

1997,

2. Cieciura M. Podstawy technologii informacyjnych z przykładami zastosowań,

Warszawa 2007

3. Honczarenko J., Elastyczna automatyzacja wytwarzania, obrabiarki i systemy

obrobkowe,Warszawa 2000,

4. Kaczorek T., Teoria sterowania i systemów, WNT, Warszawa 2005

5. Matuszyk A., Credit scoring, Warszawa 2004

6. Rudowski R., Informatyka medyczna, PWN, Warszawa 2006

Page 28: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

28

Kierunek: Informatyka

Przedmiot:

Metody ewolucyjne i sieci neuronowe Evolutionary

Methods and Neural Networks

Czas trwania: semestr 1

Przedmiot: obieralny

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład

dr inż. Jerzy Tchórzewski

prof. dr hab. inż. Mieczysław

Kłopotek

21 egzamin

5

Laboratorium mgr Mariusz Kujawiak

dr inż. Jerzy Tchórzewski 24

zaliczenie na

ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Sztuczna inteligencja

lub znajomośc literatury z zakresu metod sztucznej inteligencji, a zwłaszcza sztucznych sieci

neuronowych i algorytmów ewolucyjnych oraz podstaw metod heurystycznych

i hybrydowych.

ZAŁOŻENIA I CELE

Głównym celem wykładu jest poznanie metod i algorytmów krzepkich, a zwłaszcza

algorytmów ewolucyjnych oraz sieci neuronowych. Rozwiniętymi celami szczegółowymi są:

Współczesne metody i algorytmy genetyczne i ewolucyjne

Strategie genetyczne i ewolucyjne

Programowanie genetyczne i ewolucyjne

Projektowania różnego rodzaju sztucznych sieci neuronowych

Złożone sieci neuronowe wielowarstowe ze sprzężeniem zwrotnym oraz sieci

komórkowe

Celem laboratorium jest natomiast nabycie i opanowanie praktycznych umiejętności w

rozwiazywaniu problemów wyjaśnianych w czasie wykładu, a także poszerzenie wiadomości

nabytych w dotychczasowym procesie dydaktycznym w środowisko MATLABA i Simulinka.

Cele szczegółowe laboratorium obejmują następujące umiejętności praktyczne:

Page 29: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

29

rozszerzenie umiejętności programowania w języku Matlab

projektowaniu systemów hybrydowych wykorzystujących metody neuronowe i

ewolucyjne

użycie Toolboxów - Neural Networks Toolbox

WYKŁAD

1. Metody optymalizacji globalnej

Właściwości funkcji celu,

Znaczenie liczby wymiarów

Metody optymalizacji globalnej

Metody wielokryterialne

Środowiska dynamiczne

Kryteria oceny algorytmu

Metody adaptacyjne

2. Złożone typy algorytmów ewolucyjnych.

Symulacja działania strategii ewolucyjnej

Kodowanie drzewiaste

Programy powstajace samoczynnie

Metody zarządzania populacją

Eksploracja i eksploatacja i nacisk selektywny

Metody oceny algorytmów ewolucyjnych

Nowoczesne kryteria zatrzymania algorytmu

Monitorowania przebiegu algorytmu ewolucyjnego

3. Zapobieganie przedwczesnej zbieżnosci algorytmów ewolucyjnych

Metody przeszukan lokalnych

Efekt Baldwina i ewolucja lamarkowska

Czas życia osobników w populacji bazowej

Selekcja sterowana czasem życia

Optymalizacja wielomodalna

Czynnik losowy w algorytmach ewolucyjnych

Osłabianie konkurencyjnosci w ramach selekcji

Preselekcja i posiew nierównomierny, Systemowa populacja początkowa i funkcja

przystosowania

4. Algorytmy ewolucyjne w środowisku dynamicznym

Skomplikowane struktury danych

Zadania o nieustalonej liczbie parametrów

Kodowanie specjalizowane

Dominacja i algorytmy naprawy

Koewolucja, w tym pamięć na poziomie populacji i na poziomie osobnika

Separacja ograniczen od funkcji celu, w tym pierwsza metoda Gwiazdy

Dominacja rozwiazań dopuszczalnych

Pamięć behawioralna i metoda Conga

Page 30: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

30

5. Dedykowane elementy algorytmu ewolucyjnego

Dedykowana reprezentacja rozwiazania

Dedykowane operatory

Mutacja logarytmiczna

Ranking stochastyczny

Druga metoda Gwiazdy - pełne krzyżowanie

Systemowe algorytmy ewolucyjne

6. Hierarchiczne algorytmy ewolucyjne i pamięci asocjacyjne

Sztuczny kod informacyjny

Kodowanie i dekodowanie

Hierarchiczne chromosomy

Sieć Hopfielda jako pamieć asocjacyjna

Odmiany sieci Hamminga jako pamięci asocjacyjne

Pamięci BAM i jej odmiany

Neurodynamika pamięci asocjacyjnych

Dyskretne sieci neuronowe

7. Obliczenia ewolucyjne jako metoda uczenia pamięci asocjacyjnych

Pojecie krajobrazu funkcji przystosowania

Sposoby poruszania sie po przestrzeni funkcji przystosowania

Niestandardowe algorytmy ewolucyjne

Ewolucyjne obliczenia w uczeniu sie sieci neuronowych

8. Samoorganizujace się sieci konkurencyjne

Specyfika sieci WTA

Sieci konkurencyjne o wielu zwycięzcach

Autoasocjacyjne sieci neuronowe

Heteroasocjacyjna sieć o wielu zwycięzcach

9. Epizodyczna pamięć asocjacyjna

Rola wielu zwycięzców

Zwycięzcy w sieci dwukierunkowej

Rozdrabnianie modułow w sieci neuronowej

10. Systemowe sieci neuronowe

Rola powiązań systemowych w sieci neuronowej

Ontogoniczne sieci neuronowe

Od ontogonocznej sieci neuronowej do systemowej sieci neuronowej

Sieci neuronowe samorozwijajace się

Chaotyczne sieci neuronowe

Rozmyte sieci neuronowe

11. Systemy hybrydowe

Page 31: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

31

Hybrydowe algorytmy ewolucyjne

Hybrydowe sieci neuronowe

Hybrydowe algorytmy ewolucyjno-neuronowe

Zanurzenia

Kody genetyczne zanurzeniowe

Rozwój metod hybrydowych

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Klasyczny algorytm ewolucyjny

Algorytm ewolucyjny i jego implementacja w języku Matlab,

Generowanie populacji poczatkowej,

Tworzenie funkcji przystosowania,

Podstawowe operatory genetyczne,

2. PERCEPTRON

Sieci neuronowe wielowarstwowe jednokierunkowe,

Plik uczący i plik testujacy dla sieci PERCEPTRON,

Dobór liczby wejść wyjść sieci, inicjalizacji wag poczatkowych, dobór funkcji

aktywacji,

3. Sieci Hopfielda

Sieci neuronowe jednowarstwowe ze sprzężeniem zwrotnym,

Dobór reguły uczenia,

Problemy implementacyjne z wykorzystaniem Neural Network Toolbox,

4. Sieci WTA oraz WTM

Sieci neuronowe samoorganizujace się (SOM),

Wady i zalety reguły uczenia WTA i reguł pokrewnych takich jakWTM,

Mapowanie wiedzy za pomoca sieci neuronowych SOM,

5. Systemowy algorytm ewolucyjny

Page 32: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

32

Istota Systemowego Algorytmu Ewolucyjnego (SAE),

Systemowe generowanie populacji początkowej,

Systemowe generowanie funkcji przystosowania,

Systemowe generowanie operatorów genetycznych,

Systemowa metoda selekcji,

6. Systemowa sieć neuronowa

Systemowe generowanie wag początkowych,

Systemowy dobór reguły uczenia,

Systemowa funkcja aktywacji,

7. Rozmyta sieć neuronowa

Rozmyta reprezentacja wiedzy,

Rozmyta funkcja aktywacji,

Rozmyte reguły uczenia,

8. Chaotyczna siec neuronowa

Chaos, atraktory, dynamiczne stany równowagi,

Sposoby reprezentacji wiedzy w chaotycznej sieci neuronowej,

Reguły uczenia w sieciach chaotycznych,

9. Ontogeniczne i rozwijające się sieci neuronowe

Uczenie sieci neuronowych zmieniajacych swą strukture,

Dobór reguły uczenia,

Dobór wag poczatkowych,

10. Sieć neuronowa z zanurzeniami

Rodzaje zanurzeń neuronowych,

Projektowanie sieci neuronowych z zanurzeniami ewolucyjnymi,

11. Sieć neuronowa generująca chromosomy,

Rodzaje zanurzeń ewolucyjnych,

Projektowanie algorytmów ewolucyjnych z zanurzeniami neuronowymi,

Algorytm ewolucyjny generujący wagi początkowe sieci neuronowej,

12. Hybrydowy system hierarchiczny

Istota chromosomów hierarchicznych,

Istota neuronów (wag) hierarchicznych,

Istota operatorów hierarchicznych,

ZALICZENIE LABORATORIUM

Page 33: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

33

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego i ostatniego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie

ocen cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego

projektu. W przypadku nieobecności studenta na laboratorium sposób ich odpracowania

określa osoba odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

15 pkt. Łącznie student za 10 zajęć może uzyskać od 0 do 150 pkt.

Temat i zakres projektu indywidualnego student otrzymuje najpóźniej na trzecim zajęciu. Za

projekt może on otrzymać ocenę punktową mieszczącą się w zakresie 0 - 50 pkt. Zaliczenie

projektu następuje po uzyskaniu co najmniej 26 pkt. i jest możliwe najpóźniej na ostatnich

zajęciach. Jest ono także warunkiem koniecznym do uzyskania zaliczenia ćwiczeń

laboratoryjnych.

Łączna ocena punktowa zajęć laboratoryjnych jest sumą punktów uzyskanych za

poszczególne zajęcia oraz za indywidualny projekt i zawiera się w granicach 0-200 pkt.

Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg

skali ECTS):

Zakres Ocena Zakres Ocena

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. Arabas J..: Wykłady z algorytmów ewolucyjnych. WNT. Warszawa 2001

2. Osowski S.: Sieci neuronowe do przetwarzania informacji. WNT.Warszawa 2005

3. Rutkowski L.: Metody i techniki sztucznej inteligencji. WN PWN. Warszawa 2005

4. Tadeusiewicz R.: Elementarne wprowadzenie do techniki sieci neuronowych z

przykładowymi programami. AOW PLJ. Warszawa 1998

5. Kłopotek M.: Inteligentne przeglądarki internetowe. EXIT.Warszawa 2005

6. Zielinski J. S.: Inteligentne systemy w zarządzaniu. Teoria i praktyka. WN PWN.

Warszawa 2000

Page 34: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

34

Kierunek: Informatyka

Przedmiot:

Inteligentne systemy agentowe

Intelligent Agent Systems

Czas trwania: semestr 1

Przedmiot: obieralny

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr hab. Franciszek Seredyński 21 egzamin 5

Laboratorium mgr Mirosław Szaban 24 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Podstawy Programowania

Języki i paradygmaty programowania

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Zasadniczym celem przedmiotu ”Inteligentne Systemy Agentowe” jest zaznajomienie z

aktualnie stosowanymi algorytmami inspirowanymi przez Naturę i stosowanymi aktualnie do

poszukiwania rozwiązań w dużych przestrzeniach, w aspekcie zarówno teoretycznym jak i

praktycznym. Rozwiniętymi celami szczegółowymi są:

Algorytmy inspirowane przez Naturę

Metody kodowania osobników

Optymalizacja z użyciem algorytmów inspirowanych przez Naturę

Dylemat więźnia - elementy teorii gier

Automaty uczące się i automaty komórkowe.

Celem laboratorium jest poszerzenie wiadomości nabytych w ramach wykładu oraz nabycie

praktycznych umiejętności w zakresie stosowania algorytmów inspirowanych przez Naturę i

stosowanych aktualnie do poszukiwania rozwiązań w dużych przestrzeniach. Cele

szczegółowe laboratorium obejmują następujące umiejętności praktyczne:

Implementacja i testowanie algorytmów bazujących na róznych paradygmatach

istniejących w Naturze

Page 35: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

35

Budowa i testowanie jakości działania, algorytmów na standardowych funkcjach

testujących

Optymalizacja funkcji

Budowa systemów kryptograficznych

Poszukiwanie strategii w grach, itp.

WYKŁAD

1. Wprowadzenie do algorytmów inspirowanych przez Naturę:

Motywacje

Optymalizacja funkcji i optymalizacja kombinatoryczna

Problemy NP-trudne

Przegląd algorytmów inspirowanych przez Naturę

2. Klasyczny algorytm genetyczny (AG):

Podstawowe założenia

Operatory genetyczne

Modyfikacje klasycznego AG

3. Dylemat Więźnia (DW):

2-osobowy (DW)

Kodowanie Axelrod’a

N-osobowy DW

Kodowanie Yao i Darwen’a

4. Strategie Ewolucyjne (SE):

Założenia

Operatory używane w SE

Algorytmy SE

5. Symulowane wyżarzanie, metoda tabu, algorytmy mrówkowe:

Algorytmy wzrostu

Algorytm symulowanego wyżarzania

Algorytm tabu

Algorytmy mrówkowe

6. Algorytmy koewolucyjne:

Paradygmaty koewolucji

Wybrane algorytmy koewolucyjne

7. Sztuczne systemy immunologiczne (SSI):

Systemy immunologiczne

Algorytm CLONALG

Page 36: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

36

Zastosowania SSI

8. Programowanie genetyczne (PG):

Założenia

Operatory PG

Zastosowania

9. Roje cząsteczek:

Założenia

Schemat obliczeniowy

Zastosowania

10. Automaty uczące się i automaty komórkowe:

Koncepcje automatów uczących się i automatów komórkowych

Algorytmy ewolucyjne i automaty komórkowe

Zastosowania

11. Uczące się systemy klasyfikujace (USC):

Nurty rozwoju USK

Klasyczny USC

System XCS

Zastosowania

ZALICZENIE WYKŁADU

Zaliczenie wykładu odbywa sie na podstawie sumy punktów uzyskanych z kolokwium

odbywajacego sie w połowie semestru (30 punktów) oraz egzaminu pisemnego koncowego

(70 punktów). W wyjatkowych okolicznosciach zamiast egzaminu pisemnego moze byc

przeprowadzony egzamin ustny. Warunkiem zaliczenia przedmiotu jest uzyskanie minimum

51% punktów z maksymalnej liczby

punktów, jakie mozna uzyskac z kolokwium i egzaminu koncowego. Schemat oceniania na

podstawie liczby uzyskanych punktów jest nastepujacy (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Wprowadzenie do algorytmów inspirowanych przez Naturę:

Systemy liczbowe, kod Grey’a,

Page 37: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

37

Optymalizacja funkcji,

Reprezentacja i populacja początkowa,

Kodowanie osobnika,

Funkcja oceny.

2. Algorytmy genetyczne I:

Ogólny algorytm genetyczny,

Pojęcia genetyczne ich znaczenie,

Rodzaje algorytmów genetycznych,

Funkcja oceny w algorytmie genetycznym,

Operatory genetyczne,

Parametry i wyniki obliczeń.

3. Operatory genetyczne I - Selekcja:

Rodzaje selekcji,

Dobór parametrów selekcji,

Porównanie wyników różnych selekcji,

Wpływ rodzaju selekcji na uzyskane wyniki działania algorytmu ewolucyjnego.

4. Operatory genetyczne II - Krzyżowanie:

Rodzaje krzyżowania,

Dobór parametrów krzyżowania,

Porównanie wyników róznych krzyzowan,

Wpływ rodzaju krzyżowania na uzyskane wyniki działania algorytmu ewolucyjnego.

5. Operatory genetyczne III - Mutacja:

Rodzaje mutacji,

Dobór parametrów mutacji,

Porównanie wyników róznych mutacji,

Wpływ rodzaju mutacji na uzyskane wyniki działania algorytmu ewolucyjnego.

6. Algorytmy genetyczne II:

Rozwiązywanie problemów przy pomocy algorytmu genetycznego,

Dobór operatorów,

Dobór parametrów,

Poszukiwanie rozwiązania (uruchamianie algorytmu genetycznego),

Analiza i dokumentacja wyników.

7. Algorytmy optymalizacji:

Algorytm największego wzrostu - HillClimbing,

Algorytm symulowanego wyżarzania - Simulated Annealing,

Algorytm Tabu - Tabu Search.

8. Roje cząsteczek - Partical Swarm:

Page 38: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

38

Budowa cząsteczki,

Funkcja prędkosci cząsteczki,

Konstrukcja algorytmu,

Testy i analiza wyników.

9. Automaty komórkowe 1D:

Budowa automatu komórkowego 1D,

Algorytm działania - reguła,

Klasyfikacja automatów komórkowych,

Zastosowanie w procesach kryptograficznych - generatory liczb pseudolosowych.

10. Automaty komórkowe 2D:

Budowa automatu komórkowego 2D,

Algorytm działania - reguła,

Konstrukcja Game of Life - przykładu działania automatu komórkowego 2D

11. Travelling Salesman Problem (TSP):

Problemy transportowe,

Kodowanie osobnika,

Funkcja oceny,

Stosowanie algorytmu genetycznego do rozwiązania problemu TSP (biblioteki

standardowe).

12. Algorytm mrówkowy (Ant Colonies):

Opis problemu,

Kodowanie osobnika,

Feromony i ich znaczenie,

Zastosowanie algorytmu mrówkowego do rozwiązania problemu TSP (biblioteki

standardowe).

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 11 zajęć może uzyskać od 0 do 110 pkt.

Temat i zakres projektu indywidualnego student otrzymuje najpóźniej na trzecim zajęciu. Za

projekt może on otrzymać ocenę punktową mieszczącą się w zakresie 0 - 90 pkt. Zaliczenie

Page 39: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

39

projektu następuje po uzyskaniu co najmniej 46 pkt. i jest możliwe najpóźniej na ostatnich

zajęciach. Jest ono także warunkiem koniecznym do uzyskania zaliczenia ćwiczeń

laboratoryjnych.

Łączna ocena punktowa zajęć laboratoryjnych jest sumą punktów uzyskanych za

poszczególne zajęcia oraz za indywidualny projekt i zawiera się w granicach 0-200 pkt.

Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg

skali ECTS):

Zakres Ocena Zakres Ocena

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. Zbigniew Michalewicz, Algorytmy genetyczne + struktury danych = programy

ewolucyjne, WNT, 2003

2. David A. Goldberg, Algorytmy genetyczne i ich zastosowania, WNT, 2003

3. J. Arabas, Wykłady z algorytmów ewolucyjnych, WNT, 2001

4. Materiały z dorocznych międzynarodowych konferencji: GECCO, CEC, PPSN

5. Materiały z serii konferencji ”Sztuczna Inteligencja”, Wydawnictwo Akademii

Podlaskiej

6. Robert Wieczorkowski, Ryszard Zieliński, Komputerowe generatory liczb losowych,

WNT 1997

7. Sławomir Wierzchoń: Systemy immunologiczne, EXIT 2001

Page 40: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

40

Kierunek: Informatyka

Przedmiot:

Zaawansowane technologie programistyczne

Advanced Programming Technologies

Czas trwania: semestr 2

Przedmiot: kierunkowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr inż. Mirosław Barański 30 egzamin 6

Laboratorium mgr Krzysztof Pietraszek 30 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Podstawy programowania,

Algorytmy i złożoność.

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Podstawowym celem wykładów jest przekazanie wiedzy o zaawansowanych technikach

programistycznych oraz rozszerzenie wiedzy dotyczącej paradygmatów programowania.

Treści przedmiotu są kontynuacją zagadnień omawianych na wykładach z przedmiotów

Podstawy Programowania, Programowanie obiektowe oraz Programowanie zaawansowane.

Celem zajęć laboratoryjnych jest nabycie i opanowanie umiejętności programowanie w

zakresie reprezentowanym przez problematykę wykładów. Językami programowania

wykorzystywanymi na zajęciach są Java i C++.

WYKŁAD

1. Programowanie wielowątkowe w języku Java

Podstawy tworzenia wątków: obiekty zarządzające wątkami i obiekty-wątki

Tworzenie klas wątków

2. Zarządzanie wątkami w języku Java

Działania dostępne na wątku

Page 41: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

41

Przełączanie wątku

Priorytety wątków

3. Synchronizacja wątków w języku Java

Praca synchroniczna,

Przyczyny synchronizacji metod

Synchronizacja metod asynchronicznych

Przerywanie metod synchronicznych

4. Kolekcje w języku Java

Interfejsy kolekcji

Kolekcje konkretne (listy, zbiory drzewiaste, mapy)

Szkielet kolekcji

Algorytmy

Tradycyjne kolekcje

5. Obiekty zdalne w języku Java

Wywołania zdalnych metod (RMI)

Konfiguracja wywołania zdalnych metod

Przekazywanie parametrów zdalnym metodom

Wykorzystanie RMI w apletach

Aktywacja obiektów serwera

6. Komponenty programowe JavaBeans

Środowisko programistyczne NetBeans

Właściwości komponentów Beans

7. Komponenty programowe JavaBeans

Adaptery

Oprogramowanie zdarzeń

Łączenie właściwości Beans

8. Tworzenie własnych komponentów Beans

Metody projektowe

Używanie interfejsu BeanInfo

9. Przeciążanie operatorów w języku C++

Funkcje operatorowe

Przeciążanie operatorów inkrementacji i dekrementacji

Przeciążanie operatora przypisania

Przeciążanie operatora indeksowania

Przeciążanie operatora dostępu do składowych

Page 42: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

42

10. Programowanie generyczne w języku C++

Idea programowania generycznego

Pojęcie szablonu funkcji

Pojęcie szablonu klasy

Pozatypowe parametry szablonów

Specjalizacja i przeciążanie

11. Programowanie generyczne w języku C++

Standardowa biblioteka szablonów STL: kontenery

Standardowa biblioteka szablonów STL: iteratory

Standardowa biblioteka szablonów STL: algorytmy

12. Metaprogramowanie i szablony wyrażeń

Wytyczne

Klasy parametryzowane wytycznymi

Szablony wyrażeń

13. Inteligentne wskaźniki

Szablon auto_ptr

Inteligentne wskaźniki jako składowe

14. Funktory

Standardowa biblioteka szablonów STL: obiekty funkcyjne

Adaptory funkcji

15. Wątki

Wątki API Windows

Wątek uruchomiony bezpośrednio za pomocą funkcji API

Wątek uruchomiony za pomocą klas VCL

Synchronizacja wątków w VCL

Wątek o podwyższonym priorytecie

Wątek zawierający sekcję krytyczną

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

Page 43: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

43

LABORATORIUM

1. Programowanie wielowątkowe w języku Java

Podstawy tworzenia wątków: obiekty zarządzające wątkami i obiekty-wątki

Tworzenie klas wątków

2. Zarządzanie wątkami w języku Java

Uruchomienie, wstrzymanie, zatrzymanie, zawieszenie wątku

Wymuszenie przełączenia wątku

3. Synchronizacja wątków w języku Java

Praca synchroniczna,

Synchronizacja metod asynchronicznych

Przerywanie metod synchronicznych

4. Kolekcje w języku Java

Interfejsy kolekcji

Kolekcje konkretne (listy, zbiory drzewiaste, mapy)

Szkielet kolekcji

Algorytmy

Tradycyjne kolekcje

5. Obiekty zdalne w języku Java

Wywołania zdalnych metod (RMI)

Konfiguracja wywołania zdalnych metod

Przekazywanie parametrów zdalnym metodom

Wykorzystanie RMI w apletach

Aktywacja obiektów serwera

6. Komponenty programowe JavaBeans

Właściwości komponentów Beans

Posługiwanie się komponentami JavaBeans

7. Komponenty programowe JavaBeans

Adaptery

Oprogramowanie zdarzeń

Łączenie właściwości Beans

8. Tworzenie własnych komponentów Beans

Metody projektowe

Page 44: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

44

Używanie interfejsu BeanInfo

9. Przeciążanie operatorów w języku C++

Implementacja funkcji operatorowych dla operacji inkrementacji i dekrementacji

Implementacja funkcji operatorowych dla operacji przypisania

Implementacja funkcji operatorowych dla operacji indeksowania

Implementacja funkcji operatorowych dla operacji dostępu do składowych

10. Programowanie generyczne w języku C++

Tworzenia szablonów funkcji

Tworzenie szablonów klasy

Pozatypowe parametry szablonów

Specjalizacja i przeciążanie

11. Programowanie generyczne w języku C++

Wykorzystanie standardowa biblioteki szablonów STL: kontenery

Wykorzystanie standardowa biblioteki szablonów STL: iteratory

Wykorzystanie standardowa biblioteki szablonów STL: algorytmy

12. Metaprogramowanie i szablony wyrażeń

Wytyczne

Klasy parametryzowane wytycznymi

Szablony wyrażeń

13. Inteligentne wskaźniki

Wykorzystanie szablonu auto_ptr

Inteligentne wskaźniki jako składowe

14. Funktory

Wykorzystanie standardowa biblioteki szablonów STL: obiekty funkcyjne

Adaptory funkcji

15. Wątki

Wątki API Windows

Wątek uruchomiony bezpośrednio za pomocą funkcji API

Wątek uruchomiony za pomocą klas VCL

Synchronizacja wątków w VCL

Wątek o podwyższonym priorytecie

Wątek zawierający sekcję krytyczną

ZALICZENIE LABORATORIUM

Page 45: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

45

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 14 zajęć może uzyskać od 0 do 140 pkt.

Temat i zakres projektu indywidualnego student otrzymuje najpóźniej na trzecim zajęciu. Za

projekt może on otrzymać ocenę punktową mieszczącą się w zakresie 0 - 60 pkt. Zaliczenie

projektu następuje po uzyskaniu co najmniej 31 pkt. i jest możliwe najpóźniej na ostatnich

zajęciach. Jest ono także warunkiem koniecznym do uzyskania zaliczenia ćwiczeń

laboratoryjnych.

Łączna ocena punktowa zajęć laboratoryjnych jest sumą punktów uzyskanych za

poszczególne zajęcia oraz za indywidualny projekt i zawiera się w granicach 0-200 pkt.

Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg

skali ECTS):

Zakres Ocena Zakres Ocena

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. David Vandevoorde, Nicolai M. Josuttis - C++ Szablony, vademecum profesjonalisty,

Helion 2003

2. Stephen C. Dewhurst - C++. Kanony wiedzy programistycznej, Helion 2005

3. Nicolai M. Josuttis - C++. Programowanie zorientowane obiektowo. Vademecum

profesjonalisty. Helion 2003

4. James O. Coplien - C++. Styl i technika zaawansowanego programowania. Helion

2004

5. Cay Horstmann, Gary Cornell - Java 2. Techniki zaawansowane. Helion 2005

6. Specyfikacja języka Java - http://java.sun.com

Page 46: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

46

Kierunek: Informatyka

Przedmiot:

Multimedialne interfejsy użytkownika

Multimedia User Interfaces

Czas trwania: semestr 2

Przedmiot: kierunkowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr Anna Kołkowicz 21 zaliczenie na ocenę 5

Laboratorium mgr Tomasz Pachecki 24 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Grafika i komunikacja człowieka z komputerem

lub znajomość literatury obowiązującej w tym przedmiocie

ZAŁOŻENIA I CELE

Celem głównym wykładu jest przedstawienie zasad i metodyki projektowania

multimedialnych interfejsów użytkownika. Rozwiniętymi celami szczegółowymi są:

projektowanie ukierunkowane na użytkownika

metody oceny jakości interfejsu użytkownika

narzędzia pozwalające na doskonalenie komunikacji człowiek-komputer

Celem laboratorium jest nabycie praktycznych umiejętności w rozwiązywaniu problemów z

zakresu projektowania multimedialnych interfejsów użytkownika oraz wykorzystania

narzędzi umożliwiających doskonalenie komunikacji człowiek komputer, a także poszerzenie

wiadomości nabytych w dotychczasowym procesie dydaktycznym.

Cele szczegółowe laboratorium obejmują następujące umiejętności praktyczne:

Komunikacja człowiek-komputer za pomocą interfejsow graficznych

Projektowanie interfejsów głosowych

Wykorzystanie bibliotek DirectX i OpenGL do interakcji z komputerem

Treści zajęć obejmują następujące zagadnienia:

Page 47: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

47

WYKŁAD

1. Cel i zakres przedmiotu. Rola i ewolucja użytkownika i komunikacji człowiek-

komputer.

Podstawowe pojęcia: Interfejs Użytkownika, Muttimedialny Interfejs Użytkownika,

Mentalny Model Uzytkownika

Historia i ewolucja interfejsów użytkownika

2. Pozyskiwanie obrazów

Fotografia cyfrowa

Metody kompresji grafiki

3. Przetwarzanie obrazu

Metody poprawy jakości obrazów

Histogram, wyrównanie histogramu, histogram skumulowany

Filtrowanie

Analiza obrazów, zastosowania

4. Pozyskiwanie i przetwarzanie dźwieku

Pojęcie i właściwosci dźwięku

Cyfrowe przetwarzanie dźwięków

Rozpoznawanie mowy i rozpoznawanie mówcy

5. Projektowanie interfejsu użytkownika

User Centered Design

Cykl projektowania interfejsu użytkownika

Pozyskiwanie danych od użytkownika,metody

6. Obiektowa metodologia analizy i projektowania Muttimedialnego Interfejsu

Użytkownika

Poziomy zadań

Poziom semantyczny

Poziom syntaktyczny

7. Ocena jakości Interfejsu Użytkownika - kryteria

Kryteria oceny jakości

Użyteczność

Zasady projektowania graficznego i multimedialnego interfejsu użytkownika

8. Zastosowanie metodyki KANSEI do doskonalenia interfejsów oprogramowania

Zarys podejścia KANSEI

Podstawy KANSEI ENGINEERING

Page 48: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

48

Metodyka projektowania KANSEI

9. Ocena użyteczności interfejsu uzytkownika

Rodzaje testów

Eye-tracking

Web-usability

10. Projektowanie i użyteczność interfejsów głosowych

Interakcyjne tworzenie systemu

Ocena jakości VUI

Wykorzystanie okulografii w analizie użyteczności VUI

11. Iinterfejs użytkownika aplikacji Web dla urządzeń mobilnych

Porównanie komputera i telefonu komórkowego

Interfejs telefonu komórkowego

Standardy przeglądarek WEB w telefonach komórkowych

Projektowanie interfejsu aplikacji internetowej dla urządzeń mobilnych

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Przetwarzanie obrazu

Histogram, wyrównanie histogramu

Filtrowanie górnoprzepustowe

Segmentacja obrazu

2. Windows API

Podstawowe pojęcia (kontekst, narzędzia graficzne, układ współrzędnych)

Funkcje obsługi myszy i klawiatury

Okna dialogowe

3. Tworzenie modeli 3D

Page 49: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

49

Modele low-poly

Teksturowanie modelu

Normal mapping

4. DirectX - grafika 2D

Podstawowe komponenty DirectX

Inicjalizacja DirectX

Format wierzchołka

5. GUI w DirectX

DirectInput – obsługa myszy

Blending – mieszanie kolorów

Własne kontrolki graficzne

6. DirectX - obsługa kamery

Macierz projekcji

Macierz widoku

Backface culling

7. Modele 3D

Format .X

Format .OBJ

Wczytywanie modelu

8. Animacja w DirectX

Prosta animacja

Animacja postaci

Kolizje

9. Generowanie terenu

Fraktalne generowanie terenu

Mapy wysokości

Teksturowanie terenu

10. DirectX – shadery

Pixel Shader

Vertex Shader

Geometry Shader

11. DirectX – gra 2D Sokoban

Generowanie planszy

Ruch obiektów w grze

Page 50: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

50

DirectSound - dzwięki w grze

12. DirectX – gra 3D symulator lotu

Fizyka w grach 3D

Ruch kamery

Łączenie elementów 2D i 3D

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 11 zajęć może uzyskać od 0 do 110 pkt.

Łączna ocena punktowa zajęć laboratoryjnych zawiera się w granicach 0-110 pkt. Ocena

końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg skali

ECTS):

Zakres Ocena Zakres Ocena

0-55 pkt. ndst (F) 78-88 pkt. db (C)

56-66 pkt. dst (E) 89-99 pkt. db+ (B)

67-77 pkt. dst+ (D) 100-110 pkt. bdb (A)

LITERATURA

1. Tadeusiewicz, R., Flasiński, M., Rozpoznawanie obrazów, PWN, 1991

2. Tadeusiewicz, R., Systemy wizyjne robotów przemysłowych, WNT, 1992

3. Pavlidis, T., Grafika i przetwarzanie obrazów, WNT, 1987

4. Watkins, C.D., Sadun, A., Marenka, S., Nowoczesne metody przetwarzania obrazu,

WNT, 1995

5. Wojciechowski, K., Rozpoznawanie obrazów, Politechnika Śląska, Gliwice, 1997

6. Ostrowski, M. (red), Informacja obrazowa, WNT, 1992

7. Masarek K., Sikorski M. (red), Interfejs użytkownika Kansei w praktyce,

Wydawnictwo PJWSTK, Warszawa 2006

8. M. Kasperski, Anna Boguska-Torbicz Projektowanie stron WWW. Użyteczność w

praktyce, Helion 2008,

Page 51: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

51

1. D.P. Agrawal, Q-A Zeng: Introduction to Wireless and Mobile Systems, Thomson,

2006

2. W. Stallings, Wireless Communications and Networks, Prentice Hall, 2001

3. S. Basagni et al.: Mobile Ad Hoc Networking, Wiley, 2004

4. M. Ilyas (ed.): The Handbook of Ad Hoc Wireless Networks, CRC Press, 2003

5. M. Ilyas, I. Mahgoub (eds.): Mobile Computing Handbook, Auerbach, 2005

6. C. Siva Ram Murthy, B.S. Manoy: Ad Hoc Wireless Networks, WNT, Prentice Hall,

2004

Page 52: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

52

Kierunek: Informatyka

Przedmiot:

Sieci i systemy wirtualne

Virtual Networks Systems

Czas trwania: semestr 2

Przedmiot: obieralny

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr Wacław Bejtan 21 egzamin 5

Laboratorium dr Wacław Bejtan 24 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Języki i paradygmaty progamowania

lub znajomość literatury z tego przedmiotu.

ZAŁOŻENIA I CELE

Celem wykładu jest zapoznanie studentów z pojęciem przestrzeni wirtualnej systemów

komputerowych. Przestrzeń wirtualna w odniesieniu do informatyki obejmuje zarówno

maszyny matematyczne jak i współdziałającego z nimi człowieka. Współczesna

heterogeniczna struktura przestrzeni systemów komputerowych pozwala poddać się takiej

transformacji, po której staje się jednorodna i jednakowa dla wszystkich uczestników.

Przenosząc się do takiej nowej rzeczywistości wirtualnej wszyscy stajemy się

równouprawnionymi członkami największej na świecie, globalnej społeczności, w której

każdemu dane są identyczne możliwości. Wykład, jako adresowany do inżynierów, którzy

będą współuczestniczyć w tworzeniu mechanizmów wspomnianej wyżej transformacji,

prezentuje na wybranych przykładach podstawowe założenia i sposoby realizacji tego procesu

przemiany. Celem wykładu jest więc wyrobienie w uczestnikach intuicji dotyczącej pojęcia

"wirtualny" zarówno w kontekście maszyn - korzystając np. z przykładu maszyny wirtualnej -

jak też w kontekście ludzkim - np. biorąc jako przykład pojęcie telepracy.

Celem laboratorium jest nabycie i opanowanie praktycznych umiejętności w rozwiązywaniu

problemów wyjaśnianych w czasie wykładu. W szczególności zaś zapoznanie się z budową i

tworzeniem interpretera języka programowania będącego podstawą do wprowadzenia w

środowisko systemów i sieci wirtualnych. Celem laboratorium jest również nabycie

umiejętności pracy w środowiskach wirtualnych, a także z całościowym procesem tworzenia

oprogramowania w oparciu o pracę w grupie większej ilości osób tworzących

Page 53: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

53

oprogramowanie, które są podstawą funkcjonowania dzisiejszych zespołów

programistycznych.

WYKŁAD

1. Rozproszony zespół projektowy

Inicjatywa Otwartych Źródeł

Społeczność użytkowników „SourceForge.net”

Usługi i serwisy „SourceForge.net”

Rejestracja użytkownika „SourceForge.net” i zakładanie projektu

Zarządzanie projektem w „SourceForge.net”

Repozytorium CVS,

Sposoby korzystania z CVS w projektach zarządzanych za pomocą „SourceForge.net”

2. Języki formalne i metody kompilacji

Język formalny, gramatyka, rodzaje gramatyk,

Schemat działania kompilatora

Analizator leksykalny - skaner

Analizator składniowy - parser

Parser zstępujący - przykład

Leczenie lewostronnej rekursji

Gramatyki LL(k)

3. JVM - Java™ Virtual Machine: wykonanie programu

Przykłady maszyn wirtualnych: PVM, JVM, Microsoft VM

Założenia przyjęte przy tworzeniu maszyny wirtualnej

Początek działania maszyny wirtualnej,

Fazy uruchamiania programu na maszynie wirtualnej.

Faza ładowania: lista czynności wykonywanych przez ClassLoader, Faza linkowania:

lista czynności,

Weryfikacja ładowanego kodu, Przygotowanie przestrzeni dla danych

Rezolucja referencji symbolicznych

Faza Inicjalizacji: lista czynności dla klasy, lista czynności dla interfejsu

4. Podstawowe koncepcje języka programowania javy

zmienne,

klasy,

internejsy,

tablice,

konwersje i promocje,

wyjątki,

5. Struktura maszyny wirtualnej

typy danych

Page 54: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

54

obszary danych rzeczywistego czasu pracy maszyny: rejestr pc, stosy JVM, sterta,

obszar metod, pula stałych rzeczywistego czasu, stos metod natywnych,

ramki,

interpreter - pętla główna

6. Format pliku binarnego (plik z rozszerzeniem .class):

Struktura ClassFile

Położenie kodu w strukturze pliku binarnego

Weryfikacja struktury pliku binarnego

Przejście pierwsze: sprawdzenie poprawności wczytywanej struktury

Przejście drugie: sprawdzenie dziedziczenia, wskaźników do pól, poprawności nazw

Przejście trzecie: weryfikacja kodu

Przejście czwarte: przejście wirtualne (w trakcie wykonywania programu)

7. HotSpot VM - implementacja rzeczywistej maszyny wirtualnej

Architektura klienta i serwera,

Problemy kompilacji JIT (just-in-time)

Technologia adaptacyjna: wykrywanie gorących punktów (hot spot), dynamiczna

deoptymalizacja,

Kompilator wykonywanego kodu w maszynie wirtualnej - wersja serwer i klient,

8. Odśmiecanie sterty (Garbage Collection)

Podstawowe algorytmy odśmiecania sterty (GC)

Algorytm domyślny w wersji J2SE 1.4.2 i 5.0: serial GC

Właściwości obiektów na stercie, charakterystyka czasów życia

Podział sterty na obszary minor i major, strategia przenoszenia obiektów między

obszarami,

Miary skuteczności odśmiecania,

Monitorowanie mechanizmu GC w trakcie pracy aplikacji,

Modyfikowanie struktury sterty pod kątem wydajności uruchamianej aplikacji

9. Pozostałe mechanizmy odśmiecania sterty (GC) zaimplementowane w JVM

The throughput collector,

The concurrent low pause collector,

The incremental low pause collector

Ergonomia w JVM 5.0

10. Funkcjonalność wirtualnych grup użytkowników

Telepraca

Definicja telepracy

Kategorie telepracowników

Dane statystyczne na temat wykorzystania telepracy w Europie,

Prawo autorskie i implikacje jego stosowania w pracy informatyka

Page 55: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

55

11. Licencja Otwartych Źródeł (Open Source) jako prawne narzędzie ekspansji

systemów wirtualnych

Inicjatywa Open Source

licencje Open Source

licencja GNU

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Reguły włączenia się do społeczności „SourceForge.net”

Rejestracja uczestnika w „SourceForge.net”

Konfiguracja WinCVS w celu utworzenia dostępu do repozytorium

2. Projekty realizowane w ramach „SourceForge.net” – interpretery języków

strukturalnych

Zakończenie procesu rejestracji uczestników „SourceForge.net”

Zgłoszenie własnych projektów do administratorów „SourceForge.net”

3. Repozytorium CVS

Zakończenie konfiguracji WinCVS oraz Putty

Zapis i odczyt z repozytorium założonych projektów

4. Analiza założeń dotyczących składni fragmentu języka obsługiwanego przez

interpretery

Tworzenie specyfikacji w BNF

Podstawowe pojęcia języka: słowo kluczowe, nazwa, liczba

Zmienne, Instrukcje proste, Instrukcje złożone (pętle)

Prezentacja specyfikacji BNF

5. Analiza funkcjonalności interpretera

Struktura interpretera: analizator leksykalny, analizator składniowy, inicjalizator,

egzekutor

Page 56: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

56

Przepływ sterowania w interpreterze

6. Generator analizatora leksykalnego Flex

Zapoznanie z programem Flex

Reguły analizatora

Warunki początkowe

Makra

7. Generator analizatora składniowego Bison

Zapoznanie z programem Bison

Zasady budowy plików dla programu Bison

Wywołanie programu

8. Analiza postaci pośrednich danych przekazywanych między kolejnymi modułami

interpretera

Dane wczytywane,

Dane z analizatora leksykalnego

Dane z analizatora składniowego

Zadania inicjalizatora i egzekutora

Implementacja modułu wczytywania i zapisu danych

9. Implementacja analizatora leksykalnego

Implementacja analizatora leksykalnego

Testowanie analizatora

10. Implementacja analizatora składniowego

Implementacja analizatora składniowego

Testowanie analizatora

11. Implementacja inicjalizatora i egzekutora

Implementacja inicjalizatora

Implementacja egzekutora

12. Integracja zrealizowanych modułów interpretera

Uzgodnienie interfejsów

Kompilacja cząstkowych modułów w całości jako jeden program

Próby uruchomienia gotowych interpreterów

Testy (graniczne, obciążeniowe, etc.)

Umieszczenie gotowego projektu na stronie „SourceForge.net”

ZALICZENIE LABORATORIUM

Page 57: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

57

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 11 zajęć może uzyskać od 0 do 110 pkt.

Łączna ocena punktowa zajęć laboratoryjnych zawiera się w granicach 0-110 pkt. Ocena

końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg skali

ECTS):

Zakres Ocena Zakres Ocena

0-55 pkt. ndst (F) 78-88 pkt. db (C)

56-66 pkt. dst (E) 89-99 pkt. db+ (B)

67-77 pkt. dst+ (D) 100-110 pkt. bdb (A)

LITERATURA

1. Tim Lindholm, Frank Yellin, The Java Virtual Machine Specification, Second Edition,

http://java.sun.com/docs/books/vmspec/

2. Al Geist, Adam Beguelin, Jack Dongarra, Weicheng Jiang, Robert Manchek, Vaidy

Sunderam, PVM: Parallel Virtual Machine, A Users Guide and Tutorial for

Networked Parallel Computing, http://www.netlib.org/pvm3/book/pvm-book.html

3. Karl Fogel, Open Source Development with CVS, http://cvsbook.red-bean.com/

4. Per Cederqvist, CVS--Concurrent Versions System v1.11.2,

http://www.cvshome.org/docs/manual/

Page 58: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

58

Kierunek: Informatyka

Przedmiot:

Rozproszone systemy sztucznej inteligencji

Distributed Systems of Artificial Intelligence

Czas trwania: semestr 2

Przedmiot: obieralny

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład

dr inż. Jerzy Tchórzewski

prof. dr hab. inż. Mieczysław

Kłopotek

21 egzamin

5

Laboratorium mgr Mariusz Kujawiak

dr inż. Jerzy Tchórzewski 24

zaliczenie na

ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Sztuczna Inteligencja

Algorytmy Ewolucyjne i Sieci Neuronowe

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Celem głównym wykładu jest zapoznanie z podstawowymi pojęciami i metodami

projektowania aplikacji internetowych oraz rozproszonych, a takze problemami

merytorycznymi związanymi z praktycznym wykorzystaniem sieci Internet jako medium

integrującego rozproszone komponenty aplikacji oraz jako środowisko interakcji z

użytkownikami. Rozwiniętymi celami szczegółowymi są:

Projektowanie i implementacja serwisów internetowych takich jak aukcje, sklepy

internetowe i serwery reklam

projektowania standardowych komponentów serwisów: customer relationship

management, rozproszone bazy danych, wyszukiwarki internetowe, problemy

bezpieczeństwa i płatności w Internecie, systemy gridowe

projektowanie aplikacji rozporoszonych typu sieci sensorowej.

Celem laboratorium jest nabycie i opanowanie praktycznych umiejętnosci w rozwiazywaniu

problemów omawianych na wykładzie przy wykorzystaniu metod i narzędzi rozproszonych

systemów sztucznej inteligencji w środowisku MATLAB, a także poszerzenie i pogłębienie

Page 59: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

59

wiadomości nabytych w dotychczasowym procesie dydaktycznym. Przedmiot powinien być

poprzedzony przedmiotem Metody sztucznej inteligencji.

WYKŁAD

1. Wstęp do systemów sztucznej inteligencji

przedmiot sztucznej inteligencji,

rozproszona sztuczna inteligencja,

rozproszone systemy sztucznej inteligencji,

rozproszone rozwiązywanie problemów,

systemy wieloagentowe,

systemy uczące się oraz maszynowe uczenie się,

programy uczące się, zastosowania systemów uczących się,

uczenie się aproksymacji funkcji (rodzaje aproksymatorów).

2. Algorytmy i heurystyka

podstwowe pojęcia z heurystyki i metaheurystyki,

algorytmu heurystyczne i metody wspinania,

przeszukiwanie wyczerpujące, przeszukiwanie lokalne,

metody radzenia sobie z ograniczeniami,

algorytmy zachłanne,

programowanie dynamiczne,

symulowane wyżarzanie,

przegląd oprogramowania z algorytmów heurystycznych

3. Systemy samoorganizujące się

samoorganizująca się sieć neuronowa,

sieci Kohenena, rodzaje SOM-ów,

idea podstawowego algorytmu SOM,

uczący się agenci jako elementy systemu kooperacyjnego odpowiadania na zapytania,

zasada konkurencji neuronów, meksykański kapelusz,

wektorowa kwantyzacja a sieci SOM, teoretyczne własności SOM,

praktyczne aspekty obliczeń przy pomocy SOM,

mapowanie informacji przy wykorzystaniu sieci SOM,

zastosowania systemów uczacych się,

tryby i szybkość uczenia się,

4. Systemy pamięci skojarzeniowych

rozproszenie w skojarzeniach,

sieci Hopfielda, ogólniona sieć Hopfielda,

praca sieci w trybie synchronicznym i asynchronicznym,

budowa pamięci skojarzeniowych,

twierdzenie o oszacowaniu,

twierdzenie o zbieżności sieci,

twierdzenie o oszacowaniu liczby kroków,

twierdzenie o poprawności uczenia,

Page 60: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

60

promień przyciągania,

pojemność bipolarna,

sieci BAM,

alternatywne metody budowy pamięci skojarzeniowej

sieci MAM,

maksymalna siec neuronowa (MSN),

problem optymalnego ustawienia modułów (MOP)

5. Równoległość i rozproszenie w algorytmach ewolucyjnych

algorytmy koewolucyjne,

czysty model wyspowy,

wielowymiarowy torus,

hipersześcian,

drabina,

relacja sąsiedztwa,

implementacje równoległe,

algorytm ewolucyjny ze zrównolegleniem,

zrównoleglenie przy obliczaniu funkcji przystosowania,

zrównoleglenie reprodukcji i operacji genetycznych,

oczekiwane korzyści ze zrównoleglenia,

modyfikacje algorytmu ewolucyjnego z uwzględnieniem zadania wielokryterialnego,

inne możliwości zrównoleglenia i rozproszenia w algorytmach ewolucyjnych,

algorytmy komórkowe,

algorytmy systemowe.

6. Zrównoleglenie i rozproszenie w algorytmach immunologicznych

ekstrakcja wiedzy z danych,

uczące się układy idiotypowe,

immunologiczne rozpoznawanie obrazów,

eksploracyjna analiza danych,

immunologiczna kompresja danych,

immunologiczna algorytmy genetyczne,

immunologiczna identyfikacja,

detekcja anomalii,

tryby i szybkość uczenia się,

immunologiczna optymalizacja,

7. Metody reprezentacji wiedzy z wykorzystaniem zbiorów przybliżonych

podstawowe pojęcia teorii zbiorów przybliżonych,

aproksymacja zbioru, aproksymacja rodziny zbiorów,

liczby rozmyte, relacje rozmyte,

analiza tablic decyzyjnych,

wnioskowanie przybliżone, zastosowania zbiorów przybliżonych,

podstawowe pojęcia zbiorów rozmytych, operacje na zbiorach rozmytych,

metody reprezentacji wiedzy z wykorzystaniem zbiorów rozmytych,

wnioskowanie rozmyte,

rozmyte systemy wnioskujące, zastosowania zbiorów rozmytych,

Page 61: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

61

systemy ekspertowe, sieci neuronowe i algorytmy ewolucyjne oparte o logikę

rozmytą,

chaotyczne sieci neuronowe

8. Systemy neuronowo-rozmyte

modelowanie statystycznej funkcji nieliniowej,

modelowanie nieliniowego obiektu dynamicznego,

systemy neuronowo-rozmyte typu Mamdaniego,

przykłady algorytmów grupowania danych.

algorytm ewolucyjny w środowisku dynamicznym,

systemy neuronowo-rozmyte typu logicznego,

systemy neuronowo-rozmyte typu Talagi-Sugeno,

podziały ostre i rozmyte, kryteria jakości grupowania,miary odległości,

9. Obliczenia inteligentne

reprezentacja i podobieństwo,

rozmyte podobieństwo oparte na regułach,

adaptacyjne sieci logiczne,

przekształcenia dyskretne i ich efektywne realizacje neuronowe,

wybrane klasyfikatory,

klasyfikatory maksymalnoodległosciowe,

sztuczne życie,

nowoczesna heurystyka.

10. Przykłady systemów rozproszonej sztucznej inteligencji

percepcja i rozpoznawanie mowy,

sygnały mowy w automatyce,

sygnały mowy w telekomunikacji,

genetyczne systemy uczące się,

rozpoznawanie obrazów,

rozpoznawanie czucia, smaku, powonienia,

inteligentne wyszukiwarki internetowe,

inteligentne systemy w zarządzaniu.

11. Statystyczne systemy uczące się

liniowe metody klasyfikacji,

metody klasyfikacji oparte na rozkładach prawdopodobieństwa,

drzewa klasyfikacyjne i rodziny klasyfikatorów,

modele adaptacyjne,

dyskryminacja elastyczna,

maszyny wektorów podpierających,

metody rzutowania wiedzy,

metody hierarchiczne, dendrogramy.

ZALICZENIE WYKŁADU

Page 62: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

62

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Środowisko MATLABA i Simulinka do projektowania systemów rozproszonych

poznanie możliwości środowiska MATLAB do generowania systemów

rozproszonych,

tworzenie modeli systemów wieloagentowych,

grupowanie danych rozproszonych,

systemy rozmyte, przybliżone, itp.,

2. Neural Network Toolbox jako narzędzie do projektowania sztucznych sieci

neuronowych

systemy uczące się oraz samoorganizujące się w uczeniu aproksymacji funkcji,

NNT do projektowania uczących się agentów,

sieci neuronowe do mapowania wiedzy agentów,

wektorowa kwantyzacja a sieci SOM,

3. Systemy pamięci skojarzeniowych

Projektowaniew środowisku MATLAB uogólnionej sieci Hopfielda,

Projektowaniew środowisku MATLAB maksymalnej sieci neuronowej,

4. Algorytmy koewolucyjne

Projektowanie w środowisku MATLAB rozproszenych algorytmów ewolucyjnych,

Projektowanie w środowisku MATLAB równoległych algorytmów ewolucyjnych,

5. Algorytmy immunologiczne

Projektowanie w środowisku MATLAB ekstrakcji wiedzy z danych

Projektowanie w środowisku MATLAB immunologicznej kompresji danych

6. Zbiory przybliżone

Projektowanie w środowisku MATLAB systemów ekspertowych opartych o

wnioskowanie przybliżone,

Projektowanie w środowisku MATLAB analizy tablic decyzyjnych,

Page 63: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

63

7. Zbiory rozmyte

Projektowanie w środowisku MATLAB rozmytej sieci neuronowej

Projektowanie w środowisku MATLAB systemu ekspertowego z rozmytą bazą

wiedzy

8. Systemy neuronowo-rozmyte

Projektowanie w środowisku MATLAB systemów neuronowo-rozmytych

Dobór reguł uczenia

9. Modelowanie w środowisku MATLAB nieliniowych obiektów dynamicznych,

systemy Mamdaniego,

systemy Talagi-Sugeno,

systemy logiczne,

10. Projektowanie w środowisku MATLAB statystycznych systemów uczących

dyskryminacja elastyczna,

uczenie maszynowe

11. Projektowanie w środowisku MATLAB systemów ekspertowych wykorzystujacych

metody heurystyczne

adaptacyjne sieci logiczne, klasyfikatory, algorytmy zachłanne,

Obliczenia inteligentne i nowoczesna heurystyka,

symulowane wyżarzanie.

12. Projektowanie w środowisku MATLAB systemów sztucznego życie

genetyczne algorytmy sztucznego życia,

gry komputerowe

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego i ostatniego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie

ocen cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego

projektu. W przypadku nieobecności studenta na laboratorium sposób ich odpracowania

określa osoba odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 10 zajęć może uzyskać od 0 do 100 pkt.

Page 64: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

64

Łączna ocena punktowa zajęć laboratoryjnych zawiera się w granicach 0-100 pkt. Ocena

końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg skali

ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LITERATURA

1. Arabas J..: Wykłady z algorytmów ewolucyjnych. WNT. Warszawa 2001

2. Cheyer A. ,P.R., Wang M., Baeg S. Ch. : Otwarta architektura agenta. ENTRI. USA.

2001

3. Kłopotek M: Inteligentne wyszukiwarki internetowe. EXIT. Warszawa 2001

4. Linh H.: Sieci neuronowe rozmyte w zadaniach klasyfikacji i estymacji. Warszawa

2000

5. Michalewicz Z.: Jak to rozwiazać czyli nowoczesna heurystyka. WNT. Warszawa

2006

6. Osowski S.: Sieci neuronowe do przetwarzania informacji. WNT. Warszawa 2005

7. Rutkowski L.: Metody i techniki sztucznej inteligencji. WN PWN. Warszawa 2005

8. Wierzchoń S.: Sztuczne systemy immunologiczne. Teoria i zastosowania. AOW

EXIT. Warszawa 2001

9. Szczepaniak P.S.: Obliczenia inteligentne, szybkie przekształcenia i klasyfikatory.

EXIT. Warszawa 2004

Page 65: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

65

Kierunek: Informatyka

Przedmiot:

Zastosowania informatyki II - projekt zespołowy

Computer Science Applications II - Team Programming

Project

Czas trwania: semestr 4

Przedmiot: kierunkowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Laboratorium

prof. dr hab. inż. Andrzej Barczak

prof. dr hab. inż. Wojciech Penczek

dr hab. Franciszek Seredyński

60 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest posiadanie podstawowego zakresu wiedzy

z następujących przedmiotów realizowanych na studiach II stopnia:

Modelowanie i analiza systemów informatycznych,

Zastosowania informatyki 1,

Zaawansowane technologie programistyczne,

Multimedialne interfejsy użytkownika,

Przetwarzanie mobilne i komunikacja ruchoma,

oraz przedmiotów specjalnościowych realizowanych w semestrach I-III.

ZAŁOŻENIA I CELE

Tematyka projektu zespołowego obejmuje zagadnienia występujące podczas realizacji

przedsięwzięć informatycznych w różnych obszarach dziedzinowych, ze szczególnym

uwzględnieniem następujących obszarów:

1. energetyki

2. elekomunikacji,

3. medycyny,

4. administracji publicznej,

5. bezpieczeństwa i zarządzania kryzysowego,

6. bankowości.

Celem podstawowym przedmiotu jest nabycie umiejętności w zakresie wykorzystywania

wybranych metodyk modelowania w procesie analizy i projektowania wybranego systemu

Page 66: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

66

informatycznego oraz procesie wytwarzania oprogramowania składającego się na ten system.

W szczególności w projekcie powinny wystąpić następujące fazy rozwoju systemu:

faza specyfikacji wymagań,

faza analizy,

faza projektowania,

faza implementacji,

faza testowania.

Rozwiniętymi celami szczegółowymi sa:

wykorzystanie wiedzy zdobytej w dotychczasowym procesie kształcenia do realizacji

złożonych przedsięwzięć informatycznych o charakterze projektowym,

zdobycie umiejętności poszukiwania, porządkowania i wykorzystywania w pracach

projektowych informacji pochodzących z różnych źródeł,

opanowanie umiejętności redagowania i analizowania wymagań oraz prowadzenia

działań projektowo-implementacyjnych podczas realizacji przedsięwzięć

informatycznych dotyczących wybranego obszaru dziedzinowego.

Dodatkowym celem przedmiotu jest :

zdobycie umiejętności efektywnego współdziałania i pracy w zespole,

zdobycie umiejętności podejmowania indywidualnych i grupowych decyzji,

doskonalenie umiejętności algorytmicznego myślenia

ROLA NAUCZYCIELA AKADEMICKIEGO

Przed rozpoczęciem zajęć:

sformułowanie tematów i określenie zakresów projektów w formie pisemnej (na

podstawie analizy zakresu merytorycznego realizowanych przedmiotów i specyfiki

obszaru dziedzinowego reprezentowanego przez nauczyciela),

przygotowanie zagadnień do szczegółowego rozwiązania,

określenie literatury podstawowej i uzupełniającej (lub innych źródeł).

Przykładowe tematy:

System obsługi biblioteki, księgarni, urzędu, linii lotniczej, kas biletowych, itp.

System monitorowania ofert hoteli, schronisk, biur podróży, itp.

System wspomagający pracę magazynów, hurtowni, wydziałów przedsiębiorstw, itp.

Rozproszony system informacyjny połączeń kolejowych, lotniczych, autobusowych,

itp.

Rozproszona baza danych wypożyczalni samochodów, książek, kaset video, itp.

System zdalnego rozliczania stanu liczników wody, energii cieplnej, elektrycznej,

czasu pracy stacji roboczych.

System zakupów internetowych.

Metody dostępu do rozproszonych baz danych z poziomu stron WWW.

Metody dostępu do rozproszonych baz danych z wykorzystaniem technologii

komponentowych (np. COM, CORBA, EJB), języków skryptowych (np. PHP, ASP,

JSP, JAVA, SQL).

Page 67: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

67

Testowanie mechanizmów replikacji w środowisku Sybase, Oracle, MS SQL Server.

Techniki integracji rozproszonych źródeł danych

Projektowanie "przeźroczystego" dostępu do rozproszonych baz danych

Testowanie metod, algorytmów, protokołów uwierzytelniania dostępu do

rozproszonych baz danych.

W trakcie realizacji zajęć:

uszczegółowienie i zatwierdzenie zakresu merytorycznego projektu,

określenie metod i narzędzi niezbędnych do realizacji projektu,

nadzorowanie i pomoc w realizacji projektu,

zatwierdzanie zmian w projekcie,

uzgodnienie zakresu i zawartości dokumentacji projektowej (sprawozdania),

uzgodnienie zakresu i formy prezentacji wyników prac projektowych,

ocena projektów

LABORATORIUM

1. Zajęcia wstępne

przedstawienie celu i zakresu przedmiotu,

omówienie sposobu zaliczania,

wybór dziedziny przedmiotowej,

podział na grupy,

omówienie tematyki projektów i ustalenie realizatorów

2. Wstępne określenie zakresu projektów

prezentacja propozycji rozwiązań,

dyskusja zagadnień do szczegółowego rozwiązania,

uszczegółowienie wymagań

3. Samodzielna praca studentów w grupach projektowych 1

realizacja projektów z wykorzystaniem metod i narzędzi uzgodnionych z

prowadzącym,

wykonywanie dokumentacji projektowej

4. Samodzielna praca studentów w grupach projektowych 2

realizacja projektów z wykorzystaniem metod i narzędzi uzgodnionych z

prowadzącym,

wykonywanie dokumentacji projektowej

5. Samodzielna praca studentów w grupach projektowych 3

realizacja projektów z wykorzystaniem metod i narzędzi uzgodnionych z

prowadzącym,

wykonywanie dokumentacji projektowej

Page 68: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

68

6. Samodzielna praca studentów w grupach projektowych 4

realizacja projektów z wykorzystaniem metod i narzędzi uzgodnionych z

prowadzącym,

wykonywanie dokumentacji projektowej

7. Samodzielna praca studentów w grupach projektowych 5

realizacja projektów z wykorzystaniem metod i narzędzi uzgodnionych z

prowadzącym,

wykonywanie dokumentacji projektowej

8. Samodzielna praca studentów w grupach projektowych 6

realizacja projektów z wykorzystaniem metod i narzędzi uzgodnionych z

prowadzącym,

wykonywanie dokumentacji projektowej

9. Samodzielna praca studentów w grupach projektowych 7

realizacja projektów z wykorzystaniem metod i narzędzi uzgodnionych z

prowadzącym,

wykonywanie dokumentacji projektowej

10. Samodzielna praca studentów w grupach projektowych 8

realizacja projektów z wykorzystaniem metod i narzędzi uzgodnionych z

prowadzącym,

wykonywanie dokumentacji projektowej

11. Samodzielna praca studentów w grupach projektowych 9

realizacja projektów z wykorzystaniem metod i narzędzi uzgodnionych z

prowadzącym,

wykonywanie dokumentacji projektowej

12. Samodzielna praca studentów w grupach projektowych 10

realizacja projektów z wykorzystaniem metod i narzędzi uzgodnionych z

prowadzącym,

wykonywanie dokumentacji projektowej

13. Samodzielna praca studentów w grupach projektowych 11

realizacja projektów z wykorzystaniem metod i narzędzi uzgodnionych z

prowadzącym,

wykonywanie dokumentacji projektowej

14. Prezentacja wyników prac projektowych

Page 69: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

69

przedstawienie wyników prac,

prezentacja rozwiązań praktycznych,

przedstawienie dokumentacji projektowej.

15. Omówienie i zaliczenie projektów

ZALICZENIE LABORATORIUM

Przedstawiony do oceny projekt powinien zawierać:

1. aplikację informatyczną zapisaną na odpowiednim nośniku (dyskietka, CD ROM lub/i

na wskazanym przez prowadzącego serwerze)

2. prezentację graficzną (lub multimedialną) wskazującą na istotne zagadnienia

poruszane w projekcie oraz sposoby ich realizacji

3. dokumentację projektową w wersji drukowanej i elektronicznej obejmującą m.in.

temat i cel projektu

opis działania i funkcje systemu

założenia przyjęte podczas realizacji systemu (np. ograniczenia implementacji)

wykorzystywane metodyki, technologie i narzędzia projektowania oraz implementacji

systemu (np. język specyfikacji UML, Rational Rose, MS.NET, inne systemy CASE)

opis poszczególnych etapów rozwoju systemu

ocenę wydajności (np. czasy przetwarzania zapytań, stopień obciążenia systemu, itp)

sposób uruchomienia i testowania aplikacji

wnioski końcowe

wykorzystywane pozycje źródłowe

Szcegółową zawartość merytoryczną oraz formę dokumentacji ustala prowadzący

indywidualnie dla każdego projektu

Podczas zaliczenia projektu prowadzący uwzględnia:

kompletność, spójność i unikalność projektu ,wartości merytoryczne i praktyczne

przyjętych w projekcie rozwiązań (60% (0-60 pkt.))

kompletność dokumentacji (30% (0-30 pkt.))

prezentację projektu (10% (0-10 pkt.))

Łączna ocena punktowa zajęć laboratoryjnych zawiera sie w granicach 0-100 pkt. (dla

każdego członka zespołu projektowego należy uwzględnić stopień udziału w pracach

zespołu). Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi :

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

Page 70: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

70

Specjalność: SIECI KOMPUTEROWE I SYSTEMY ROZPROSZONE

Page 71: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

71

Kierunek: Informatyka

Przedmiot:

Środowiska przetwarzania rozproszonego

Distributed Processing Environment

Czas trwania: semestr 1

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr inż. Zbigniew Wesołowski 21 egzamin

6 Laboratorium

mgr Ewa Szczepanik

dr Marina Neberidze 24 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

podstawy programowania równoległego,

podstawy programowania rozproszonego,

algorytmy i złożoność

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Celem przedmiotu jest zapoznanie studentów z najważniejszymi środowiskami

programowania rozproszonego: MS.NET.Remoting, Ada 95, Corba oraz Java RMI.

Celem wykładu jest przedstawienie zasad i paradygmatów programowania rozproszonego w

środowiskach opartych na gniazdach oraz na obiektach rozproszonych. Omawiane jest

środowiska Jini oparte na koordynacji.

Celem laboratorium jest nauczenie studentów praktycznych umiejętności w konstruowaniu i

implementowaniu aplikacji rozproszonych w środowiskach MS.NET.Remoting, Ada Sockets,

Corba oraz Java RMI. W ramach zajęć studenci rozwiązują różnorodne zadania

programowania rozproszonego.

Cele poszczególnych zajęć laboratoryjnych:

Celem ćwiczenia nr 1 jest nauczenie studentów zasad tworzenia prostych aplikacji

rozproszonych z użyciem gniazd w C#.

Page 72: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

72

Celem ćwiczenia nr 2 jest nauczenie studentów zasad tworzenia zaawansowanych

aplikacji rozproszonych z użyciem gniazd w C#.

Celem ćwiczenia nr 3 jest nauczenie studentów zasad tworzenia prostych aplikacji

rozproszonych z użyciem gniazd programowanych w AdaSockets.

Celem ćwiczenia nr 4 jest nauczenie studentów zasad zaawansowanych aplikacji

rozproszonych z użyciem gniazd programowanych w AdaSockets.

Celem ćwiczenia nr 5 jest nauczenie studentów zasad tworzenia prostych aplikacji

rozproszonych opartych na obiektach w środowisku Corba.

Celem ćwiczenia nr 6 jest nauczenie studentów zasad tworzenia aplikacji

rozproszonych opartych na obiektach w środowisku Corba, w której aplikacja serwera

jest napisana w innym języku niż aplikacja klienta.

Celem ćwiczenia nr 7 jest nauczenie studentów zasad tworzenia zaawansowanych

aplikacji rozproszonych opartych na obiektach w środowisku Corba.

Celem ćwiczenia nr 8 jest nauczenie studentów zasad tworzenia prostych aplikacji

rozproszonych w środowisku Java RMI.

Celem ćwiczenia nr 9 jest nauczenie studentów zasad tworzenia prostych aplikacji

rozproszonych w środowisku Java RMI.

Celem ćwiczenia nr 10 jest nauczenie studentów zasad tworzenia aplikacji

rozproszonych w środowisku Java RMI wykorzystujących technikę dynamicznego

przekazywania obiektów.

Celem ćwiczenianr 11 jest nauczenie studentów zasad tworzenia prostych aplikacji

rozproszonych w środowisku MS.NET.Remoting.

Celem ćwiczenia nr 12 jest nauczenie studentów zasad tworzenia aplikacji

rozproszonych w środowisku MS .NET.Remoting wykorzystując technikę

asynchronicznego wywołania metod obiektów oddalonych.

WYKŁAD

1. Wprowadzenie do środowisk programowania rozproszonego.

Definicje pojęć podstawowych

Istota programowania rozproszonego

Krótka historia środowisk programowania rozproszonego

Zasady konstruowania programów rozproszonych w środowiskach homogenicznych

Klasyfikacja środowisk programowania rozproszonego: środowiska oparte na

gniazdach, obiektach rozproszonych, dokumentach, koordynacji;

2. Środowiska programowania rozproszonego opartego na gniazdach.

Mechanizm gniazd

Przesyłanie danych bez tworzenia połączenia

Wady komunikacji bezpołączeniowej

Komunikacja przy użyciu połączeń

Komunikacja synchroniczna

Komunikacja asynchroniczna

3. Programowanie rozproszone z użyciem gniazd w C#.

Architektura NET.Sockets

Definiowanie i implementowanie gniazd po stronie klienta i serwera

Page 73: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

73

Definiowanie i implementowanie mechanizmów komunikacji synchronicznej

4. Programowanie rozproszone z uzyciem gniazd w Ada 95

Architektura AdaSocktes

Definiowanie i implementowanie gniazd po stronie klienta i serwera

Definiowanie i implementowanie mechanizmów komunikacji synchronicznej i

asynchronicznej miedzy gniazdami

5. Programowanie oparte na obiektach rozproszonych w środowisku CORBA

Architektura CORBA

Wprowadzenie do jezyka IDL

Adapter POA

Zasady tworzenia statycznych aplikacji serwera i klienta

Zasady tworzenia dynamicznych aplikacji serwera i klienta

6. Programowanie oparte na obiektach rozproszonych w środowisku Java RMI - 1.

Wirtualna maszyna Javy.

Architektura RMI.

Model polityki bezpieczenstwa w JDK. Menedzer bezpieczenstwa.

Definiowanie i implementacja interfejsu zdalnego

7. Programowanie oparte na obiektach rozproszonych w środowisku Java RMI - 2.

Definiowanie i implementacja aplikacji klienta.

Definiowanie i implementacja aplikacji serwera.

Testowanie i uruchamianie aplikacji rozproszonej.

Dynamiczne ładowanie klas.

Porównanie Java RMI i CORBA.

8. Programowanie oparte na obiektach rozproszonych w C# - 1.

Architektura MS.NET.Remoting.

Przekazywanie obiektów w MS.NET.Remoting.

Kanały komunikacyjne (System.Runtime.Remoting.Channels).

Tworzenie aplikacji rozproszonej w MS.NET.Remoting.

Tworzenie obiektu serwera.

Tworzenie obiektu klienta.

Konfigurowanie aplikacji rozproszonej

9. Programowanie oparte na obiektach rozproszonych w C# - 2.

Asynchroniczne wywoływanie obiektów oddalonych.

Delegaci.

Separowanie delegatów.

Wykorzystanie delegatów w wywoływaniu obiektów lokalnych.

Wykorzystanie delegatów w wywoływaniu obiektów oddalonych.

Page 74: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

74

10. Jini - środowisko oparte na koordynacji.

Architektura Jini.

Komunikacja.

Procesy.

Nazewnictwo.

Synchronizacja.

Zwielokrotnianie.

Tolerowanie awarii.

Bezpieczeństwo.

11. Klastry i ich rozwój

Rodzaje klastrów: klastry do przetwarzania danych, klastry serwerowe,Klastry HA,

Cechy technologii klastrowej.

Architektury klastrów.

Systemy operacyjne klastrów.

Wybrane realizacje klastrów obliczeniowych: Condor, Beowulf, DQS, MOsix, NVM.

ZALICZENIE WYKŁADU

Przedmiot kończy sie egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależnosci od liczby uzyskanych punktów moze byc

nastepująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Programowanie z użyciem gniazd w C# - 1.

Implementacja gniazda po stronie klienta i serwera;

Implementacja kanału komunikacyjnego miedzy gniazdami;

Tworzenie i uruchamianie aplikacji rozproszonej przesyłajacej komunikaty.

2. Programowanie z użyciem gniazd w C# - 2.

Tworzenie i uruchamianie aplikacji rozproszonej wykonujacej obliczenia na tablicach

jedno- i dwuwymiarowych

Uruchamianie stworzonej aplikacji w środowisku sieciowym.

3. Programowanie z użyciem gniazd w AdaSockets - 1.

Implementacja gniazda po stronie klienta i serwera;

Implementacja kanału komunikacyjnego miedzy gniazdami;

Page 75: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

75

Tworzenie i uruchamianie aplikacji rozproszonej przesyłajacej komunikaty.

4. Programowanie z użyciem gniazd w AdaSockets - 2.

Tworzenie i uruchamianie aplikacji rozproszonej wykonujacej sortowanie danych w

tablicach jednowymiarowych

Tworzenie i uruchamianie aplikacji rozproszonej obliczającej różnicę symetryczną

dwóch zbiorów liczb całkowitych.

5. Programowanie oparte na obiektach rozproszonych w środowisku Corba - 2.

Projektowanie i implementacja w IDL interfejsu zdalnego obiektu;

Projektowanie i implementacja aplikacji serwera;

Projektowanie i implementacja aplikacji klienta;

Kompilacja i uruchomienie prostej aplikacji rozproszonej przesyłajacej komunikaty

6. Programowanie oparte na obiektach rozproszonych w środowisku Corba - 2.

Tworzenie prostej aplikacji rozproszonej w języku C++ po stronie serwera.

Tworzenie prostej aplikacji rozproszonej w języku Java po stronie klienta.

Uruchomienie aplikacji rozproszonej w architekturze klient-serwer.

7. Programowanie oparte na obiektach rozproszonych w środowisku Corba - 3.

Projektowanie i implementacja interfejsu dynamicznego wywołania - DII

Projektowanie i implementacja interfejsu dynamicznego szkieletu - DSI;

Projektowanie i implementacja dynamicznych postaci aplikacji klienta i serwera

8. Programowanie oparte na obiektach rozproszonych w środowisku Java RMI - 1.

Tworzenie aplikacji rozproszonej w środowisku Java-RMI po stronie serwera.

Tworzenie aplikacji rozproszonej w środowisku Java-RMI po stronie klienta.

Uruchomienie aplikacji rozproszonej w architekturze klient-serwer w środowisku

Java-RMI.

9. Programowanie oparte na obiektach rozproszonych w środowisku Java RMI - 2.

Tworzenie i implementacja aplikacji rozproszonej w środowisku Java-RMI

obliczającej przybliżoną wartość liczby metodą symulacji Monte Carlo.

Uruchamianie stworzonej aplikacji w środowisku sieciowym.

10. Programowanie oparte na obiektach rozproszonych w środowisku Java RMI - 3.

Tworzenie i implementacja aplikacji rozproszonej obliczającej średnią arytmetyczną

zbioru liczb zmiennopozycyjnych wykorzystując technikę dynamicznego

przekazywania obiektów.

Uruchamianie stworzonej aplikacji w środowisku sieciowym.

11. Programowanie oparte na obiektach rozproszonych w C# - 1.

Page 76: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

76

Tworzenie i implementacja aplikacji rozproszonej przesyłającej komunikaty między

serwerem a klientem (klientami).

Uruchamianie stworzonej aplikacji w środowisku sieciowym.

12. Programowanie oparte na obiektach rozproszonych w C# - 2.

Tworzenie i implementacja aplikacji rozproszonej asynchronicznie rozsyłającej

komunikaty między serwerem a klientem (klientami).

Uruchamianie stworzonej aplikacji w środowisku sieciowym.

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 11 zajęć może uzyskać od 0 do 110 pkt.

Temat i zakres projektu indywidualnego student otrzymuje najpóźniej na trzecim zajęciu. Za

projekt może on otrzymać ocenę punktową mieszczącą się w zakresie 0 - 90 pkt. Zaliczenie

projektu następuje po uzyskaniu co najmniej 46 pkt. i jest możliwe najpóźniej na ostatnich

zajęciach. Jest ono także warunkiem koniecznym do uzyskania zaliczenia ćwiczeń

laboratoryjnych.

Łączna ocena punktowa zajęć laboratoryjnych jest sumą punktów uzyskanych za

poszczególne zajęcia oraz za indywidualny projekt i zawiera się w granicach 0-200 pkt.

Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg

skali ECTS):

Zakres Ocena Zakres Ocena

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. Chappell D. (2007). Zrozumiec platforme .NET. Helion, Gliwice.

2. Coulouris G., Dollimore J., Kindberg T. (1998): Systemy rozproszone. Podstawy i

projektowanie. WNT, Warszawa.

3. Horstmann C.S., Cornell G. (2005): Java 2. Techniki zaawansowane. Helion, Gliwice.

4. Perry S.C. (2007). C# i .NET. . Helion, Gliwice.

5. Sawerwian M. (2002). CORBA. Programowanie w praktyce. Mikom, Warszawa.

Page 77: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

77

6. Stallings W. (2006). Systemy operacyjne. Struktura i zasada budowy. PWN,

Warszawa.

7. Tanenbaum A., van SteenM. (2006): Systemy rozproszone. Zasady i paradygmaty.

WNT, Warszawa.

8. Tardieu S. (2004): AdaSocktes reference manual.

(www.rfc1149.net/download/adasockets/adasocktes.pdf).

9. Barnaby T. (2002). Distributed .NET Programming in C#. Springer-Verlag, New

York.

10. Ben-Ari M. (1996): Podstawy programowania współbieznego i rozproszonego. WNT,

Warszawa.

11. Tanenbaum A. S. (1997): Rozproszone systemy operacyjne, PWN, Warszawa.

12. Weiss Z., Gruzlewski T. (1993): Programowanie współbiezne i rozproszone w

przykładach i zadaniach. WNT, Warszawa.

Page 78: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

78

Kierunek: Informatyka

Przedmiot:

Projektowanie systemów rozproszonych

Distributed Systems Design

Czas trwania: semestr 1

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład prof. dr hab. inż. Wojciech Penczek 30 egzamin

6 Laboratorium

mgr Ewa Szczepanik

dr inż. Zbigniew Wesołowski 30 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

podstawy programowania równoległego,

podstawy programowania rozproszonego,

środowiska programowania rozproszonego.

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Celem przedmiotu jest zapoznanie studentów z najważniejszymi zagadnieniami

projektowania systemów rozproszonych. Omawiane są zagadnienia związane z

wykonywaniem procesów rozproszonych. Prezentowane są architektury współczesnych

systemów rozproszonych. Przedstawiane są najważniejsze zagadnienia projektowania

systemów rozproszonych, takich jak: komunikacja, usług nazewnicze, synchronizacja

rozproszona, spójność i zwielokrotnianie, tolerowanie awarii, niezawodność, bezpieczeństwo.

Szczegółowo omawiane są zagadnienia projektowania systemów rozproszonych: opartych na

obiektach współdzielonych, na dokumentach oraz na koordynacji.

WYKŁAD

1. Wprowadzenie do systemów rozproszonych.

Definicja pojęć podstawowych.

Cele systemów rozproszonych: łączenie użytkowników, łączenie zasobów.

Cechy systemów rozproszonych.

Page 79: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

79

Zalety systemów rozproszonych: współdzielenie zasobów, otwartość, współbieżność,

skalowalność, odporność na awarie.

wady systemów rozproszonych: złożoność, zabezpieczenie, trudność zarządzania,

nieprzewidywalność.

2. Architektury systemów rozproszonych.

Architektury wieloprocesorowe.

Architektury klient serwer.

Architektury agentowe.

Architektury oparte na obiektach rozproszonych.

Architektury oparte na obiektach interoperablinych.

Architektury oparte na dokumentach.

Architektury oparte na obiektach koordynacji.

3. Środowiska przetwarzania rozproszonego

Środowiska oparte na obiektach rozproszonych: CORBA, Java RMI, COM/DCOM.

Środowiska oparte na obiektach interoperablinych: MS.NET

Środowiska oparte na dokumentach: WWW, Lotus Notes.

Środowiska oparte na komunikacji: TIB/Randezvous, Jini.

4. Zagadnienia projektowania systemów rozproszonych

Wprowadzenie.

Podstawowe wymagania projektowe: komunikacja, usługi nazewnicze, synchronizacja

rozproszona, spójność i zwielokranianie, rekonstrukcja i tolerowanie awarii,

bezpieczeństwo.

Wymagania użytkowników.

5. Komunikacja w systemach rozproszonych

Zdalne wywołanie procedury

Wywołanie obiektu zdalnego

Komunikacja oparta na komunikatach

Komunikacja strumieniowa

6. Usługi nazewnicze w systemach rozproszonych.

Jednostka nazewnictwa.

Lokalizacja zasobów mobilnych.

Usuwanie referencji bez odniesień.

Przykłady: DNS, X.500 OSI.

7. Synchronizacja rozproszona.

Synchronizacja zegarów.

Zegary logiczne.

Stan globalny.

Algorytmy elekcji.

Page 80: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

80

8. Współbieżność w systemach rozproszonych.

Istota współbieżności, problem wzajemnego wykluczania.

Rozproszony algorytm wzajemnego wykluczania.

Problem zakładu fryzjerskiego.

Zagłodzenie i zakleszczenie.

Wykrywanie zakleszczeń.

Algorytm bankiera.

Zapobieganie zakleszczeniom.

Problem pięciu filozofów.

9. Spójność i zwielokrotnianie.

Powody zwielokrotniania.

Zwielokrotnianie obiektów.

Zwielokrotnianie jako technika skalowania.

Modele spójności nastawione na dane.

Modele spójności nastawione na klienta.

Protokoły rozpowszechniania.

Protokoły spójności.

10. Tolerowanie awarii w systemach rozproszonych.

Modele awarii.

Odporność procesów.

Tolerowanie awarii.

Hierarchiczne i grupowe maskowanie awarii.

11. Szeregowanie procesów.

Rodzaje szeregowania procesów: długoterminowe,średnioterminowe,krótkoterminowe

Algorytmy szeregowania: bez priorytetów, priorytetowe, bez przerwań, z

przerwaniami.

Szeregowanie procesów w systemie Linux.

Szeregowanie procesów w systemie MS Windows.

12. Bezpieczeństwo systemów rozproszonych.

Zagrożenia bezpieczeństwa.

Kanały bezpieczne.

Kontrola dostępu.

Zarządzanie bezpieczeństwem.

13. Systemy rozproszone oparte na obiektach współdzielonych.

Projektowanie rozmieszczenia obiektów rozproszonych.

Usługi nazewnicze.

Projektowanie komunikacji.

Synchronizacja.

Spójność i zwielokrotnianie.

Page 81: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

81

Tolerowanie awarii.

Niezawodność.

Bezpieczeństwo.

14. Systemy rozproszone oparte na dokumentach.

Projektowanie rozmieszczenia obiektów rozproszonych.

Usługi nazewnicze.

Projektowanie komunikacji.

Synchronizacja.

Spójność i zwielokrotnianie.

Tolerowanie awarii.

Niezawodność.

Bezpieczeństwo.

15. Systemy rozproszone oparte na koordynacji.

Projektowanie rozmieszczenia obiektów rozproszonych.

Usługi nazewnicze.

Projektowanie komunikacji.

Synchronizacja.

Spójność i zwielokrotnianie.

Tolerowanie awarii.

Niezawodność.

Bezpieczeństwo.

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Analiza porównawcza systemów scentralizowanych i systemów rozproszonych.

Istotne cechy różniących systemy scentralizowane i systemy rozproszone.

analizaporównawcza typowych systemów scentralizowanych i typowych systemów

rozproszonych.

identyfikacja najważniejszych cech systemu scentralizowanego

identyfikacja najważniejszych cech systemu rozproszonego

2. Mechanizmy komunikacji międzyprocesowej w systemach operacyjnych.

Page 82: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

82

optymalizacja mechanizmów komunikacji międzyprocesowej w najważniejszych

systemach operacyjnych.

optymalizacja mechanizmów komunikacji międzyprocesowej w systemie Linux;

optymalizacja mechanizmów komunikacji międzyprocesowej w systemie MS

Windows.

3. Mechanizmy komunikacji w sieciach komputerowych.

optymalizacja przepustowości sieci komputerowych.

monitorowanie działania NFS

optymalizacja serwera NFS

optymalizacja klienta NFS

optymalizacja sieci na potrzeby NFS.

4. Systemy usług nazewniczych w systemach opartych na obiektach rozproszonych.

poznanie systemów usług nazewniczych stosowanych w systemach opartych na

obiektach rozproszonych.

system usług nazewniczych stosowany w środowisku CORBA

system usług nazewniczych stosowany w środowisku COM/DCOM

porównanie systemów usług nazewniczych stosowanych w środowiskach CORBA i

COM/DCOM

5. Systemy usług nazewniczych w systemach opartych na dokumentach.

poznanie systemów usług nazewniczych stosowanych w systemach opartych na

obiektach dokumentach.

system usług nazewniczych stosowany w środowisku WWW

system usług nazewniczych stosowany w środowisku Lotus Notes

porównanie systemów usług nazewniczych stosowanych w środowiskach WWW i

Lotus Notes

6. Zegary logiczne.

implementacja rozproszonego algorytmu Lamporta

7. Synchronizacja procesów w systemach rozproszonych.

implementacja algorytmów elekcji.

implementacja algorytmu tyrana

implementacja algorytmu pierścieniowego

8. Wzajemne wykluczanie w systemach rozproszonych.

implementacja rozproszonego algorytmu wzajemnego wykluczania

9. Wykrywanie zakleszczeń w systemach rozproszonych

implementacja algorytmu bankiera

Page 83: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

83

10. Rekonstrukcja i tolerowanie awarii - pamięć trwała.

zaprojektowanie mechanizmu maskowania grupowego na poziomie bloków

dyskowych, zwanego pamięcią trwałą.

11. Rekonstrukcja i tolerowanie awarii - serwery podstawowe i zapasowe.

zaprojektowanie mechanizmu tolerowania uszkodzeń w drodze redundancji

sprzętowej,zwanej metodą serwera podstawowego i zapasowego

12. Szeregowanie procesów - 1.

implementacja algorytmów szeregowania bez priorytetów i z priorytetami

13. Szeregowanie procesów - 2.

implementacja algorytmów szeregowania bez przerwań

implementacja algorytmów szeregowania z przerwaniami

14. Projektowanie bezpiecznych kanałów komunikacyjnych.

zaprojektowanie kanału bezpiecznego między klientem i serwerem wykorzystując

protokoły uwierzytelniania z kluczami symetrycznymi

zaprojektowanie kanału bezpiecznego między klientem i serwerem wykorzystując

protokoły uwierzytelniania z kluczami publicznymi

15. Uwierzytelnianie i dystrybucja kluczy.

zaprojektowanie systemu uwierzytelniania i dystrybucji kluczy wykorzystując model

Needhama

zaprojektowanie systemu uwierzytelniania i dystrybucji kluczy wykorzystując model

Schroedera

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 14 zajęć może uzyskać od 0 do 140 pkt.

Temat i zakres projektu indywidualnego student otrzymuje najpóźniej na trzecim zajęciu. Za

projekt może on otrzymać ocenę punktową mieszczącą się w zakresie 0 - 60 pkt. Zaliczenie

projektu następuje po uzyskaniu co najmniej 31 pkt. i jest możliwe najpóźniej na ostatnich

Page 84: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

84

zajęciach. Jest ono także warunkiem koniecznym do uzyskania zaliczenia ćwiczeń

laboratoryjnych.

Łączna ocena punktowa zajęć laboratoryjnych jest sumą punktów uzyskanych za

poszczególne zajęcia oraz za indywidualny projekt i zawiera się w granicach 0-200 pkt.

Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg

skali ECTS):

Zakres Ocena Zakres Ocena

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. Chappell D. (2007). Zrozumieć platformę .NET. Helion, Gliwice.

2. Coulouris G., Dollimore J., Kindberg T. (1998): Systemy rozproszone. Podstawy i

projektowanie. WNT, Warszawa.

3. Horstmann C.S., Cornell G. (2005): Java 2. Techniki zaawansowane. Helion, Gliwice.

4. Perry S.C. (2007). C# i .NET. . Helion, Gliwice.

5. Sawerwian M. (2002). CORBA. Programowanie w praktyce. Mikom, Warszawa.

6. Stallings W. (2006). Systemy operacyjne. Struktura i zasada budowy. PWN,

Warszawa.

7. Stevens W.R. (2002). Programowanie w środowisku systemu UNIX. WNT,

Warszawa.

8. Tanenbaum A., van Steen M. (2006): Systemy rozproszone. Zasady i paradygmaty.

WNT, Warszawa.

9. Ben-Ari M. (1996): Podstawy programowania współbieżnego i rozproszonego. WNT,

Warszawa.

10. Tanenbaum A. S. (1997): Rozproszone systemy operacyjne, PWN, Warszawa.

11. Weiss Z., Gruźlewski T. (1993): Programowanie współbieżne i rozproszone w

przykładach i zadaniach. WNT, Warszawa.

Page 85: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

85

Kierunek: Informatyka

Przedmiot:

Zaawansowane sieci komputerowe

Advanced Computer Networking

Czas trwania: semestr 2

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr hab. Stanisław Ambroszkiewicz 30 egzamin

6 Laboratorium

mgr Andrzej Salamończyk

mgr Grzegorz Terlikowski 30 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Technologie sieciowe

Podstawy programowania

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Zasadniczym celem przedmiotu ”Zaawansowane sieci komputerowe” jest przekazanie wiedzy

z zaawansowanych technologii sieci komputerowych w aspekcie zarówno teoretycznym jak i

praktycznym. Rozwiniętymi celami szczegółowymi są:

Zaawansowane protokoły komunikacyjne,

Przełączanie w sieciach LAN, VLANy,

Listy dostępu ACL,

Projektowanie sieci WAN, PPP, ISDN, Frame Relay.

Zaawansowane programowania sieciowe w oparciu o język Java,

Bezpieczeństwo sieci komputerowych.

Celem laboratorium jest nabycie umiejętności instalowania i obsługi sprzętu i

oprogramowania w sieciach komputerowych. Cele szczegółowe laboratorium obejmują

następujące umiejętności praktyczne:

Realizacja aplikacji sieciowych w zespołach,

Projektowanie, budowanie i zarządzania sieciami VLAN i WAN,

Zaawansowane konfigurowanie routerów (OSPF, ACL).

Page 86: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

86

Diagnozowanie i usuwanie problemów.

WYKŁAD

1. Warstwa aplikacji - programowanie w oparciu o gniazda UDP

Gniazda (sockety) UDP

Zastosowania protokołu UDP

Programowanie na socketach UDP

2. Warstwa aplikacji - programowanie w oparciu o URL

Protokół HTTP, adresacja URL, HTML

Model programowania na URL-ach

3. Zaawansowane technologie sieci lokalnych

Segmentacja sieci lokalnych

Rozpinanie LAN-u na wielu switchach

Protokół STP (Spanning Tree Protocol)

Wirtualne LAN-y, czyli technologia VLAN: statyczne sieci wirtualne, dynamiczne

sieci wirtualne

4. Bezpieczeństwo w warstwie transportu

Bezpieczeństwo na WWW

Secure Socket Layer (SSL) oraz Transport Layer Security (TLS)

Secure Electronic Transaction (SET)

5. Bezprzewodowe technologie w sieciach lokalnych

WLAN IEEE 802.11

Bezpieczeństwo i protokół WEP

6. Zarządzanie sieciami, cześć 1

Wprowadzenie do zarządzania sieciami

Motywacje

Główne komponenty

Infrastruktura do zarządzania sieciami (internetowymi)

MIB: management information base

SMI: Structure of Management Information - jezyk do definiowania struktur danych

7. Zarządzanie sieciami, cześć 2

SNMP: protokół do zarządzania sieciami

bezpieczeństwo i administrowanie sieciami

Zdalny nadzór sieci - RMON

Uniwersalne sposoby prezentacji danych: ASN.1 - Abstract Syntax Notation

Page 87: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

87

8. Bezpieczeństwo w warstwie sieci

IP Security,

Wirtualne sieci prywatne VPN

IP Mobile

9. Zaawansowane technologie w warstwie Sieci

Multicasting

Adresacja

Routing

10. ATM - kompletna technologia sieciowa w roli sieci szkieletowej Internetu

Warstwy w ATM,

Struktura komórki ATM

IP nad ATM

11. Sieci rozległe

Technologie stosowane w sieciach WAN, urządzenia wykorzystywane w WAN

Korelacja pomiedzy WAN a modelem OSI/ISO, protokoły enkapsulacji w WAN

12. ISDN

Wprowadzenie do ISDN

Korelacja z modelem OSI/ISO, Tryby BRI i PRI

Konfiguracja ISDN, Routing Dial-on-Demand

13. Frame Relay

Wprowadzenie do Frame Relay, definicje podstawowych pojęć związanych z FR

Omówienie LMI (implementacji FR firmy Cisco)

Podstawowa konfiguracja i weryfikacja FR

14. Pozostałe protokoły w sieciach WAN

PPP

xDSL

SDLC (HDLC)

X.25

15. Omówienie najnowszych technologii sieciowych i podsumowanie

Przegląd nowych rozwiazań i technologii w sieciach komputerowych

Zakreślenie trendów i perspektyw rozwoju w sieciach komputerowych

ZALICZENIE WYKŁADU

Page 88: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

88

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Programowanie na protokole UDP

Realizacja aplikacji w oparciu o protokół UDP

Pewne przesyłanie w oparciu o protokół UDP

2. Przełączanie w sieciach LAN

Segmentacja w sieciach LAN, tworzenie sieci VLAN

Sposoby przełaczania, protokół Spanning Tree

Konfiguracja usług DHCP na routerach

3. Programowanie na protokole HTTP

Tworzenie serwletów

Technologia JSP (Java Server Pages)

4. WLAN

Konfiguracja bezprzewodowych urzadzeń sieciowych

Realizacja bezpieczeństwa w sieciach bezprzewodowych

Konfigurowanie NAT

5. Programowanie na gniazdach SSL - cz. 1

Generowanie kluczy, magazynów i certyfikatów

Realizacja prostej aplikacji klient serwer z wykorzystaniem gniazd SSL (przy

ustawieniach domyślnych)

6. Protokoły routingu (cz. 1)

Właściwości protokołów wektora odległości

Konfiguracja protokołów RIP v 2, EIGRP

7. Programowanie na gniazdach SSL - cz. 2

Konstruowanie gniazd SSL w sposób jawny

Realizacja aplikacji z uwierzytelnianiem klienta i serwera

Page 89: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

89

Realizacja aplikacji z wykorzystaniem protokołu HTTPS

8. Protokoły routingu (cz. 2)

Właściwości protokołów stanu łącza

Konfiguracja protokołu OSPF, redystrybucja

9. Aplety - cz. 1

Architektura apletu

Budowa prostego apletu, proste metody wyswietlania składników apletu

10. Listy dostępu

Używanie, przetwarzanie i wykorzystanie list dostępu do filtrowania pakietów IP

Konfigurowanie standardowych i rozszerzonych list dostępu w routerach

11. Aplety - cz. 2

Obsługa zdarzeń, klasy obsługi zdarzeń, interfejsy nasłuchujace zdarzeń

Wprowadzenie do AWT (Abstract Window Toolkit)

12. PPP

Komunikacja w protokole PPP, konfiguracja DDR

Wykorzystanie ramek LCP i NCP w protokole PPP

13. Programowanie z wykorzystaniem protokołu SNMP

Realizacja aplikacji odpytującej urządzenia w sieci poprzez agentów SNMP

Realizacja aplikacji wprowadząjacej zmiany dla wartości wybranych identyfikatorów

obiektów bazy MIB

Prosta aplikacja wysyłająca i odbierajaca pułapki

14. Frame Relay

Podstawowe urządzenia w połączeniach Frame Relay

Funkcje Frame Relay DLCI i LMI

15. Troubleshooting

Testowanie poprawności działania sieci, diagnozowanie i usuwanie usterek w sieciach

komputerowych

Prezentacja i obrona projektów końcowych

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

Page 90: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

90

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 14 zajęć może uzyskać od 0 do 140 pkt.

Temat i zakres projektu indywidualnego student otrzymuje najpóźniej na trzecim zajęciu. Za

projekt może on otrzymać ocenę punktową mieszczącą się w zakresie 0 - 60 pkt. Zaliczenie

projektu następuje po uzyskaniu co najmniej 31 pkt. i jest możliwe najpóźniej na ostatnich

zajęciach. Jest ono także warunkiem koniecznym do uzyskania zaliczenia ćwiczeń

laboratoryjnych.

Łączna ocena punktowa zajęć laboratoryjnych jest sumą punktów uzyskanych za

poszczególne zajęcia oraz za indywidualny projekt i zawiera się w granicach 0-200 pkt.

Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg

skali ECTS):

Zakres Ocena Zakres Ocena

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. Kurose J. F., Ross K. W., Sieci komputerowe. Od ogółu do szczegółu z Internetem w

tle, Wydawnictwo Helion, Gliwice 2006

2. V. Amato. Akademia Sieci Cisco. Drugi rok nauki, wydanie drugie rozszerzone.

Mikom, Warszawa 2002

3. H. Schildt. Java - Kompendium programisty. Wydawnictwo Helion 2005.

4. A. Leinwand, B. Pinsky. Konfiguracja Routerów Cisco. Podstawy. Mikom, Warszawa

2002.

5. T. Sheldon. Wielka Encyklopedia Sieci Komputerowych. Wydawnictwo Robomatic

s.c. 1999.

6. M. Sportack. Routing IP - podstawowy podrecznik. Mikom, Warszawa 2000.

7. M. Sportack. Sieci komputerowe. Wydawnictwo Helion 1999,

8. R. Wright. Elementarz routingu IP. Mikom, Warszawa 1999.

9. Roland W. McCarty, Jr. Cisco WAN od podstaw

10. Merike Kaeo Tworzenie bezpiecznych sieci

11. Paul L. Della Maggiora, Christopher E. Elliott, Robert L. Pavone, Jr., Kent J. Phelps,

James M. Thompson Zarzadzanie wydajnoscia i błedami w sieciach Cisco. Mikom,

Warszawa 2001

12. D. Hook. Kryptografia w Javie. Od podstaw. Wydawnictwo Helion 2006

Page 91: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

91

Kierunek: Informatyka

Przedmiot:

Projektowanie sieci komputerowych

Computer Networks Design

Czas trwania: semestr 3

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr hab. Stanisław Ambroszkiewicz 30 egzamin 6

Laboratorium mgr Zbigniew Młynarski 30 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Technologie sieciowe

Projektowanie i administrowanie sieciami komputerowymi,

Zaawansowane sieci komputerowe

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Zasadniczym celem przedmiotu Projektowanie sieci komputerowych jest zaznajomienie z

zaawansowanymi technologiami sieci komputerowych w aspekcie zarówno teoretycznym jak

i praktycznym. Rozwiniętymi celami szczegółowymi są:

Zaawansowane protokoły komunikacyjne,

Przełączanie w sieciach LAN oraz sieci VLAN,

Listy dostępu ACL,

Projektowanie sieci WAN, PPP, ISDN, Frame Relay.

Zaawansowane programowania sieciowe w oparciu o język Java,

Bezpieczeństwo sieci komputerowych.

Celem laboratorium jest nabycie umiejętności instalowania i obsługi sprzętu i

oprogramowania w sieciach komputerowych. Cele szczegółowe laboratorium obejmują

następujące umiejętności praktyczne:

1. Realizacja aplikacji sieciowych w zespołach,

2. Projektowanie, budowanie i zarządzania sieciami VLAN i WAN,

3. Zaawansowane konfigurowanie routerów (EIGRP, ACL).

Page 92: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

92

4. Diagnozowanie i usuwanie problemów.

WYKŁAD

1. Zasady projektowania aplikacji rozproszonej

struktury danych,

XML - uniwersalny język do konstrukcji struktur danych,

protokół komunikacyjny pomiędzy elementami aplikacji rozproszonej,

omówienie języka XSD - XML Schema Definition,

2. Protokoły warstwy transportu

zasady pewnego przesyłania danych,

protokół TCP, UDP, struktura segmentu TCP,

nawiązywanie i zamykanie połączeń,

zasady kontroli zagęszczeń TCP

3. Protokoły warstwy sieci

algorytmy routingu: LS oraz DV,

protokół IP v4, struktura datagramu IP,

fragmentacja i defragmentacja pakietów

protokół ICMP, protokoły routingu: RIP, OSPF, IGRP, BGP, protokół IP v.6

4. Protokoły warstwy sieci

protokół łącza między przełącznikami,

dynamiczny protokół łącza między przełącznikami,

metoda oznaczania ramek IEEE 8021Q,

protokół magistrali VLAN

5. Bezprzewodowe sieci LAN

Wireless LAN: IEEE 802.11

przegląd najnowszych technologii sieci ad hoc,

pozycjonowanie punktu dostępu w celu uzyskania maksymalnego obszaru pokrycia,

sieci WLAN i VLAN

6. ATM - kompletna technologia sieciowa w roli sieci szkieletowej Internetu

warstwy w ATM, struktura komórki ATM,

IP nad ATM,

Ethernet przez ATM

7. Sieci rozległe

technologie stosowane w sieciach WAN, urządzenia wykorzystywane w WAN,

korelacja pomiędzy WAN a modelem OSI/ISO, protokoły enkapsulacji w WAN,

systemy zastrzegania przepustowości WAN,

Page 93: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

93

synchroniczna sieć optyczna

8. Frame Relay oraz ISDN

wprowadzenie do Frame Relay, definicje podstawowych pojęć związanych z FR,

podstawowa konfiguracja i weryfikacja FR,

wprowadzenie do ISDN,

konfiguracja ISDN, routing Dial-on-Demand

9. Protokół PPP

protokół komunikacyjny między dwoma stacjami,

wielopołączeniowy PPP i wieloramowy wielopołączeniowy PPP,

protokoły PAP i CHAP,

10. Projektowanie brzegowej topologii sieci przedsiębiorstwa

nadmiarowe segmenty WAN,

Multihoming połączeń internetowych,

tworzenie wirtualnych sieci prywatnych VPN,

brzeg sieci dostawcy usług

11. Elementy projektowania sieci komputerowych

określanie potrzeb i celów klienta,

logiczny projekt sieci,

fizyczny projekt sieci,

testowanie, optymalizacja i dokumentowanie projektu sieci

12. Logiczny projekt sieci

hierarchiczny projekt sieci,

korzystanie z modelu hierarchicznego do przypisywania adresów,

stosowanie wielu protokołów routingu w intersieci,

opracowywanie strategii zarządzania siecią

13. Fizyczny projekt sieci

przykład projektu sieci kampusowej,

urządzenia zdalnego dostępu dla projektu sieci przedsiębiorstwa,

przykładowy projekt sieci WAN

14. Technologie sieciowe krótkiego zasięgu: PAN - Personal Area Networks

architektura i zastosowania Bluetooth,

stos protokołów Bluetooth,

warstwa L2CAP w Bluetooth,

IrDA

15. Omówienie najnowszych technologii sieciowych i podsumowanie

Page 94: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

94

protokół MPLS,

bezprzewodowe sieci metropolitalne WMAN IEEE 802.16

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Programowanie na protokole HTTP

realizacja prostego serwera HTTP,

realizacja serwletu

2. Programowanie na gniazdach SSL w języku Java

generowanie kluczy, magazynów i certyfikatów,

realizacja połączenia na gniazdach SSL z użyciem opcji domyślnych i

zaawansowanych

3. Wprowadzenie do programowania na aparatach komórkowych

zasady programowania w J2ME,

wykorzystanie MIDP 2.0,

programowanie na aparatach komórkowych wykorzystujacej HTTPConnection

rozdanie tematów projektów do samodzielnej realizacji

4. Programowanie na aparatach komórkowych wykorzystujące gniazda TCP i UDP

testowanie prostego przykładu,

realizacja własnego projektu

5. Projektowanie sieci LAN

rozpoznanie potrzeb klienta,

specyfikacja wymagań,

analiza projektu prostej sieci LAN,

konfigurowanie DHCP i NAT

6. Opracowanie projektu sieci kampusowej

Page 95: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

95

dobór urządzeń i typów mediów dla sieci,

zaprojektowanie adresacji logicznej i nazewnictwa urządzeń,

dobór protokołów routingu

analiza projektu prostej sieci

7. Projektowanie sieci bezprzewodowych 802.11

analiza projektu prostej sieci bezprzewodowej,

realizacja bezpieczeństwa w sieciach bezprzewodowych

8. Java Dynamic Management Kit

instalacja JDMK,

analiza i testowanie wybranych programów opartych na JDMK

9. Projektowanie aplikacji do zarządzania sieciami komputerowymi

modyfikacja wybranych przykładów

projektownie aplikacji wspomagającej zarządzanie siecią komputerów

10. Projektowanie i realizacja list dostępu ACL

ocena zagrożeń, rozmieszczenie list dostępu

konfiguracja list dostępu

listy ACL standardowe, rozszerzone, dynamiczne, zwrotne, oparte na zawartości,

korzystają ce z harmonogramów

11. Projektowanie zdalnego dostępu

uwierzytelnianie oraz autoryzacje transmisji pakietów w środowisku AAA

(Authentication Authorization Accounting),

zaawansowane uwierzytelnienia i autoryzacje w środowisku AAA

12. Projektowanie kolejkowania pakietów

konfigurowanie kolejki pakietów,

kształtowanie ruchu sieciowego

13. Projektowanie, instalowanie i diagnozowanie sieci Ethernet, TCP/IP i sieci

rozległych

praktyczna konfiguracja urządzeń sieciowych

analiza bezpieczeństwa w danym projekcie,

implementacja rozwiązań zwiększających bezpieczeństwo i niezawodność

14. Troubleshooting

testowanie poprawności działania sieci,

diagnozowanie i usuwanie usterek w sieciach komputerowych

Page 96: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

96

15. Prezentacja indywidualnego projektu. Zaliczenie przedmiotu

prezentacja wyników prac,

dyskusja i ocena projektów indywidualnych.

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 14 zajęć może uzyskać od 0 do 140 pkt.

Temat i zakres projektu indywidualnego student otrzymuje najpóźniej na trzecim zajęciu. Za

projekt może on otrzymać ocenę punktową mieszczącą się w zakresie 0 - 60 pkt. Zaliczenie

projektu następuje po uzyskaniu co najmniej 31 pkt. i jest możliwe najpóźniej na ostatnich

zajęciach. Jest ono także warunkiem koniecznym do uzyskania zaliczenia ćwiczeń

laboratoryjnych.

Łączna ocena punktowa zajęć laboratoryjnych jest sumą punktów uzyskanych za

poszczególne zajęcia oraz za indywidualny projekt i zawiera się w granicach 0-200 pkt.

Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg

skali ECTS):

Zakres Ocena Zakres Ocena

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. Bruno A., Kim J., CCDA. Certyfikat projektanta sieci Cisco, Wydawnictwo MIKOM,

Warszawa 2004

2. Kurose J. F., Ross K. W., Sieci komputerowe. Od ogółu do szczegółu z Internetem w

tle, Wydawnictwo Helion, Gliwice 2006

3. Lewis W., Akademia sieci Cisco.CCNA semestr 3.Podstawy przełączania oraz routing

pośredni, Wydawnictwo Naukowe PWN, Warszawa 2007

4. Oppenheimer P., Projektowanie sieci metodą Top-Down, Wydawnictwo Naukowe

PWN, Warszawa 2006

5. Reid A., Akademia sieci Cisco.CCNA semestr 4. Sieci rozległe - technologie WAN,

Wydawnictwo Naukowe PWN, Warszawa 2007

6. Dooley K., I. J. Brown. Cisco. Receptury, Wydawnictwo Helion, Gliwice 2004

7. Dooley K., I. J. Brown. Cisco IOS Cookbook, OReilly Gliwice 2006

Page 97: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

97

8. Henry B., CCIE Security, Wydawnictwo MIKOM, Warszawa 2004

9. Krysiak K., Sieci komputerowe. Kompendium, Wydawnictwo Helion, Gliwice 2005

10. Praca zbiorowa, Vademecum teleinformatyka III, IDG, Warszawa 2004

11. McGregor M., Akademia sieci Cisco. Semestr piąty, Wydawnictwo MIKOM,

Warszawa 2002

12. Tanenbaum A. S. Sieci komputerowe, Wydawnictwo Helion, Gliwice 2004

13. Teare D., Paquet C., Campus Network Design Fundamentals, Cisco Press, 2005

Page 98: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

98

Kierunek: Informatyka

Przedmiot:

Algorytmy i środowiska równoległe

Algorithms and Parallel Environments

Czas trwania: semestr 3

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr Tengiz Boczoriszwili 21 egzamin 6

Laboratorium dr Tengiz Boczoriszwili 24 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Podstawy przetwarzania równoległego

Podstawy przetwarzania rozproszonego

Programowanie c++, Java

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Podstawowym celem wykładów jest zebranie i uporządkowanie teorii

przetwarzania równoległego oraz zapoznanie studentów z istniejącymi algorytmami

stosowanymi w architekturach równoległych do wybranych zagadnień. Rozwiniętymi celami

szczegółowymi sa:

zapoznanie z architekturami super komputerów, oraz klastra Akademii Podlaskiej.

zapoznanie z metodologicznymi podstawami tworzenia algorytmów równoległych.

zapoznanie z procesami planowania, pisania i implementacji zagadnień równoległych.

zapoznanie z organizacją prac projektowo-wdrożeniowych.

Celem laboratorium jest nabycie i praktyczne opanowanie wiedzy podanej w czasie wykładu,

a także poszerzenie wiadomości nabytych w dotychczasowym procesie dydaktycznym. Cele

szczegółowe laboratorium obejmują następujące umiejętności praktyczne:

nabycie umiejętności stworzenia programów równoległych w środowisku MPI.

nabycie umiejętności programowania zastosowaniem języku dyrektyw OpenMP.

Opracowanie i implementacja wybranych zagadnień na klastrze Akademii Podlaskiej.

Page 99: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

99

WYKŁAD

1. Podstawy programowania równoległego.

Architektura systemów rozproszonych i równoległych. Klasyfikacja Flyna.

Typy komunikacji. Metody programowania równoległego.

Problemy dekompozycji zadań, przyporządkowanie zadań do procesorów.

Proste przykłady algorytmów równoległych.

2. Podstawy programowania równoległego.

Miary oceny efektywności obliczeń równoległych.

Współczynniki przyśpieszenia oraz wydajności, prawa Amdahla i Gustafsona-Barsisa.

Operacje atomowe, sprawiedliwość, jednorodność i skalowalność.

Wzajemne wykluczanie, bezpieczeństwo, żywotność, blokada, zagłodzenie.

Opis zagadnienia gry w życie i przeszukiwanie równolegle.

3. Wstęp do standardowej specyfikacji przesyłania informacji między procesami (MPI).

Struktura prostego programu wykorzystującego technologię MPI.

Konwencja nazw.

Typy danych: typy podstawowe i specjalne.

Komunikatory i inicjalizacja MPI.

Zagadnienia gry w życie i sortowania równoległego.

4. Typy komunikacji w architekturze MPI.

Komunikacja Point-to-Point. Wysyłanie i odbiór komunikatów.

Komunikacje blokujące i nie blokujące.

Komunikacie grupowe (Barier, Broadcast, Reduction, Scatter) i topologie procesów.

Algorytmy całkowania równoległego oraz mnożenia macierzy.

5. Komunikatory i wirtualna topologia w architekturze MPI.

Typy komunikatów.

Stworzenie intra i inter komunikatorów.

Algorytmy równolegle do transpozycji macierzy.

Klasyczne algorytmy iteracyjne w obliczeniach równoległych.

Algorytm eliminacji Gaussa.

6. Zaawansowane elementy interfejsa MPI.

Wejście/Wyjście równolegle.

Struktura plików w MPI.

Zapis i czytanie danych z dysków.

Równolegle biblioteki matematyczne oraz biblioteki MPI dla języka c++.

7. Język dyrektyw OpenMP.

Regiony równoległe i zrównoleglenie pętli.

Page 100: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

100

Zasięg zmiennych. Region krytyczny.

Formaty dyrektyw OpenMP.

Równoległa dyrektywa do. Dyrektywy private i shared.

Dyrektywy paralelizacji i synchronizacji zadań. Dyrektywy default i schedule.

Wyodrębnianie obszarów zrównoleglanych, Dyrektywa sections.

Zagadnienie sortowania równoleglego, Algorytm Djikstry.

8. Wątki w języku dyrektyw OpenMP.

Wątki rzeczywiste i wirtualne.

Dyrektywy stworzenie wątków w OpenMPI:

Dyrektywy master, barrier, atomic, flush i ordered.

Dyrektywy sterujące if, num_threads.

Zagadnienia na rozwiązanie wybranych problemów, algorytm Gaussa.

9. Projektowanie algorytmów współbieżnych i równoległych w języku Java.

Wątki w języku Java. Algorytmy sortowania równoległego.

Klasyczne algorytmy równoległe, czytelnicy i pisarze.

Metoda zrównoważonego drzewa binarnego.

Technika kompresji, zasada harmonogramowania Brenta.

10. projektowanie algorytmów współbieżnych i równoległych w języku Java.

Wyszukiwanie grafów rozłącznych w grafie nieskierowanym.

Obliczanie minimalnego drzewa rozpinającego grafu.

Wyszukiwanie redundancji połączeń węzłów w grafie nieskierowanym.

11. projektowanie algorytmów współbieżnych i równoległych w języku Java

Równoległe algorytmy przeznaczone do rozwiązywania zadań geometrycznych

Algorytmy dziel i zwyciężaj.

Algorytmy przeszukiwania macierzy.

Algorytm Ricart i Agrawala.

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

Page 101: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

101

LABORATORIUM

1. Zapoznanie z klastrem Akademii Podlaskiej.

Architektura klastera Akademii Podlaskiej.

Rozpoczynanie pracy na klasterze i logowanie do klastera.

Przenoszenie zagadnień na klaster.

Środowisko kolejkowania użytkownika (Torque).

Uruchamianie prostych zadań na klastrze.

2. Portable Batch System (PBS).

Prowadzenie do systemu PBS.

Kolejkowanie zadań i obsługa kolejki w PBS.

Instrukcja kolejkowania qsub.

Tworzenie prostego skryptu startowego.

Badanie stanu zagadnienia na klastrze. Instrukcja qstat.

3. Podstawy programowania równoległego.

Problemy dekompozycji zadań.

Struktura prostego programu w MPI.

Implementacja prostych algorytmów równoległych.

Zagadnienie całkowania równoległego, jego implementacja.

Przeprowadzenie badań zaimplementowanego modelu.

4. Wstęp do MPI.

Przykłady komunikacji blokujących i nie blokujących.

Typy danych: typy podstawowe i specjalne.

Implementacja zagadnienia gry w życie i sortowania równoległego.

Przeprowadzenie badań zaimplementowanego modelu.

5. Typy komunikacji w MPI.

Komunikacje blokujące i nie blokujące.

Mechanizmy komunikacji grupowej.

Implementacja zagadnienia gry w życie za pomocą bardziej zaawansowanych

mechanizmów komunikacji.

Implementacja programu równoległego mnożenia macierzy.

Przeprowadzenie badań zaimplementowanego modelu.

6. Wirtualia topologii w MPI.

Przykłady algorytmów iteracyjnych w obliczeniach równoległych.

Implementacja algorytmu eliminacji Gaussa.

Przeprowadzenie badań zaimplementowanego modelu.

7. Zaawansowane elementy MPI.

Page 102: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

102

Wejście/Wyjście równolegle.

Struktura plików w MPI.

Zastosowanie bibliotek równoległych do rozwiązania wybranych problemów.

Implementacja algorytmu bankiera i Dijkstry.

Przeprowadzenie badań zaimplementowanego modelu.

8. Język dyrektyw OpenMP.

Formaty dyrektyw w OpenMP.

Implementacja algorytmu Djikstry.

Implementacja algorytmu mnożenia macierzy .

Przeprowadzenie badań zaimplementowanego modelu.

9. Wątki w OpenMP.

Dyrektywy tworzenia wątków w OpenMPI.

Dyrektywy sterujące if i num_threads.

Implementacja iteracyjnego algorytmu w OpenMPI.

Implementacja zagadnienia bankiera.

Przeprowadzenie badań zaimplementowanego modelu.

10. Techniki projektowania algorytmów równoległych w języku Java

Wątki w języku Java. Algorytmy sortowania równoległego.

Metoda zrównoważonego drzewa binarnego.

Technika kompresji, zasada harmonogramowania Brenta.

Algorytmy dziel i zwyciężaj.

Przeprowadzenie badań zaimplementowanego modelu.

11. Projektowanie algorytmów równoległych w języku Java.

Wyszukiwanie grafów rozłącznych w grafie niekierowanym.

Obliczanie minimalnego drzewa rozpinającego grafu

Wyszukiwanie redundancji połączeń węzłów w grafie nieskierowanym

Algorytmy przeszukiwania macierzy.

Przeprowadzenie badań zaimplementowanego modelu.

12. Projektowanie algorytmów równoległych w Jave

Równoległe algorytmy do rozwiązywania zadań geometrycznych

Algorytm Ricarta i Agrawala.

Zaliczenie przedmiotu i wpis w indeksach.

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

Page 103: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

103

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 11 zajęć może uzyskać od 0 do 110 pkt.

Temat i zakres projektu indywidualnego student otrzymuje najpóźniej na trzecim zajęciu. Za

projekt może on otrzymać ocenę punktową mieszczącą się w zakresie 0 - 90 pkt. Zaliczenie

projektu następuje po uzyskaniu co najmniej 46 pkt. i jest możliwe najpóźniej na ostatnich

zajęciach. Jest ono także warunkiem koniecznym do uzyskania zaliczenia ćwiczeń

laboratoryjnych.

Łączna ocena punktowa zajęć laboratoryjnych jest sumą punktów uzyskanych za

poszczególne zajęcia oraz za indywidualny projekt i zawiera się w granicach 0-200 pkt.

Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg

skali ECTS):

Zakres Ocena Zakres Ocena

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. Praca zbiorowa pod redakcją A. Karbowskiego i E. Niewiadomskiej, Obliczenia

równoległe i rozproszone, Wydawnictwa Politechniki Warszawskiej, 2008.

2. Grama A., Kumar V., Gupta A., Karypis G., Introduction to Parallel Computing, 2/E,

Addison Wesley , 2003.

3. Y. H. Zomaya (Ed.), Parallel and Distributed Computing Handbook, McGraw-Hill,

1996.

4. Cyberinfrastructure Tutorial: http://ci-tutor.ncsa.uiuc.edu/login.php

5. OpenMP : https://computing.llnl.gov/tutorials/openMP/

Page 104: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

104

Kierunek: Informatyka

Przedmiot:

Zarządzanie sieciami komputerowymi i systemami

rozproszonymi

Management in Computer Networks and Distributed

systems

Czas trwania: semestr 3

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład mgr Zbigniew Młynarski 21 egzamin 6

Laboratorium mgr Zbigniew Młynarski 24 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Technologie sieciowe

Zaawansowane sieci komputerowe

Systemy operacyjne

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Celem głównym wykładu jest przedstawienie zarządzania sieciami komputerowymi i

systemami rozproszonymi , a w szczególności funkcjonowania systemów zarządzania

sieciami komputerowymi.

Rozwiniętymi celami szczegółowymi są:

Obszary funkcjonalne zarządzania sieciami,

Podstawowe modele zarządzania sieciami,

Charakterystyka protokołów zarządzania sieciami,

Projektowanie systemów zarządzania sieciami,

Architektura wybranych systemów zarządzania sieciami komputerowymi i systemami

rozproszonymi.

Celem laboratorium jest nabycie i opanowanie praktycznych umiejętności w rozwiązywaniu

problemów wyjaśnianych w czasie wykładu, a także zdobycie umiejętności w zakresie

Page 105: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

105

samodzielnej administracji systemu zarządzania siecią komputerową, efektywnym

zarządzaniem siecią, wykrywaniem potencjalnych zagrożeń pracy systemu i optymalizacją

przepustowości w sieci.

Cele szczegółowe laboratorium obejmują następujące umiejętności praktyczne:

Monitorowanie ruchu sieciowego,

Wykorzystanie protokołu SNMP w zarządzaniu sieciami,

Zastosowanie baz informacji zarządzania MIB-I, MIB-II oraz RMON-MIB,

Zarządzanie sieciami komputerowymi z wykorzystaniem platformy zarządzania HP

OpenView

WYKŁAD

1. Wprowadzenie do zarządzania sieciami komputerowymi i systemami rozproszonymi

architektura zarządzania sieciami komputerowymi,

modele zarządzania sieciami komputerowymi: ISO, IETF oraz TMN,

Web-Based Enterprise Management

2. Protokół SNMP

wersje Simple Network Management Protocol,

przegląd Abstract Syntax Notation One (ASN.1),

wersje SNMPv2 i SNMPv3.

3. Standardowa baza informacji zarządzania MIB

struktura informacji zarządzania,

przykłady zmiennych MIB,

przeglądarki baz MIB.

4. Protokół RMON

monitorowanie sieci,

zdalny nadzór sieci,

alarmy i filtry,

RMON2.

5. Platformy zarządzania sieciami komputerowymi i systemami rozproszonymi

hierarchia systemów zarządzania,

systemy OSS,

systemy NMS,

systemy EMS.

6. Oprogramowanie Open Source w zarządzaniu sieciami komputerowymi

ewolucja technologii SNMP

narzędzia do testowania I monitorowania,

Page 106: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

106

ewolucja oprogramowania Open Source NMS

7. Rozpoznawanie sieci i protokół konfigurowania sieci

protokół CDP,

protokół IEEE 802.1ab LLDP,

protokół NETCONF.

8. Opracowywanie strategii zarządzania sieciami komputerowymi i systemami

rozproszonymi

projekt zarządzania siecią,

architektura zarządzania siecią,

wybieranie protokołów zarządzania siecią,

wybieranie narzędzi do zarządzania siecią

9. Zarządzanie sieciami WLAN

sieci bezprzewodowe,

zarządzanie infrastrukturą bezprzewodową,

standard IEEE 802.11v do zarządzania WLAN,

projektowanie systemu zarządzania bezprzewodowymi sieciami komputerowymi.

10. Zarządzanie wydajnością

funkcje obszaru zarządzania wydajnością,

wydajność w sieciach TCP/IP,

problemy związane z zarządzaniem wydajnością,

zagadnienia projektowe.

11. Zarządzanie bezpieczeństwem

zarządzanie bezpieczeństwem w modelu FCAPS,

zarządzanie informacją o bezpieczeństwie,

model bezpieczeństwa USM,

model kontroli dostępu oparty na widokach

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

Page 107: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

107

LABORATORIUM

1. Wykorzystanie analizatorów protokołów do zarządzania sieciami

analizatory protokołów,

monitorowanie ruchu sieciowego,

wykorzystanie programu Wireshark.

2. Proste aplikacje do zarządzania sieciami

pakiet Net-SNMP,

konfigurowanie SNMP na routerach Cisco,

pozyskiwanie informacji o routerach za pomocą narzędzi SNMP

rozdanie tematów projektów do samodzielnej realizacji

3. Bazy MIB-II

usługi SNMP w systemach Windows,

przeglądarki MIB

4. Oprogramowanie Open Source w zarządzaniu sieciami

zastosowanie języków skryptowych w zarządzanie sieciami,

rozszerzenia MIB producentów sprzętu i oprogramowania,

pakiety o otwartych źródłach

5. Wykorzystanie narzędzi SNMP do zarządzania sieciami

monitorowanie, wyznaczanie i kreślenie trendów,

monitorowanie dostępności usług,

statystyki sieci w czasie rzeczywistym

6. System obsługi zdarzeń

konfigurowanie SNMP,

wysyłanie komunikatów syslog w postaci pułapek SNMP,

optymalizacja protokołu SNMP pod katem wydajności.

7. RMON

Konfigurowanie zdarzeń i alaramów,

Wykorzystanie sond RMON w routerach.

8. Wprowadzenie do oprogramowania Network Node Manager (NNM)

wymagania systemowe,

przygotowanie środowiska systemowego,

instalacja i uruchomienie NNM.

9. Wykorzystanie map i podmap w NNM

Page 108: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

108

usługi pierwszoplanowe i usługi w tle,

początkowe odkrywanie sieci - opcje i rozwiązywanie problemów,

planowanie konfiguracji NNM.

10. Tworzenie mapy sieci

wykorzystanie protokołu CDP,

polecenia CDP,

generowanie mapy sieci.

11. Zarządzanie bezpieczeństwem sieci

inwentaryzacja sieci,

wyszukiwanie słabych punktów w sieciach,

zarządzanie certyfikatami.

12. Prezentacja indywidualnego projektu. Zaliczenie przedmiotu

prezentacja wyników prac,

dyskusja i ocena projektów indywidualnych.

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 11 zajęć może uzyskać od 0 do 110 pkt.

Łączna ocena punktowa zajęć laboratoryjnych zawiera się w granicach 0-110 pkt. Ocena

końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg skali

ECTS):

Zakres Ocena Zakres Ocena

0-55 pkt. ndst (F) 78-88 pkt. db (C)

56-66 pkt. dst (E) 89-99 pkt. db+ (B)

67-77 pkt. dst+ (D) 100-110 pkt. bdb (A)

LITERATURA

1. Blommers J.: OpenView Network Node Manager: Designing and Implementing an

Enterprise Solution. Prentice Hall PTR. 2000

Page 109: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

109

2. Mahbub Hassan, Raj Jain, Wysokowydajne sieci TCP/IP, Wydawnictwo Helion,

Gliwice 2004

3. Stallings W., Protokoły SNMP i RMON, Wydawnictwo Helion, Gliwice 2003.

4. Morris S. B., "Network Management, MIBs and MLPS: Principles,Design and

Implementation", Addison Wesley, 2003

5. Barszczewski M., Zarządzanie sieciami telekomunikacyjnymi, Wyższa Szkoła

Informatyki Stosowanej i Zarządzania, Warszawa 2003

6. Bruno A., Kim J., CCDA. Certyfikat projektanta sieci Cisco, Wydawnictwo MIKOM,

Warszawa 2004

7. Dooley K., I. J. Brown. Cisco. Receptury, Wydawnictwo Helion, Gliwice 2004

8. Dooley K., I. J. Brown. Cisco IOS Cookbook, OReilly 2006

9. Oppenheimer P., Projektowanie sieci metodą Top-Down, Wydawnictwo Naukowe

PWN, Warszawa 2006

10. praca zbiorowa, Vademecum teleinformatyka III, IDG, Warszawa 2004

11. Mauro D., Schmidt K., Essential SNMP, OReilly 2005

12. Zitello T., Williams D., Weber P., HP OpenView System Administration Handbook:

Network Node Manager, Customer Views, Service Information Portal, HP OpenView

Operations, Prentice Hall PTR 2004

Page 110: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

110

Specjalność: INŻYNIERIA SYSTEMÓW BEZPIECZEŃSTWA KOMPUTEROWEGO

Page 111: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

111

Kierunek: Informatyka

Przedmiot:

Systemy kryptograficzne

Cryptographic Systems

Czas trwania: semestr 1

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład prof. dr hab. inż. Wojciech Penczek 30 egzamin 6

Laboratorium mgr Mirosław Szaban 30 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Elementy kryptografii i systemów kryptograficznych

lub znajomość literatury obowiązującej w tym przedmiocie.

ZAŁOŻENIA I CELE

Zasadniczym celem przedmiotu ”Systemy kryptograficzne” jest zaznajomienie z zadaniami

realizowanymi przez współczesną kryptografię, podstawowych technik kryptograficznych,

szyfrowania i deszyfrowania danych oraz przedstawienie standardowych algorytmów

kryptograficznych i ich kryptoanaliza. Dla zrealizowania powyższego celu niezbędne jest

również zapoznanie z podstawowymi działaniami matematycznymi z dziedziny teorii liczb, w

aspekcie zarówno teoretycznym jak i praktycznym. Rozwiniętymi celami szczegółowymi są:

Tajne schematy współużytkowania

Protokoły kryptograficzne

Klucze i zarządzanie kluczami

Istniejące systemy kryptograficzne

Współczesne badania w dziedzinie kryptografii.

Celem laboratorium jest poszerzenie wiadomości nabytych w ramach wykładu oraz nabycie

praktycznych umiejętności w zakresie zadaniań realizowanych przez współczesną

kryptografię, podstawowych technik kryptograficznych, szyfrowania i deszyfrowania danych

oraz przedstawienie standardowych algorytmów kryptograficznych oraz ich kryptoanaliza.

Cele szczegółowe laboratorium obejmują następujące umiejętności praktyczne:

Implementacja i testowanie schematu współużytkowania

Page 112: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

112

Implementacja, testowanie i kryptoanaliza wybranych algorytmów blokowych i

strumieniowych

Analiza bezpieczeństwa WWW i poczty elektronicznej

Protokoły obrotu finansowego.

WYKŁAD

1. Tajne schematy współużytkowania

schemat progowy Shamira

struktury dostępu i ogólne tajne współużytkowanie

konstrukcja oparta na obwodzie niemonotonicznym

względna miara informacji

2. Tajne schematy współużytkowania - cd

konstrukcja Brickella oparta na przestrzeni liniowej

górne ograniczenie względnej miary informacji

konstrukcja przez rozkład

3. Liczby pseudo-losowe

wprowadzenie

nierozróznialne rozkłady prawdopodobieństwa

algorytm przewidywania następnego bitu

generator Bluma-Bluma-Shuba

szyfrowanie probabilistyczne

4. Podstawowe protokoły kryptograficzne

wymiana klucza

uwierzytelnianie

współdzielenie wiadomości

5. Protokoły pośrednie

usługi znakowania czasowego

kanał podprogowy

pośrednie podpisy cyfrowe

6. Protokoły pośrednie - cd

podpisy grupowe

zobowiązanie bitowe

powierzanie kluczy

7. Protokoły zaawansowane

interakcyjne systemy dowodowe

doskonałe dowody o wiedzy zerowej

Page 113: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

113

schemat wiążącego bitu

dowody o obliczeniowej wiedzy zerowej

8. Protokoły ezoteryczne

bezpieczne wybory

przesyłanie anonimowych wiadomości

pieniądze cyfrowe

9. Długość klucza

długość klucza systemu symetrycznego

długość klucza w systemach z kluczem publicznym

ataki urodzinowe na jednokierunkowe funkcje skrótu

10. Zarządzanie kluczami

wytwarzanie kluczy

nieliniowe przestrzenie kluczy

kopie, okres ważności, niszczenie kluczy

11. Typy algorytmów i tryby ich pracy

powtórzenie bloku

szyfry strumieniowe

wybieranie trybu szyfru

12. Stosowanie algorytmów

wybieranie algorytmu

szyfrowanie w kanałach komunikacyjnych

wykrywanie szyfrowania

13. Przykładowe realizcje

protokół firmy IBM

sieć MITRENET

sieć ISDN

system SESAME

system kryptoKnight

14. Przykładowe realizacje - cd.

uwierzytelnianie według ISO

poczta elektroniczna zapewniająca tajność

karty inteligentne

układ CAPSTONE

15. Świat polityki

Page 114: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

114

National Security Agency (NSA)

National Computer Security Center (NCSC)

Public Key Patrners

International Association of Cryptographic Research

IS)/IEC 9979

Grupa sci.skrypt

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Tajne schematy współużytkowania

implementacja aplikacji liczacej klucze (w ciele liczb całkowitych) w schemacie

progowym Shamira

testowanie aplikacji przy różnych kluczach współużytkowania

tworzenie schematu współużytkowania przy ustalonym kluczu

2. Tajne schematy współużytkowania - cd

konstrukcja tajnego schematu współużytkowania oparta na obwodzie

niemonotonicznym

tworzenie idealnych schematów przy użyciu bazowych wektorów przestrzeni

tworzenie schematów przez rozkład

3. Liczby pseudo-losowe

liniowy kongruentny generator

generator RSA - generowanie ciagów bitowych

generator pseudolosowych ciagów bitowych oparty dyskretne logarytmy -

generowanie ciagów bitowych

generator Bluma-Bluma-Shuba

szyfrowanie wiadomości z kluczem publicznym przy użyciu probabilistycznego

kryptosystemu generatora kluczy Bluma-Goldwassera

4. Data Encryption Standard (DES)

analiza algorytmu DES

implementacja

Page 115: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

115

testowanie działania (szyfrowanie, deszyfrowanie)

5. Szyfr blokowy LOKI

analiza algorytmu LOKI91

implementacja

testowanie działania (szyfrowanie, deszyfrowanie)

porównanie z DES

6. Szyfr IDEA

analiza algorytmu IDEA

implementacja

testowanie działania (szyfrowanie, deszyfrowanie)

porównanie z DES

7. Algorytm blokowy GOST

analiza algorytmu GOST

implementacja

testowanie działania (szyfrowanie, deszyfrowanie)

8. Algorytm Blowfish

analiza algorytmu Blowfish

implementacja

testowanie działania (szyfrowanie, deszyfrowanie)

9. Szyfr blokowy 3-Way

analiza algorytmu 3-Way

implementacja

testowanie działania (szyfrowanie, deszyfrowanie)

10. Szyfr blokowy RC5

analiza algorytmu RC5

implementacja

testowanie działania (szyfrowanie, deszyfrowanie)

porównanie z DES i IDEA

11. Szyfr strumieniowy A5

analiza algorytmu A5

implementacja

testowanie działania (szyfrowanie, deszyfrowanie)

12. Szyfr strumieniowy SEAL

analiza algorytmu SEAL

Page 116: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

116

implementacja

testowanie działania (szyfrowanie, deszyfrowanie)

13. Bezpieczeństwo WWW i poczty elektronicznej

certyfikaty

analiza protokołu SSL

pakiet PEM (Privacy Enhanced Mail)

zabezpieczanie komunikacji teleinformatycznej

14. Szyfrowanie systemu plików

system CFS (Cryptographic File System)

generowanie ciagów pseudolosowych

szyfrowanie plików

pakiet PGP (Pretty Good Privacy)

15. Protokoły obrotu finansowego

bankowość telefoniczna

protokół SET (Secure Electronic TransactionTM)

wydanie certyfikatu

transakcja elektroniczna

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 14 zajęć może uzyskać od 0 do 140 pkt.

Temat i zakres projektu indywidualnego student otrzymuje najpóźniej na trzecim zajęciu. Za

projekt może on otrzymać ocenę punktową mieszczącą się w zakresie 0 - 60 pkt. Zaliczenie

projektu następuje po uzyskaniu co najmniej 31 pkt. i jest możliwe najpóźniej na ostatnich

zajęciach. Jest ono także warunkiem koniecznym do uzyskania zaliczenia ćwiczeń

laboratoryjnych.

Łączna ocena punktowa zajęć laboratoryjnych jest sumą punktów uzyskanych za

poszczególne zajęcia oraz za indywidualny projekt i zawiera się w granicach 0-200 pkt.

Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg

skali ECTS):

Zakres Ocena Zakres Ocena

Page 117: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

117

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. Douglas R. Stinson Kryptografia. W teorii i w praktyce ., WNT

2. C. Boyd, A. Mathuria Protocols for Authentication and Key Establishment.

3. Carlisle Adams, Steve Lloyd Podpis elektroniczny. Infrastruktura klucza publicznego.

4. A. J. Menezes, P. C. van Oorschot and S. A. Vanstone Handbook of Applied

Cryptography http://www.cacr.math.uwaterloo.ca/hac/

5. Bruce Schneier Kryptografia dla praktyków. Protokoły, algorytmy i programy

źródłowe w jezyku C.

6. S. Goldwasser iM. Bellare Lecture Notes on Cryptography

http://www.cs.ucsd.edu/users/mihir/papers/7.

7. Cryptology ePrint Archive http://eprint.iacr.org/

Page 118: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

118

Kierunek: Informatyka

Przedmiot:

Technologie i systemy bezpieczeństwa komputerowego

Technologies and Systems of Computer Security

Czas trwania: semestr 1

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr inż. Tadeusz Sydoruk 21 egzamin 6

Laboratorium mgr Krzysztof Pietraszek 24 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Technologie sieciowe

Systemy operacyjne

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Zasadniczym celem przedmiotu ”Technologie i systemy bezpieczeństwa komputerowego”

jest przekazanie wiedzy z zaawansowanych technologii oraz systemów bezpieczeństwa sieci

komputerowych w aspekcie zarówno teoretycznym jak i praktycznym w zakresie niezbędnym

do projektowania bezpiecznych sieci, ich wdrażania i eksploatacji oraz adaptacji

nowoczesnych technologii i systemów bezpieczeństwa do zmieniających się wymagań

bezpieczeństwa w sieciach istniejących.

Celem laboratorium jest nabycie i opanowanie praktycznych umiejętności w rozwiązywaniu

problemów sygnalizowanych i wyjaśnianych w czasie wykładu, a także zdobycie

umiejętności w zakresie instalowania i samodzielnego zarządzania systemami bezpieczeństwa

komputerowego, wykrywaniem potencjalnych zagrożeń pracy systemu i optymalizacja

przepustowości sieci.

WYKŁAD

1. Ataki i metody obrony ściany ogniowej. Strefy zdemilitaryzowane (DMZ)

Metody atakowania firewalli i przeciwdziałanie

Przykład ataku na firewall: CheckPoint, PIX, ISA, NetScreen

Page 119: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

119

Bezpieczna transmisja danych pomiedzy hostem a siecią

Protokoły DMZ

Identyfikacja zagrożen z Internetu

Architektury DMZ

2. Atak i obrona stref zdemilitaryzowanych

Rekonesans i testy penetracyjne

Ataki na DMZ

Ukrywanie tożsamosci

Mapowanie sieci

3. Systemy wykrywania włamań (IDS) w strefach zdemilitaryzowanych

Strategie rozmieszczenia IDS

Snort

CISCO IDS

Pułapki w strefach DMZ

4. Serwer ISA - planowanie i wdrażanie

Szacowanie wymagań

Wymagania systemowe, programowe i sprzętowe

Zastosowanie Active Directory

Planowanie trybu instalacji. Dostosowanie ISA do własnych potrzeb

Optymalizacja wydajności. Integracja ISA z innymi usługami

Tworzenie kopii zapasowej i przywracanie konfiguracji

5. Cyfrowa transmisja głosu. Telefonia IP

Obsługa głosu w sieciach WAN.

Kanały głosowe. Optymalizacja pasma

Sygnalizacja. Echo

Problemy połączen telefonicznych

Uwierzytelnianie użytkowników i urządzeń

Ksiegowanie i billing

Przykłady implementacji

6. Zarządzanie bezpieczeństwem informacji w systemach teleinformatycznych

Schemat procesu budowy bezpieczeństwa teleinformatycznego

Struktura organizacyjna związana z procesem zarządzania bezpieczeństwem

Plan bezpieczeństwa teleinformatycznego

Wdrażanie i utrzymywanie przedsięwziec bezpieczeństwa teleinformatycznego

7. VPN - wirtualne sieci prywatne

Uwierzytelnianie kryptograficzne

Szyfrowanie ładunku danych

Cechy charakterystyczne sieci VPN

Page 120: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

120

Popularne implementacje sieci VPN

8. Bezpieczeństwo telekomunikacji. Sieci komórkowe GSM/GPRS

Systemy ochrony telefonii komórkowej GSM. Obrona radioelektroniczna

Transmisja danych w specjalnych (wojskowych) sieciach łącznosci. Bezpieczeństwo

rozmów

Architektura sieci GSM/GPRS

Model bezpieczeństwa i ataki na GSM

Bezpieczeństwo bezprzewodowej transmisji danych

9. Inżynieria zabezpieczeń

Ochrona wielopoziomowa i wielostronna

Bankowość i ksiegowość

Systemy monitorujace

Metody biometryczne

10. Projektowanie systemów bezpieczeństwa

Analiza potrzeb

Analiza zagrozeń

Implementacja AAA

Implementacja wybranych technologii zabezpieczeń

11. Zintegrowane systemy bezpieczeństwa

Monitorowanie sieci

Trendy

Zintegrowane technologie zabezpieczeń

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Systemy bezpieczeństwa - wprowadzenie

Słabości i zagrożenia

Podstawy bezpieczeństwa i polityka

Page 121: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

121

Przegląd produktów i rozwiązań

2. Domeny zaufania

Zastosowanie domen zaufania

Zabezpieczanie usług sieciowych programem TPD

3. Ochrona serwerowych środowisk MS Windows

Lokalna Kontrola Dostępu w systemie Windows XP

Korzystanie z możliwości systemu plików NTFS

Wykorzystywanie archiwów z ochroną kryptograficzną

4. 5. Systemy uwierzytelniania i kontroli dostępu do systemu operacyjnego, ograniczanie

środowiska wykonywania aplikacji

Omówienie i korzystanie z mechanizmu PAM (Pluggable Authentication Modules)

Omówienie i korzystanie z mechanizmu SUDO (superuser do)

5. Zabezpieczanie komunikacji pocztowej i www

Integracja mechanizmów kryptograficznych z usługami pocztowymi

Zabezpieczanie serwerów usług aplikacyjnych na przykładzie WWW

6. Konstrukcja urzędów certyfikacji standardu OpenSSL, zarządzanie certyfikatami

Tworzenie własnego centrum certyfikacji

Zarządzanie PKI (Public Key Infrastructure)

7. Tworzenie sieci VPN w środowisku Linux i Windows

Implemetacja połączenia VPN Linux - Linux z wykorzystaniem mechanizmu

współdzielonego klucza

Implemetacja połączenia VPN Linux - Linux z wykorzystaniem mechanizmu

certyfikatów cyfrowych

• Implemetacja połączenia VPN Linux - Windows z wykorzystaniem mechanizmu

współdzielonego klucza

Budowanie sieci VPN z użyciem oprogramowania Openswan

8. Systemy programowych zapór sieciowych

Konfiguracja iptables w systemie Linuks

Korzystanie z modułów rozszerzających IPTABLES

9. Konfiguracja routerów i przełączników

Ogólne bezpieczeństwo routerów i przełączników

Blokowanie usług

Zarządzanie routerem

Page 122: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

122

10. Konfiguracja list kontroli dostępu (1)

Projektowanie i konfiguracja list standardowych

Projektowanie i konfiguracja list rozszerzonych

11. Konfiguracja list kontroli dostępu (2)

Typy list kontroli dostępu

Kontrola dostępu CBAC

Konfiguracja CBAC

12. Konfiguracja list kontroli dostępu (3)

Inspekcja list dostępu

Zaliczenie laboratorium

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 11 zajęć może uzyskać od 0 do 110 pkt.

Łączna ocena punktowa zajęć laboratoryjnych zawiera się w granicach 0-110 pkt. Ocena

końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg skali

ECTS):

Zakres Ocena Zakres Ocena

0-55 pkt. ndst (F) 78-88 pkt. db (C)

56-66 pkt. dst (E) 89-99 pkt. db+ (B)

67-77 pkt. dst+ (D) 100-110 pkt. bdb (A)

LITERATURA

1. Behrens T. i in.: CISCO PIX. Firewalle. Wyd. Helion, Gliwice 2006

2. Cherie Amon, Anne Carasik-Henmi, Thomas W. Shinder, Steven Andres, Brian

Kenyon, Hardening the Network Infrastruktures, Syngress, 2004

3. Kurose J.F., Ross K.W.: Sieci komputerowe. Od ogółu do szczegółu z internetem w

tle. Wyd. Helion, Gliwice 2006, wydanie 3

4. Littlejohn Debra , Robert J. Shimonski: Wielka ksiega firewalli, Helion, 2004

5. Pieprzyk J., Hardjono T., Seberry J.: Teoria bezpieczeństwa systemów

komputerowych, Wyd. Helion, Gliwice 2003

Page 123: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

123

6. Serafin M.: Sieci VPN. Zdalna praca i bezpieczeństwo danych. Wyd. Helion, Gliwice

2008

Page 124: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

124

Kierunek: Informatyka

Przedmiot:

Bezpieczeństwo aplikacji w środowisku sieciowym

Application Security in Network Environments

Czas trwania: semestr 2

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr hab. Andrzej Wiśniewski 30 egzamin 6

Laboratorium dr Jarosław Skaruz 30 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Aplikacje internetowe

Przetwarzanie rozproszone

specjalistycznych: Zaawansowane sieci komputerowe/ Bezpieczeństwo sieci

komputerowych

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Celem głównym wykładu jest przedstawienie zróżnicowanych form zagrożeń wynikających z

sytuacji przepełnienia stosu, sterty, jądra. Cele szczegółowe wykładu są następujące:

charakterystyka metod wykrywania błedów przepełnienia, kontroli kodu źródłowego,

audytu kodu binarnego,

charakterystyka systemu Windows ze szczególnym uwzględnieniem zalet i wad

techniologii DCOM/DCE-RPC,

tworzenie exploitów i filtrów (Unicode/alfanumerycznych),

technologie fuzzingu.

Celem laboratorium jest nabycie i opanowanie praktycznych umiejętności w zakresie

testowania kodu źródłowego. Cele szczegółowe laboratorium są następujące:

wykonywanie i testowanie kodu w systemie Windows,

wyszukiwanie i wykorzystanie błędów przeopełnień sterty i metody jej naprawy,

techniki tworzenia exploitów,

techniki audytu kodu binarnego.

Page 125: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

125

WYKŁAD

1. Przepełnienie Stosu

bufory

stos

przepełnienie buforów na stosie

zdobywanie uprawnień roota

2. Shellcode - wywołanie powłoki

wywołania systemowe

kod powłoki używający wywołania systemowego exit()

wstrzykiwanie kodu powłoki

tworzenie nowej powłoki

3. Błędy łańcuchów formatujących

łańcuchy formatujące

błędy łańcuchów formatujących

włamania za pomocą łańcuchów formatujących

przejęcie sterowania

4. Wprowadzenie do metod przepełnienia sterty

zarządzanie stertą

wyszukiwanie przepełnień sterty

podstawowe metody przepełnień sterty

5. Charakterystyka systemu Windows

sterty

wątki

zalety i wady technologii DCOM i DCE-RPC

śledzenie działania programów w systemie Windows

6. Kody powłoki w Windows

składnia i filtry

przygotowywanie kodu powłoki

tworzenie nowej powłoki

7. Przepełnienia w systemie Windows

przepełnienia buforów na stosie

ochrona stosu

przepełnienia sterty

wykorzystanie przepełnień sterty

8. Rodzaje i zastosowanie filtrów

Page 126: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

126

tworzenie eksploitów i filtry alfanumeryczne

tworzenie eksploitów i filtry Unicode

metoda wenecka

dekoder i dekodowanie

9. Wstrzykiwanie błędów

projekt systemu wstrzykiwania błędów

monitorowanie błędów

10. Fuzzing - wykrywanie błędów przepełnienia bufora

teoria fuzzingu

wady fuzzerów

modelowanie dowolnych protokołów sieciowych

program SPIKE

11. Kontrola kodu zródłowego

narzędzia kontroli kodu zródłowego

klasy błędów

metodologia wykrywania błędów

12. Ręczne wykrywanie błędów

filozofia

typowe błędy architektury

obejście kontroli danych wejściowych

wykrywanie ataków odmowy usługi

13. Audyt kodu binarnego

podstawy audytu kodu binarnego

odtwarzanie definicji klas

ręczna analiza kodu binarnego

14. Alternatywne strategie exploitów

modyfikacje programów

proxy wywołań systemowych

koncepcje modyfikacji działającego kodu

15. Przepełnienie jądra

typy słabych punktów jądra

słabe punkty jądra

ZALICZENIE WYKŁADU

Page 127: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

127

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Buffer overflow - przepełnienie bufora

implementacja kodów przepełnienia bufora dla aplikacji w systemie Linuks

wykonanie ataku przepełnienia bufora

2. Implementacja kodu powłoki

kompilacja i deasemblacja programów

tworzenie własnej powłoki

3. Wykorzystanie błędów w łańcuchach formatujących

specyfikatory formatu

atakowanie usług sieciowych

odczytywanie danych procesów

modyfikacja działania programów w trakcie wykonywania

4. Wyszukiwanie i wykorzystanie błędów przepełnień sterty

identyfikacja obszaru sterty

przepełnianie sterty w programach

5. Wykonywanie kodu w systemie Windows

analiza słabych punktów DCOM

zastosowanie narzędzia SPIKE

6. Powłoka w systemie Windows

dynamiczne tworzenie kodu powłoki

wstrzykiwanie kodu powłoki do działającego procesu

7. Stos i sterta w Windows

nadpisywanie wskaźnika funkcji

przepełnienie sekcji .data

przepełnienia bloków TEB i PEB

Page 128: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

128

naprawa sterty

8. Ataki SQL-injection

analiza typowych ataków SQL-injection

wykrywanie błędów SQL-injection w aplikacjach

9. Testowanie poprawności kodu I

przepełnienia jednym bajtem

błędy braku zakończenia łańcucha

błędy przeskoczenia bajtu zerowego

10. Testowanie poprawności kodu II

błędy porównania wartości ze znakiem

błędy związane z wartościami całkowitymi

błędy podwójnego zwolnienia

11. Zautomatyzowane narzędzia kontroli kodu zródłowego

wykorzystanie szerokiej gamy oprogramowania do wykrywania błędów w kodzie

źródłowym

testowanie aplikacji

12. Audyt kodu binarnego

symbole uruchomieniowe

tablice funkcji wirtualnych

konstrukcje języka C++

13. Ręczna analiza kodu binarnego

weryfikacja wywołań bibliotecznych

błędy logiki

graficzna analiza kodu binarnego

ręczna dekompilacja

14. Zaawansowane techniki tworzenia eksploitów

analiza kodów źródłowych eksploitów wykorzystanych w znanych włamaniach

modyfikacja kodów źródłowych eksploitów

15. Słabe punkty jądra systemu Linuks

wyznaczanie przesunięć i adresów pułapek

nadpisywanie adresu powrotu i przejęcie sterowania

wyszukiwanie deskryptora procesu

powrót kodu wykonywanego na poziomie jądra

Page 129: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

129

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 14 zajęć może uzyskać od 0 do 140 pkt.

Temat i zakres projektu indywidualnego student otrzymuje najpóźniej na trzecim zajęciu. Za

projekt może on otrzymać ocenę punktową mieszczącą się w zakresie 0 - 60 pkt. Zaliczenie

projektu następuje po uzyskaniu co najmniej 31 pkt. i jest możliwe najpóźniej na ostatnich

zajęciach. Jest ono także warunkiem koniecznym do uzyskania zaliczenia ćwiczeń

laboratoryjnych.

Łączna ocena punktowa zajęć laboratoryjnych jest sumą punktów uzyskanych za

poszczególne zajęcia oraz za indywidualny projekt i zawiera się w granicach 0-200 pkt.

Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg

skali ECTS):

Zakres Ocena Zakres Ocena

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. Jack Koziol, David Litchfield, Dave Aitel, Chris Anley, Sinan Eren, Neel Mehta,

Riley Hassell, The Shellcoder’s Handbook, Helion,

2. Alex Lukatsky, Wykrywanie włamań i aktywna ochrona danych, Helion, 2004

Page 130: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

130

Kierunek: Informatyka

Przedmiot:

Systemy wykrywania włamań

Intrusion Detection Systems

Czas trwania: semestr 3

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr inż. Tadeusz Sydoruk 21 egzamin 6

Laboratorium dr Jarosław Skaruz 24 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Podstawy bezpieczeństwa systemów komputerowych,

Modelowanie i analiza systemów informatycznych,

Zaawansowane technologie programistyczne.

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Celem głównym wykładu jest zapoznanie z przekrojem wszystkich zagadnień wchodzacych

w zakres systemów wykrywania włamań (IDS) oraz zapobiegania włamaniom (IPS) do

systemów informatycznych, koniecznych do uwzględnienia podczas projektowania i

wdrażania tych systemów w organizacjach, firmach i korporacjach w instalacjach

powiązanych z intersiecią. Celami dodatkowym jest wskazanie na prawidłowości i tendencje

rozwojowe systemów IDS oraz IPS, w tym w szczególności przy zastosowaniu technologii

baz danych oraz sztucznej inteligencji, a także kierunki rozwoju zabezpieczeń systemów

informatycznych.

Celem ćwiczeń laboratoryjnych jest rozszerzenie i utrwalenie zagadnień teoretycznych oraz

nabycie i opanowanie praktycznych umiejętności w rozwiązywaniu wybranych problemów

wskazanych w toku wykładu.

WYKŁAD

1. Wprowadzenie do wykrywania włamań. Metody wykrywania włamań

Istota i definicje wykrywania włamań. Idee i koncepcje wykrywania włamań

Page 131: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

131

Podstawowe problemy wykrywania włamań.

Rynkowe narzędzia i systemy wykrywania włamań

Przetwarzanie: raportu audytu i

Sygnatury i profile normalnego i nienormalnego zachowania. Korelacja zdarzeń

2. Inspekcja pakietów w celu analizy włamań

Definicje i technologie analizy pakietów

Filtry pakietów, filtrowanie pełnostanowe

Proxy aplikacyjne

Nowe metody analizy pakietów

3. Klasyfikacja systemów wykrywania włamań

Powstanie i rozwój IDS

Przykład ataku, wykrycia i obrony

Lokalne i sieciowe IDS

Systemy IPS

Narzędzia wykrywania ataków odmowy obsługi

4. Architektura systemów wykrywania włamań

Architektura IDS

Informacje wejściowe dla IDS

Przetwarzanie w IDS

Alarmy i dyrektywy

Infrastruktura komunikacyjna

6. Cykl życia i etapy wdrożenia systemu wykrywania włamań. Wybór systemu

wykrywania włamań

Planowanie. Wybór producenta. Testowanie

Projekt pilotażowy

Instalacja (wdrożenie). Obsługa i konserwacja

Analiza wstępna - identyfikacja potrzeb i możliwości nabywcy IDS

Kryteria oceny systemów wykrywania włamań

Systemy IDS i IPS open source

7. Elementy SWW w infrastrukturze informatycznej. Pułapki internetowe

Rozmieszczenie czujników IDS. Czujniki SWW w sieciach przełączanych

Czynniki wpływajace na konfiguracje systemu wykrywania włamań

Definicja pułapki. Typy pułapek

Wytyczne do zaprojektowania pułapki

8. Zarządzanie siecią z IDS

Wybór węzła dla IDS

Strategia skanowania

Konfiguracja mechanizmu rejestrowania zdarzeń

Page 132: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

132

Zabezpieczanie SWW

9. Typowe problemy IDS. Reagowanie na incydenty

Problemy natury ogólnej

Ograniczenia sieciowych IDS

Ograniczenia lokalnych IDS

Proces reagowania na incydenty - czynniki i uwarunkowania

Typologia technik reagowania na incydenty i metodologia jej użytku

10. Standaryzacja w dziedzinie systemów wykrywania włamań

Projekt Lincoln Laboratory

Projekt OSEC

Projekt OPSEC

Projekt DARPA

11. Zastosowanie sztucznej inteligencji w SWW

Zastosowanie sieci neuronowych do wykrywania włamań na aplikacje www

Zastosowanie sztucznych systemów immunologicznych do wykrywania intruzów

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Detekcja włamań

instalacja SWW,

konfiguracja systemu

Snort jako sniffer pakietów

wykrywanie złośliwej aktywności sieciowej

2. Analiza alarmów: moduł ACID

instalacja i konfiguracja modułu ACID

wykorzystanie modułu ACID oraz bazy Mysql do zarzadzania alarmami z poziomu

interfejsu WWW

Page 133: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

133

3. Korelacja zdarzeń: moduł Sguil

instalacja i konfiguracja modułu Sguil

wykorzystanie modułu Sguil do rozproszonego monitorowania systemu operacyjnego

4. Tworzenie sygnatur

analiza plików konfiguracyjnych

analiza nagłówka reguł

analiza ciała reguł

testowanie reguł

5. Tworzenie sygnatur II

analiza opcji preprocesora

implementacja własnego preprocesora

6. Zarządzanie sensorami

instalacja i konfiguracja modułu Snort Center

wykorzystanie aplikacji Snort Center do zarządzania sensorami Snorta

7. Optymalizacja Snorta

analiza opcji dla testów wydajnościowych

konfiguracja preprocesora

wybór pluginów

8. Zarządzanie systemem Snort: moduł Bernyard

instalacja i konfiguracja aplikacji Bernyard

testowanie wydajności Snorta z zastosowaniem Bernyard

9. Detekcja włamań w połaczeniach szyfrowanych protokołem SSL

instalacja i konfiguracja modułu modsecurity dla serwera WWW

wykrywanie złośliwej aktywności sieciowej szyfrowanej protokołem SSL

10. Integracja systemu wykrywania włamań z firewallem: aplikacje Snort inline i

SnortSam

instalacja łatki Snort inline oraz modułu SnortSam

wykorzystanie dodatkowego oprogramowania do modyfikacji reguł firewalla jako

reakcji na atak

11. System wykrywania anomalii: aplikacja Spade

instalacja i konfiguracja aplikacji

testowanie skuteczności wykrywania włamań

Page 134: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

134

12. Zarządzanie pułapką: Specter

instalacja i konfiguracja pułapki

wykorzystanie skanerów bezpieczenstwa do analizy hostów-pułapek

13. Symulacja systemu podatnego na atak: pułapka Honeyd

instalacja i konfiguracja środowiska Honeyd

wykorzystanie skanerów bezpieczeństwa do analizy hostów-pułapek

14. Śledzenie aktywności intruza: aplikacje Honeyd i Sebek

instalacja i konfiguracja środowiska Sebek

śledzenie aktywności intruza po włamaniu na host-pułapke

15. Analiza powłamaniowa: narzędzia chkrootkit

instalacja i konfiguracja narzędzi analizy powłamaniowej

wykorzystanie aplikacji do uzyskania informacji o aktywności intruza

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 11 zajęć może uzyskać od 0 do 110 pkt.

Łączna ocena punktowa zajęć laboratoryjnych zawiera się w granicach 0-110 pkt. Ocena

końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg skali

ECTS):

Zakres Ocena Zakres Ocena

0-55 pkt. ndst (F) 78-88 pkt. db (C)

56-66 pkt. dst (E) 89-99 pkt. db+ (B)

67-77 pkt. dst+ (D) 100-110 pkt. bdb (A)

LITERATURA

1. Amoroso E.: Wykrywanie intruzów.Wyd. Oficyna Wydawnicza RM,Warszawa 1999.

2. Beale J., Foster J.C.:Snort 2.0 Intrusion Detekti9on. Wyd. Syngress, 2003.

3. Birkholz E.P.: Operacje specjalne. Bezpieczenstwo komputerów i sieci. Wyd.

Translator, Warszawa 2003

Page 135: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

135

4. Butler J., Hoglund G.: Rootkity. Sabotowanie jadra systemu Windows. Wyd. Helion,

Gliwice 2006.

5. Crothers T.: Implementing Intrusion Detektion Systems: A Hands-On Guide for

Securing the Network. Wiley, 2002.

6. Lockhart A.: 100 sposobów na bezpieczenstwo sieci. Wyd. Helion, Gliwice 2004.

7. Lukatsky A.: Wykrywanie właman i aktywna ochrona danych. Wyd. Helion, Gliwice

2004.

8. RashM., Orebaugh A., Clark G., Pinkard B., Babbin J.: IPS. Zapobieganie I aktywne

przeciwdziałanie intruzom. Wyd. MIKOM, Warszawa 2005.

9. Sklyarov I.: Hakerskie łamigłówki. Wyd. Helion, Gliwice 2005.

Page 136: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

136

Kierunek: Informatyka

Przedmiot:

Projektowanie aplikacji i systemów bezpieczeństwa

komputerowego

Design of Computer Security Applications and Systems

Czas trwania: semestr 3

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr Jarosław Skaruz 30 egzamin 6

Laboratorium mgr Marek Pilski 30 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Podstawy bezpieczeństwa systemów komputerowych,

Modelowanie i analiza systemów informatycznych,

Zaawansowane technologie programistyczne

lub znajomość literatury z tych przedmiotów.

ZAŁOŻENIA I CELE

Celem wykładu jest przekazanie wiedzy z zakresu projektowania aplikacji i systemów

bezpieczeństwa komputerowego. Zakres ten obejmuje:

zagadnienia metodologiczne dotyczące projektowania systemów z uwzględnieniem

polityki bezpieczeństwa,

analizę i ocenę zagrożeń,

podstawowe metody ataków na aplikacje i systemy komputerowe, oraz metody

obrony.

W zakresie poruszanej problematyki znalazły się zagadnienia związane z projektowaniem

bezpiecznych aplikacji www.

Celem ćwiczeń laboratoryjnych jest nabycie i opanowanie praktycznych umiejętności w

zakresie projektowania aplikacji uwzględniających zasady bezpieczeństwa. Zasadniczym

elementem praktycznym laboratorium jest zadanie indywidualne o charakterze projektu. W

ramch projektu studenci przygotowują i przeprowadzają:

Page 137: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

137

projekt aplikacji,

implementację,

program testów z uwzględnieniem elementów bezpieczeństwa aplikacji.

przeprowadzenie testów i analizę wyników.

Ocenie podlega cały proces i jego zgodność z metodyką projektowania systemów

informatycznych.

WYKŁAD

1. Metodologia projektowania systemów informatycznych w aspekcie bezpieczeństwa

Zakres i elementy metodyki projektowania systemów.

Cykl życia systemu informatycznego.

Metodologia projektowania a polityka bezpieczeństwa.

2. Polityka bezpieczeństwa w projektowaniu aplikacji i systemów bezpieczeństwa

komputerowego

Elementy polityki bezpieczeństwa w projektowaniu systemów.

Model polityki bezpieczeństwa w projektowaniu systemów.

3. Specyfikacja zabezpieczeń na etapie projektowania funkcjonalności aplikacji.

Krytyczne błędy programistyczne.

Ochrona przed błędami.

Bezpieczeństwo kompilacji i bibliotek.

Zasada minimalnych uprawnień.

Modele zabezpieczeń.

Obsługa wyjątków.

4. Projektowanie bezpiecznych aplikacji w aspekcie środowiska pracy aplikacji.

Aplikacje dla systemów operacyjnych Windows, Unix, Linux.

Aplikacje dla platformy .NET.

5. Analiza i ocena zagrożeń w aspekcie projektowania aplikacji.

Analiza zagrożeń.

Określenie priorytetów użytkownika i projektanta.

Ocena zagrożeń.

Minimalizacja ryzyka.

Reguły bezpieczeństwa.

6. Ataki na aplikacje.

Klasy ataków.

Metody analizy luk w zabezpieczeniach.

Różnicowanie.

Page 138: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

138

7. Techniki wykorzystywania zagrożeń spowodowanych nieoczekiwanymi danymi

wejściowymi.

Techniki wyszukiwania i eliminacji luk.

Zabezpieczenia języków programowania.

Narzędzia do kontroli poprawności funkcjonowania aplikacji.

8. Przepełnianie bufora i ciągi formatujące.

Techniki przepełniania bufora.

Błędy ciągów formatujących.

9. Sposoby zabezpieczeń przed złośliwym oprogramowaniem.

Techniki dostarczania złośliwego kodu.

Wykrywanie złośliwego kodu.

10. Zautomatyzowane badanie systemów zabezpieczeń w aplikacjach.

Narzędzia do rozpoznawania systemów zabezpieczeń.

Testowanie penetracyjne.

11. Projektowanie bezpiecznych aplikacji usługowych.

Bezpieczne środowisko aplikacyjne.

Zagrożenia i ochrona popularnych usług aplikacyjnych (www, poczta elektroniczna,

komunikatory sieciowe).

Bezpieczne protokoły sieciowe.

12. Projektowanie bezpiecznych aplikacji www.

Techniki ataków z poziomu sieci www.

Model zagrożeń dla aplikacji www.

13. Projektowanie bezpiecznych stron WWW w aspekcie poprawności danych.

Źródła danych.

Zagrożenia dla danych.

Walidacja danych po stronie klienta i serwera.

14. Uwierzytelnianie i autoryzacja w projektowaniu bezpiecznych aplikacji www.

Uwierzytelnianie w projektowaniu bezpiecznych aplikacji www.

Autoryzacja w projektowaniu bezpiecznych aplikacji www.

15. Uruchamianie bezpiecznych aplikacji www.

Przygotowanie testów.

Przeprowadzenie testów bezpieczeństwa.

Page 139: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

139

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Specyfikacja wymagań projektu.

Analiza wymagań.

Formułowanie wymagań.

2. Specyfikacja wymagań dotyczących bezpieczeństwa.

Analiza wymagań.

Formułowanie wymagań.

3. Specyfikacja zabezpieczeń na etapie projektowania funkcjonalności aplikacji.

Krytyczne błędy programistyczne.

Ochrona przed błędami.

Bezpieczeństwo kompilacji i bibliotek.

Zasada minimalnych uprawnień.

Modele zabezpieczeń.

Obsługa wyjątków.

4. Projektowanie aplikacji.

Architektura aplikacji.

Specyfikacja usług.

Projektowanie podsystemów.

Projektowanie bezpieczeństwa - analiza zagrożeń.

5. Projektowanie aplikacji

Projektowanie interfejsu.

Projektowanie struktur danych.

Projektowanie algorytmów.

Projektowanie bezpieczeństwa - ocena zagrożeń.

6. Programowanie aplikacji.

Page 140: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

140

Analiza luk w zabezpieczeniach.

Wprowadzanie zabezpieczeń do aplikacji.

7. Techniki wykorzystywania zagrożeń spowodowanych nieoczekiwanymi danymi

wejściowymi.

Techniki wyszukiwania i eliminacji luk.

Zabezpieczenia języków programowania.

Narzędzia do kontroli poprawności funkcjonowania aplikacji.

8. Przepełnianie bufora i ciągi formatujące - najczęstsze ataki.

Techniki przepełniania bufora.

Błędy ciągów formatujących.

9. Sposoby zabezpieczeń przed złośliwym oprogramowaniem.

Techniki dostarczania złośliwego kodu.

Wykrywanie złośliwego kodu.

10. Zautomatyzowane badanie systemów zabezpieczeń w aplikacjach.

Narzędzia do rozpoznawania systemów zabezpieczeń.

Testowanie penetracyjne.

11. Programowanie bezpiecznych aplikacji usługowych.

Bezpieczne środowisko aplikacyjne.

Zagrożenia i ochrona popularnych usług aplikacyjnych (www, poczta elektroniczna,

komunikatory sieciowe).

Bezpieczne protokoły sieciowe.

12. Programowanie bezpiecznych aplikacji www.

Techniki ataków z poziomu sieci www.

Model zagrożeń dla aplikacji www.

13. Programowanie bezpiecznych aplikacji www - poprawność danych.

Źródła danych.

Zagrożenia dla danych.

Walidacja po stronie klienta i serwera.

14. Testowanie i uruchamianie aplikacji.

Przygotowanie testów.

Przeprowadzenie testów bezpieczeństwa.

Uruchamianie aplikacji.

Sporządzenie dokumentacji projektu.

Page 141: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

141

15. Prezentacja projektu i zaliczenie.

Prezentacja i ocena projektu

Zaliczenie przedmiotu

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 14 zajęć może uzyskać od 0 do 140 pkt.

Temat i zakres projektu indywidualnego student otrzymuje najpóźniej na trzecim zajęciu. Za

projekt może on otrzymać ocenę punktową mieszczącą się w zakresie 0 - 60 pkt. Zaliczenie

projektu następuje po uzyskaniu co najmniej 31 pkt. i jest możliwe najpóźniej na ostatnich

zajęciach. Jest ono także warunkiem koniecznym do uzyskania zaliczenia ćwiczeń

laboratoryjnych.

Łączna ocena punktowa zajęć laboratoryjnych jest sumą punktów uzyskanych za

poszczególne zajęcia oraz za indywidualny projekt i zawiera się w granicach 0-200 pkt.

Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg

skali ECTS):

Zakres Ocena Zakres Ocena

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. Barczak A, Florek J., Sydoruk T. - Projektowanie zintegrowanych systemów

informatycznych zarządzania, Akademia Podlaska, 2006

2. Szeliga M., Wileszek R. - PHP 5;Tworzenie bezpiecznych stron WWW. Helion 2006

3. Kevin Lam i inni - Ocena bezpieczeństwa sieciowego, APN Promise 2005

4. Praca zbiorowa - Hack Proofing your Network, Helion 2002

5. Michael Howard, David LeBlanc - Bezpieczny kod, Microsoft Press

6. J.D. Meier, Alex Mackman, Michael Dunner, Srinath Vasireddy - Tworzenie

Bezpiecznych Aplikacji Microsoft ASP.NET, Microsoft Press, 2002

Page 142: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

142

Kierunek: Informatyka

Przedmiot:

Zarządzanie bezpieczeństwem systemów komputerowych

Computer Systems Security Management

Czas trwania: semestr 3

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr inż. Tadeusz Sydoruk 21 egzamin 6

Laboratorium dr Jarosław Skaruz 24 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Podstawy bezpieczeństwa systemów komputerowych,

Modelowanie i analiza systemów informatycznych,

Zaawansowane technologie programistyczne

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Celem głównym wykładu jest zapoznanie z przekrojem zagadnień wchodzących w zakres

zarządzania bezpieczeństwem systemów komputerowych, w tym zwłaszcza norm i

standardów, technologii, technik oraz wybranych narzędzi, praktycznym zastosowaniem

wybranych zagadnień projektowania i wdrażania polityki bezpieczeństwa, koniecznych do

uwzględnienia podczas projektowania i wdrażania systemów bezpieczeństwa komputerowego

w systemach informatycznych organizacji, firm, instytucji i korporacji w instalacjach

powiązanych z intersiecią.

Celem dodatkowym jest wskazanie na prawidłowości i tendencje rozwojowe systemów

zarządzania bezpieczeństwem informacji w systemach komputerowych, w tym w

szczególności przy zastosowaniu nowoczesnych technologii, a także kierunki rozwoju

zabezpieczeń systemów informatycznych.

Celem ćwiczeń laboratoryjnych jest rozszerzenie i utrwalenie zagadnień teoretycznych oraz

nabycie i opanowanie praktycznych umiejętności w rozwiązywaniu wybranych problemów

wskazanych w toku wykładu.

WYKŁAD

Page 143: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

143

1. Modele bezpieczeństwa informacyjnego. Polityka bezpieczeństwa

formalne modele bezpieczeństwa informacji,

logiczny nadzór bezpieczeństwa,

infrastruktura, poufność oraz integralność danych,

polityka i procedury dla personelu, szkolenia,

zabezpieczenia fizyczne i logiczne,

koordynacja elementów bezpieczeństwa w organizacji;

2. Ocena bezpieczeństwa systemu teleinformatycznego

standard TCSEC,

europejski standard ITSEC,

angielski standard BS 7799,

norma PN-ISO/IEC 27001;

3. Klasyfikacja i kontrola zasobów. Bezpieczeństwo osobowe

metody ochrony danych,

urządzenia przetwarzania danych,

poufność, integralność i dostępność;

czynnik ludzki - świadomość, wiedza i doświadczenie personelu,

certyfikat bezpieczeństwa osobowego, procedury weryfikacyjne;

4. Bezpieczeństwo fizyczne i środowiskowe

zgodność zabezpieczeń z klasyfikacją informacji i oceną ryzyka,

adekwatność zabezpieczeń do istniejących zagrożeń,

mechanizmy zabezpieczeń fizycznych,

integracja systemów zabezpieczeń;

5. System informatyczny a wymagania prawne i własne standardy. Zarządzanie

systemami i sieciami.

zgodność wymagań prawnych związanych z bezpieczeństwem informacji,

ochrona danych osobowych – prawo i praktyka działania,

systemy krytyczne,

zarządzanie kopiami zapasowymi,

ocena skuteczności wdrożonych systemów bezpieczeństwa;

6. Kontrola dostępu do systemu. Rozwój i utrzymanie systemu

zarządzanie uprawnieniami w systemach IT,

kontrola przestrzegania i weryfikacja wdrożonych procedur;

metody i narzędzia testowania oprogramowania,

rozwój i aktualizacja narzędzi i metod,

wdrażanie aktualizacji do systemów informatycznych;

7. Zarządzanie ciągłością działania

Page 144: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

144

identyfikacja krytycznych informacji i usług,

identyfikacja potencjalnych zagrożeń,

testowanie procedur i planów awaryjnych;

8. Analiza i szacowanie ryzyka

analiza ryzyka na potrzeby bezpieczeństwa teleinformatycznego,

metody oceny ryzyka – drzewa zdarzeń i drzewa błędów,

metody oceny ryzyka – oszacowania jakościowe,

metody oceny akceptowalności ryzyka;

9. Audyt bezpieczeństwa

analiza bezpieczeństwa w obszarach: serwery, stacje robocze, sieć, oprogramowanie,

metodyki, narzędzia, procedury,

raport o stanie bezpieczeństwa otoczenia systemu informatycznego,

raport o stanie bezpieczeństwa systemu informatycznego,

zalecenia i rekomendacje zmian;

10. Odtwarzanie działania systemów informatycznych

schemat opracowania i wdrożenia planów odtwarzania,

kopie bezpieczeństwa, rodzaje i przeznaczenie,

analiza procesu wytwarzania kopii bezpieczeństwa,

macierze RAID;

11. Ocena poziomu bezpieczeństwa SI

ocena polityki bezpieczeństwa,

audyt serwerów i stacji roboczych,

testy penetracyjne,

analiza wyników audytu,

wnioski – procedury przeciwdziałania atakom.

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Analiza obszaru problemowego – podstawowe definicje

Page 145: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

145

firma, instytucja, korporacja,

system informacyjny,

system(y) informatyczny(e),

procesy biznesowe,

personel, sprzęt, oprogramowanie;

2. Analiza zagrożeń i ocena ryzyka

prawdopodobieństwo wystąpienia zagrożenia,

skutki wystąpienia zagrożenia,

szacowanie ryzyka utraty informacji,

akceptowalność ryzyka;

3. Analiza strat, zysków i kosztów

kryteria decyzyjne akceptowalności ryzyka,

definiowanie wymagań sprzętowych,

definiowanie wymagań programowych;

4. Metody kontroli dostępu do systemu

analiza metod zapewniających bezpieczeństwo fizyczne,

elementy systemów ochrony fizycznej,

integracja systemów ochrony fizycznej – zyski i straty;

kontrola dostępu do systemów operacyjnych Linuks,

kontrola dostępu do systemów operacyjnych Windows a,

kontrola dostępu w systemach sieciowych;

5. Metody monitorowania systemu. Metody reagowania na wykrycie zagrożenia

analiza i wybór metod monitorowania chronionego środowiska,

definiowanie procedur obsługi incydentów,

wdrażanie procedur obsługi incydentów;

6. Metody likwidacji skutków realizacji zagrożenia

wybrane elementy procedur tworzenia kopii zapasowych,

procedury odtwarzania systemów z kopii zapasowych;

7. Projektowanie i wdrażanie polityki bezpieczeństwa

Tworzenie dokumentu pt. Polityka bezpieczeństwa przedsiębiorstwa” wg wybranej

metodyki,

analiza i planowanie procesu wdrożenia;

8. Projektowanie zabezpieczeń systemu informatycznego I

zapewnianie poufności danych,

zapewnianie integralności danych,

zapewnianie kontroli dostępu i identyfikowalności tożsamości,

Page 146: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

146

zapewnianie dostępności;

9. Projektowanie zabezpieczeń systemu informatycznego II

architektura dostępu do Internetu,

architektura zewnętrznego rutera,

architektura zaawansowanej ściany ogniowej;

10. Audyt systemów baz danych I

zabezpieczanie baz danych: MySQL i PostgreSql,

testy penetracyjne baz danych: MySQL i PostgreSql;

11. Audyt systemów baz danych II

zabezpieczanie bazy Oracle,

testy penetracyjne bazy Oracle;

12. Audyt systemów operacyjnych

zabezpieczanie i testy penetracyjne systemów Linuks,

zabezpieczanie i testy penetracyjne systemu Windows

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 14 zajęć może uzyskać od 0 do 140 pkt.

Łączna ocena punktowa zajęć laboratoryjnych zawiera się w granicach 0-140 pkt. Ocena

końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg skali

ECTS):

Zakres Ocena Zakres Ocena

0-70 pkt. ndst (F) 99-112 pkt. db (C)

71-84 pkt. dst (E) 113-126 pkt. db+ (B)

85-98 pkt. dst+ (D) 127-140 pkt. bdb (A)

LITERATURA

Page 147: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

147

1. Gałach A.: Instrukcja zarządzania bezpieczeństwem systemu informatycznego. Wyd.

OdiDK, Gdańsk 2004.

2. Lam K., LeBlanc D., Smith B.: Ocena bezpieczeństwa sieciowego. Wyd. APN

PROMISE, Warszawa 2005.

3. Liderman K.: Podręcznik administratora bezpieczeństwa teleinformatycznego. Wyd.

MIKOM, Warszawa, 2003.

4. Molski M., Łacheta M.: Przewodnik audytora systemów informatycznych. Wyd.

Helion, Gliwice 2007.

5. Peltier Thomas R.: Information Security Policies, Procedures and Standards:

Guidelines for Effective Information Security Management, CRC Press, 2001.

6. Polaczek T. Audyt bezpieczeństwa informacji w praktyce. Wyd. Helion, Gliwice

2006.

7. Reuvid J.: E-biznes bez ryzyka. Zarządzanie bezpieczeństwem w sieci. Wyd. Helion,

Gliwice 2007.

8. Maiwald E., Sieglein W.: Security Planning and Disaster Recovery, McGraw-Hill

Osborne, 2002.

9. Krause M., Tipton H. F.: Information Security Management Handbook, Fourth

Edition, Volume I, 1999.

10. Kovacich G. L., Kovacich G.: The Information System Security Officer’s Guide:

Establishing and Managing an Information Protection Program, Second Edition,

Butterworth-Heinemann, 2003

11. Peltier T. R.: Information Security Policies and Procedures: A Practitoner’s Reference,

Second Edition, Auerbach Publications, 2004.

Page 148: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

148

Specjalność: PROJEKTOWANIE I EKSPLOATACJA SYSTEMÓW INFORMATYCZNYCH

Page 149: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

149

Kierunek: Informatyka

Przedmiot:

Projektowanie aplikacji internetowych i rozproszonych

Internet and Distributed Applications Design

Czas trwania: semestr 1

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład prof. dr hab. inż. Mieczysław

Kłopotek 30 egzamin

6

Laboratorium mgr Mariusz Kujawiak 30 zaliczenie na

ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Matematyka dyskretna

Technologie aplikacji internetowych

Inżynieria oprogramowania

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Celem głównym wykładu jest zapoznanie z podstawowymi pojęciami i metodami

projektowania aplikacji internetowych oraz rozproszonych, a takze problemami

merytorycznymi związanymi z praktycznym wykorzystaniem sieci Internet jako medium

integrującego rozproszone komponenty aplikacji oraz jako środowisko interakcji z

użytkownikami. Rozwiniętymi celami szczegółowymi są:

Projektowanie i implementacja serwisów internetowych takich jak aukcje, sklepy

internetowe i serwery reklam

projektowania standardowych komponentów serwisów: customer relationship

management, rozproszone bazy danych, wyszukiwarki internetowe, problemy

bezpieczeństwa i płatności w Internecie, systemy gridowe

projektowanie aplikacji rozporoszonych typu sieci sensorowej.

Page 150: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

150

Celem laboratorium jest nabycie umiejętności projektowania aplikacji rozproszonych w

oparciu o technologie MVC (Model-View-Controller). Cele szczegółowe laboratorium

obejmują następujące umiejętności praktyczne:

Poznanie środowiska programistycznego J2EE

Projektowanie modelu danych dla aukcji, sklepu i serwera reklam,

Projektowanie logiki sterowania dla aukcji, sklepu i serwera reklam,

Projektowanie interfejsu użytkownika dla aukcji, sklepu i serwera reklam.

WYKŁAD

1. Wprowadzenie

pojęcie aplikacji internetowej / rozproszonej

fazy tworzenia aplikacji internetowej / rozproszonej

ogólne wytyczne tworzenia aplikacji internetowej / rozproszonej

2. Aukcja internetowa

historia aukcji internetowych

typy aukcji

wymagania stawiane aukcjom

projektowanie aukcji internetowych

3. Sklep internetowy

znaczenie handlu elektronicznego

wymagania stawiane sklepom internetowym

4. Serwer reklam

pojecie ad-serwera

klasy ad-serwerów

5. Customer Relations Management - rekomendacje

typy systemów rekomendujacych

metody rekomendacji

6. Wyszukiwarki - roboty i analiza

struktura wyszukiwarki

zadania robota internetowego

zadania systemu analizy

7. Wyszukiwarki - indeksowanie i wyszukiwanie informacji

zadania indeksera

kryteria i metody wyszukiwania informacji

Page 151: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

151

8. Analiza linków w sieci WWW i jej zastosowanie w tworzeniu

Koncepcja

Algorytmy HITS, PageRank itp.

9. Kryptografia w aplikacjach internetowych

pojęcie pieniądza elektronicznego

rodzaje płatności elektronicznych

10. Rozproszone bazy danych

Wprowadzenie do systemów rozproszonych

Pojęcia związane z rozproszeniem

11. Architektury a przetwarzanie w rozproszonych bazach danych oraz zarządzanie

metadanymi w systemach rozproszonych

Architektury rozproszonych baz danych

Replikacje

12. Rekonfigurowalne systemy obliczeniowe a wymiana informacji między aplikacjami

pojęcie gridu

znaczenie gridów i wymogi technologiczne

13. Bezprzewodowe sieci inteligentnych czujników

Idea bezprzewodowych sieci inteligentnych czujników

zastosowania

podstawowe oprogramowanie

14. Bezprzewodowe sieci inteligentnych czujników cz.2

zadania sensorowych systemów baz danych

języki zapytań do sieci sensorów - składnia i przykłady

15. Drążenie strumieni danych

Analiza strumieni danych - zastosowania i wyzwania technologiczne

Metody i algorytmy

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

Page 152: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

152

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Rozproszone aplikacje - Interfejsy WWW dla aplikacji

(gra w kółko i krzyżyk, statki, warcaby, szachy, w tysiąca, brydż, młynek)

Interfejs tekstowy

2. Rozproszone aplikacje - Interfejsy WWW dla aplikacji

interfejs graficzny

rozproszone testy

3. Aukcja internetowa - Baza danych

Rodzaje implementowanych aukcji: Angielska, Holenderska, Amerykańska,

Oczekiwania poza bazowa funkcjonalnoscią: ranking sprzedających i kupujących,

4. Aukcja internetowa - interfejs

Projektowanie mapy serwisu

Projektowanie indywidualnych stron

5. Aukcja internetowa - logika biznesowa

Obsługa przebiegu aukcji

Obsługa przygotowania aukcji oraz jej zakończenia

6. Aukcja internetowa - niezależne testy

Testy funkcjonalności

Testy obciążeniowe

7. Sklep internetowy - Baza danych

Przykładowe rodzaje sklepów: księgarnia, komis samochodowy, sklep z płytami

audio/video, sklep z ubraniami, sklep jubilerski ....

Oczekiwania poza bazowa funkcjonalnoscią: Zintegrowana wyszukiwarka

(wyszukiwarka oparta o system BEATCA, który studenci otrzymają na laboratorium),

system rekomendacji

8. Sklep internetowy , interfejs

Projektowanie mapy serwisu

Projektowanie indywidualnych stron

Page 153: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

153

9. Sklep internetowy , logika biznesowa

Obsługa katalogu towarów

Obsługa koszyka zamówień

10. Sklep internetowy niezależne testy

Test scenariusza prezentacji

Testy funkcjonalności

11. Serwer reklam - Baza danych,

Oczekiwania poza bazowa funkcjonalnością: rejestracja click-streamów, klasteryzacja

reklam, klasyfikacja reklam, płatność elektroniczna

12. Serwer reklam interfejs,

Projektowanie mapy serwisu

Projektowanie indywidualnych stron

13. Serwer reklam, logika biznesowa

Obsługa definicji kampanii reklamowej

Zarządzanie stronami (sitami) reklamowymi

14. Serwer reklam, logika biznesowa cz. 2

Automatyczny dobór stron (sitów) do treści reklamy na bazie treści

Automatyczny dobór stron (sitów) do treści reklamy na bazie statystyk

15. Serwer reklam niezależne testy

Test scenariusza prezentacji

Testy funkcjonalności

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 14 zajęć może uzyskać od 0 do 140 pkt.

Page 154: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

154

Temat i zakres projektu indywidualnego student otrzymuje najpóźniej na trzecim zajęciu. Za

projekt może on otrzymać ocenę punktową mieszczącą się w zakresie 0 - 60 pkt. Zaliczenie

projektu następuje po uzyskaniu co najmniej 31 pkt. i jest możliwe najpóźniej na ostatnich

zajęciach. Jest ono także warunkiem koniecznym do uzyskania zaliczenia ćwiczeń

laboratoryjnych.

Łączna ocena punktowa zajęć laboratoryjnych jest sumą punktów uzyskanych za

poszczególne zajęcia oraz za indywidualny projekt i zawiera się w granicach 0-200 pkt.

Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg

skali ECTS):

Zakres Ocena Zakres Ocena

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. M.Kłopotek: Inteligentne wyszukiwarki internetowe. EXIT 2001

2. P.Cichosz: Systemy uczące się, WNT

3. K. Subieta: Objektowe jezyki baz danych

4. J2EE. Wzorce projektowe. Wydanie 2 Autorzy: Deepak Alur, John Crupi, Dan Malks

Tłumaczenie: Rafał Jonca ISBN: 83-7361-344-7 Tytuł oryginału: Core J2EE

Patterns.Best Practices and Design 2nd Edition Format: B5, stron: 536 Data wydania:

02/2004

5. J2EE. Stosowanie wzorców projektowych Autorzy: William Crawford, Jonathan

Kaplan Tłumaczenie: Jaromir Senczyk ISBN: 83-7361-428-1 Tytuł oryginału: J2EE

Design Patterns Format: B5, stron: 392 Data wydania: 04/2004

6. Architektura informacji w serwisach internetowych Autorzy: Louis Rosenfeld, Peter

Morville Tłumaczenie: Krzysztof Masłowski, Tomasz Jarzebowicz ISBN: 83-7361-

003-0 Tytuł oryginału: Information Architecture for the World Wide Web Format: B5,

stron: 504 Data wydania: 09/2003

7. J. P.Mueller: Poznaj SOAP. ISBN: 83-7279-229-1. Wydawnictwo: Mikom. 512 s.,

2006

8. E. Roman, S. W. Ambler, T. Jewell: ”Enterprise JavaBeans”, Wydawnictwo Helion

S.A. 2003,

Page 155: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

155

Kierunek: Informatyka

Przedmiot:

Multimedialne i obiektowe bazy danych

Multimedia and Object-Oriented Databases

Czas trwania: semestr 1

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr hab. Andrzej Wiśniewski 21 egzamin 6

Laboratorium mgr Dariusz Zacharczuk 24 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Programowanie obiektowe

Systemy baz danych (Relacyjne bazy danych),

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Celem podstawowym wykładów jest przedstawienie zasad funkcjonowania systemów

multimedialnych i obiektowych baz danych, porównanie ze strukturą relacyjnych baz danych

oraz zapoznanie z podstawami projektowania relacyjno-obiektowych i obiektowych baz

danych.

Celem zajęć w laboratorium jest nabycie i opanowanie praktycznych umiejętności w

rozwiązywaniu problemów prezentowanych w czasie wykładu, a także opanowaniu

umiejętności w zakresie budowy obiektowych baz danych.

WYKŁAD

1. Wprowadzenie do problematyki modeli danych oraz systemów multimedialnych i

obiektowych baz danych:

podstawowe definicje,

architektury systemów multimedialnych bd,

modele danych dla baz multimedialnych,

2. Charakterystyka standardu obiektowych baz danych ODMG v. 3.0:

Page 156: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

156

historia rozwoju standardu,

cele, zakres standaryzacji,

model obiektów OMG

Standard ODMG a technologia systemu rozproszonego CORBA

3. Podstawy obiektowości w architekturze obiektowo-relacyjnej (na przykładzie

Oracle9i):

typy obiektowe (specyfikacja, implementacja),

deklarowanie obiektu i jego inicjalizacja,

komponenty typu obiektowego,

rodzaje dziedziczenia,

4. Operacje na obiektach:

dostęp do atrybutów i metod,

wywoływanie konstruktorów.

tworzenie obiektów kolumnowych i wierszowych.

tworzenie powiązań między obiektami opartych na współdzieleniu i zagnieżdżeniu,

perspektywy obiektowe

5. Kolekcje jako forma związków obiektu jeden do wielu:

budowa tabel zagnieżdżonych oraz tworzenie bazy danych opartych na tych tabelach.

manipulowanie tabelą zagnieżdżoną.

budowa bazy danych z wykorzystaniem tablic o zmiennym rozmiarze.

metody kolekcji,

6. Funkcje i konstrukcje wyzwalaczy:

funkcje, rodzaje, kolejność uruchamiania wyzwalaczy.

tworzenie wyzwalaczy.

zmienne dowiązane w strukturze wyzwalacza.

zagadnienia tabeli mutującej oraz tabel wiążących

7. Pakiety i obiekty LOB:

funkcje i zalety stosowania pakietów w bazie danych (Oracle9i).

deklaracja pakietu (specyfikacja, implementacja).

specyfikacja typów LOB w schemacie tabeli

obiekty typu BFILE, katalogi, ploki BFILE w instrukcjach DML,

zasady manipulowania typem BFILE - pakiet DBMS LOB,

8. Obiektowo Zorientowane Bazy Danych: Objectivity/DB

charakterystyka Objectivity/DB

Elementy architektury systemu

Tworzenie bazy danych i połączeń

9. Składowanie i charakterystyka danych multimedialnych

Page 157: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

157

Metody i struktury składowania

Zagadnienia prezentacji danych

Charakterystyka danych: obrazy, audio, wideo

10. Standardy SQL/MM, MPEG-7. Eksploracja i obsługa danych multimedialnych

Geneza i rozwój standardu SQL/MM

Typy danych SQL/MM: FullText, Spatial, Still Image,

Wprowadzenie do standardu MPEG-7

Pakiet SQL/MM Data Mining

Oracle interMedia

11. Podsumowanie

Podstawowe zasady i ograniczenia projektowania obiektowo-relacyjnych i

obiektowych baz danych

Przykład projektu prostej obiektowo-relacyjnej bazy danych

Przykład projektu modyfikacji opracowanych schematów i typów obiektowych

Przykład projektu prostej multimedialnej bazy danych

Perspektywy rozwoju multimedialnych i obiektowych baz danych

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Przekazanie do realizacji tematów projektów multimedialnych/obiektowo-

relacyjnych baz danych. Powtórzenie podstaw SQL

edycja w wierszu poleceń, polecenia describe i column

rodzaje deklaracji SQL: DDL, DML,

polecenie SELECT,

realizacja poleceń DML na tablicy demonstracyjnej (Oracle9i),

2. Typy danych w SQL Oracle9i/10g:

dane liczbowe, znakowe, binarne, daty synonimy, rowid.

operacje na różnych typach danych (hierarchia operatorów, rodzaje operatorów),

funkcje,

transakcje,

Page 158: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

158

3. Schematy i ich obiekty:

warunki zapewnienia integralności danych.

tworzenie i obsługa tabel.

tworzenie i modyfikowanie indeksy,

tworzenie i modyfikowanie sekwencje,

tworzenie i modyfikowanie perspektywy,

4. Budowa typu obiektowego w strukturze Oracle9i/10g

specyfikacja typu i implementacja.

deklaracja metod

deklaracja i inicjalizacja obiektów

modele dziedziczenia,

5. Operacje na obiektach

wywoływanie metod (funkcji , procedur) deklarowanych i definiowanych w

schemacie typu obiektowego.

tworzenie obiektów wierszowych i kolumnowych.

zagadnienia manipulacji wymienionymi rodzajami obiektów.

budowa powiązań między obiektami,

6. Kolekcje:

tworzenie baz danych z wykorzystaniem tabel zagnieżdżonych oraz tablic o

zmiennym rozmiarze.

wykorzystanie metod kolekcji do manipulacji

7. Perspektywy obiektowe:

tworzenie perspektyw obiektowych.

zagadnienia manipulacji perspektywami obiektowymi.

tworzenie wyzwalaczy do perspektyw obiektowych,

8. Wyzwalacze:

budowa wyzwalaczy dla realizacji m.in. funkcji automatycznej aktualizacji.

zagadnienia tabeli mutującej

rozwiązanie problemu wyzwalaczy operujących równocześnie na poziomie instrukcji i

na poziomie wiersza,

9. Pakiety:

budowa pakietów.

tworzenie pakietów w celu wspólnego grupowania obiektów skojarzonych,

zwiększenia wydajności pracy aplikacji.

inicjalizacja pakietu,

10. Obiekty o dużych rozmiarach LOB:

Page 159: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

159

budowa tabeli z wykorzystaniem różnych rodzajów typów LOB.

inicjalizacja LOB.

obiekty typu BFILE, tworzenie katalogów dla plików zewnętrznych.

zastosowanie metod pakietu DBMS LOB,

11. Kompresja plików graficznych, audio oraz wideo

Kompresja formatów graficznych m.in. GIF, TIFF, JPEG, PNG

Kompresje plików audio: MPEG-1 Layer III

Metody kodowania plików wideo: MPEG1, MPEG2, MPEG4

12. Obsługa danych multimedialnych

obsługa typów danych ORDAudio, ORDImage, ORDVideo,

zapytania o zawartości obrazów (ORDImageSignature)

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 11 zajęć może uzyskać od 0 do 110 pkt.

Łączna ocena punktowa zajęć laboratoryjnych zawiera się w granicach 0-110 pkt. Ocena

końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg skali

ECTS):

Zakres Ocena Zakres Ocena

0-55 pkt. ndst (F) 78-88 pkt. db (C)

56-66 pkt. dst (E) 89-99 pkt. db+ (B)

67-77 pkt. dst+ (D) 100-110 pkt. bdb (A)

LITERATURA

1. Date, C. J., Wprowadzenie do baz danych, Warszawa 1981,

2. Ullman, J. D., Systemy baz danych, Warszawa 1988,

3. Lausen G., Vossen G., Obiektowe bazy danych, Warszawa 1998,

4. Muller R.J., Bazy danych. Język UML w modelowaniu danych, Warszawa 2000,

5. Loney, K., Oracle Database 10g. Kompedium administratora, Gliwice 2005,

6. H. Garcia-Molina,H, Ullman,J.D., Widom, J., Systemy baz danych. Pełny wykład,

Warszawa 2006

7. Elmasri, R., Navathe, Sh. B., Wprowadzenie do baz danych, Gliwice 2005.

Page 160: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

160

Kierunek: Informatyka

Przedmiot:

Analiza i eksploracja danych

Data Mining

Czas trwania: semestr 2

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr Anna Kołkowicz 30 egzamin 6

Laboratorium dr Anna Kołkowicz 30 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Metody probabilistyczne i statystyka

Sztuczna inteligencja

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Celem głównym przedmiotu "Analiza i eksploracja danych" jest przedstawienie istoty

wydobywania wiedzy z danych i metodologii prowadzenia analizy i eksploracji danych .

Rozwiniętymi celami szczegółowymi są:

sposoby reprezentacji wiedzy,

techniki eksploracji danych,

systemy umożliwiających eksplorację danych

praktyczne zastosowania metod eksploracji danych

Celem laboratorium jest nabycie umiejętności obsługi systemu ORACLE DATA MINER w

zakresie wykonywania analiz statystycznych i prowadzenia procesu eksploracji danych. Cele

szczegółowe laboratorium obejmują następujące umiejętności praktyczne:

przygotowanie danych do analizy z wykorzystaniem narzędzi dostępnych w systemie

prowadzenia analizy statystycznej

wykorzystanie Oracle Data Miner do prowadzenia eksploracji danych

Page 161: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

161

WYKŁAD

1. Cel i zakres przedmiotu. Podstawowe zadania w analizie statystycznej i eksploracji

danych

Definicja eksploracji danych

Zadania analizy danych i eksploracji

Przygotowanie danych do analizy

Miejsce eksploracji w procesie wydobywania wiedzy z danych

Różnice pomiędzy analizą sterowana zapytaniami i eksploracją danych

2. Analiza statystyczna

Skale pomiarowe

Miary tendencji centralnej oraz dyspersji

Testy hipotez

3. Statystyczna analiza wielowymiarowa- wprowadzenie

Analiza struktury zbioru obserwacji - prezentacja graficzna

Metody transformacji w przestrzeń dwuwymiarową

4. Wielowymiarowa analiza statystyczna

Analiza głównych składowych

Analiza czynnikowa

Analiza regresji

Korelacja kanoniczna

5. Analiza szeregów czasowych

Trend, wahania cykliczne, wahania sezonowe, wahania przypadkowe

Metoda średniej ruchomej

Wygładzanie szeregu za pomocą funkcji liniowej, kwadratowej

6. Metodologia odkrywania wiedzy z danych

Przygotowanie danych do analizy (próbkowanie, transformacja, filtrowanie,

uzupełnianie brakujących danych)

Tworzenie i dopasowanie modelu danych

Ewaluacja modelu

7. Eksploracja danych

Techniki eksploracji danych

Weryfikacja i wizualizacja wyników w eksploracyjnej analizy danych

Testowanie trafności prognostycznej modelu

8. Wykorzystanie metod indukcyjnych uczenia maszynowego w eksploracji danych.

Modelowanie opisowe - analiza skupień

Page 162: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

162

Odległość i podobieństwo obserwacji wielowymiarowych

Algorytmy grupowania

Metoda k-średnich

Metody aglomeracyjne

9. Wykorzystanie metod indukcyjnych uczenia maszynowego w eksploracji danych.

Modelowanie predykcyjne - drzewa decyzyjne

Poszukiwanie wiedzy klasyfikacyjnej w danych

Budowanie i przycinanie drzew decyzyjnych

Zastosowanie drzew decyzyjnych

10. Modelowanie predykcyjne. Wykorzystanie sztucznych sieci neuronowych w procesie

eksploracji danych

Przygotowanie danych, budowa i trenowanie sieci

Wykorzystanie sieci neuronowych w analizie szeregów czasowych

Mapy samoorganizujące się

Analiza regresji z wykorzystaniem sztucznych sieci neuronowych

11. Odkrywanie wzorców i reguł

Wsparcie, zaufanie

Generowanie reguł

Analiza koszykowa (ang. Market basket analysis)

Wykrywanie praw zmienności w danych marketingowych

12. Wykorzystanie technik eksploracji w analizie danych niestrukturalnych - tekstowych

i obrazowych

Text-mining

Web-mining

Analiza obrazów

13. Wybrane systemy odkrywania wiedzy

Postępy i najnowsze badania w zakresie eksploracji danych

Wykorzystanie pakietu Oracle do eksploracji danych

Wykorzystanie pakietu SAS do eksploracji danych

Możliwości pakietu STATISTICA

Mozliwości pakietu SPSS

Weka, Rapidminer i inne

14. Zastosowanie technik eksploracji

Ekonomia i marketing

Diagnostyka medyczna

Telekomunikacja

Przemysł

Page 163: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

163

15. CRM - wykorzystanie technik eksploracji danych w zarządzaniu klientami

Cele CRM

Operacyjny i analityczny CRM - zadania

Projekty marketingowe

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Poznanie srodowiska pracy. Przygotowanie danych.

Dyskretyzacja danych

Normalizacja danych

2. Analiza struktury

Miary położenia

Miary zmienności

Miary asymetrii, spłaszczenia i koncentracji

SQL

3. Wnioskowanie statystyczne - estymacja i weryfikacja hipotez

Test na trafność dopasowania

Porównywanie pojedynczej średniej z określoną wartością

Porównywanie średnich i wariancji dwóch i więcej prób

SQL

4. Analiza wariancji

Testowanie jednorodności wariancji

Ocena wpływu czynnika klasyfikującego

Analiza wariancji wielorakiej

SQL

5. Analiza korelacji i regresji

Prosta regresja liniowa

Page 164: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

164

Liniowa regresja wieloraka

Predykcja

6. Analiza szeregów czasowych

Wygładzanie szeregu za pomocą średniej ruchomej

Wykładnicze wygładzanie szeregu

Inkorporowanie wahań sezonowych

Środowisko SQL

7. Ekstrakcji cech

algorytm NNMF,

PCA

8. Grupowanie

Przygotowanie danych

Przeprowadzenie grupowania na zbiorze przykładowych danych metodą k-średnich

9. Grupowanie

Przygotowanie danych

Przeprowadzenie grupowania na zbiorze przykładowych danych metodą O-Cluster

10. Klasyfikacja danych z wykorzystaniem drzew decyzyjnych

Wstępne przygotowanie danych

Naiwny klasyfikator Bayesa

11. Klasyfikacja danych z wykorzystaniem drzew decyzyjnych

Wstępne przygotowanie danych

Indukcja drzew decyzyjnych

12. Odkrywanie reguł asocjacyjnych

Generowanie reguł

Odkrywanie sekwencji

13. Odkrywanie osobliwości

Algorytm SVM

Odktywanie outliers w środowisku SQL

Wykorzystanie ODM

14. Eksploracja danych tekstowych

Przetwarzanie tekstu w środowisku SQL

Wykorzystanie ODM do analizy danych tekstowych

Page 165: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

165

15. Inne środowiska do eksploracji danych

Weka

RapidMiner

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia. W przypadku nieobecności studenta na

laboratorium sposób ich odpracowania określa osoba odpowiedzialna za kurs i jest on podany

na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 14 zajęć może uzyskać od 0 do 140 pkt.

Łączna ocena punktowa zajęć laboratoryjnych zawiera się w granicach 0-140 pkt. Ocena

końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg skali

ECTS):

Zakres Ocena Zakres Ocena

0-70 pkt. ndst (F) 99-112 pkt. db (C)

71-84 pkt. dst (E) 113-126 pkt. db+ (B)

85-98 pkt. dst+ (D) 127-140 pkt. bdb (A)

LITERATURA

1. Daniel T.Larose, Odkrywanie wiedzy z danych. Wprowadzenie do eksploracji danych,

PWN, Warszawa 2006

2. Daniel T.Larose, Metody i modele eksploracji danych, PWN, Warszawa 2008

3. Zdravko Markov, Daniel T.Larose, Eksploracja zasobów internetowych. Analiza

struktury, zawartości i użytkowania sieci WWW, PWN, Warszawa 2009

4. D.Hand, H.Mannila, P.Smyth, Eksploracja danych, WNT, 2005.

5. P.Cichosz, Systemy uczące się, WNT, Warszawa, 2000

6. K. Jajuga, Statystyczna analiza wielowymiarowa, PWN, Warszawa 1993

7. R.P.Trueblood, J.N.Lovet, jr. , Zastosowanie jezyka SQL do analizy statystycznej i

aksploracji danych, Mikom, Warszawa 2002

8. Metody Data Mining w analizowaniu i prognozowaniu kondycji ekonomicznej

przedsiębiorstw. Zastosowania SAS Enterprise Miner, Difin, Warszawa 2007

9. S.Brandt, Analiza danych, WN PWN, Warszawa 2002

10. M.J.A.Berry, G.Linoff, Data mining techniques for marketing, sales and customer

support, John Wiley & Sons, Inc., 1997

11. M.Lasek, Data mining. Zastosowania w analizach i ocenach klientów bankowych.

Biblioteka Menedżera i Bankowca, Warszawa 2002

Page 166: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

166

12. M.Morzy, Oracle Data Mining – odkrywanie wiedzy w dużych wolumenach danych,

XI Konferencja PLOUG, Kościelisko, Październik 2005

http://www.ploug.org.pl/konf_05/materialy/pdf/05.pdf

13. K.Kawa, Zastosowanie reguł asocjacyjnych, pakietu Oracle Data Mining for Java do

analizy koszyka zakupów w aplikacjach

e-commerce. Integracja ze środowiskiem Oracle JDeveloper, XI Konferencja PLOUG,

Kościelisko, Październik 2005 http://www.ploug.org.pl/konf_05/materialy/pdf/18.pdf

14. http://wazniak.mimuw.edu.pl/index.php?title=Eksploracja_danych

15. An introduction to data mining http://www.thearling.com/text/dmwhite/dmwhite.htm

16. A.Berson, S.Smith, K.Therling, An overview of data mining techniques, in Building

data mining applications for CRM ewline

http://www.thearling.com/text/dmtechniques/dmtechniques.htm

17. K.Thearling, B.Becker, D.DeCoste, B.Mawby, M.Pilote, D.Sommerfield , Visualizing

data maining models, in Information vizualization in data mining and knowledge

discovery, 2001, ewline http://www.thearling.com/text/dmviz/modelviz.htm

Page 167: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

167

Kierunek: Informatyka

Przedmiot:

Hurtownie danych

Data warehouses

Czas trwania: semestr 3

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład prof. dr hab. inż. Andrzej Barczak 30 egzamin 6

Laboratorium mgr Krzysztof Pietraszek 30 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Bazy danych

Systemy baz danych

Systemy informatyczne zarządzania

Technologie programistyczne - systemy internetowe

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Zasadniczym celem wykładu ”Hurtownie danych” jest wprowadzenie do problematyki

hurtowni danych zarówno w zakresie podstaw teoretycznych, jak i praktyki ich projektowania

przy użyciu zaawansowanych aplikacji (systemów).

Rozwiniętymi celami szczegółowymi są:

zapoznanie z technologiami, architektura i infrastruktura hurtowni danych,

zapoznanie z cyklem życia i uwarunkowaniami projektowo-programowymi hurtowni

danych,

zapoznanie z procesem integracji i agregacji danych,

zapoznanie z funkcjonalnością i użytecznością systemu SAS jako środowiska

hurtowni danych.

Podstawowym celem zajęć laboratoryjnych jest uzyskanie praktycznych umiejętności

posługiwania sie zestawem narzędziowym do tworzenia i administrowania hurtowni danych

firmy SAS, w tym w szczególnosci - SAS Warehause Administrator, a także narzędziami do

tworzenia i administrowania hurtownia danych ORACLE. Układ zajęć laboratoryjnych został

Page 168: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

168

zaprojektowany w taki sposób, aby poznawane kolejno elementy oprogramowania

umożliwiały ich wykorzystanie w procesie projektowania hurtowni danych. Zaliczeniu

podlega zarówno znajomość narzędzi oraz ich wykorzystania, jak i procedury projektowania

hurtowni danych.

WYKŁAD

1. Pojęcia i technologie

przetwarzanie analityczne a operacyjne

system wspomagania podejmowania decyzji

hurtownia danych

tematyczna hurtownia danych,

środowisko dostepu do danych,

architektura

2. Pojęcia i technologie

infrastruktury techniczne

dane źródłowe i docelowe

poziomy użytkowników

klasy narzędzi - systemy MOLAP, ROLAP, HOLAP

integracja danych

synonimy, homonimy, analogie

3. Pojęcia i technologie

transformacja danych

narzędzia konwersji danych

narzędzia programowo-sprzętowe

metadane

układ gwiaździsty

hierarchie, ziarnistość

łącze bazodanowe;

4. Architektura i infrastruktury

charakterystyka architektury hurtowni danych

rozszerzanie ogólnej architektury hurtowni danych

związki między infrastrukturami a architektura

architektura i infrastruktury jako różne przedsięwziecia

wyróżniki hurtowni danych,

typowe zastosowania;

5. Cykl życia DSS - hurtowni danych

planowanie

zbieranie wymagań na dane oraz modelowanie

fizyczny projekt i rozwój bazy danych

pozyskiwanie, integracja i odwzorowywanie danych

Page 169: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

169

zapełnianie hurtowni danych

6. Cykl życia DSS - hurtowni danych

automatyzowanie procesu ładowania danych

stworzenie poczatkowego zbioru raportów

kontrola poprawności i testowanie danych

uruchamianie hurtowni

7. Uwarunkowania projektowania hurtowni danych

waga projektu wstępnego

wybór obszaru działalnosci przedsiębiorstwa dla hurtowni danych

kluczowe czynniki warunkujace wdrożenie i wykorzystanie hurtowni danych

wymogi i warunki realizacji udanej hurtowni danych;

8. Specyfikacja wymagań względem danych

rozmowy z użytkownikami

zestrajanie wymagań

tworzenie modelu danych

logiczny model danych

9. Integracja danych

kroki integracji danych

architektura danych

metadaneproces integracji danych

pozyskiwanie danych

10. Integracja danych

konsolidacja danych

proces konsolidacji danych

dodatkowe analizy na potrzeby konsolidacji danych,

konwersja danych

przenoszenie danych

11. Projektowanie bazy danych dla hurtowni danych

bazy danych wspomagające podejmowanie decyzji

bazy danych o schemacie gwiaździstym

rodzaje schematów gwiaździstych

agregacja

denormalizacja

ograniczenia schematu gwiaździstego

12. Dostęp do danych

znaczenie dostępu do danych

Page 170: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

170

rodzaje dostępu do danych

poziomy użytkowników

charakterystyczne cechy dostępu do danych

13. Dostęp do danych

klasy narzędzi

systemy zarządzania wielowymiarowymi bazami danych (MDBMS)

zaawansowane narzędzia DSS

architektury warstwowe

wybór narzędzi dla firmy

14. Metadane

metadane a zarządzanie zmianami

metadane i administracja danymi

katalog metadanych

zarządzanie zmianami

rzeczywistość zarządzania metadanymi w przedsiębiorstwach

metadane do integracji danych

metadane do transformacji danych

15. Analiza porównawcza narzędzi projektowania hurtowni danych

kryteria oceny narzędzi

architektura produktu i jej funkcjonalność

wydajność i skalowalność

dostępność i funkcjonalność interfejsu

prezentacja wyników

środowisko systemowe i administracja

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Środowisko pracy SAS.

Interfejs aplikacji

Tworzenie bibliotek

Page 171: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

171

Przeglądanie i edycja tabel

Podstawowe narzędzia importu i eksportu danych.

Proste raporty

Podstawowe analizy statystyczne.

2. Projekt hurtowni danych. Schemat przykładowej hurtowni:

Określenie celu tworzenia hurtowni - jakie informacje chcemy uzyskać

Okreslenie struktury fizycznej i modelu logicznego

Opisanie tabel bazowych

Wymiary tabel

Opis danych.

3. Tworzenie tabel bazy danych na podstawie projektu.

Import danych

Edycja tabel za pomoca dostępnych narzędzi

Tworzenie tabel za pomoca skryptów 4GL i SQL

4. Wielowymiarowa baza danych - techniki MOLAP.

Tworzenie tabel w postaci kostek wielowymiarowych MDDB

Programowanie SAS data step

Korzystanie z PROC MDDB

Wykorzystanie narzędzi EIS do utworzenia prostej aplikacji

5. Analizy danych techniki HOLAP

Wykonanie wirtualnej kostki MDDB (kostki ”proxy”)

Edycja kostki wirtualnej przy pomocy narzędzia mdmddb.

Eksport kostki wirtualnej do metabazy EIS

Prosta prezentacja danych w EIS

6. Analiza danych w technice HOLAP.

Zastosowanie funkcji statystycznych modułu SAS/STAT

Tworzenie wielowymiarowych wykresów

Tworzenie aplikacji prezentujacej wyniki

7. SAS Warehouse Administrator - wstęp

Zadania i możliwości Warehouse Administratora

Zasady pracy z Warehouse Administratorem

Prześledzenie przykładowej bazy.

8. Praca z SAS Warehouse Administrator

Definiowanie użytkowników hurtowni,

Definiowanie struktur danych operacyjnych zasilajacych hurtownie.

Transfer danych do hurtowni

Page 172: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

172

9. Praca z SAS Warehouse Administrator

Dodawanie grup OLAP

Dodawanie tabel OLAP

Dodawanie MDDB

10. Rozwijanie hurtowni

Definiowanie nowych zadań hurtowni

Rozwijanie struktury metadanych

Transfer danych do hurtowni

Tworzenie nowej grupy HOLAP

11. Tworzenie nakładek/aplikacji informacyjnych

Eksport metadanych do SAS EIS

Ustawianie atrybutów tabel w EIS

Tworzenie wielowymiarowych raportów

12. Użycie modułu SAS/EIS, AF we współpracy z Warehouse Administrator

Tworzenie wielowymiarowych raportów graficznych z elementów EIS

Tworzenie aplikacji informacyjnych w SAS/AF z użyciem elementów EIS

Tworzenie aplikacji z uzyciem jezyka SCL

13. Udostępnianie informacji przez internet

Moduł SAS/IntrNet

Udostępnianie danych z hurtowni na stronach www

14. Narzędzia hurtowni danych ORACLE

Oracle Discoverer Administrator - przygotowanie do pracy

ORACLE DA przegląd komponentów - foldery, elementy, złączenia, formuły,

warunki, hierarchie.

Oracle Discoverer Desktop - łączenie, formatowanie danych

15. Prezentacja projektu. Zaliczenie przedmiotu

prezentacja wyników prac zespołów

dyskusja i ocena projektów

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Page 173: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

173

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 14 zajęć może uzyskać od 0 do 140 pkt.

Temat i zakres projektu indywidualnego student otrzymuje najpóźniej na trzecim zajęciu. Za

projekt może on otrzymać ocenę punktową mieszczącą się w zakresie 0 - 60 pkt. Zaliczenie

projektu następuje po uzyskaniu co najmniej 31 pkt. i jest możliwe najpóźniej na ostatnich

zajęciach. Jest ono także warunkiem koniecznym do uzyskania zaliczenia ćwiczeń

laboratoryjnych.

Łączna ocena punktowa zajęć laboratoryjnych jest sumą punktów uzyskanych za

poszczególne zajęcia oraz za indywidualny projekt i zawiera się w granicach 0-200 pkt.

Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg

skali ECTS):

Zakres Ocena Zakres Ocena

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. Barquin R.C.; Planning and designing the date Warehause; Prentice Hall, 1997.

2. Building a Date Warehause Using SAS/Warehause Administrator Software;

Wydawnictwo SAS Institute; 2001

3. Dec Z.; Wprowadzenie do systemu SAS Wydawnictwo Edition; 2000

4. Dokumentacja systemu SAS - OnLineDoc

5. Poe V.; Tworzenie hurtowni danych; Wydawnictwa Naukowo Techniczne, 2000

6. SAS/Warehouse Administrator. User’s Guide; SAS Inst. 1998

7. Simon A.R., Shaffer S.L.; Hurtownie danych i systemy informacji gospodarczej.

Zastosowanie w handlu elektronicznym; Wydawnictwo Dom Wydawniczy ABC,

2003

8. Allen S.; Modelowanie danych; Wydawnictwo Helion, 2006

9. SAS Language. Wyd. SAS Inst., Warszawa 1998.

10. Zwierz U.; Wstep do systemu SAS wersja 8.1.; Wyd. SGH,Warszawa 2001.

11. Jarke M., Lenzerini M., Vassiliou Y.; Hurtownie danych - podstawy organizacji i

funkcjonowania, Wydawnictwa Szkolne i Pedagogiczne, 2003

12. Lane P., Schupmann V., Stuart I.; Oracle Database Data Warehousing Guide, 10g

(10.1); Oracle Corporation, 2001, 2003

13. Wrembel R., Koncilia Ch.; Data Warehouses and OLAP: Concepts, Architectures and

Solutions; IRM Press, 2007

Page 174: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

174

Kierunek: Informatyka

Przedmiot:

Administrowanie systemami baz danych

Database Systems Administration

Czas trwania: semestr 3

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład prof. dr hab. inż. Andrzej Barczak 21 egzamin

6 Laboratorium

mgr Michał Wolski

mgr Dariusz Zacharczuk 24 zaliczenie na ocenę

POZIOM

Warunkiem uczestnictwa w zajęciach jest wcześniejsze uzyskanie zaliczenia z następujących

przedmiotów:

Bazy danych

Rozproszone bazy danych

Systemy baz danych

Systemy operacyjne

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Zasadniczym celem wykładu "Administrowanie baz danych" jest wprowadzenie do

problematyki administrowania złożonymi sieciowymi systemami baz danych,

funkcjonującymi w środowisku WWW i architekturze klient-serwer. Rozwiniętymi celami

szczegółowymi są:

zapoznanie z procesami zarządzania tworzenia aplikacji i segmentami wycofywania,

zapoznanie z procedurami strojenia bazy danych i wykonywania kopii zapasowych

oraz odtwarzania danych,

zapoznanie z zarządzaniem bazą danych w środowisku rozproszonym,

zapoznanie z konfigurowaniem architektury klient-serwer w środowisku WWW.

Podstawowym celem zajęć laboratoryjnych jest pozyskanie praktycznych umiejętności w

zakresie zarządzania systemem bazodanowym na przykładzie rozwiązań firmy ORACLE.

Zakres treści realizowanych na laboratorium przewiduje zapoznanie się narzędziami

Enterprise Manager, Database Configuration Assistant, Recovery Manager, Net Manager,

Page 175: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

175

tworzenie, modyfikację i usuwania podstawowych obiektów bazy danych, optymalizowanie i

dostrajanie bazy danych oraz tworzenie kopii bezpieczeństwa.

WYKŁAD

1. Administrator bazy danych

sposoby porozumiewania się z bazą danych

typy administratorów baz danych

zadania administratora baz danych

zarządzanie bazami danych

warsztat archiwizacji i odtwarzania baz danych

warsztat dostrajania baz danych

2. Zarządzanie bazą danych

proces zarządzania

technologie

zarządzanie pakietami

zarządzanie środowiskiem

3. Monitorowanie baz danych

identyfikacja problemu i celu monitorowania

projekt i realizacja monitorującej bazy danych

monitorowanie struktur pamięci

4. Zarządzanie segmentami wycofania

typy segmentów wycofania

wykorzystanie przestrzeni wewnątrz segmentu wycofania

monitorowanie wykorzystania segmentu wycofania

wykorzystanie pakietu OEM (Oracle Enterprise Manager) do zarządzania segmentami

wycofania

określanie listy i segmentów wycofania

aplikacje OLTP (online transaction processing)

5. Strojenie bazy danych

strojenie projektu aplikacji

strojenie kodu SQL

strojenie wykorzystania pamięci i strojenie pamięci danych

manipulacja danymi strojenia

strojenie pamięci fizycznej i logicznej

redukowanie ruchu w sieci

pakiety strojenia wydajności

6. Zarządzanie bezpieczeństwem bazy danych

rodzaje zabezpieczeń

Page 176: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

176

wdrażanie zabezpieczeń

ograniczanie dostępnych poleceń

zabezpieczanie i szyfrowanie hasła

obserwacja logowania, działań i obiektów

ochrona zapisu obserwacji

zabezpieczanie w środowisku rozproszonym

7. Optymalizacja procedur wykonywania kopii zapasowych i odtwarzania danych

logiczne i fizyczne kopie zapasowe

programy narzędziowe Eksport i Import

kopie zapasowe zamkniętych plików danych

kopie zapasowe otwartych plików danych

bazy danych typu - stand by

integracja procedur wykonywania kopii zapasowych

scenariusze odtwarzania dla procedur wykonywania kopii zapasowych

8. Zarządzanie dużymi bazami danych

zarządzanie transakcjami

kopie zapasowe

strojenie

przenośne przestrzenie tabel

przestrzenie tabel zarządzane lokalnie

9. Administrowanie bazą danych w sieci

deskryptory połączeń, opisy połączeń

procesy nasłuchujące, uruchamianie nasłuchującego procesu serwera

sterowanie nasłuchującym procesem serwera

identyfikacja hosta, identyfikacja bazy danych

identyfikacja usług

monitorowanie i identyfikowanie problemów połączeniowych

10. Zarządzanie rozproszonymi bazami danych

zapytania zdalne

replikacja danych dynamicznych

zarządzanie danymi rozproszonymi i transakcjami rozproszonymi

domeny i wspólnoty baz danych

strojenie rozproszonych baz danych

monitorowanie rozproszonych baz danych

zarządzanie zadaniami rozproszonych baz danych

11. Konfigurowanie architektury Klient-Serwer oraz środowiska WWW

architektura klient-serwer

konfiguracja serwera

konfiguracja klienta

warstwa pośrednia - serwer aplikacji

Page 177: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

177

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Zapoznanie z aplikacjami do administrowania bazą danych ORACLE

przegląd funkcji Oracle Enterprise Manager

łączenie z bazą danych, parametry połączenia

przegląd obiektów bazy danych ORACLE - odczyt szczegółowych własności

2. Użytkownicy i role

typy i rodzaje użytkowników, typy przywilejów, metody autoryzacji

tworzenie, usuwanie użytkownika, przydział przywilejów, tworzenie profili i limitów

tworzenie, usuwanie, zamiana przywilejów dla ról, przydział ról użytkownikom

3. Tworzenie bazy danych

korzystanie z narzędzia Database Configuration Assistant

parametry inicjalizacyjne, tworzenie pliku inicjalizacyjnego

uruchamianie i zatrzymywanie bazy danych, tryby normal, immediate, transactional i

abort

4. Zarządzanie przestrzeniami tabel

tworzenie przestrzeni tabel i ustalanie parametrów

rodzaje przestrzeni tabel - lokalne, słownikowe tymczasowe, zastosowania

pliki fizyczne, ograniczenia rozmiaru, quota i autoextension

5. Zarządzanie segmentami wycofania

prywatne i publiczne segmenty wycofania

parametry segmentów wycofania, włączanie i wyłączanie segmentów wycofania

jawne przypisywanie transakcji do segmentów wycofania

6. Zarządzanie tabelami i indeksami

określanie rozmiaru - parametry PCTFREE, FREELISTS, umiejscowienie tabel

zmiana parametrów tabeli online i offline, przenoszenie tabel

Page 178: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

178

tworzenie indeksów i kontrola ich parametrów

7. Zarządzanie zdarzeniami

tworzenie i modyfikacja zestawów zdarzeń

rejestracja zestawów zdarzeń

powiadamianie o zaistnieniu zdarzenia

8. Monitorowanie stanu bazy danych

aktywne procesy bazy danych, lista sesji, użycie zasobów

zarządzanie sesjami - identyfikacja sesji, przerywanie sesji

9. Kolejkowanie zadań i mechanizmy inspekcji

zarządzanie kolejkami, atrybuty kolejkowania, parametry konfiguracyjne kolejek

włączanie i wyłączanie mechanizmu inspekcji, zapis śladu inspekcji na dysk

10. Zarządzanie warstwą sieciową bazy danych

metody nazewnictwa, protokoły transmisji, porty

konfiguracja lokalna tnsnames i testowanie połączeń

konfiguracja i zarządzanie listenerem

11. Archiwizacja bazy danych

metody archiwizacji kompletna, przyrostowa, kumulacyjna

odtwarzanie bazy danych, Recovery Manager

tworzenie bazy rezerwowej

12. Przegląd perspektyw systemowych bazy danych

perspektywy słownika danych, dotyczących użytkowników, danych logicznych

użycie perspektyw V$ do dostrajania bazy danych

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 11 zajęć może uzyskać od 0 do 110 pkt.

Page 179: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

179

Łączna ocena punktowa zajęć laboratoryjnych zawiera się w granicach 0-110 pkt. Ocena

końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg skali

ECTS):

Zakres Ocena Zakres Ocena

0-55 pkt. ndst (F) 78-88 pkt. db (C)

56-66 pkt. dst (E) 89-99 pkt. db+ (B)

67-77 pkt. dst+ (D) 100-110 pkt. bdb (A)

LITERATURA

1. Dokumentacja ORACLE: Administrator's Guide, Administrator's Guide for Windows,

Advanced Security Administrator's Guide, Advanced Replication, Application

Developer's Guide - Fundamentals

2. Rodgers U.; ORACLE - przewodnik projektanta baz danych. WNT, Warszawa 1995.

3. Theriault M., Carmichael R., Viscusi J.ORACLE DBA - administrowanie baządanych.

Wyd. RM, Warszawa 2001.

4. Loney K.; Oracle Database 10g; Kompendium administratora, Helion 2005

5. Freeman R.G.; Oracle Database 10g. ; Helion, 2004

6. Baylis R., Lane P., Lorentz D.; Oracle Database Administrator's Guide, 10g Release 1

(10.1); Copyright © 2001, 2003 Oracle

7. Dawes Ch., Bryla B., Johnson J.C., Weishan M.: Oracle 10g™ Administration I.

Study Guide; SYBEX Inc., 2005

Page 180: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

180

Kierunek: Informatyka

Przedmiot:

Projektowanie zintegrowanych systemów informatycznych

Integrated Information Systems Design

Czas trwania: semestr 3

Przedmiot: specjalnościowy

Język wykładowy: polski

Rodzaj zajęć Prowadzący Liczba

godzin

Tryb

zaliczenia

Punkty

ECTS

Wykład dr inż. Jacek Florek 21 egzamin 6

Laboratorium mgr Marek Pilski 24 zaliczenie na ocenę

POZIOM

Warunkiem udziału w zajęciach jest ogólna znajomość zagadnień związanych

z funkcjonowaniem instytucji gospodarczych i ich zarządzaniem, a ponadto wcześniejsze

uzyskanie zaliczenia z następujących przedmiotów:

Modelowanie i analiza systemów informatycznych (do realizacji ćwiczeń lab. wymaga

się zachowanie plików projektu z tego przedmiotu)

Zastosowania informatyki

Zaawansowane technologie programistyczne

lub znajomość literatury obowiązującej w tych przedmiotach.

ZAŁOŻENIA I CELE

Podstawowym celem wykładów jest poznanie zasad obowiązujących podczas tworzenia

zintegrowanych systemów informatycznych zarządzania ze szczególnym uwzględnieniem

etapów planowania oraz projektowania i wdrażania. Rozwiniętymi celami szczegółowymi sa:

zapoznanie z metodologicznymi podstawami tworzenia zintegrowanych systemów

informatycznych

zapoznanie z procesami planowania oraz analizy strukturalnej i projektowania

zintegrowanych systemów informatycznych

zapoznanie z organizacją prac projektowo-wdrożeniowych

poznanie zasad obowiązującyh w procesie zarządzania przedsięwzięciem

informatycznym

Page 181: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

181

Realizacja zajęć jest to kontynuacją prac projektowych z przedmiotu "Modelowanie i analiza

systemów informacyjnych" stąd wymagane jest posiadanie plików projektu z laboratorium

tego przedmiotu.

Celem laboratorium jest nabycie umiejętności w wykorzystaniu pakietów Oracle Designer 6i

oraz Rational Rose w procesie projektowania systemów informatycznych. Cele szczegółowe

laboratorium obejmują następujące umiejętności praktyczne:

znajomość organizacji prac projektowych i wdrożeniowych z wykorzystaniem

pakietów CASE w procesie tworzenia SI

nabycie umiejętności w wykorzystaniu podejścia strukturalnego (w oparciu o Oracle

Designer 6i) w odniesieniu do imprtu modeli, generowania i definiowania tabel

logicznych, tworzenie tabel, więzów i sekwencji w fizycznej bazie danych, a także

transformowania hierarchii encji oraz generowania modułów aplikacji

nabycie umiejętności w wykorzystaniu podejścia obiektowego (w oparciu o Rational

Rose) w odniesieniu do importu modeli, budowania diagramów czynności

i przebiegów czasowych a także generowania kodu i dokumentacji

WYKŁAD

1. Wykorzystanie IT w zarządzaniu organizacją

istota i rola zasobów informacyjnych w przedsiębiorstwie

istota informatycznych systemów zarządzania

zastosowanie pojedynczych aplikacji

wewnętrzna integracja

reorganizacja procesów biznesowych

reorganizacja sieci gospodarczej

zmiana zakresu działalności gospodarczej

2. Typologia metod projektowania ZSI (1)

zakres i składniki metodyki tworzenia ZSI,

klasyfikacja metodyk

ogólne wymagania dla metodyk

3. Typologia metod projektowania ZSI (2)

podejście strukturalne (cechy, techniki, etapy),

podejście obiektowe (cechy, etapy),

podejście społeczne (cechy, etapy)

4. Planowanie zintegrowanych systemów informatycznych zarządzania

cele i proces planowania,

formułowanie strategii informatycznej

zawartość i znaczenie strategii,

metody i techniki analizy sytuacyjnej,

5. Analiza strukturalna i projektowanie ZSI

Page 182: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

182

analiza systemów informatycznych,

modelowanie z wykorzystaniem narzędzi CASE

projekt ogólny i projekt techniczny

projektowanie we/wy, interfejsu użytkownika, plików i baz danych z wykorzystaniem

narzędzi CASE

6. Scenariusze realizacji zintegrowanych systemów informatycznych

złożoność realizacyjna,

kategorie ZSI,

przebieg działań w ramach realizacji przedsięwzięcia i scenariusze realizacji ZSI

7. Procedura wyboru gotowego SI

fazy procedury,

ocena aktualnej technologii,

zdefiniowanie założeń przedsiębiorstwa,

opracowanie zapytania ofertowego,

ocena ofert,

prezentacje i wizyty referencyjne,

negocjacje, wybór ZSI i podpisanie umowy

8. Organizacja prac wdrożeniowych SIZ

model i etapy wdrażania systemu,

konieczność działań integrujących,

rola i zadania integratora wdrożeniowego,

model integracji działań

praca zespołowa,

9. Zarządzanie procesem tworzenia ZSI (1)

projekt i otoczenie zarządzania projektami

cykl życia projektu

procesy i obszary zarządzania projektem

10. Zarządzanie procesem tworzenia ZSI (2)

plan projektu

organizacja projektu

struktura prac w projekcie

realizacja zarządzania w podstawowych obszarach przedsięwzięcia

11. Jakość, ryzyko i efektywność przedsięwzięcia informatycznego

pojęcie jakości

kształtowanie efektywności

model zarządzania ryzykiem

wskaźnik zagrożenia przedsięwzięcia informatycznego

korzyści z inwestycji ekonomicznych

Page 183: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

183

ZALICZENIE WYKŁADU

Przedmiot kończy się egzaminem, w którym można uzyskać maksymalnie 100 punktów.

Ocena końcowa z egzaminu, w zależności od liczby uzyskanych punktów może być

następująca (w nawiasach ocena wg skali ECTS):

Zakres Ocena Zakres Ocena

0-50 pkt. ndst (F) 71-80 pkt. db (C)

51-60 pkt. dst (E) 81-90 pkt. db+ (B)

61-70 pkt. dst+ (D) 91-100 pkt. bdb (A)

LABORATORIUM

1. Oracle Designer. Import modelu

importowanie pliku projektu w Repository Object Nawigator,

sprawdzenie i uzupełnienie kompletności modelu.

2. Oracle Designer. Generowanie i definiowanie projektu tabel logicznych

sprawdzenie modelu zwiazku encji,

uruchomienie generatora Database Design Transformer,

utworzenie nowego diagramu modelu serwera w narzędziu Design Editor,

utworzenie sekwencji w Repozytorium ustawienie właściwości wyświetlania dla

kolumn w tabelach,

powiązanie sekwencji z kluczami głównymi tabel.

3. Oracle Designer. Utworzenie tabel, więzów i sekwencji w fizycznej bazie danych

uruchomienie Generatora Bazy Danych z narzędzia Design Editor,

ustawienie opcji generowania,

wybranie tabel i sekwencji do procesu generowania,

uruchomienie procesu tworzenia skryptów DDL i wykonanie skryptów DDL.

4. Oracle Designer. Transformowanie hierarchii encji do projektu bazy danych

transformacja do pojedynczej relacji,

transformacja do oddzielnych relacji,

transformacja do oddzielnych relacji połączonych ograniczeniami referencyjnymi w

łuku.

5. Oracle Designer. Wygenerowanie modułów aplikacji oraz ich udoskonalanie

uruchomienie transformatora pierwotnego projektu aplikacji,

przetransformowanie hierarchii funkcji na moduły aplikacji,

akceptacja modułów kandydujących,

utworzenie diagramów komponentów dla wybranych modułów,

udoskonalenie projektu modułów.

Page 184: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

184

6. Oracle Designer. Szczegółowa definicja projektu modułów i generowanie aplikacji

szczegółowa modyfikacja modułów,

uruchomienie generatora aplikacji,

wygenerowanie formularzy aplikacji.

7. IBM Rational Software Modeler. Import modelu

sprawdzenie i uzupełnienie modelu,

sprawdzenie i uzupełnienie struktury projektu.

8. IBM Rational Software Modeler. Budowanie diagramów czynności

dodawanie czynności,

dodawanie przepływów sterujących,

dodawanie węzłów decyzyjnych, rozwidlających, scalających, początkowych i

końcowych.

9. IBM Rational Software Modeler. Budowanie diagramów przebiegów czasowych

definiowanie linii stanów dla wybranego obiektu,

definiowanie linii wartości dla wybranego obiektu.

10. IBM Rational Software Modeler. Generowanie dokumentacji projektowej i kodu

wygenerowanie dokumentacji projektowej,

wygenerowanie kodu na podstawie utworzonego modelu,

analiza wygenerowanych elementów.

11. OCL

definiowanie ograniczeń

nakładanie niezmienników na atrybuty,

definiowanie warunków początkowych i końcowych.

12. Prezentacja projektu

prezentacja wyników prac,

ocena zadań indywidualnych,

dyskusja i ocena projektów.

ZALICZENIE LABORATORIUM

Zajęcia laboratoryjne są obowiązkowe. Trzy nieusprawiedliwione nieobecności na zajęciach

wykluczają możliwość ich zaliczenia. Wszystkie zajęcia laboratoryjne (za wyjątkiem

pierwszego) są oceniane. Zaliczenie zajęć laboratoryjnych następuje na podstawie ocen

cząstkowych uzyskanych za poszczególne zajęcia oraz obronionego indywidualnego projektu.

W przypadku nieobecności studenta na laboratorium sposób ich odpracowania określa osoba

odpowiedzialna za kurs i jest on podany na pierwszych zajęciach.

Page 185: INFORMATOR - ii.uph.edu.pl · Metody numerycznego rozwiązywania równań różniczkowych zwyczajnych rzędu ... Metoda graficzna 3. Zagadnienia programowania liniowego- część

185

Na każdych ćwiczeniach prowadzący podaje zakres zadań dla studentów do przygotowania na

następne zajęcia (o charakterze praktycznym lub teoretycznym) i wytyczne do ich realizacji.

Przygotowanie do zajęć oraz realizacja zadań każdego ćwiczenia są oceniane w skali od 0 do

10 pkt. Łącznie student za 10 zajęć może uzyskać od 0 do 100 pkt.

Temat i zakres projektu indywidualnego student otrzymuje najpóźniej na trzecim zajęciu. Za

projekt może on otrzymać ocenę punktową mieszczącą się w zakresie 0 - 100pkt. Zaliczenie

projektu następuje po uzyskaniu co najmniej 51 pkt. i jest możliwe najpóźniej na ostatnich

zajęciach. Jest ono także warunkiem koniecznym do uzyskania zaliczenia ćwiczeń

laboratoryjnych.

Łączna ocena punktowa zajęć laboratoryjnych jest sumą punktów uzyskanych za

poszczególne zajęcia oraz za indywidualny projekt i zawiera się w granicach 0-200 pkt.

Ocena końcowa zajęć zależy od sumy uzyskanych punktów i wynosi (w nawiasach ocena wg

skali ECTS):

Zakres Ocena Zakres Ocena

0-100 pkt. ndst (F) 141-160 pkt. db (C)

101-120 pkt. dst (E) 161-180 pkt. db+ (B)

121-140 pkt. dst+ (D) 181-200 pkt. bdb (A)

LITERATURA

1. Barczak. A., Florek J., Sydoruk T.: Projektowanie zintegrowanych systemów

informatycznych zarządzania, Wyd. AP, Siedlce 2006

2. Chmielarz W.: "Systemy informatyczne wspomagające zarządzanie. Aspekt

modelowy w budowie systemów". Elipsa, Warszawa 1996

3. Szyjewski Z.: Zarządzanie projektami informatycznymi. Metodyka tworzenia

systemów informatycznych. Agencja Wydawnicza Placet. Warszawa 2001

4. Wrycza S.: "Analiza i projektowanie systemów informatycznych zarządzania.

Metody, techniki, narzędzia". PWN. Warszawa, 1997.