Nazwa przedmiotu:
Testowanie w teleinformatyce
Koordynator przedmiotu:
Krzysztof Brzeziński
Status przedmiotu:
Obowiązkowy
Poziom kształcenia:
Studia II stopnia
Program:
Telekomunikacja
Grupa przedmiotów:
Przedmioty techniczne - zaawansowane
Kod przedmiotu:
TEWTE
Semestr nominalny:
4 / rok ak. 2018/2019
Liczba punktów ECTS:
5
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
Bilans nakładu pracy przeciętnego studenta: - udział w wykładach: 15 x 2 godz. = 30 godz. - przygotowanie do wykładów (przejrzenie notatek): 15 x 0.5 godz. = 7.5 godz. - udział w konsultacjach ogólnych (przy założeniu, że student dwukrotnie korzysta z 0.5 godz. konsultacji w semestrze): 1 godz. - przygotowanie do kolokwium: 6 godz. - udział w laboratoriach: 3 x 4 godz. = 12 godz. - przygotowanie do laboratoriów: 3 x 6 godz. = 18 godz. - udział w konsultacjach projektowych (przy założeniu, że student trzykrotnie korzysta z 1 godz. konsultacji w semestrze): 3 godz. - realizacja projektu (wszystkie elementy łącznie) = 45 godzin - przygotowanie do egzaminu: 12 godz. - konsultacje przed egzaminem: 1 godz. Łączny nakład pracy studenta wynosi zatem 135.5 godzin, co odpowiada 5 punktom ECTS.
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
Nakład pracy studenta związany z zajęciami wymagającymi bezpośredniego udziału nauczycieli akademickich: 30 + 1 + 3 + 6 (udział nauczyciela akademickiego w laboratorium) + 1 + 4 (udział nauczyciela akademickiego w odbiorze projektu) = 45, co odpowiada ok. 2 punktom ECTS
Język prowadzenia zajęć:
polski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
Nakład pracy studenta związany z zajęciami praktycznymi: 12 + 10 (uruchamianie projektu) = 22 (co odpowiada ok. 1 punktowi ECTS)
Formy zajęć i ich wymiar w semestrze:
  • Wykład0h
  • Ćwiczenia0h
  • Laboratorium0h
  • Projekt0h
  • Lekcje komputerowe0h
Wymagania wstępne:
Od studenta oczekuje się wiedzy i umiejętności z zakresu przedmiotu APPT.
Limit liczby studentów:
26
Cel przedmiotu:
1. Ukształtowanie rozumienia testowania jako przedmiotu dziedziny naukowej (“testologii"), z jej zbiorem paradygmatów, teorii, środowiskowych “szkół” (w tym - telekomunikacyjnej i informatycznej) oraz wzorców dla zastosowań praktycznych w poszczególnych dziedzinach. 2. Zapoznanie studentów ze zbiorem środków wyrazu (języków), metod, technik i narzędzi, w tym - standaryzowanych, służących do empirycznej oceny zachowania systemów teleinformatycznych. 3. Wyrobienie umiejętności przełożenia konkretnego problemu testowego na struktury i obiekty programowe systemu testowego, z elementami zaimplementowania takiego systemu i posłużenia się nim.
Treści kształcenia:
Wykłady: (2h) Wprowadzenie ogólne. Niezbędne instrumenty formalne (teoria mnogości, logika, modele). System: struktura i zachowanie. (2h) Postulowana nauka o testowaniu – "testologia". Testowanie a konstruowanie systemów: cykl życia, weryfikacja i walidacja. Pojęcie testowania - definicje. Poza-techniczne (epistemologiczne) podstawy testowania. Obiekty i role w testowaniu. (2h) Pojęcia: poprawność i niepoprawność (błąd, defekt, usterka); cele testowania; hipotezy testowe; wykonanie testu, wynik testu, werdykt; jakość zestawu testów: pokrycie (coverage), adekwatność (soundness, exhaustiveness, completeness); problem wyroczni (oracle) i testowanie metamorficzne; problem wyboru (test selection); testowanie w kontekście; rozproszenie; asynchronizm. Podstawowe klasyfikacje metod i rodzajów testowania. Istota "model-based testing". (3h) Telekomunikacyjne i informatyczne koncepcje testowania i ich ekspozycje w standardach. Testowanie w praktyce telekomunikacyjnej: standaryzacja testów i metod / środków testowania. Testowanie zgodności - standard przemysłowy ISO9646. Pragmatyczne projektowanie zestawów testów. (4h) Język TTCN-3. (2h) Struktury systemów testowych TTCN-3. Integracja systemu testowego. (2h) Aspekty formalizacji i automatyzacji. Formalizacja testowania zgodności - standard ITU-T Z.500. (3h) Relacje poprawności (równoważności, quasi-porządku): śladów (trace), obserwacyjnej, testowej, ioco (Tretmans). Testowanie z systemów przejść (LTS, IOTS). Elementy teorii: May/Must testing (de Nicola, Hennessy); tester kanoniczny. (3h) Testowanie z modeli automatowych (FSM, EFSM). Elementy teorii: generowanie preambuły, sekwencji sprawdzającej / identyfikującej stan (W, E, UIO), sekwencji powrotnej (homing). Automatyczne i wspomagane generowanie testów. (3h) Rozszerzenia: testowanie w kontekście, uwzględnianie niepewności (niewierności) obserwacji, testowanie nadążne (on-line, on-the-fly), testowanie bierne – istota, algorytmy, zastosowania. (2h) Testy innych klas w praktyce telekomunikacyjnej. Niestandardowe zastosowania mechanizmów testowania. Laboratorium: Laboratorium składa się z trzech ćwiczeń, o następującej tematyce: 1. Język TTCN-3. Napisanie, uruchomienie w środowisku TTCN-3 i przeprowadzenie testów, mających na celu wykrycie usterek w zachowaniu wskazanego systemu. Część 1 – dla odpowiednio spreparowanej implementacji szkoleniowej. 2. J.w. Część 2 – dla rzeczywistego systemu telekomunikacyjnego. 3. Testowanie i monitorowanie systemu rzeczywistego. Wykorzystując rzeczywisty system telekomunikacyjny klasy ISDN/IP oraz profesjonalne przyrządy pomiarowe, studenci wykonują polecenia prowadzącego z zakresu monitorowania i testowania zachowania systemu. Projekt: Projekt jest wykonywany, nominalnie, w grupach 3-osobowych. Polega na opracowaniu aplikacji komputerowej z merytorycznego zakresu przedmiotu. Przykładowe tematy projektów to: 1. Integracja systemu testowego TTCN-3 (w tym – zrealizowanie bloku adaptera i bloku kodera-dekodera) tak, by możliwe było faktyczne wykonanie prostych testów systemu rzeczywistego. 2. Zaprojektowanie i wykonanie automatycznego, algorytmicznego generatora testów. 3. Zaprojektowanie i wykonanie uniwersalnego testera biernego dla warunków symulowanych.
Metody oceny:
Sprawdzanie osiągnięcia założonych celów kształcenia w zakresie oceny sumatywnej jest realizowane poprzez: - sprawdzanie wiedzy i umiejętności wykazanych na kolokwium i egzaminie pisemnym o charakterze testu zamkniętego, z elementami otwartymi (możliwe zadanie problemowe); w razie wątpliwości sprawdzanie następuje w formie indywidualnego egzaminu ustnego; - sprawdzenie wiedzy, umiejętności i kompetencji społecznych wykazanych podczas ćwiczeń laboratoryjnych: runda dyskusji lub krótkie kolokwium wstępne, uzupełniająca ocena bieżąca, sprawozdanie z ćwiczenia - sprawdzenie wiedzy, umiejętności i kompetencji społecznych wykazanych przy realizacji projektu: ocena zademonstrowanego efektu i jego dokumentacji finalnej; złożona wcześniej dokumentacja wstępna jest poddawana jedynie ocenie formatywnej Sprawdzanie osiągnięcia założonych celów kształcenia w zakresie oceny formatywnej następuje poprzez interaktywne elementy wykładów, podczas bezpośrednich kontaktów ze studentem w ramach ćwiczeń i konsultacji (wykładowych i projektowych), oraz poprzez złożenie uwag prowadzącego do wstępnej dokumentacji projektowej.
Egzamin:
tak
Literatura:
1. K. M. Brzeziński, Wprowadzenie do testowania protokołów telekomunikacyjnych. IT P.W., skrypt, 2006-2010 2. D.Lee, M.Yannakakis, “Principles and Methods of Testing Finite State Machines - A Survey”, Proceedings of the IEEE, 1996, 84, 1090-1126 3. Standardy: ITU-T X.29x, ETSI EG 202 237, ETSI ES 201 873-x (TTCN-3), ISTQB “Standard Glossary of Terms Used in Software Testing”, ITU-T Z.500 4. IEEE SWEBOK chap.5 5. Zapewniane przez prowadzącego materiały pomocnicze – artykuły / rozdziały z prac na temat testowania oraz kopie prezentacji wykładowych 6. (pomocniczo) Broy, M.; Jonsson, B.; Katoen, J.; Leucker, M. & Pretschner, A. (ed.), Model-Based Testing of Reactive Systems, Springer, 2005, LNCS 3472 7. (pomocniczo) Spillner, A.; Linz, T; Schaefer, H., Software Testing Foundations, Rockynook, 2007
Witryna www przedmiotu:
https://studia.elka.pw.edu.pl/
Uwagi:
Przy realizacji laboratorium i ew. projektu (dla niektórych grup projektowych) wykorzystuje się licencjonowane środowisko testowe TTCN-3 TTWorkbench oraz bezpłatne narzędzie Loong Testing.

Efekty uczenia się

Profil ogólnoakademicki - wiedza

Charakterystyka TWT1-W1
Zna pojęcia związane z testowaniem systemów (w szczególności – z opartym na modelu testowaniem zachowania systemów teleinformatycznych), w ramach szerszego zespołu pojęć dotyczących ich projektowania i empirycznej weryfikacji / walidacji, z uwzględnieniem różnic środowiskowych dotyczących terminologii oraz założeń i oczekiwań.
Weryfikacja: kolokwium, egzamin
Powiązane charakterystyki kierunkowe: K_W03, K_W10
Powiązane charakterystyki obszarowe: I.P7S_WG
Charakterystyka TWT1-W2
Zna klasyfikacje i charakterystyki rodzajów (klas) testów wyróżnianych w telekomunikacji i informatyce, z odniesieniem do standaryzacji
Weryfikacja: kolokwium, egzamin
Powiązane charakterystyki kierunkowe: K_W03, K_W04, K_W14
Powiązane charakterystyki obszarowe: I.P7S_WG

Profil ogólnoakademicki - umiejętności

Charakterystyka TWT1-U1
Potrafi scharakteryzować cele, zasady, główne teorie i mechanizmy wytwarzania zestawów testów oraz dobrać kombinację tych elementów odpowiednią do zadanego problemu i stopnia pożądanej / możliwej formalizacji i automatyzacji
Weryfikacja: egzamin, projekt
Powiązane charakterystyki kierunkowe: K_U06, K_U09, K_U15
Powiązane charakterystyki obszarowe: III.P7S_UW.3.o, I.P7S_UW, I.P7S_UO, III.P7S_UW.2.o, III.P7S_UW.4.o, III.P7S_UW.1.o
Charakterystyka TWT1-U2
Potrafi zidentyfikować i opisać ograniczenia metod testowych (fundamentalne – w stosunku do metod opartych na manipulacji formalnej, pragmatyczne, a także wynikające z niedoskonałości elementu empirycznego) oraz wskazać praktyczne konsekwencje i sposoby minimalizacji tych ograniczeń.
Weryfikacja: egzamin, projekt
Powiązane charakterystyki kierunkowe: K_U06, K_U08, K_U10
Powiązane charakterystyki obszarowe: I.P7S_UW, III.P7S_UW.1.o, III.P7S_UW.3.o, III.P7S_UW.2.o
Charakterystyka TWT1-U3
Potrafi zinterpretować zapis testu sporządzony w języku TTCN-3, samodzielnie zapisać w tym języku prosty zestaw testów oraz pokierować integracją systemu testowego TTCN-3 (wskazując zadania do wykonania i odpowiednie źródła informacji szczegółowej bądź samodzielnie wykonując te zadania)
Weryfikacja: egzamin, laboratorium
Powiązane charakterystyki kierunkowe: K_U09, K_U10
Powiązane charakterystyki obszarowe: I.P7S_UW

Profil ogólnoakademicki - kompetencje społeczne

Charakterystyka TWT1-K1
Potrafi rozwiązywać w grupie zadania projektowe
Weryfikacja: projekt, laboratorium
Powiązane charakterystyki kierunkowe: K_K01
Powiązane charakterystyki obszarowe: I.P7S_KO