Vrstvy HLA a LLA¶
Úvod¶
High Level Analysis (HLA) a Low Level Analysis (LLA) jsou dvě analytické vrstvy AAF, které popisují systém ze dvou různých úhlů — z okolí a zevnitř — a drží tyto kontexty oddělené. Mezi nimi stojí Use Case 1. druhu jako vstupní brána do systému — jediný prvek, přes který se vrstvy potkávají.
HLA popisuje kontext použití systému z okolí,
LLA popisuje kontext realizace vnitřku IS při použití,
UC 1. druhu tyto dvě vrstvy propojuje jako jediná brána mezi nimi.
Stejnou logikou pracuje i OOP:
Interface vyjadřuje kontext nabídky služby pro okolí objektu,
Implementovaná metoda vyjadřuje kontext realizace.
VMT nebo jiný mechanismus dynamického dispatchingu, např. message dispatch či runtime dynamic lookup, spojuje obě vrstvy jako brána.
Rozdělení HLA a LLA je přímou aplikací Objektového paradigmatu (viz kapitola Objektové paradigma) na prvek typu Use Case 1. druhu (viz kapitola Use Case 1. druhu): vnější pohled na UC zakládá HLA, vnitřní pohled zakládá LLA.
Tok děje prochází nejprve procesem (okolí systému),
dále pokračuje přes bod použití (alias cinknutí systému, stisknutí tlačítka) do scénáře UC,
poté pokračuje ve scénáři UC
a vrací se zpět ven s užitkem (s užitkem, pokud scénář skončí jako Happy Scenario, viz dále).
Jedná se o přímou analogii toku děje jako při volání metody objektu.
Požaduje se neustálé sledování této základní myšlenkové konstrukce ve shodě se zákazníkem, tj. je třeba vyžadovat souhlas product ownera s tímto dějem ve zmíněných kontextech "co se děje venku" ⇒ "použití přes UC" ⇒ "co se děje uvnitř".
Chod procesu i s použitím UC musí odpovídat požadovanému chování celku.
Tímto se plní základní požadavek axiomu Value Based Management a je neustále udržována konzistence systému s užitkem pro zákazníka.
AAF tuto konstrukci doplňuje o agilní metody postupů vývoje (viz dále) a možnosti nasazení AI.
High Level Analysis¶
High Level Analysis (HLA) je vrstva analýzy zachycující kontext okolí při použití systému. Předmětem HLA je kde, kým, v jakém procesu a v jakém bodě se systém použije, a proč — tedy pro jaký užitek. Use Case v HLA vystupuje jako tlačítko, jako služba užitku, kterou okolí použije. Synonymem pojmu High Level Analysis je HLA (zkratka).
HLA pokrývá:
- Procesy okolí, ve kterých systém vystupuje jako prvek nabízející služby užitku. Procesy jsou popsány v BPMN AAF Lite syntaxi a textovým scénářem procesu.
- Body použití systému v textu procesu — okamžiky, kdy proces volá UC. Tyto body se nazývají cinknutí systému (viz dále).
- Identifikace UC přes body použití. Procesní popis říká, které UC je třeba a proč; obsah UC (jeho scénář) do HLA nepatří.
- Chody procesů se použijí tam, kde je třeba vyjádřit logiku posloupnosti procesů. Je to povinné pro tzv. Zlatý klíčový proces a další vedlejší klíčové procesy (viz dále)
- Rozklad procesů do stromu — systematické rozložení procesů rozkladem do oblastí řešení, zejména strategický pohled na to, které procesy nesou hodnotu užitku a které jsou podpůrné (tzv. tanečky okolo).
Rozlišující znaky¶
HLA × BPM. BPM popisuje procesy okolí, HLA je doplňuje o body použití systému a o identifikaci UC. BPM bez identifikovaných cinknutí není HLA.
HLA × LLA. HLA popisuje kontext okolí. LLA popisuje kontext realizace. Hranicí mezi nimi je brána jako UC 1. druhu.
UC 1. druhu jako vstupní brána do systému¶
Use Case 1. druhu je vstupní brána do systému. Plní dvě role: je jediným místem, ve kterém okolí může systém použít, a je jediným přechodem mezi vrstvami HLA a LLA.
Brána je jeden prvek, který vidíme zvenku i zevnitř. Z HLA má podobu tlačítka se jménem užitku. Z LLA má podobu scénáře realizujícího tento užitek a Class Modelu omezeného na entity dotčené tímto UC. Žádný z těchto pohledů nepopisuje bránu úplně; teprve oba dohromady ji vystihují.
Pojmy vnější pohled a vnitřní pohled zavádí v obecné rovině Objektové paradigma (viz kapitola Objektové paradigma). Detailní výklad UC 1. druhu jako prvku — šablona děje od rovnováhy k rovnováze, sedm kroků, pravidla pojmenování — je v kapitole Use Case 1. druhu.
Cinknutí systému¶
V textu procesu okolí (HLA) musí být přesně specifikován bod použití systému — okamžik v ději, ve kterém proces volá UC, tedy stiskne tlačítko brány. Tento bod má v AAF také název cinknutí systému pro analogii s cinknutím tlačítka ve výtahu, se synonymem bod potřebnosti použít systém.
Cinknutí je přesný okamžik předání řízení z HLA do LLA. V textu procesu se s každým cinknutím uvádí, který UC se v daném bodě použije a proč — pro jaký užitek. Slovo proč je nosné: jméno UC vyjadřuje právě užitek, který okolí získává, a tím se v textu procesu zakládá vazba na pojem užitku, na kterou pak naváže LLA při popisu realizace.
Bližší popis cinknutí jako prvku HLA — zápis v BPMN AAF Lite, vztah k chodu procesu, vztah k UC Story — viz dále v kapitole Prvky HLA.
Low Level Analysis¶
Low Level Analysis (LLA) je vrstva analýzy zachycující kontext realizace užitku slíbeného branou. Předmětem LLA je popis toho, jak systém uvnitř realizuje to, co tlačítko brány v HLA slibuje. Synonymem pojmu Low Level Analysis je LLA (zkratka).
LLA má dvě složky:
- Scénář UC — popis kroků, které systém uvnitř UC vykonává od cinknutí do předání užitku zpět okolí. Scénář pracuje s pojmovým slovníkem systému, který zavádí Class Model (viz dále). Pravidla psaní scénářů jsou v kapitole Principy scénáře UC.
- Class Model — pojmový slovník systému. Plný výklad je v kapitole Class Model AAF Lite Syntaxe (viz dále).
Rozlišující znaky¶
LLA × Design. LLA je součástí Analytického modelování (AM); míra detailu implementace zůstává 0 % (viz kapitola Analytické modelování — LLA). Scénář UC popisuje kroky pojmově, ne v cílové technologii. Přechod z LLA do Designu je mapování a probíhá agilně v návaznosti na artefakty LLA.
LLA × HLA. LLA popisuje vnitřek brány. HLA popisuje vnějšek brány. Vrstvy se nemísí.
Nejčastější chyby¶
Mísení HLA a LLA. V dokumentu HLA se objeví popis vnitřního scénáře UC, anebo v dokumentu LLA popis děje okolí. Vrstvy přestanou držet kontext odděleně, čtenář ztrácí orientaci, kde končí okolí a začíná realizace. Příčinou bývá nepochopení role brány jako jediného přechodového prvku. Stejně tak se tato chyba vyskytuje u vyjádření děje pomocí Activity diagramu s promíchanými vrstvami HLA a LLA.
Záměna UC za pohled jen na jednu ze stran brány. Chybou je laická diskuse ve smyslu UC je o užitku XOR „UC je o algoritmu uvnitř". Chyba je v XOR (výlučnost), protože UC je obojí, je to brána (ta má také dva pohledy - zvenku a zevnitř). Z pohledu HLA je UC o užitku (tlačítko), z pohledu LLA je o algoritmu (scénář). Je to dvojí pohled na týž prvek, ne kontradikce. Kořen chyby leží v podcenění Objektového paradigmatu.
Pohlcení HLA v BPM. Analytik popisuje procesy podniku jako BPM a vyrobí dokument, ve kterém UC nikde není — proces neukazuje cinknutí, neukazuje, kde a proč se systém použije. HLA se od BPM liší přidáním bodů použití systému; bez nich popisem zůstává čisté BPM. Představa, že nejprve uděláme BPM (například agendy úvěrů) a pak teprve funkcionality, je hrubou chybou. Po několika měsících práce se velká část vyhodí, protože mezi HLA a LLA je zpětná vazba: Volba jiného lepšího algoritmu vede ke změně chodu procesu. Chod děje musí být konzistentní venku i uvnitř.
LLA bez vazby na užitek. Scénář UC popisuje algoritmus odpojený od užitku, který tlačítko v HLA slibuje. Důsledek: scénář může na svém konci doručit jiný výsledek, než vyjadřuje název UC, aniž by si toho autor všiml. Správný scénář drží zaháčkování na užitek explicitně — v úvodní formulaci nebo v indikátoru ukončení.
Vazby¶
TBD
Verze a změny¶
| Verze | Změny |
|---|---|
| 1.0 | První zveřejněná verze kapitoly. |