Organizacja zajęć
Studia realizowane są w trybie internetowym. Program studiów realizowany jest przez Internet przy użyciu Systemu EDUX.
Każdy uczestnik wybiera 7 z puli 11 przedmiotów realizowanych przez Internet przy użyciu Systemu EDUX.
Zajęcia prowadzone są w języku polskim.
Warunki zaliczenia
Aby uzyskać dyplom ukończenia studiów podyplomowych trzeba zaliczyć 7 przedmiotów z
puli dostępnych przedmiotów. Każdy z przedmiotów wymaga zaliczenia ćwiczeń i zdania
egzaminu. Nie ma projektów i ich obron na koniec odbywania studiów. Drobne projekty
informatyczne są organizowane w ramach prowadzonych przedmiotów.
Program studiów
Każdy Słuchacz studiów podyplomowych Systemy informatyczne, aplikacje i bazy danych wybiera 7 z puli 11 przedmiotów realizowanych przez internet przy użyciu systemu EDUX
Semestr 1
Semestr 2
- Programowanie i Java
- Typy danych. Operatory i wyrażenia
- Klasy i obiekty I
- Klasy i obiekty II
- Decyzje i wyjątki
- Iteracje
- Tablice. Wprowadzenie do kolekcji
- Przetwarzanie danych: napisy i liczby
- Przetwarzanie danych: liczby, daty, algorytmy
- Programowanie obiektowe I
- Programowanie obiektowe II
- Wprowadzenie do programowania współbieżnego
- Wstęp, historia i zadania systemów operacyjnych
- Interpreter poleceń 1 – podstawy pracy z interpreterem, proste polecenia, prosta komunikacja
- Interpreter poleceń 2 – instrukcje strukturalne, pisanie skryptów powłoki
- Interpreter poleceń 3 – praktyczne wykorzystanie skryptów do pracy w systemie operacyjnym
- Procesy, stany procesów i algorytmy ich szeregowania
- Pamięć operacyjna. Strategie zarządzania: przydział ciągły, stronicowanie segmentacja
- Pamięć wirtualna – algorytmy wymiany, szacowanie wydajności systemu z pamięcią wirtualną, szamotanie
- System plików – implementacja systemu plików, oraz metody przydziału miejsca na dysku
- Wstęp do sieci komputerowych: Co to jest Internet? Co to jest protokół? Brzeg sieci, szkielet sieci. Komutacja pakietów i komutacja kanałów. Rodzaje sieci. Sieci dostępowe. Sieci lokalne. Bezprzewodowe sieci lokalne. Media fizyczne. Struktura Internetu. Opóźnienia i straty w sieciach z komutacją pakietów. Przepustowość. Warstwy sieci. Modele usług. Historia Internetu
- Warstwa aplikacji: Zasady budowy protokołów warstwy aplikacji. Model klient/serwer. WWW i HTTP. DNS. Programowanie przy użyciu gniazd TCP. Programowanie przy użyciu gniazd UDP. Poczta elektroniczna: SMTP, POP3, IMAP. FTP. Protokół HTTP. DNS. Dystrybucja zawartości: schowki Internetowe i sieci dystrybucji zawartości. Dzielenie plików (P2P)
- Warstwa transportu: Usługi warstwy transportu. Multipleksacja i demultipleksacja. Transport bezpołączeniowy UDP. Zasady niezawodnej komunikacji danych. Transport połączeniowy TCP: struktura segmentu, niezawodna komunikacja, kontrolaprzepływu, zarządzanie połączeniem. Mechanizmy kontroli przeciążenia. Kontrola przeciążenia w TCP
- Warstwa sieci: Usługi warstwy sieci z komutacją pakietów. Zasady działaniu routingu. Algorytm Dijkstry. Routing hierarchiczny. Protokół Internetu (IP). Adresy IPv4. Przekazywanie pakietu od źródła do celu. Format pakietu. Fragmentacja IP. ICMP. DHCP. NAT. Routing w Internecie. RIP, OSPF i BGP. Co jest w routerze. IPv6. Routing rozsiewczy (multicast). IGMP. Mobilność
- Warstwa łącza danych: .Wstęp. Usługi warstwy łącza. Rozpoznawanie i naprawa błędów. Protokoły wielodostępowe. Adresowanie w sieciach LAN. MAC. ARP. Ethernet, koncentratory, mosty i switche. VLAN. Bezprzewodowe łącza i sieci lokalne. WiFi i Bluetooth. PPP. ATM. Frame Relay
- Podstawy ochrony informacji: Co to jest ochrona informacji. Zasady działania kryptografii. Uwierzytelnienie. Integralność. Dystrybucja kluczy i certyfikacja. Kontrola dostępu: ściany ogniowe. Ataki i środki zaradcze. PGP. SSL. IPSec. WEP. Wykrywanie włamań i cyfrowa kryminalistyka. Ochrona informacji w wielu warstwach
- Podstawowe pojęcia dotyczące baz danych
- Tabele, związki, zapytania, operacje na bazie danych
- Metoda tworzenia schematu relacyjnej bazy danych za pomocą diagramów związków encji
- Interfejs użytkownika w aplikacji baz danych – formularze i raporty w MS Access
- Podstawy procesu projektowania i programowania aplikacji baz danych
- VBA – język aplikacji bazodanowej
- Wprowadzenie do wykładu – historia języka UML, obiektowe podejście do wytwarzania oprogramowania, opis języka UML, narzędzia do modelowania obiektowego
- Model przypadków użycia – scenariusze przypadków użycia, diagram przypadków użycia
- Obiekt a klasa – diagram klas i diagram obiektów, pojęcia: klasa, obiekt, hermetyzacja, ekstensja klasy, atrybut, metoda, operacja, komunikat, polimorfizm metod, klasa parametryzowana
- Związek generalizacji-specjalizacji – dziedziczenie klas, klasa abstrakcyjna, klasa konkretna, metoda abstrakcyjna, specjalizacja jednoaspektowa i wieloaspektowa, specjalizacja wielokrotna, dziedziczenie dynamiczne, przesłanianie metod, przeciążanie metod
- Zagadnienia dotyczące asocjacji – asocjacja binarna, liczność, role i atrybuty asocjacji, agregacja a kompozycja, agregacja rekursywna, asocjacja kwalifikowana, asocjacja n-arna
- Diagramy aktywności – przepływ sterowania, przepływ danych, konstruowanie przejść z wykorzystaniem rombu decyzyjnego, podział grafu aktywności na partycje
- Diagramy implementacyjne oraz diagramy pakietów – diagramy komponentów, diagramy wdrożeniowe, odwołania między pakietami, reguły widoczności pakietów, specjalne rodzaje pakietów (fasada, model, podsystem)
- Strumienie i NIO (new input-output)
- Kolekcje
- Programowanie GUI: komponenty wizualne i kontenery
- Delegacyjny model obsługi zdarzeń
- Rozbudowane możliwości Swingu
- Komponenty Swing i architektura Model-View-Controller
- Dynamiczna Java
- Zaawansowane techniki programowania – przykłady
- Internacjonalizacja aplikacji
- Narzędzia programowania współbieżnego
- Java i bazy danych (JDBC)
- Programowanie klient serwer z użyciem gniazd, kanałów i selektorów
- Aplikacje WEB
- Podstawy języka SQL
- Pobieranie danych z wielu tabel w języku SQL
- Zapytania sumaryczne i grupujące w języku SQL
- Podzapytania w języku SQL
- Obiekty serwera bazy danych i zaawansowane konstrukcje w języku SQL
- Deklaratywne więzy spójności
- Programowanie aplikacji bazy danych po stronie serwera – PL/SQL
- Obiekty programistyczne serwera bazy danych
- Obiektowo-relacyjne bazy danych
- XML w bazach danych
- Rozproszone bazy danych
- Przedmiot i zagadnienia inżynierii oprogramowania. Kryzys oprogramowania. Źródła złożoności projektu oprogramowania. Modelowanie pojęciowe. Pojęcie metodyki. Modele cyklu życia oprogramowania
- Zwinne zespoły programistyczne, Azure Devops, metodyka SCRUM, definiowanie pracy w zespole samoorganizującym się
- Odkrywanie i definiowanie wymagań. Trudność określenia wymagań. Jakość opisu wymagań. Wymagania funkcjonalne i niefunkcjonalne. Metody definiowania wymagań użytkowników. Dokument wymagań użytkownika. Metoda przypadków użycia, metoda historyjek użytkownika
- Planowanie sprintów, retrospektywa sprintu
- Projektowanie. Architektury wielowarstwowe i wzorce projektowe
- Faza testowania. Przeglądy oprogramowania. Skład zespołu oceniającego oprogramowanie. Audyt projektu informatycznego. Inspekcje. Rodzaje testów. Typowe fazy i metody testowania. Co podlega testowaniu? Określenie niezawodności oprogramowania. Testy funkcjonalne. Eksplozja kombinacji danych testowych. Testy strukturalne. Analizatory przykrycia kodu. Testy statyczne. Bezpieczeństwo oprogramowania. Czynniki sukcesu i rezultaty testowania
- Zapewnienie jakości oprogramowania. Jakość w terminologii ISO 9000. Polityka i system jakości. Zasady zarządzania jakością. Normy dotyczące jakości. Niedojrzałość i dojrzałość procesów wytwórczych. Plan zapewnienia jakości \ oprogramowania
- Miary oprogramowania. Modele i miary oprogramowania. Ocena złożoności w planowaniu projektu. Metoda szacowania kosztów COCOMO. Analiza Punktów Funkcyjnych. Wykorzystanie punktów funkcyjnych. Przykłady miaroprogramowania
- Wprowadzenie do zarządzania projektami IT – podstawowe pojęcia zarządzania, projektu i zarządzania projektem, specyfika projektów IT, przyczyny sukcesów i porażek, znaczenie projektów IT w organizacji
- Metodyczne zarządzanie projektem – przegląd metodycznego prowadzenia projektów, przegląd i klasyfikacja metodyk projektowych
- Zarządzanie projektem w warunkach zmienności – przegląd najważniejszych metodyk zwinnych (Agile PM, SCRUM)
- Ciężkie metodyki projektowe – przegląd najważniejszych metodyk projektowych z grupy metodyk ciężkich PRINCE 2 , PMBOK, obszary zarządzania projektem IT według PMI
- Definiowanie projektu – metody definiowania projektu, identyfikacja celów projektu i jego udziałowców, budowa karty projektu i dokumentu wizji projektu, metody map pamięci, kanwa, Plan Zarządzania Projektem Informatycznym SPMP IEEE 1058.1
- Zarządzanie zakresem – metody budowy WBS, identyfikacja zadań i aktywności projektowych, estymacja wielkości zadań i identyfikacja zasobów, SEI CMM
- Zarządzanie czasem – metody planowania, diagramy sieciowe, diagramy Gantta, metody PERT oraz CPM, śledzenie i linie bazowe w projekcie, Kanban, Macierz Eisenhauera
- Struktura organizacyjna i komunikacyjna – różne struktury organizacyjne w projekcie, dobór struktury organizacyjnej, dobór struktury na tle cyklu życiowego, protokoły komunikacyjne – metody tworzenia i przykłady zastosowań
- Zarządzanie ryzykiem w projekcie – pojęcie ryzyka i metody walki z ryzykiem, metody zarządzania I śledzenia ryzyka projektowego, taksonomie ryzyk. Plan Zarządzania Ryzykiem, elementy metodyki M_o_R
- Śledzenie i kontrola w projekcie – metryki w projekcie, co i jak mierzyć, metody pomiarów, metoda EV, wskaźniki w projekcie, zastosowanie linii bazowej, wykres wypalenia
- Zarządzanie jakością – pojęcie jakości w projekcie, metody zapewnienia jakości, TQM, Plan Zarządzania Jakością SQAP, metryki jakości
- Definicja hurtowni danych; OLTP vs OLAP i zapytania analityczne; Dziedziny zastosowań – wspomaganie decyzji, CRM, eksploracja danych, etc.; Perspektywy rynku hurtowni danych; Wyzwania praktyczne – analiza strumieni danych, coraz większe ilości danych; zróżnicowane korzystanie z baz danych (mixed workload)
- Architektura hurtowni danych; Model logiczny – rodzaje; OLAP i agregacje
- Rodzaje, przetwarzanie i optymalizacja zapytań – różne aspekty; Model fizyczny – indeksy, redundancje, sortowanie, kolumnowe przechowywanie danych, etc.
- Ładowanie danych; integracja danych; Problemy z aktualizacją danych
- Czynniki jakości hurtowni danych; Przyszłe perspektywy; Podsumowanie
- HTML i CSS w projektowaniu stron internetowych
- Tworzenie stron internetowych w Visual Studio
- Framework .NET
- Tworzenie prostych aplikacji desktopowych z wykorzystaniem Windows Forms/Windows Presentation Foundation
- Walidacja danych i komunikacja z bazą danych (uwzględniając wykorzystanie bibliotek ORM)
- Obsługa błędów
- Podstawowe praktyki związana z budową aplikacji (SOLID, KISS, DRY)
- Aplikacja webowe typu REST API z wykorzystaniem frameworka ASP.NET
- Klasyczny trójwarstwowy podział kodu aplikacji – MVC
- Wykorzystanie frameworka ASP.NET MVC do budowy aplikacji renderowanej po stronie serwera
- Wykorzystanie frameworka Blazor do budowy aplikacji typu SPA
- Testowanie aplikacji (rodzaje testów, piramida testów)
Spotkanie z kierownikami studiów podyplomowych
Nikt nie opowie o studiach proponowanych przez Centrum Kształcenia Podyplomowego lepiej niż ci, którzy je stworzyli. Zapraszamy do obejrzenia i wysłuchania rozmów z kierownikami studiów podyplomowych oraz studiów MBA (w tym kierownikiem CKP Panią Martą Godzisz), które przeprowadziła Pani Aleksandra Szyr.
