ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ FAKULTA STROJNÍ ÚSTAV PŘÍSTROJOVÉ A ŘÍDICÍ TECHNIKY ODBOR AUTOMATICKÉHO ŘÍZENÍ A INŽENÝRSKÉ INFORMATIKY Aplikace objektově orientovaných metod pro analýzu a návrh řídicích systémů složitých komplexů Prof. Jiří Bíla
Vývoj přístupů k analýze složitých komplexů.
Stručný nástin vývoje OMT a UML Model Entity – Relationship Codd et al statické vztahy mezi entitami OOA Coad, Yourdon 1990 Objektově orientovaná analýza DFD DeMarco 1978 Diagram toku dat State diagrams Ward, Mellor 1985 Stavové diagramy OOSE Jacobson 1994 Zavedení Use-Case OMT Rumbough et al Objektová modelovací technika Object-oriented design Booch 1991 komponentový diagram, diagram nasazení Unified Method 0.8 Rumbaugh, Booch 1995 UML UML OMG – Object Management Group UML
Základní pojmy OMT a UML – Objektový diagram
Základní pojmy OMT a UML – Stavový diagram
Z pohledu analytika – „Je splněno zadání?“ Z pohledu zadavatele – „Plní systém požadovanou funkci?“ Z pohledu experta – „Dokáži se orientovat v modelech, abych je mohl zkontrolovat?“ Z pohledu implementátora – „Jsou modely napsány korektně pro implementaci?“ Z pohledu optimálnosti – „Jsou modely nejlepší z možných (srovnatelných)?“ Korektnost návrhů
Aplikace OMT a UML na analýzu složitého komplexu.
Automobilový tunel Mrázovka – řídicí software
Přístupy k metodě hodnocení vytvořených modelů v UML.
HODNOCENÍ VARIANT
Přehlednost a jednoduchost
Přehlednost a jednoduchost modelů - Substrátně strukturní entropie u1 u2u3 u4u5 u7 u6 u8 a1a2 a3 a5 a4 a7 a6 Kde: n – počet uzlů, m – počet vazeb e ik – počet dvojic vázaných vztahem i, který vychází z uzlu k
Objektové diagramy - Substrátně strukturní entropie
SAT ATMPČR
Objektové diagramy - Substrátně strukturní entropie SAT ATMPČR
Stavové diagramy - Substrátně strukturní entropie
Substrátně strukturní entropie objektových modelů kde n – počet všech stavů v celém modelu (včetně Start a Stop stavů), m – počet všech stavových přechodů [%] Objektové / třídové diagramy kde n – počet všech tříd / objektů v celém modelu, m – počet všech vazeb (asociací, agregací, …) e ik – počet dvojic tříd / objektů vázaných vazbou i, která vychází ze třídy / objektu k Stavové diagramy
Optimálnost
Optimálnost modelů - Modifikovaná Míra Explanační Koherence Explanační koherence (H. Takeda 1994): kde e je celkový počet specifikací (#S), N je celkový počet vrcholů důkazového grafu a N ij je počet vrcholů s k v důkazovém grafu, pro který existuje sekvence přímých hran z vrcholu s k do vrcholu s i a zároveň z vrcholu s k do vrcholu s j (vrcholy s k, s i, s j jsou části specifikace) Abduktivní přístup: Na dané znalosti K aplikujeme návrh řešení D S. Výsledek porovnáme s požadavky S. Postupnými kroky za neustálého rozšiřování znalostí K dosáhneme daných požadavků S.
Optimálnost modelů - Modifikovaná Míra Explanační Koherence Množina Asociovaných Znalostí X Množina X Asociovaných Znalostí je získána jako výsledek Dotazovací fáze – hledání chyb ve struktuře UML modelu a hledání nadbytečných informací v tomto modelu. K této množině X definujme další dvě množiny: … množina koeficientů důležitosti; … množina koeficientů objektové kategorie Množina Koeficientů důležitosti Tyto koeficienty jsou získány libovolnou expertní metodou při zachování dvou podmínek: čím větší „důležitost“, tím vyšší je hodnota ; hodnoty koeficientů musí být v intervalu 1, 2 . Množina Koeficientů objektové kategorie Hodnota koeficientů j je dán konceptuální kategorizací: 0 = { (třída) = 1,75; (objekt) = 1,65; (vazba) = 1,5; (závislost) = 1,4; (atribut) = 1,3; (operace) = 1,2 } Kontext návrhového problému Příklad: CNX = { (SOS_Skříň; 1,3; 1,75); (Hasiči; 1,2; 1,3); …
Optimálnost modelů - Modifikovaná Míra Explanační Koherence Závislost (Nezávislost) Asociovaných Znalostí Definice 1.: Asociované znalosti x 1, x 2 jsou závislé (DNT(x 1,x 2 )), jestliže splňují jednu (nebo obě) z následujících podmínek: - Změna (variace) x 1 je spojena se změnou x 2. - Použití x 1 v řešení problému vylučuje použití x 2. V této práci je přitom uvažován pouze kvalitativní aspekt vztahu DNT, nikoli jeho vliv. Definice 2.: Asociované znalosti x 1, x 2, které nejsou závislé, jsou uvažovány jako nezávislé (IND(x 1,x 2 )). Vztah DNT (resp. IND) je vyjádřen pomocí kvalitativní matice M Q typu: X1X1 X2X2 X3X3 X4X4 X5X5 X1X X2X2 100 X3X3 10 X4X4 1 X5X5 Pole 1 zde znamenají, že znalost x i je závislá na znalosti x j
Optimálnost modelů - Modifikovaná Míra Explanační Koherence Modifikovaná Míra Explanační Koherence kde indexy (j,k) odpovídají prvku 1 v Kvalitativní Matici M Q (tyto 1 reprezentují páry (x j,x k ), každý s hodnotou ( j, j ), ( k, k ). Koeficienty ( e, e ) jsou ty větší z obou). N je počet X. Maximální a Relativní Modifikovaná Míra Explanační Koherence EC R = EC M / EC MAX
Optimálnost modelů - Modifikovaná Míra Explanační Koherence
a) b)
Optimálnost modelů - Modifikovaná Míra Explanační Koherence
Software podporující aplikaci metod SSE a EC m.
Program UMLEvaluation - screenshots