===== Program Studiów ===== ^ Lp ^ Przedmiot ^ wykłady ^ laboratoria ^ ECTS ^ | 1 | Programowanie w C/C++ | 16 | 22 | 5 | | 2 | Metodologie 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 | 12 | 14 | 3 | | 10 | Użytkowanie i administrowanie systemem Unix/Linux | 6 | 10 | 2 | | 11 | Zarządzanie 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# oraz Javie – na poziomie umożliwiającym swobodną i zaawansowaną pracę. Realizowane jest to poprzez znaczną liczbę godzin dydaktycznych, pozwalających przećwiczyć wszystkie kluczowe zagadnienia związane z programowaniem w tych językach. W ramach zajęć pokazujemy również, jak narzędzia **Gen AI** mogą wspierać generowanie kodu, refaktoryzację i analizę błędów. * Rozszerzeniem tego obszaru są technologie obiektowe, poznawane zarówno z teoretyczną podbudową, jak i w praktycznych projektach. Zajęcia są silnie zorientowane na ćwiczenia i pokazują także, w jaki sposób **AI** może wspierać proces modelowania obiektowego czy tworzenia dokumentacji technicznej. * Technologie komponentowe odgrywają coraz większą rolę przy tworzeniu oprogramowania. Omawiane są od podstawowych rozwiązań (VB.NET, C#), aż po bardziej zaawansowane (SOAP, REST, MVC, OSGi, ADO.NET, ORM, LINQ) i usługi sieciowe SOA. Duży nacisk kładziony jest na część praktyczną – projektowanie i implementację komponentów – przy jednoczesnym pokazaniu, jak **LLM** mogą wspierać projektowanie i integrację API. * Konstruowanie baz danych towarzyszy większości projektów IT, dlatego studenci poznają zasady struktury, organizacji, przetwarzania i tworzenia zapytań SQL. Realizacja obejmuje zarówno wykłady, jak i bogate ćwiczenia praktyczne. Pokazujemy także, jak **Gen AI** może wspierać optymalizację zapytań, projektowanie schematów czy migrację danych. * Inżynieria oprogramowania posiada swoje metody krytyczne dla profesjonalnego tworzenia systemów. Modelowanie systemu wymaga zrozumienia jego struktury, logiki i cyklu życia. W tym obszarze studenci uczą się również, jak narzędzia **AI** mogą pomagać w analizie wymagań, tworzeniu przypadków użycia czy generowaniu diagramów UML. * Coraz większe znaczenie odgrywają zintegrowane, kierowane modelami systemy projektowania, które pozwalają całościowo ująć proces wytwarzania – od aspektów statycznych i behawioralnych systemu, po szczegóły implementacyjne. Szczególny nacisk kładziony jest na język UML, poznawany zarówno w teorii, jak i poprzez praktyczne projekty. Wspieramy to przykładami wykorzystania **LLM** w tworzeniu i interpretacji modeli. * Testowanie oprogramowania to kluczowy element zapewnienia jakości. Studenci poznają różne metody testowania manualnego i automatycznego oraz narzędzia wspierające QA. Pokazujemy też, jak **AI** może automatyzować generowanie przypadków testowych, wykrywanie anomalii i analizę wyników. * Zaawansowane technologie bazodanowe są kontynuacją modułów podstawowych i obejmują m.in. PostgreSQL, Hibernate/JPA i język PHP. Zajęcia są silnie praktyczne i pokazują również, jak narzędzia **AI** mogą wspierać optymalizację zapytań czy projektowanie baz danych pod kątem dużych wolumenów danych. * Aplikacje webowe stanowią ważny obszar programu – obejmują języki i technologie takie jak HTML, CSS, JavaScript oraz **Java** po stronie serwera i klienta. Uczestnicy poznają także metody wykorzystania **Gen AI** do prototypowania interfejsów, automatyzacji kodu front-end i wspierania dokumentacji API. * Administrowanie systemami operacyjnymi towarzyszy pracy każdego inżyniera. Program obejmuje systemy UNIX/Linux, z naciskiem na ćwiczenia praktyczne w zakresie konfiguracji, zarządzania usługami i bezpieczeństwa. Pokazujemy również, jak **AI** może wspierać analizę logów, automatyzację konfiguracji czy rozwiązywanie problemów systemowych. * Zarządzanie projektem informatycznym odgrywa coraz większą rolę, szczególnie w dużych przedsięwzięciach. Studenci poznają zagadnienia takie jak: infrastruktura projektu, zarządzanie ryzykiem, podział ról i zadań, delegowanie uprawnień, synchronizacja, zapewnienie jakości i dokumentowanie. W tym obszarze również wprowadzamy narzędzia **AI**, wspierające analizę ryzyka, automatyczne raportowanie i komunikację w zespołach zwinnych (Agile, Scrum).