Studia Podyplomowe: Testowanie Oprogramowania
Informacje ogólne
Studia podyplomowe "Testowanie oprogramowania" powstały w efekcie ścisłej współpracy Instytutu Informatyki i Matematyki Komputerowej UJ z grupą doświadczonych praktyków zajmujących się zarządzeniem jakością w projektach software'owych oraz rekrutacją i edukacją testerów oprogramowania, analityków i menadżerów testów. Studia skierowane są do:
- testerów, inżynierów jakości i innych osób odpowiedzialnych za zapewnianie i kontrolę jakości w projektach software'owych,
- pozostałych pracowników firm informatycznych
- wszystkich rozważających wybór nowej ścieżki kariery związanej z profesjonalnym zapewnianiem jakości oprogramowania.
Studia skierowane są zarówno do osób posiadających wykształcenie ścisłe/techniczne, jak i osób o innym profilu wykształcenia. Poziom zaawansowania prezentowanych zagadnień będzie dostosowany do poziomu zaawansowania słuchaczy.
Słuchacze poznają techniki i narzędzia stosowane w testach manualnych i automatycznych, ich wykorzystanie do testowania aplikacji desktopowych, webowych i mobilnych, nauczą się jak dokumentować efekty swojej pracy oraz jak zarządzać procesem testowym. Zajęcia prowadzone są przez doświadczonych specjalistów i w przeważającej części opierają się na ćwiczeniach praktycznych.
Kadrę dydaktyczną stanowią w większości praktycy z firm z branży IT z wieloletnim doświadczeniem zawodowym w obszarze testowania i zapewniania jakości oprogramowania. Ćwiczenia i laboratoria mają formę zajęć praktycznych w pracowniach komputerowych.
Czas trwania i koszt studiów
Studia podyplomowe "Testowanie oprogramowania" trwają dwa semestry i są płatne, a limit przyjęć wynosi 30 osób. Koszt całych studiów (2 semestry) wynosi 6000 PLN.
Dla chętnych słuchaczy istnieje możliwość przystąpienia do egzaminu certyfikacyjnego ISTQB Certyfikowany Tester - Poziom Podstawowy ze zniżką, ze względu na umowę ze Stowarzyszeniem Jakości Systemów Informatycznych. Cena egzaminu: 640 PLN (cena rynkowa: 800 PLN).
Sylwetka absolwenta
Absolwent ma wiedzę w zakresie podstaw testowania i zapewniania jakości oprogramowania. Zna i rozumie potrzebę wdrożenia procesu testowego w firmie. Ma wiedzę w zakresie technik projektowania testów oraz zarządzania procesem testowym. Zna i rozumie potrzebę (sensownego) dokumentowania procesu testowego. Ma wiedzę w zakresie automatyzacji testów.
Absolwent potrafi projektować, implementować i wykonywać efektywne przypadki testowe. Jest w stanie profesjonalnie analizować wymagania funkcjonalne i niefunkcjonalne pod kątem defektów. Potrafi opracować plan testów dostosowany zarówno do projektu testowego jak i procesu wytwarzania oprogramowania. Potrafi ocenić opłacalność automatyzacji testów w organizacji. Umie zautomatyzować testy nadające się do automatyzacji. Potrafi zaplanować, przygotować i skonfigurować środowisko testowe, przeprowadzać nadzór i kontrolę nad przebiegiem procesu testowego oraz zarządzać zespołem testerów w organizacji. Potrafi efektywnie komunikować się ze wszystkimi interesariuszami w projekcie.
Zasady rekrutacji
Rekrutacja na rok akademicki 2020/2021:
Rekrutacja kandydatów odbywa się przez System Internetowej Rekrutacji Kandydatów.
Ramowy plan studiów
Semestr zimowy:
Podstawowe techniki i narzędzia testowania oprogramowania
20h konwersatorium + 20h laboratorium
8 punktów ECTS
Treści programowe: Zawód testera oprogramowania i możliwe ścieżki kariery. Miejsce i rola testowania, cykl życia testów, dobre praktyki. Wymagania funkcjonalne i niefunkcjonalne. Testowanie wymagań. Tworzenie przypadków, scenariuszy i procedur testowych. Czarno- i białoskrzynkowe techniki projektowania testów. Raportowanie wyników testów; cykl życia defektu. Środowisko i dane testowe. Testowanie eksploracyjne. Testowanie a metodyki zwinne. Testowanie niefunkcjonalne.
Podstawy programowania w sieci Internet
20h laboratorium
7 punktów ECTS
Treści programowe: Podstawowe informacje o protokole TCP/IP. Komunikacja z bazami danych, wzorce projektowe Active Record i Data Access Object. Podstawy protokołu http. JavaScript, HTML 5, CSS 3. Model DOM. XML, webserwisy. AJAX i JSON. Sniffery i podglądanie przesyłanych pakietów.
Systemy baz danych
20h laboratorium
8 punktów ECTS
Treści programowe: Rola i znaczenie baz danych; architektury baz danych. Relacyjny model danych. Język SQL. Przetwarzanie i optymalizacja zapytań SQL. Strategie tworzenia kopii zapasowych oraz ich odtwarzania. Dzienniki transakcji.
Wybrane elementy systemów operacyjnych
20h laboratorium
7 punktów ECTS
Treści programowe: Operacje na plikach, narzędzia (grep, awk, itp.). Pisanie skryptów w powłoce systemu (Linux, Windows). Odczytywanie i monitorowanie parametrów systemu (np. zużycie zasobów: pamięci, dysków, procesora); zarządzanie zasobami. Wirtualizacja, VMWare.
Semestr letni:
Techniki i narzędzia automatyzacji testowania oprogramowania
20h konwersatorium + 20h laboratorium
14 punktów ECTS
Treści programowe: Wprowadzenie do automatyzacji. Selenium IDE + Webdriver. Page Object Pattern, Selenium Grid. Data Driven Testing, JBehave, JMeter. soapUI.
Zarządzanie i dokumentowanie procesu testowania
20h konwersatorium + 10h laboratorium
2 punkty ECTS
Treści programowe: Planowanie i szacowanie testowania. Nadzór i kontrola procesu testowego. Metryki i raportowanie. Doskonalenie procesu testowego. Zarządzanie zespołem testerów. Umiejętności miękkie w pracy testera. Testowanie w kontekście zapewniania jakości. Przeglądy, inspekcje i audyty.
Praktyczne wprowadzenie do programowania
30h laboratorium
14 punktów ECTS
Treści programowe: Program zajęć dostosowany będzie do umiejętności i potrzeb uczestników studiów. Obejmować będzie następujące zagadnienia: Wprowadzenie do programowania. Paradygmaty (w tym programowanie strukturalne, obiektowe). Programowanie w językach skryptowych. Programowanie w językach wysokopoziomowych (np. Java).
Patronem merytorycznym i medialnym studiów jest portal testerzy.pl.
Osoba publikująca: Maciej Skwirczyński