Studia podyplomowe Oprogramowanie systemów komputerowych Organizator : Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny ul.żołnierska 49, 71-210 Szczecin Kierownik studiów : prof. dr hab. inż. Włodzimierz Bielecki e-mail: wbielecki@wi.zut.edu.pl Sekretariat : mgr Sylwia Hardej tel.: (91) 449 56 62 fax: (91) 449 55 40 e-mail: shardej@wi.zut.edu.pl Zasady realizacji studiów podyplomowych zostały określone w Regulaminie Studiów Podyplomowych prowadzonych w Zachodniopomorskim Uniwersytecie Technologicznym w Szczecinie (Uchwała nr 26 Senatu Zachodniopomorskiego Uniwersytetu Technologicznego w Szczecinie z dnia 23 lutego 2009 r.) Data wydruku: 2011-06-15
SPIS TREŚCI 1. CELE I ZADANIA STUDIÓW 3 2. WARUNKI PRZYJĘCIA 3 3. ORGANIZACJA ZAJĘĆ 3 4. LISTA PRZEDMIOTÓW 4 5. PROGRAMY PRZEDMIOTÓW 5 6. KADRA 9 7. OBSADA ZAJĘĆ 9 8. REGULAMIN STUDIÓW 10 9. KOSZT UCZESTNICTWA 10 2
1. Cele i zadania studiów Studia podyplomowe Oprogramowanie systemów komputerowych przeznaczone są dla możliwie szerokiego grona absolwentów wyższych uczelni oraz studentów dwóch ostatnich semestrów studiów wyższych zainteresowanych podniesieniem swoich dotychczasowych umiejętności bądź zdobyciem nowych kwalifikacji zawodowych w obszarze oprogramowania komputerowego, stanowiącego od wielu lat atrakcyjny i perspektywiczny rynek pracy. Celem studiów jest przekazanie słuchaczom możliwie szerokiej i praktycznej wiedzy na temat tworzenia i funkcjonowania oprogramowania we współczesnych systemach komputerowych. Zadaniem studiów jest przygotowanie uczestników do: podjęcia pracy na stanowisku wymagającym wiedzy z dziedziny oprogramowania i dalszego wyprofilowania swojej praktyki zawodowej pod kątem konkretnych zadań realizowanych na danym stanowisku, wyboru dalszego wąsko-wyspecjalizowanego kierunku kształcenia, przy jednoczesnym zachowaniu szerokiego, racjonalnego spojrzenia na problematykę tworzenia i funkcjonowania oprogramowania. 2. Warunki przyjęcia Uczestnikiem studiów może zostać: absolwent dowolnej wyższej uczelni (pierwszego, drugiego stopnia kształcenia lub jednolitych studiów magisterskich), studenci dwóch ostatnich semestrów studiów wyższych na zasadach uczestnictwa w kursie. Kandydaci winni złożyć następujące dokumenty: podanie o przyjęcie na studia, kwestionariusz osobowy, 2 zdjęcia dowodowe, dyplom ukończenia studiów wyższych, względnie odpis dyplomu wydany przez uczelnię, lub zaświadczenie o stanie odbytych studiów (dotyczy studentów dwóch ostatnich semestrów studiów wyższych), oraz podpisać umowę na świadczoną usługę edukacyjną. Rekrutacja odbywa się bez egzaminów wstępnych w terminie od 15 kwietnia 2011 r. do 12 września 2011 r. O przyjęciu decyduje kolejność zgłoszeń. 3. Organizacja zajęć Studia obejmują dwa semestry nauki po 9 zjazdów: semestr I trwa od 24 września 2011 r. do 29 lutego 2012 r., semestr II trwa od 1 marca 2012 r. do 29 czerwca 2012 r. 3
Zjazdy odbywają się w 2 dni w tygodniu (sobota i niedziela) w Szczecinie: Dzień tygodnia Typ Godzina rozpoczęcia Godzina zakończenia Sobota Zajęcia I 9:00 10:30 Zajęcia II 11:00 12:30 Przerwa 12:30 13:30 Zajęcia III 13:30 15:00 Zajęcia IV 15:30 17:00 Niedziela Zajęcia V 10:00 11:30 Zajęcia VI 12:00 13:30 Zajęcia obejmują łącznie 216 godzin (lekcyjnych) nauki w formie wykładów (102 godziny), laboratoriów (102 godziny) oraz sesji seminaryjnych (12 godzin). Zajęcia prowadzone są w nowoczesnych, multimedialnych salach wykładowych i laboratoryjnych Wydziału Informatyki Zachodniopomorskiego Uniwersytetu Technologicznego w Szczecinie. Studia kończy obrona pracy dyplomowej. Po ukończeniu studiów podyplomowych słuchacz otrzymuje świadectwo. 4. Lista przedmiotów Lp. Nazwa przedmiotu Wymiar godzin Seminarium Semestr I 108 54 54 0 1. Systemy operacyjne 16 8 8 2. Struktury danych 16 8 8 3. Inżynieria oprogramowania 20 10 10 4. Podstawy programowania 40 20 20 5. Projektowanie stron internetowych 16 8 8 Semestr II 108 48 48 12 6. Bazy danych 16 8 8 7. Programowanie obiektowe ( C++, C#, Java ) 52 26 26 8. Aplikacje internetowe 16 8 8 9. Biurowe pakiety oprogramowania 12 6 6 10. Praca końcowa 12 12 Łącznie : 216 102 102 12 4
5. Programy przedmiotów SYSTEMY OPERACYJNE Wprowadzenie do systemów operacyjnych (zadania, funkcje, architektura, klasyfikacja). Zarządzanie procesami w systemie operacyjnym (zarządzanie procesami, mechanizmy komunikacji, synchronizacja, blokady). Zarządzanie pamięcią w systemie operacyjnym (stronicowanie pamięci, segmentacja pamięci, pamięć wirtualna, ochrona pamięci). System plików (systemy listowe, systemy indeksowe, ochrona, interfejsy). Podstawowe komponenty systemu operacyjnego (architektura systemu na podstawie Windows). Zarządzanie pamięcią (mechanizmy zarządzania pamięcią na przykładzie Windows i Linux). Zarządzanie procesami (mechanizmy zarządzania procesami na przykładzie Windows i Linux). Zarządzanie systemami plików (mechanizmy zarządzania systemami plików FAT32, NTFS i EXT, ochrona, dostęp zdalny). STRUKTURY DANYCH Pojęcia podstawowe: typy danych, operatory. Złożone struktury danych: tablica, rekord, zbiór, stos, kolejka, lista. Drzewa binarne: kopce, drzewa poszukiwań binarnych, wyważanie drzew. Drzewa wielokierunkowe: B-drzewa, kopce dwumianowe, itp. Grafy: reprezentacja grafów, przechodzenie grafów, grafy ważone, grafy acykliczne, drzewa rozpinające grafów, algorytmy wyszukiwania ścieżek). Implementacja algorytmów rekonstrukcji złożonych struktur danych. Implementacja algorytmów związanych z grafami. 5
INŻYNIERIA OPROGRAMOWANIA Modele procesów wytwórczych. Miary i pomiary w procesie wytwórczym. Język UML. Dekompozycja w procesie wytwórczym. Inżynieria wymagań. Funkcjonalny widok architektury oprogramowania. Realizacja przypadków użycia. Analityczny model systemu informatycznego. Wzorce w projektowaniu systemów informatycznych. Elementy testowania oprogramowania. Narzędzia CASE w projektowaniu i implementacji oprogramowania. Projekt i implementacja aplikacji z wykorzystaniem technik inżynierii oprogramowania w wybranym zintegrowanym z UML środowiskiem programistycznym. PODSTAWY PROGRAMOWANIA Charakterystyka języka programowania C. Podstawowe typy zmiennych. Zakres działania i czas życia zmiennych. Konwersja typów zmiennych. Operatory. Instrukcje. Operacje wejścia/wyjścia. Pochodne typy zmiennych: tablice jedno i wielowymiarowe. Pochodne typy zmiennych: wskaźniki i referencje. Pochodne typy zmiennych: struktury, unie, pola bitowe. Funkcje. Obsługa plików. Edycja, kompilacja i uruchomienie prostych programów przykładowych. 6
PROJEKTOWANIE STRON INTERNETOWYCH Języki znaczników, konwencje, normy i standardy, wstęp do HTML, podstawy formatowania prostych dokumentów. Osadzanie multimediów, arkusze stylów, podstawy CSS. Formularze w HTML, współpraca formularza z oprogramowaniem serwera http. Podstawy konfigurowania serwerów http, rejestracja i zarządzanie domenami internetowymi, strojenie strony pod kątem współpracy z przeglądarkami i wyszukiwarkami. Projekt i realizacja prostej strony osobistej wraz z jej posadowieniem na serwerze WWW WI ZUT. BAZY DANYCH Modele danych model relacyjny. Język SQL. Definiowanie struktury danych. Operacje na bazie danych. Ochrona baz danych. Bezpieczeństwo baz danych kontrola dostępu. Ochrona integralności semantycznej. Ochrona integralności transakcyjnej. Projektowanie baz danych. Modelowanie związków encji. Normalizacja struktury baz danych. Architektura systemów korzystających z baz danych. Wprowadzenie do języka SQL. Tworzenie, modyfikowanie i usuwanie tabel. Wstawianie, modyfikowanie i usuwanie danych z tabel. Polecenia wyszukiwania danych oraz ich porządkowania. Funkcje obliczające agregaty. Mechanizmy autoryzacji dostępu do bazy danych. Sposoby dostępu do bazy danych z poziomu różnych języków programowania. 7
PROGRAMOWANIE OBIEKTOWE ( C++, C#, JAVA) Wstęp do technologii obiektowych. Obiektowe języki programowania C++, C# oraz Java: obiekty i klasy, konstruowanie, inicjalizacja i niszczenie obiektów, przeciążanie metod, dziedziczenie i kompozycja, polimorfizm, funkcje wzorcowe i wzorce klas, obiektowe techniki programowania wzorców, programowanie podstawowych struktur danych (np. lista, kolejka, stos, drzewo, itd.), obsługa wyjątków, rozpoznanie typu w czasie wykonania programu. Implementacja aplikacji przy użyciu języka programowania C++. Implementacja aplikacji przy użyciu języka programowania C#. Implementacja aplikacji przy użyciu języka programowania Java. BIUROWE PAKIETY OPROGRAMOWANIA Tworzenie i edycja dokumentów w edytorze tekstu. Arkusze kalkulacyjne. Sposoby tworzenia prezentacji. Tworzenie prostych baz danych. Programy do zarządzania projektami. Wykorzystanie programu Microsoft Word oraz OpenOffice Writer. Praca z arkuszami kalkulacyjnymi (Microsoft Excel oraz OpenOffice Calc). Tworzenie prezentacji (Microsoft PowerPoint oraz OpenOffice Impress). Tworzenie baz danych (Microsoft Access oraz OpenOffice Base). Zarządzanie projektami w Microsoft Project. 8
APLIKACJE INTERNETOWE Rola i miejsce aplikacji internetowych we współczesnych modelach przetwarzania i prezentacji danych, mechanizmy, standardy, konwencje, rozwiązania i języki, model MVC. Podstawy języka JavaScript wraz z prostymi implementacjami. Podstawy języka PHP, konstruowanie i przetwarzanie formularzy. Podstawy współpracy kodu PHP z bazami danych. Projekt i implementacja prostej aplikacji internetowej. PRACA KOŃCOWA Seminarium Zasady realizacji procesu dyplomowania na WI ZUT. Metodyka realizacji pracy dyplomowej. 6. Kadra prof. zw. dr hab. inż. Włodzimierz Bielecki dr hab. inż., prof.zut Walery Rogoza dr inż. Witold Maćków dr inż. Michał Fiodorow dr inż. Mirosław Mościcki dr inż. Krzysztof Kraska mgr inż. Sławomir Wernikowski Kierownik studiów 7. Obsada zajęć SEMESTR I Lp. Nazwa przedmiotu Prowadzący Seminarium 1. Systemy operacyjne W.Maćków W.Maćków 2. Struktury danych W.Rogoza W.Rogoza 3. Inżynieria oprogramowania M.Fiodorow M.Fiodorow 4. Podstawy programowania W.Bielecki S.Wernikowski 5. Projektowanie stron internetowych S.Wernikowski S.Wernikowski 9
SEMESTR II Studia podyplomowe: Oprogramowanie systemów komputerowych Lp. Nazwa przedmiotu Prowadzący Seminarium 6. Bazy danych M.Mościcki M.Mościcki 7. Programowanie obiektowe M.Fiodorow (C++) W.Rogoza (C#) M.Fiodorow (C++) W.Rogoza (C#) K.Kraska (Java) K.Kraska (Java) 8. Aplikacje internetowe S.Wernikowski S.Wernikowski 9. Biurowe pakiety oprogramowania M.Mościcki M.Mościcki 10. Praca końcowa W.Bielecki 8. Regulamin studiów Zasady realizacji studiów podyplomowych zostały określone w Regulaminie Studiów Podyplomowych prowadzonych w Zachodniopomorskim Uniwersytecie Technologicznym w Szczecinie na podstawie uchwały nr 26 Senatu Zachodniopomorskiego Uniwersytetu Technologicznego w Szczecinie z dnia 23 lutego 2009 r. (dostępne na http://www.zut.edu.pl). 9. Koszt uczestnictwa Koszt całkowity : 3 700,- zł ( płatne w 2 ratach ) Terminy płatności : I rata : 1900,- zł 15 października 2011 r. II rata : 1800,- zł 15 marca 2012 r. 10