Posted in: Vývoj počítačů

SW nástroje pro podporu testování

Fáze testování

  • Správa požadavků
  • Správa testovacích případů
  • Exekuce funkčních testů
  • Exekuce zátěžových testů
  • Bugtracking
  • Reporting

HP Quality Center

  • Pokrývá celý proces testování
  • Je řešen jako web aplikace včetně administračního modulu
  • Při prvním spuštění na klientském PC jsou nutná práva admina, z důvodu instalace ovládacích komponent
  • Má otevřené API rozhraní
  • Model požadavků je řešen adresářovou strukturou se stromovým zobrazením
  • Možnost výběru ze tří pohledů
  • Analytický pohled: přehled o stavu pokrytí požadavků testy a o stavu testování vzhledem k požadavkům
  • Stromový pohled
  • Tabulkový pohled
  • Test resources je modul globální repozitory pro testovací případy; ukládá parametry testů formou tabulek i jednotlivých parametrů
  • Modul test plan: slouží k uložení a správě entit spojených s testováním možnost získání statistik o průběhu příprav testů i testování
  • Test lab: sestavuje z testů sady, umožňuje kombinovat manuální a automatizované testy; nastavuje návaznosti a podmínky zpuštění testů; obsahuje hp sprintner který automatizuje manuální testy;
  • Defect: slouží pro evidenci a zprávu identifikovaných neshod; obsahuje vyhledávač a filtr atributů dle parametrů evidovaných u neshod; případě změny dává e-mailem notifikaci a uchovává historii všech změn

HP Quicktest Professional

  • Je nástrojem pro automatizované testy
  • Aktivity se zařazují pomocí kontextových menu
  • Běh skriptu je řízen MS Excel tabulkou
  • Pomocí basic je možné doprogramovat problémová místa skriptu

HP Byznys Availability Center

  • Slouží pro monitoring IT provozů
  • Disponuje pasivním a aktivním monitoringem
  • Pasivní monitoring sleduje chování prostřednictvím atributů získaných od OS
  • Aktivní monitoring sleduje systém z ohledu koncového uživatele; provádí se buď skriptem, nebo sledováním komunikace na daném prvku sítě

Pasivní monitoring

  • Obstarává aplikace SiteScope
  • Agentový přístup: instalace fyzické sondy na aplikační server a jeho konfigurace pro monitoring
  • Bezagentový přístup: připojí se k serveru pomocí jména a hesla a využívá standartní nástroje OS

Aktivní monitoring

  • Spouštění připraveného testovacího skriptu v daném časovém intervalu, kdy skript ověřuje průchodnost dotazu či odpovědi
  • Instalace agenta na PC koncového uživatele a sledování konkrétních činností
  • Odposlech síťové komunikace před aplikačním nebo web serverem

Hp loadrunner

  • Slouží pro zátěžové testování

Test management a další podpůrné nástroje

  • Ke všem nástrojům existují i free varianty
  • Free nástroje se užívají hlavně na malých projektech
  • Správu požadavků na testování mají: Quality Center, SilkCentral, Rational, JIRA, Vienna, TFS
  • TFS je nadstavbou visual studia pro správu testů

Bugtracking

  • Je nejrozšířenějším podprocesem testování
  • Možnost užití free nástroje mantis, který umožňuje práci s přílohami, má rychlou a jednoduchou instalaci

SilkCentral Test Manager

  • Je řešen formou klient server a ovládáním přes webové rozhraní
  • Vyniká ofline nástroji pro manuální tetování
  • Umožňuje dynamickou alokaci HW
  • Má flexibilní licenční model

Rational Quality manager

  • Je druhý nejrozšířenější nástroj v ČR
  • Vestavěné nástroje metrik na návratnost investic známé jako ROI
  • Implementováno RBT
  • Funkce vyhledávající duplicity v seznamu defektů

JIRA

  • Je snadno rozšiřitelný pomocí plugin modelů
  • Má otevřený zdrojový kód
  • Vzdálené rozhraní SOAP usnadňující integraci

Mantis

  • Pokrývá pouze bugtracking
  • Je free
  • Umožňuje práci s více projekty v rámci jedné instalace
  • Integrace do prostředí zákazníka pomocí SOAP
  • Plně podporuje technologie mobilních telefonů

Bugzila

  • Je rozšířena především u vývoje web aplikací
  • Slouží k bugtrackingu
  • Umožňuje provoz na https komunikaci
  • Umožňuje fulltextové vyhledávání
  • Customizace pomocí šablon
  • Umožňuje přidělení práv jednotlivým skupinám uživatelů

Vienna

  • Je jak free tak placená
  • Freeware je pouze v desktop edici
  • Generuje reporty do MS Word
  • Leze exportovat i importovat celé projekty
  • Generuje automatické popisy defektů formou přílohy
  • Export projektu do MS Excel
  • Integrace s MS Sharepoint

Request Tracker

  • Kromě bugtrackingu je užíván pro help desk
  • Rozhraní je uzpůsobeno i pro práci s mobilními telefony
  • Dobře zmáknutý reporting
  • Oboustranná interakce pomocí e-mailu, odpovědí na notifikaci je možné aktualizovat databázi

TFS

  • Pokryje celý životní cyklus testování
  • Dobrá integrace do MS Office
  • Je možné verzovat scénáře
  • Reporting probíhá pomocí SQL
  • Web konzole
  • Podporuje i vývoj
  • Podpora automatizovaného testování
  • Umožňuje virtualizované testování
Posted in: Studijní materiály, Vývoj počítačů

Základy testování

  • Často dochází k neúplné specifikaci požadavků ze strany klienta
  • Je nutné v průběhu vývoje průběžně ověřovat, zda je navrhované řešení to, které je zákazníkem požadováno

Quality Asurance (QA)

  • Je řízený proces ověřování kvality jednotlivých procesů a výstupu realizovaných produktů
  • Hlavním principem je metoda DMAIC vycházející z cyklu PDCA a je užívána strategií metodiky SIX SIGMA
  • Znamená zajištění kvality, nikoliv její zjištění
  • Proces testování funguje v QA jako měřidlo s jehož pomocí se koriguje výstupní produkt

Metoda DMAIC

Fáze definice

  • specifikuje cíle a získává informace
  • popisuje stav, kterého má být dosaženo
  • popisuje způsob užitého měření
  • určuje tým řešitelů
  • popisuje se proces, který má být zlepšen
  • definuje se plán, který má obsahovat jednotlivé činnosti, jež jsou třeba k odstranění problému
  • nazýváno define

Fáze měření

  • probíhají předem definovaná měření
  • odlišují se domněnky od skutečnosti
  • provádí se:
    • revize kódu
    • dokumentů
    • vlastní testování funkční aplikace
    • revize užitého procesu
  • nazýváno measure

Fáze analýzy výsledků

  • analyzuje měření
  • zjišťuje skutečný potenciál pro zlepšení
  • základem je analýza příčin problémů, nedostatků, nespokojenosti
  • zjišťuje se, zda je opravdu řešen původní problém
  • nazýváno Analyse

Fáze návrhu zlepšení

  • základem zlepšení je odstranění skutečné příčiny
  • nastavují se nové parametry procesu a jeho optimalizace
  • vše se dělá pro zvýšení spokojenosti zákazníka
  • součástí je i zlepšení nákladů, přínosů pro zákazníka
  • nazýváno desing improvements

Fáze řízení zlepšeného

  • je-li problém úspěšně odstraněn, nebo je dosaženo zlepšení tak se děje následující
  • všechny změny se zavádí, standardizují do procesu nebo systému
  • přesvědčí se, zda jsou změny řádně uplatněny a zda jsou užity každodenní činností
  • stanovuje se období, ve kterém se sleduje dosažení stanovených výsledků
  • nazýváno Control

Řízení projektu

Fáze akviziční

  • vymezen skoup projektu
  • jsou definovány oblasti řešení
  • určuje strategie testování
  • provádí se odhady pracnosti všech aktivit
  • definují se hlavní milníky projektu

Fáze návrh

  • probíhá IT analýza
  • vzniká dokument IT solution, který schvaluje zadavatel jako potvrzení pochopení požadavků na řešitelské straně
  • po schválení IT solution jsou zahájeny práce na detailním návrhu, který slouží jako zadání pro vývojáře
  • pro oblast testování vzniká dokument plán testů, kde jsou definovány oblasti, které budou testovány (požadavky na testování)
  • je upřesněn odhad pracnosti
  • jsou definovány milníky testování

Fáze provedení

  • probíhá vlastní vývoj SW řešení
  • probíhá příprava testů a testovacího prostředí
  • příprava testovacích dat
  • realizace jednotlivých stádií testů
  • vývojové, SIT, UAT a TAT testy

Fáze ukončení projektu

  • řešení je nasazeno, předáváno do rutinního provozu
  • je komplementována dokumentace
  • akceptační protokoly
  • je vypracováno závěrečné hodnocení projektu

Diagram životního cyklu tvorby SW

  • Je nazýván V-Diagram
  • Znázorňuje, co se ve které fázi projektu testuje a proti jaké dokumentaci
  • Vývojové testy probíhají proti detailnímu návrhu
  • Testy komponent probíhají proti IT solution
  • Testování systému probíhá formou integračních testů proti systémovým požadavkům
  • Akceptační testování probíhá proti uživatelským požadavkům, kde jsou formulovány produkty a jejich vlastnosti
  • Pokud dojde k vynechání jednoho ze vstupů, nemůže být testování úspěšné
  • Chybějící podklady je nutné sehnat jinak, třeba konzultací se zadavatelem, což není vždy možné

Diagram nákladů na opravu chyb

Ukazuje náklady na opravu chyby v jednotlivých částech vývoje

Testování

Validace

  • Probíhá v různých fázích projektu
  • Účastní se jí různé role pracující na projektu
  • Ověření, že uživatelské požadavky odpovídají potřebám uživatele je prováděno IT analytikem ve spolupráci s View analytikem
  • Vyjasňují se jednotlivé pojmy a způsob práce uživatele a možnosti užité technologie
  • Technologie je omezujícím faktem některých změnových řízení
  • Provádí-li se ověřování je možné práce ukončit dříve, nežli se projekt naplno rozběhne a případné technologické limity budou zjištěny později
  • Je nutno ověřit, že kvalitativní požadavky odpovídají způsobu práce koncového uživatele a současně umožňují splnit uživatelské požadavky v plném rozsahu jak z hlediska funkčnosti, tak z hlediska výkonosti systému
  • Ve fázi vniku návrhu řešení je nutné se soustředit i na to, zda je návrh schopen kvalitativní požadavky naplnit, nebo je nutné je zrevidovat, či pozměnit navrhované řešení
  • Posledním krokem je otestování, zda jsou splněny uživatelské požadavky tak, jak byly schváleny (provádí tester ve stádiu SIT testů)

Verifikace

  • Je finální přejímka zboží zákazníkem
  • Ověřuje, že je možné produkty pomocí SW řešení realizovat
  • Provádí UAT tester (zadavatel) v rámci stádia UAT testů
  • V případě pilotního provozu přímo koncový uživatel

Důležité!

  • Testování znamená měřit
  • Je nutné znát jednotlivé měřitelné požadavky a jednoznačná kritéria jejich naplnění
  • Je nutné ověření již ve fázi definice uživatelských požadavků
  • Netestovatelné požadavky jsou ignorovány, řešení nemusí splňovat představy uživatele
  • Je nutná revize neúplných požadavků => zpoždění projektu
  • Kritéria pro schválení řešení se nazývají akceptační
  • Akceptační kritéria by měla být nadefinována zároveň se zadáním požadavků
  • Typická akceptační kritéria jsou: 0 chyb závažnosti kritická nebo velká, maximálně 5 chyb závažnosti střední s definovaným workraundem a určeným termínem jejich odstranění, maximálně 15 chyb závažnosti malá s určeným termínem odstranění, odezvy kritických operací budou do 3s, nekritické operace s odezvou maximálně 15s.
  • Musí být jednoznačně definovány typy závažnosti s uvedením příkladů
  • Musí být definováno, co je kritická a co je nekritická operace
  • Je nutné si uvědomit, že testováním je možné chyby odhalovat, ale ne garantovat bezchybnost aplikace
  • Akceptační kritéria připouštějí nasazení řešení s identifikovanými chybami
  • Akceptační kritéria:
    • Ukazatel, který měříme
    • Metriku, která bude užita
    • Hodnotu, která je akceptační hladinou
  • Častý je požadavek: systém poskytne uživateli přiměřenou odezvu na běžném internetovém připojení a to i v situaci, kdy pracuje v systému většina uživatelů

Typy testů a základní pojmy

  • Prvním krokem ke sjednocení bylo definování metody FURPS (dělí typy testů dle jasně daných hledisek)

Dělení typů

  • Dle stádia (SIT, AUT, TAT)
  • Dle znalosti kódu (white-box, black-box)
  • Dle způsobu provedení (manuální, automatizované)
  • Dle potřeby běžící aplikace (statické, dynamické)
  • Dle účelu (funkční, zátěžové, instalační, smoke…)
  • Dle podmnožin (funkční – UNIT, assembly, integrační, smoke)

Hlediska FURPS

  • Funkcionality (funkčnost)
  • Usability (užitečnost)
  • Reliability (spolehlivost)
  • Performance (výkonnost)
  • Supportability (rozšiřitelnost)

Metoda FURPS

  • Určuje způsob testování
  • Lez užít jen některé ze skupin testů, ale je nutné vyhodnotit rizika s tím spojená

Typy testů v časové ose projektu

  • Zátěžový a penetrační test má smysl realizovat až v době končících UAT testů, protože mají ověřovat až finální stav řešení před předáním do funkčního prostředí a jejich výsledky bývají součástí akceptačního protokolu

Stádium testů

  • Rozdělení testů dle realizace v časové ose v rámci životního cyklu vývoje SW řešení a v rámci procesu testování

White-box testy

  • Jsou vývojové testy ověřující správnost funkčnosti jednotlivých algoritmů a metod, pomocí automatizovaných testů
  • Je k dispozici příslušná dokumentace, binární a zdrojový kód testované aplikace
  • Provádí je mimo jiné UNIT testy

Black-box testy

  • Je základním testem zdrojového kódu
  • Účelem je ověřit správnost datových typů a logiky kódu
  • Testování probíhá bez znalosti vnitřní datové a programové struktury
  • Známé jsou vstupy a očekávané výstupy

UNIT testy

  • Testování malých nezávislých částí kódu, funkčností jednotlivých dílčích algoritmů, v rámci některého z vývojových nástrojů
  • Typickým znakem je, že nedochází k zápisu do DB

Assembly testy

  • Navazují na UNIT testy
  • Jsou prováděny vývojáři
  • Ověřují spolupráci dílů otestovaných UNIT testy
  • Jsou kombinací UNIT a black-box testů
  • Tester zná částečně strukturu kódu

Funkční testy

  • Ověřují správnost dílčích výstupů na základě připravených vstupů do jednotlivých modulů
  • Patří sem i UNIT testy
  • Užívá se především v SIT testech

Integrační testy

  • Jde o manuální funkční testy
  • Ověřuje schopnost komunikace metod a modulů
  • Užívá se především v SIT testech
  • U rozsáhlých systémů jsou nutnou součástí akceptačního testování

End to end testy

  • Jsou manuální integrační testy ověřující celý byznys proces vybraného produktu
  • Neověřuje dílčí funkčnost, ale klade důraz na realizovatelnost produktu v celém životním cyklu
  • Užívá se především v UAT testech

Výkonnostní testy

  • Měří výkonnost systému z pohledu koncového uživatele
  • Slouží k ladění systému, nebo ke zjištění výkonnostních limitů
  • Dělí se dle cíle testu
  • Back mark, zátěžový, akceptační, low test, test výkonnostního profilu, ladění výkonu…

Bezpečnostní testy

  • Může mít zastoupení již při revizi návrhu řešení
  • Ověřuje architekturu
  • Pomocí rewyou kódu hledá napadnutelná místa kódu
  • Ověřuje loginy
  • Významnou formou jsou penetrační testy, kde se tester pokouší prolomit ochranné mechanismy
  • Jsou jak manuální, tak automatizované

Regresní testy

  • Zjišťují, zda nová verze aplikace nemá vliv na její původní funkcionalitu
  • Užívají se při ověřování opravy chyb, kde je ověřeno okolí chyby, kam oprava neměla zasáhnout

Instalační testy

  • Ověřují správnost dokumentace v návaznosti na instalační postup
  • Ověřují správnou funkčnosti instalačních postupů

Technologické testy

  • Slouží k ověření použitelnosti testovacího nástroje na danou aplikaci
  • Ověřují kompatibilitu použité technologie ve stávající SW a HW konfiguraci
  • Ověřují také možnost užití podprůměrného testovacího nástroje (WinRunner)

Smoke testy

  • Je modifikací funkčního testu, kdy je v krátké době přezkoušena základní funkčnost
  • Užívá se k ověření správnosti instalace SW

Funkční specifikace

  • Je komplexní analytické zadání požadavků, nebo skupiny požadavků
  • Jde o množinu analytických dokumentů, algoritmů a diagramů, které slouží jako zadání pro programátory
  • Pro podporu analytické práce existují nástroje využívající UML nástroje

Testovací skript

  • Obsahuje sekvenci činností testera při testování aplikace zkonvertovanou do formy programového kódu
  • Používá se pro automatizované funkční testy
  • Pro automatizované testy existují nástroje, které usnadňují konverzi do programového kódu, umožňují nahrání testovacího skriptu a jeho další úpravy
  • Často je pojem využíván i pro manuální testy

Zátěžový skript

  • Je obdobou testovacího skriptu v úpravě pro paralelní spouštění více uživatelů na jednom stroji
  • Existují podpůrné nástroje tvorby

RUP

  • Je obecná komplexní metodika vývoje SW
  • Slouží jako podklad pro nadefinování postupu testů s ohledem na stávající firemní zvyklosti

Role v testování

  • RUP přiděluje odpovídajícím společným aktivitám určitou roli
  • Test manažer je kompletně odpovědný za proces testování
  • Test analyst provádí test analýzu a určuje oblasti testování, monitoruje naplnění strategie testování a podílí se na vyhodnocení jednotlivých iterací
  • Test designer je odpovědný za určení všech detailů jednotlivých testů, které se váží k jednotlivým test cases, určuje strategii tesů, zajišťuje všechny podklady pro úspěšnou implementaci všech částí testování
  • Test deployment exekutiv je odpovědný za implementaci, nasazení, vykonání a vyhodnocení veškerých částí testů dle vytvořených návrhů a specifikacích testů, koordinuje přípravu test prostředí; nemá rozhodovací pravomoc jen pravomoc pro koordinaci podřízených rolí
  • Test implementer je odpovědný za implementaci svěřených částí testů; připravuje testovací sady
  • Test executor je odpovědný za vykonávání přidělené sady testů a protokolování výsledků z přidělené sady
  • Test auditor kontroluje správnost testovacích postupů, dodržování metodik, zásad a standardů
  • V praxi dochází ke kumulaci rolí
Posted in: Studijní materiály, Vývoj počítačů

Základy UML

  • UML je standart v oblasti objektově orientovaných analýz

Základní cíle

  • Poskytnutí použitelného visuálního modelovacího jazyka pro vytváření a výměn smysluplných modelů
  • Poskytnout mechanismy rozšiřitelnosti a specializace pro rozšíření základních konceptů
  • Vytvořit specifikaci nezávislou na konkrétních programovacích jazycích a procesech vývoje a analýzy
  • Poskytnout formální základ pro pochopení modelovacího jazyka
  • Podporovat rozvoj objektových nástrojů
  • Podporovat vývojové koncepty jako jsou koncepty spolupráce, pracovní rámce a vzory
  • Zahrnout best practice
  • Vznikají metodiky, které sjednocují výhodné notace a postupy jednotlivých metod
  • Současná verze je 2.3
  • Verze 2.3 je visuální modelovací jazyk umožňující zachytit a opsat strukturální a dynamické aspekty SW systému

Definice

  • Je standart konsorcia OMG pro záznam, vizualizaci a dokumentaci artefaktů systémů s převážně SW charakteristikou
  • Definuje 13 základních druhů diagramů
  • Smyslem je vytvořit obecně srozumitelný pohled
  • UML není metodika

Pokytuje

  • Notaci
  • Syntaxi, jako standart pro zobrazení a popis modelů
  • Pravidla pro pojmenovávání
  • Pravidla pro rozsah platnosti
  • Pravidla pro rozsah viditelnosti
  • Pravidla pro omezení
  • Pravidla pro provedení modelu
  • Různé specifikace
  • Rozšiřitelnost jako jsou stereotypy, dodané hodnoty
  • Obsahuje mechanismy pro jeho další rozšíření dle konkrétních potřeb projektu
  • Nejčastěji je spojován s modelováním OO SW, ale má širší uplatnění

Úrovně využívání

  • Zavádí a standardizuje přehlednou grafickou notaci
  • Zle užít přímo (zakreslení obrázku návrhu), nebo zpětně (zakreslení již existujícího kódu)
  • Slouží jako dokumentační prostředek k dokumentaci systému nebo jeho části
  • Užíváme jako programovací jazyk, ze kterého ze kterého se skutečná implementace (její kostra) generuje

Součásti

Notace (syntaxe)

  • Při analýze požadavků se často jako nástroj komunikace mezi zadavatelem a řešitelem využívá modelování
  • Vznikají různé modely systému, které mohou být na této úrovni ověřovány, testovány a upravovány
  • Po dosažení schody mezi analytikem a zadavatelem je cílový model implementován do konkrétního jazyka a přeložen
  • Notace definuje, jak se zapisují základní pohledy na modelovaný systém

Metamodel UML(sémantika)

Jazyk OCL pro popis omezení v modelech

Specifikace převodu do výměnných formátů (CORBA, IDL, XML)

Diagramy

  • Zachycují různé pohledy (aspekty) modelovaného systému, který nemusí být vyjádřen jen jedním UML diagramem
  • Pomocí balíčků je možné diagramy slučovat do jednoho organizovaného celku => jeden pohled na systém může vyjadřovat více diagramů
  • Statickou strukturu systému vyjadřují diagramy tříd (znázorňují datový model systému od koncepční úrovně až po implementaci), spolupráce, komponent a nasazení
  • Funkční stránku popisují model jednání (dokumentují možné případy užití systému – události na které systém musí reagovat), diagramy aktivit, scénáře událostí a diagramy spolupráce
  • Dynamickou stránku popisují stavové diagramy, scénáře událostí, diagramy spolupráce(zachycují spolupráci a komunikaci objektů) a diagramy aktivit
  • Scénář činnosti popisuje scénář průběhu určité činnosti v systému
  • Stavové diagramy – popisují dynamické chování objektu nebo systému, možné stavy a přechody mezi nimi
  • Diagramy aktivit – popisují průběh aktivit procesu či činnosti
  • Diagramy komponent – popisují rozdělení výsledného systému na funkční celky a definují náplň jednotlivých komponent
  • Diagramy nasazení – popisují umístění komponent na výpočetní uzly informačního systému
  • Hierarchie diagramů UML 2.0:
  • Diagram objektů: je snímkem objektů a jejich vztahů v systému v určitém časovém okamžiku
  • Diagramy komunikace – dříve diagram spolupráce, zachycují komunikaci a spolupráci objektů
  • Diagramy vnitřní struktury – umožňují znázornit interní strukturu komplexního prvku (třídy, komponentu) a zobrazit spolupráci tohoto prvku neboli klasifikátoru s ostatními prvky systému
  • Diagram přehledu interakcí – srozumitelně a přehledně znázorňuje větvení i souběžnost a zachycuje procesy protínající více případů užití
  • Diagram časování – patří do skupiny diagramů interakcí a umožňuje modelování systémů pracujících v reálném čase
  • Elementy:
  • Vztahy mezi elementy:

Diagramy tříd

  • Zobrazují statickou strukturu
  • Rozlišuje několik druhů tříd, abstraktní, parametrizované atd.
  • Stavy pojící třídy: asociace, agregace, kompozice, specializace, generalizace

Diagram objektů

  • Zobrazuje objekty jako instance tříd a jejich vztahy
  • Je instancí diagramu tříd

Diagram balíčků

  • Umožňuje získat přehled o vztazích elementů rozsáhlých systémů

Diagram případů užití

  • Je soubor případů užití, aktérů a jejich vztahů
  • Každý případ užití popisuje posloupnost událostí
  • Aktér je entita inicializující posloupnost

Diagram komponent

  • Ukazuje fyzický pohled na systém, strukturu SW komponent a závislostí mezi nimi včetně klasifikátorů, které je specifikují a artefaktů (soubory se zdrojovými nebo binárními kódy)

Diagram vnitřní struktury

  • Zobrazuje vnitřní strukturu klasifikátoru včetně jeho interakčních bodů s ostatními částmi systému
  • Ukazuje spojení částí, které společně vykonávají chování klasifikátoru
  • Umožňuje rozložit komplexní objekt na jednotlivé části a zobrazit jeho strukturu

Diagram nasazení

  • Zobrazuje strukturu uzlů, kde jsou komponenty rozmístěny
  • Definuje konfiguraci spustitelných položek a SW komponent, procesů a jimi spouštěných komponent
  • Instance SW komponent reprezentují běžící projevy jednotek SW kódu
  • Komponenty, které neexistují jako běžící entity se na diagramu nezobrazí

Diagram aktivit

  • Dříve nazýván vývojový diagram

Stavový diagram

  • Slouží k modelování dynamického chování a změn v systému
  • Prezentují stavy objektů, přechody mezi stavy a ukazují počáteční a koncový bod změn
  • Zachycuje stav jediného objektu

Sekvenční diagram

  • Popisují spolupráci skupiny objektů za účelem specifického chování
  • Patří mezi nejčastěji užívané diagramy interakcí
  • Popisuje chování objektu v rámci jednoho scénáře

Diagram komunikace

  • Zobrazuje účastníky interakce a datová spojení mezi nimi
  • Zobrazuje jiným způsobem podobnou informaci jako sekvenční diagram
  • Dovoluje volné vkládání účastníků, jejich propojování čarami spojení a pomocí číslování zobrazovat sekvence správ
  • Je vhodnější při zobrazení spojení

Diagram přehledu interakcí

  • Je variantou diagramu aktivit, které dávají přehled o toku řízení v rámci systému
  • Základem jsou uzly výskytu výskytů interakcí spojené toky řízení
  • Každý prvek diagramu může být reprezentován jiným interakčním diagramem
  • Užívá symboly diagramu aktivit
  • Uzly jsou reprezentovány interakcemi a výskytem interakcí

Diagram časování

  • Je jeden z diagramů interakce, kde se zaměřujeme na změny omezení uvnitř a mezi čarami života podél lineární časové osy
  • Diagramy zachycují změny stavů nebo podmínek objektu nebo role ve vztahu k času
  • Nejčastěji zachycují změny stavu jako reakce na vnější události

OCL

  • Je čistě funkcionální jazyk
  • Neexistuje globální paměť
  • Je silně typový jazyk (každý výraz má definován typ)
  • Primitivní typy: Integer, Boolean, String, Real, Unlimitedinteger
  • Kolekce: Set, Bag, Collection, Sequence,
Back to Top