Specjalizacja Fullstack Developer na studiach podyplomowych daje możliwość zdobycia cennych umiejętności i wiedzy z zakresu projektowania, implementacji systemów informatycznych w poszczególnych warstwach projektu.
Absolwent studiów podyplomowych:
- zdobywa solidne umiejętności techniczne w zakresie projektowania i implementacji systemów informatycznych z wykorzystaniem popularnych obecnie paradygmatów, wzorców projektowych i dobrych praktyk z wykorzystaniem najnowszych wersji środowisk programistycznych oraz wybranych rozwiązań chmurowych oraz AI,
- potrafi zrozumieć i analizować problemy biznesowe opisane w dokumentacji z wykorzystaniem powszechnych standardów, a następnie projektować i wdrażać rozwiązania w postaci systemów informatycznych opartych na odpowiednio dobranym stosie technologicznym zapewniającym spełnienie tychże wymagań, w tym efektywnego projektowania i zarządzania bazami danych,
- nabywa praktycznego doświadczenie w projektowaniu i wdrażaniu systemów informatycznych,
- ze względu na szybko zmieniającą się naturę technologii jest przygotowany do ciągłego uczenia się i adaptacji do nowych narzędzi i technik, w tym opartych na rozwiązaniach generatywnej AI,
- jest dobrze przygotowany do podjęcia pracy w różnych rolach związanych z procesami wytwórczymi oprogramowania, takich jak backend developer, frontend developer, fullstack developer oraz posiada szereg dodatkowych umiejętności wspomagających w obszarze devops, rozumienia i współtworzenia dokumentacji projektowej, a także prawidłowej komunikacji i zarządzania w zespołach projektowych.
Zakres tematyczny oraz umiejętności uzyskane przez absolwentów w czasie studiów definiują opisy poszczególnych przedmiotów zawarte w programie.
Zaliczenie studiów: projekt dyplomowy
Kierownikiem studiów jest: dr inż. Paweł Figat pfigat@ms.wwsi.edu.pl
Studia realizowane zgodnie ze standardami projektu European Skills Alliance (ESSA)
Opis przedmiotów
l.p. | Nazwa przedmiotu | Krótki opis przedmiotu | Imię i nazwisko wykładowcy | Liczba godzin | Liczba ECTS |
---|---|---|---|---|---|
1. | Modelowanie i analiza systemów informatycznych | Celem przedmiotu jest zapoznanie studentów z: – technikami zbierania wymagań, identyfikacją i rozumieniem wymagań, narzędziami case, modelami i architekturą nowoczesnych rozwiązań. Celem przedmiotu jest: – zapoznanie i praktyczne przećwiczenie informacji w zakresie procesu zbierania wymagań w projektach informatycznych, – omówienie wzorców architektury – MDA, – informacje wprowadzające i porządkujące wiedzę w zakresie notacji UML oraz BPMN 2.0 , – notacja UML – omówienie podstawowych diagramów, – Case Study – warsztaty w zakresie odczytywania oraz interpretacji podstawowych diagramów UML, – elementy notacji BPMN 2.0 | Sebastian Kowalczyk | 3 | 2 |
2. | Zaawansowana inżynieria oprogramowania | Celem przedmiotu jest przekazanie praktycznych umiejętności odczytywania dokumentacji analitycznej stworzonej z wykorzystaniem standardów UML I BPNN, case study | Sebastian Kowalczyk | 3 | 2 |
3. | Podstawy i metody programowania | Celem przedmiotu jest zapoznanie studentów z: – przeglądem podstawowych zasad budowy aplikacji, – wykorzystaniem zalet programowania obiektowego, – zastosowaniem wybranych struktur danych w programowaniu, – problematyką zarządzania pamięcią (C++, JAVA,C#), – zasadami korzystania z Garbage Collector (JAVA,C#), – implementacją wybranych algorytmów z uwzględnieniem aspektów złożoności pamięciowej i czasowej, – technikami utrwalania informacji (zapis do plików, mechanizmy serializacji, zapis do bazy danych, konfiguracja ORM, podejścia database first i codefirst), – generowanie i testowanie kodów z wykorzystaniem AI | Paweł Figat | 11 | 3 |
4. | Tworzenie aplikacji z wykorzystaniem zintegrowanych środowisk programistycznych oraz AI | Celem przedmiotu jest zapoznanie studentów z: – zasadami budowania aplikacji z wykorzystaniem możliwości środowisk RAD i IDE (Embarcadero, Netbeans, Visual Studio), – projektowaniem interfejsów użytkownika, – zasadą inkluzywności, – dobrymi praktykami UI z naciskiem na rozwiązania desktopowe i mobilne, – platformą NoCode, LowCode, – generowaniem kodu, rozwiązaniami AI: Copilot, Amazon Q Developer, myninja.ai | Paweł Figat | 9 | 1 |
5. | Bazy danych w projekcie systemu IT | Celem przedmiotu jest zapoznanie studentów z: – tworzeniem modeli w podejściu relacyjnym, normalizacja modelu, transakcje, – zasadami budowy i korzystania z bazy dokumentowej w budowaniu aplikacji, – charakterystyką, budową i wykorzystaniem bazy grafowej, – wykorzystaniem AI do wsparcia realizacji zapytań oraz generowania danych testowych | Paweł Figat | 5 | 3 |
6. | Zaawansowane projektowanie obiektowe | Celem przedmiotu jest zapoznanie studentów z: – charakterystyką paradygmatu obiektowego – modelowaniem obiektowym z wykorzystaniem języka UML, – projektowaniem architektury systemu IT z wykorzystaniem technik obiektowych, – technologią tworzenia oprogramowania wspierających paradygmat obiektowy, – charakterystyką wzorców projektowych wykorzystywanych w programowaniu obiektowym, – utworzeniem przykładowej aplikacji Backend, stosując techniki obiektowe, – Case Study – warsztaty z tworzenia własnej aplikacji Backend przy wykorzystaniu technik obiektowych, – wzorcami projektowymi i architektonicznymi aplikacji, zasady: SOLID, CUPID, GRASP, – zasadami dokumentowania kodu, autodokumentowaniem | Michał Styś | 10 | 4 |
7. | Programowanie współbieżne | Celem przedmiotu jest zapoznanie studentów z zasadami: – tworzenia aplikacji wielowątkowych, – synchronizacji, – zakleszczenia (JAVA), – programowania agentowego | Paweł Figat | 3 | 1 |
8. | Testowanie jednostkowe | Cele kształcenia w ramach przedmiotu obejmują: – zrozumienie i praktyczne umiejętności w zakresie tworzenia, implementacji i utrzymania testów jednostkowych w oprogramowaniu. Studenci powinni nabyć umiejętności: – projektowania testów, – identyfikacji różnych typów testów jednostkowych oraz ich zastosowania w procesie tworzenia oprogramowania. Dodatkowym elementem jest zrozumienie znaczenia testowania jednostkowego w ramach procesów ciągłej integracji i wdrażania (CI/CD) oraz umiejętność efektywnego korzystania z narzędzi wspierających proces testowania jednostkowego. | Michał Styś | 2 | 2 |
9. | Projektowanie aplikacji i stron internetowych | Celem przedmiotu jest zapoznanie studentów z zasadami: – tworzenia makiet, – dobrych praktyk UX, – RWD (responsywność rozwiązań), – standardu WCAG i narzędziami do audytowania dostępności cyfrowej | Marcin Panawa | 4 | 1 |
10. | Tworzenie aplikacji i stron internetowych | Celem przedmiotu jest zapoznanie studentów z: – zasadami tworzenia rozwiązania dla warstwy frontendowej (JavaScript + Typescript), – tworzeniem rozwiązań webowych z wykorzystaniem: JSP, REST API, – testowaniem API (POSTMAN), – wprowadzeniem do frameworków Angular i React | Marcin Panawa | 16 | 4 |
11. | Przykłady wykorzystania i zarządzanie usługami chmurowymi nowoczesnych aplikacji | Celem przedmiotu jest zapoznanie studentów z: – przykładami wykorzystania usług chmurowych nowoczesnych aplikacji, – dobrymi praktykami w zakresie zarządzania usługami chmurowymi: monitorowanie, logowanie, zarządzanie zdarzeniami, skalowanie dynamiczne, optymalizacja kosztów | Darek Pałka | 10 | 2 |
12. | Metody i narzędzia CI & CD w procesach tworzenia oprogramowania | Celem przedmiotu jest: – omówienie podejścia DevOps w projektach IT, – przedstawienie narzędzi oraz technologii wspierających paradygmat DevOps, – zapoznanie z technologią konteneryzacji oraz orkiestracji kontenerów – Docker, Docker Swarm, Kubernetes, – przedstawienie automatyzacjai oraz skalowania aplikacji w kontenerach – Kubernetes, – poznanie środowiska CI/CD – Jenkins, GitLab, – przedstawienie systemów kontroli wersji – Git, – Case Study – organizacja pipeline CI/CD | Michał Styś | 9 | 2 |
13. | Podstawy zarządzania zespołem projektowym z wykorzystaniem metodologii zwinnych | Cele kształcenia: – zapoznanie studentów z istotą podejścia zwinnego do projektów wytwarzania oprogramowania na przykładach znanych podejść i metodyk zwinnych: SCRUM®, DevOps®, SAFe®), – przedstawienie zwinnego zarządzania zespołem projektowym w projektach wytwarzania oprogramowania, – pozyskanie przez studentów podstawowych umiejętności zarządzania zespołem projektowym z wykorzystaniem metodologii zwinnych (model 3.0), – rozwijanie umiejętności wspierających zwinny zespół projektowy (przykłady) | Waldemar Łabuda | 8 | 1 |
14. | Seminarium dyplomowe | Celem przedmiotu jest zapoznanie studentów z zasadami przygotowania i prezentacji projektu dyplomowego | Paweł Figat | 0 | 2 |
Harmonogram
Terminy zajęć/ semestr 1 | Tryb |
---|---|
1. 9-10.11.2024 | Stacjonarnie |
2. 23-24.11.2024 | Zdalnie |
3. 7-8.12.2024 | Zdalnie |
4. 21-22.12.2024 | Zdalnie |
5. 11-12.01.2025 | Zdalnie |
6. 18-19.01.2025 | Zdalnie |
7. 1-2.02.2025 | Zdalnie |
8. 15-16.02.2025 | Stacjonarnie |
Pierwszy i ostatni zjazd w każdym semestrze odbędzie się stacjonarnie w uczelni. Pozostałe spotkania będą prowadzone online przy użyciu aplikacji Teams.