1 Popis ucelené problémové domény Následující komplexní příklad se týká domény Správa 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). 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).
MZP
Žá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). 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
ZP
zbrojního průkazu vytištěny, jsou přebírány od MZP. 3. 4. 5. 6.
Nový ZP se tiskne speciálním strojem a je neprodyšně zataven (nelze do něj nic doplňovat). Každý ZP je evidován samostatně, podobně jako MZP. Osoba vlastní pouze jeden ZP a nemusí vlastnit žádné zbraně. 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-
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: Zbraň
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 Správa 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. 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 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.
1.1
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-
Správa soukromých zbraní na teritoriu ČR
Správa MZP
Statistiky a vyhledávání
Správa klientů
Správa ZP
Správa zbraní a PZ Obrázek 1: Prvotní procesní pohled na doménu
1.2
Výběr zájmových procesních podsystémů a jejich popis
Příklad je platný pro celou doménu.
1.3
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. 2. 3. 4. 5.
Správa zbraní a Průkazů zbraní. Správa majitelů ZP. Správa ZP. Správa klientů. Statistiky a vyhledávání. <
> Správa majitelů ZP
1
<>
<> 2 .
Správa zbraní a průkazů zbraní <>
.7 <> Statistiky a vyhledávání
4
<> <>
.
<>
<>
. 5 <> <> . .<>
.
.3
Správa zbrojních průkazů <>
6
Správa 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
Správa zbraní a průkazů zbraní (ZP)
Správa majitelů ZP
Správa zbrojních průkazů (ZP)
Správa výstupních sestav
Správa statistiky a vyhledávání
Správa klientů
BD
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-