1 Popis ucelené problémové domény Následující komplexní příklad se týká domény soukromých zbraní v ČR (SSZ v ČR) Ukážeme nejdříve její obecný popis, ale nebudeme se přísně držet současně platného zákona o soukromých zbraních SSZ v ČR sama o sobě není IS české policie, ale spíše jeho součástí Sama o sobě je víceméně samostatná a v bázi IS policie má vydělitelnou část V této doméně jsou rozhodující informace o majiteli zbrojního průkazu (MZP), o samotných zbrojních průkazech (ZP), o zbraních a průkazech zbraní (PZ) Modifikace a vytváření informace o MZP, ZP, zbrani a PZ náleží jen administrátorovi daného okresu, tj podle trvalého bydliště MZP Je-li zbraň zakoupena, musí být podle zákona do jisté doby zavedena do používání Prodejce vydává ke zbrani výsledek její výrobní kontroly (osvědčení o správné funkcionalitě, nástřelný terč, vše s podpisy státem delegovaných kontrolorů) Zbraň je potom zavedena do systému policejním administrátorem v daném okrese, tj vytvoří se informace o jejím zavedení a asociaci s MZP Je-li to zákonem stanoveno, zbraň musí být kontrolována a výsledek zapsán do báze dat (viz dále) MZP 1 Každý majitel Zbrojního průkazu je v bázi cílového software evidován, tedy vede se o něm následující informace: MZP = (ID majitele ZP, jméno a příjmení, rodné číslo, fotografie, trvalé bydliště, ID žádosti, ID lékařského vysvědčení, ID vysvědčení o zkoušce) Žádný jiný občan ČR, než ten který má zavedený zbrojní průkaz, není v bázi cílového software evidován S MZP souvisí Žádost formulář (ŽF) o vydání nového ZP, Lékařské vysvědčení (LV) o způsobilosti používat a vlastnit zbraň dané kategorie, Vysvědčení o zkoušce (VZ) ze znalosti a manipulaci se zbraní dané kategorie/-í a aktuální fotografii (viz dále ZP) ZP 2 Zbrojní průkaz (ZP) je samostatná datová entita se strukturou ZP = (eviden číslo, platnost do, ID majitele ZP, kategorie zbraní: A F, kdo vydal) Atributy jméno a příjmení, rodné číslo, fotografie a trvalé bydliště, které jsou na kartičce zbrojního průkazu vytištěny, jsou přebírány od MZP 3 Nový ZP se tiskne speciálním strojem a je neprodyšně zataven (nelze do něj nic doplňovat) 4 Každý ZP je evidován samostatně, podobně jako MZP 5 Osoba vlastní pouze jeden ZP a nemusí vlastnit žádné zbraně 6 K vydání nového ZP je nutno předložit několik dokumentů: a Žádost formulář (ŽF) o vydání nového ZP b Lékařské vysvědčení (LV) o způsobilosti používat a vlastnit zbraň dané kategorie c Vysvědčení o zkoušce (VZ) ze znalosti a manipulaci se zbraní dané kategorie/-í d Aktuální fotografii 7 Se záznamem nového ZP se musí vytvořit nový záznam pro MZP 8 ZP je možno odebrat (pochopitelně potom i vlastněné zbraně) na základě několika skutečností (zhoršení zdravotního stavu, odsouzení k závažnému nepodmíněnému trestu, nepřípustné použití zbraně, ) 9 Může dojít k situaci, že ZP je nutno aktualizovat (změna vzhledu, změna příjmení, změna bydliště, rodného čísla, změna oprávnění na kategorie zbraní) Pak se musí aktuální ZP zničit a -1-
Zbraň vyrobit nový, editovaný Proto se může evidovat i pořadí vydání nového ZP 10 Řízení informace v uvedených procesech je dovoleno jen administrátorovi okresního velitelství policie ČR, tj stanovenému důstojníkovi na policejním velitelství 11 Každá zbraň musí být důsledně evidována Relevantní informace o samotné zbrani, se získají z prodejního dokumentu Prodejka zbraně (PROZ), kde je uvedeno: PROZ = (název zbraně, výrobní číslo zbraně, druh zbraně, ráže, výrobce, kategorie zbraně (A, B, ), datum výroby, prodejce, datum prodeje, cena, ID majitele zbraně) K Prodejce zbraně je přiložena Výstupní kontrola zbraně (VKZ) z výrobního podniku, která obsahuje identifikaci osoby, která kontrolu provedla a rovněž terč s výsledkem střelby tří ran na vzdálenost 25 metrů Tedy eviduje se následující informace: VKZ = (ID kontroly, výrobní číslo zbraně, druh zbraně, ráže, ID kontrolora, výsledek kontroly) Entita Zbraň je velmi důležitou datovou entitou systému soukromých zbraní v ČR a rozhodující je výrobní číslo zbraně Evidence zbraně obsahuje následující informaci: ZBRAN = (výrobní číslo zbraně, ID majitele ZP, datum nabytí zbraně, stav zbraně) V doméně může dojít k situaci, že zbraň je ztracena, nebo ukradena V každém případě je majitel zbraně povinen situaci hlásit Informace o ztrátě je vedena v entitě ZTRÁTA = (ID ztráty, výr č zbraně, ID majitele, datum hlášení, protokol) Vzhledem k této situaci musí být o zbrani důsledně veden její stav PZ 12 Ke každé zbrani se musí vytvořit Průkaz zbraně (PZ) Je v něm několik relevantních údajů z Prodejky zbraně (PRZ) Tedy PZ = (eviden číslo, druh zbraně, výrobce, vzor, ráže, výrobní číslo zbraně, kategorie, ID majitele, registrace u, datum registrace) Průkaz zbraně je tedy vázán na majitele zbraně, přes ID majitele zbraně, a je platný pro celou ČR Na PZ je informace o majiteli vytištěna (jméno, příjmení a rodné číslo) 13 Každý Majitel zbraně musí být evidován a identifikován (včetně fotografie) a určeno místo jeho pobytu Mimo jiné musí mít Zbrojní průkaz 14 Každá zbraň musí být pravidelně předkládána ke kontrole a kontrola musí být evidována Tedy o Kontrole zbraně by měla být vedena následující informace: KZ = (ID kontroly, datum kontroly, druh zbraně, výrobní číslo zbraně, výsledek kontroly) Poznámka Na tištěných průkazech, tj ZP, PZ je ID majitele reprezentováno příjmením, křestním a rodným číslem 11 Hrubé schéma procesních podsystémů a jejich popis Začátek úvah o logické architektuře cílového software vychází z členění fyzické problémové domény na skupiny, nebo množiny procesů Procesní podstata problémové domény je tedy zde pro logickou architekturu rozhodující Pro naši doménu SSZ v ČR má schéma Prvotního procesního pohledu na problémovou doménu následující tvar: -2-
soukromých zbraní na teritoriu ČR Statistiky a vyhledávání MZP ZP klientů zbraní a PZ Obrázek 1: Prvotní procesní pohled na doménu 12 Výběr zájmových procesních podsystémů a jejich popis Příklad je platný pro celou doménu 13 Procesní modelování podsystémů Procesní diagramy pro 1, 2 a 3 vrstvu procesů Návrh procesů 1 vrstvy Návrh procesů 2 vrstvy Eriksson-Penkerovi diagramy 2 Hrubé schéma Logické architektury a popis její filosofie Ze znalosti funkcionality problémové domény Evidence soukromých zbraní v ČR můžeme poznat následující skupiny/podsystémy procesů a souvislosti mezi nimi (oddělili jsme Správu MZP od Správy ZP) Vzniklo pět podsystémů 1 zbraní a Průkazů zbraní 2 majitelů ZP 3 ZP 4 klientů 5 Statistiky a vyhledávání zbraní a průkazů zbraní 7 Statistiky a vyhledávání 2 4 1 majitelů ZP 3 5 zbrojních průkazů 6 klientů -3-
Obrázek 2: Schéma hrubé funkční závislosti v doméně Pomocí předchozího schématu jsme sestavili Schéma hrubé funkční závislosti v problémové doméně se závislostní relací Sestavili jsme schematický Přehled architektury, který je složen z Prvotního schématu logické architektury a jeho deskripce: a) Prvotní schéma logické architektury pro doménu SSZ v ČR: Komunikace s klienty výstupních sestav zbraní a průkazů zbraní (ZP) statistiky a vyhledávání BD majitelů ZP zbrojních průkazů (ZP) klientů Obrázek 3: Prvotní schéma Logické architektury Uvedené schéma můžeme nazvat schématem podsystémů, nebo modulů cílového software Budeme používat termín podsystémy Schéma je opravdu prvotním schématem, protože je oproštěno od zobrazení jakéhokoliv interního života každého z podsystémů a rovněž oproštěno od zobrazení vzájemného, externího života podsystémů Pokud bychom jen stručně načrtli vizi vývoje cílového software, v souvislosti s uvedeným schématem, tak je nutno říci následující: 1 Procesy, tedy požadavky komputerizace budou rozděleny do jednotlivých podsystémů, podle jejich sémantiky 2 Jestli mapujeme požadavky na případy užití, tak vzniklé případy užití padnou do stejného podsystému jako jejich vzor-požadavek 3 Jestli nalezneme realizaci případu užití pomocí skupiny svázaných analytických tříd, tak tyto třídy padnou do stejného podsystému, v kterém je vzorový případ užití 4 Jestliže mapujeme každý z podsystémů do skupiny jeho komponent, přechází prvotní schéma pro logickou architekturu do složitého komponentového modelu a) Systém potřebuje centrální řízení komunikace s klienty, které umožní nejen autentizaci a autorizaci, ale i organizaci plnění jejich požadavků Klienti mohou spouštět jednotlivé podsystémy Veškerá informace podsystémů je uložena v bázi dat Podsystém Řízení statistiky nebude využívat ostatní podsystémy (jak je ve funkčním modelu), ale jen jejich data z báze dat-bd -4-
Podsystém Řízení výstupních sestav bude organizovat výstup podle připravených výstupních šablon v podsystému Řízení statistiky -5-