Program Studiów

Lp Przedmiot wykłady laboratoria ECTS
1 Programowanie w C/C++ 16 22 5
2 Modelowanie obiektowe 4 6 2
3 Technologie komponentowe i sieciowe 4 12 2
4 Konstruowanie baz danych 10 12 3
5 Elementy inżynierii oprogramowania 10 12 3
6 Modele wytwarzania oprogramowania 10 12 3
7 Testowanie oprogramowania 6 4 1
8 Zaawansowane technologie bazodanowe 10 12 3
9 Technologie i aplikacje webowe 10 12 3
10 Użytkowanie i administrowanie systemem Unix/Linux 6 10 2
11 Zarządzenie projektem informatycznym 10 10 2

W tabeli dla każdego przedmiotu podano kolejno: liczbę godzin wykładowych, laboratoryjnych oraz przypisane punkty ECTS.


Szczegółowe omówienie programu

  • Duży nacisk położony jest na zdobycie umiejętności programowania w językach C/C++/C# na odpowiednio wysokim, zaawansowanym poziomie. Realizowane jest to m.in. poprzez dużą liczbę godzin dydaktycznych, pozwalających przećwiczyć wszystkie zasadnicze zagadnienia związane z programowaniem w tych językach.
  • Rozszerzeniem ostatniego wątku są także technologie obiektowe, które są poznawane zarówno z podbudową teoretyczną jak i silnie zorientowane na praktyczne, i dobrze przećwiczone, zastosowania.
  • Technologie komponentowe odgrywają coraz większą rolę przy tworzeniu oprogramowania, poznawane są od najprostszych rozwiązań (VB.NET, C#), z możliwością przejścia do zagadnień jeszcze bardziej zaawansowanych (SOAP, REST, MVC, OSGi, ADO.NET, ORM, LINQ), także serwisów sieciowych SOA. Główny nacisk położony jest na część praktyczną tworzenia komponentów.
  • Konstruowanie baz danych towarzyszy wielu przedsięwzięciom i dlatego niezbędne jest poznanie podstawowych zagadnień związanych ze strukturą, organizacją, przetwarzaniem i tworzeniem zapytań w bazach danych. Realizowane jest to zarówno poprzez zajęcia teoretyczne, jak i liczne dobrze zaprojektowane ćwiczenia praktyczne.
  • Inżynieria oprogramowania posiada swoje metody niezbędne i krytyczne przy profesjonalnym tworzeniu oprogramowania. Modelowanie systemu wymaga zrozumienia jego abstrakcyjnej struktury, logiki i cyklu życia.
  • Coraz większe znaczenie w projektowaniu systemów informatycznych odgrywają kierowane modelami zintegrowane systemy projektowania pozwalające ująć ten proces w sposób całościowy, we wszystkich aspektach statycznych i behawioralnych systemu, ale także na poszczególnych etapach jego tworzenia. Główne znaczenie mają tu języki i notacje typu UML, które są poznawane zarówno od strony teoretycznej, jak i poprzez samodzielne wykonanie praktycznych projektów.
  • Z każdym projektem informatycznym związane jest testowanie oprogramowania, które jest ważnym elementem zapewnienia jakości oprogramowania. Testowanie jest niezbędnym czynnikiem w w całym procesie produkcji oprogramowanie, stąd też rosnące zapotrzebowanie na pracę testerów na rynku IT.
  • Zaawansowane technologie baz danych są kontynuacją odpowiedniego wątku z kursu podstawowego, dotyczącego organizacji i przetwarzania w bazach danych. Realizowane jest to również poprzez zajęcia silnie zorientowane praktycznie (PostgreSQL, Hibernate/JPA). Zajęcia obejmują także język PHP.
  • Aplikacje webowe odgrywają coraz większą rolę we współczesnej informatyce. W zakres zainteresowania wchodzą tu zarówno różne języki skryptowe (JavaScript) oraz język Java (po stronie serwera i klienta).
  • Problematyka administrowania systemami wiąże się nieodzownie z systemami UNIX czy Linux. Przedstawiając odpowiednie zagadnienia duży nacisk położono na ćwiczenia praktyczne.
  • Zarządzanie projektem informatycznym, szczególnie w przypadku dużych projektów, odgrywa coraz większą rolę, obejmując szereg takich problemów jak przykładowo: infrastruktura projektu, zarządzanie ryzykiem, podział ról i zadań, delegowanie uprawnień, synchronizacja, problematyka jakości, dokumentowanie i inne.