Jak správně psát scénáře k případům užití?

Podobné dokumenty
Případy užití (use case) Projektování SW systémů

Úvod do principů objektově orientovaného programování

Rady pro tvorbu USE CASE MODELU, rada první: Jak pracovat s pojmy ve scénářích UC

Objektová tvorba SW, Analýza požadavků 2006 UOMO 53

Třetí část odpovědi na mail ohledně zpracování případů užití, aneb jak je to s číslováním pořadí případů užití

Metodika analýzy. Příloha č. 1

Druhá část odpovědi na mail ohledně zpracování případů užití

Proč je analytický model IS nutným předpokladem pro zabránění tvorbě molochálních systémů

O JEDNÉ ČASTÉ CHYBĚ PŘI ROZKLADU PROCESŮ PODNIKU ANEB KDY MÁME UKONČIT ROZKLAD PROCESŮ PODNIKU?

Šumperský efekt rozmnožení případů užití

JEDNODUCHÁ A PRAKTICKÁ METODA ODHADU PRACNOSTI PROJEKTU (S UTILITOU KE STAŽENÍ ZDARMA)

Analýza a Návrh. Analýza

Obsah. Zpracoval:

NAUČTE SE MALOVAT SI INSTANCE!

Pokročilé typové úlohy a scénáře 2006 UOMO 71

RUP - Disciplíny. Jaroslav Žáček jaroslav.zacek@osu.cz

Odpověď na dotaz ohledně asociační třídy v modelu měření

S KONFIGURACÍ POVOLENÝCH KOMBINACÍ DĚDICŮ

Aplikační Dokumentace Standardy ICT MPSV

Kurz Postupy návrhu IS pomocí UML a OOP (5 dnů, in-house)

MODULU BUSINESS MODELOVÁNÍ

VYHLEDÁVÁNÍ PRVKŮ ACTOR A PROCESNÍ MODELOVÁNÍ

Objektově orientované technologie Diagram komponent Implementační náhled (Diagram rozmístění) Pavel Děrgel, Daniela Szturcová

PŘÍLOHA C Požadavky na Dokumentaci

ROZDÍL MEZI VZTAHEM EXTEND A INCLUDE V USE CASE DIAGRAMECH

JE TŘEBA DBÁT NA ANONYMITU KLIENTA NEBO NE?

Jedna z velmi častých a závažných chyb při návrhu IS aneb jak vznikají tzv. molochální systémy

Objektově orientované technologie Dynamický náhled Sekvenční diagram (Realizace UC) Daniela Szturcová

Unifikovaný modelovací jazyk UML

Vývoj informačních systémů. Přehled témat a úkolů

Vývoj informačních systémů. Přehled témat a úkolů

Objektově orientované technologie Business proces Diagram aktivit. Daniela Szturcová

Y13ANW ÚVOD DO WEBOVÝCH METODIK. Ing. Martin Molhanec, CSc.

Modelování požadavků

Čtvrtá část odpovědi aneb jak je to vlastně s interakcí <<include>>

OOT Objektově orientované technologie

OOT Objektově orientované technologie

Vyzýváme Vás k podání nabídky na veřejnou zakázku malého rozsahu s názvem E-shop pro Centrální nákup Plzeňského kraje.

Analýza a modelování dat. Helena Palovská

Základní informace. Modelování. Notace

Návrh softwarových systémů - architektura softwarových systémů

Principy OOP při tvorbě aplikací v JEE. Michal Čejchan

Základy analýzy. autor. Jan Novotný února 2007

9. Může dojít k situaci, že ZP je nutno aktualizovat (změna vzhledu, změna příjmení, změna -1- dále ZP).

Manažerská informatika - projektové řízení

POSUDEK VEDOUCÍHO BAKALÁŘSKÉ PRÁCE

UML a jeho použití v procesu vývoje. Jaroslav Žáček jaroslav.zacek@osu.cz

Problém identity instancí asociačních tříd

UML. Unified Modeling Language. Součásti UML

43 HTML šablony. Záložka Šablony v systému

Modelování informačních systémů s využitím jazyka UML. Jaroslav Šmarda

Servisně orientovaná architektura Základ budování NGII

TÉMATICKÝ OKRUH Softwarové inženýrství

Přednáška. Sběr požadavků na SW s použitím metody C.C a nástroje Craft.CASE. e-fractal, s.r.o.

Komputerizace problémových domén

Cíle a architektura modelu MBI

Smysl metodiky IS/IT. Koncentrovaná zkušenost Checklist na nic nezapomeneme

Projektování informačních systémů - Restaurace

BIOMEDICÍNSKÝ SYSTÉM PRO AGENTURY DOMÁCÍ PÉČE. Ondřej Krejcar, Dalibor Janckulík, Leona Motalová

EKONOMICKÉ MODELOVÁNÍ

Návrh IS - UML. Jaroslav Žáček

Návrh IS - UML. Jaroslav Žáček

Obsah. ÚVOD 1 Poděkování 3

Vývoj informačních systémů. Architektura, návrh Vzory: Doménová logika

O JEDNÉ ZÁLUDNOSTI INTERAKCE «INCLUDE» V MODELU PŘÍPADŮ UŽITÍ

UML - opakování I N G. M A R T I N M O L H A N E C, C S C. Y 1 3 A N W

Software a související služby

Analýza a design na reálném projektu. Richard Michalský

Závěrečná práce. Odborný styl

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

Zápis o utkání z pohledu rozhodčího - krok za krokem

Dodatek č. 8 k ŠVP Heřmánek

Požadavky Modelování případů užití

Personální evidence zaměstnanců

JAK ČÍST ZÁZNAM O VYUŽÍVÁNÍ ÚDAJŮ V REGISTRU OBYVATEL

Od strategie rozvoje školy k plánování ICT služeb ve škole

NRNP po roce provozu pod JTP

CPK a meziknihovní služby

Diagram nebo text? Miroslav Benešovský, BenSoft s.r.o

Testování software. Jaroslav Žáček

Jednotný informační systém práce a sociálních věcí IS SOCIÁLNÍ DÁVKY II.

CASE nástroje. Jaroslav Žáček

Metodický materiál Národního zdravotnického informačního systému (NZIS)

Název Autor Bc. Tereza Roznerová Vedoucí práce MUDr. Viktor Mravčík, Ph.D. Oponent práce Mgr. Jaroslav Vacek

Constructo. Uživatelská příručka

Zjednodušený návod plnění Národního registru zdravotnických pracovníků pro organizace vzdělávající nelékařské zdravotnické pracovníky (SŠ, VoŠ a VŠ)

Novinky Vladimír Bartoš Ředitel podpory prodeje

Informační systémy 2008/2009. Radim Farana. Obsah. UML - charakteristika

IS pro podporu BOZP na FIT ČVUT

Stav řešení Enterprise Architektury na Moravskoslezském kraji

Průvodce aplikací FS Karta

KOMU JE KNIHA URČENA?

2. Modelovací jazyk UML 2.1 Struktura UML Diagram tříd Asociace OCL. 3. Smalltalk 3.1 Jazyk Pojmenování

Jak být online a ušetřit? Ing. Ondřej Helar

Evidence požadavků uživatelů bytů a nebytových prostor

X36SIN: Softwarové inženýrství. Životní cyklus a plánování

Usage of modular scissors in the implementation of FEM

Inspirace pro seminární práci předmětu Techniky a CASE nástroje vývoje IS

Jak navrhnout integrační platformu pro interoperabilní EHR?

Transkript:

Jak správně psát scénáře k případům užití? Autor RNDr. Ilja Kraval 2007 http://www.objects.cz K napsání tohoto článku mne inspiroval tento mail: Dobrý den pane Kravale, chci Vás poprosit o radu, která zní: Jak a kde v rámci Enterprise Architectu psát specifikaci pro práci programátora? V naší firmě jsem pověřen tvorbou analytické metodiky, čili snažíme se do vývoje vnést jakýsi řád. Bohužel, to zatím dopadá tak, že poté co analytici (bývalí programátoři) objevili kouzlo Use Case, začali do scénářů vypisovat přesné chování systému tak, aby zachytili interakci uživatele s už hotovým softwarem. Tento UC je pak plný programátorských pojmů a je napsán tak, že mu rozumí opravdu jen vývojář. Designové modely nedělají vůbec. Snažím se je přesvědčit, že je nutné vytvářet user inteface (třeba nakreslit tužkou) a k tomu implementační model, jejich otázka ale je, jak tam zachytí interakci s uživatelem a chování softwaru a jak zajistí, aby nemuseli výkonným programátorům neustále vysvětlovat jak to má fungovat. Pro příklad uvádím výtah z jednoho UC

---- 6. Uživatel specifikuje referenci na klienta 6.1. Uživatel přesune cursor na pole rodné číslo klienta 6.2. Uživatel zadá kompletní rodné číslo a zajistí opuštění pole 6.2.1. Systém nalezna unikátního klienta 6.2.2. Systém zobrazí jméno a příjmení klienta v následujícím poli gridu 6.2.3. Systém uchová referenci na klienta 6.2.4. Systém posune cursor na položku obchodního zástupce ---- Tímto zápisem,dle jejich názoru, odpadá složité vysvětlování programátorovi, jak se má systém chovat, ovšem pro uživatele je to "španělská vesnice". Komunikaci s uživatelem vedou na základě Business modelu, který ovšem taky není úplně optimálně napsán a do jisté míry supluje Use Case. Samozřejmě, že dalším vysvětlením jejich postupu je standardní konstatování, že na analýzu podle pravidel není čas. Prosím Vás proto o Váš názor. Děkuji S pozdravem M.B. Odpověď na tento mail jsem zformuloval takto: Přeji pěkný den, děkuji za Váš mail s velmi výstižným popisem problému. To, co popisujete, je velmi častým a běžným jevem, ale co se týče jeho odstranění, tak musím konstatovat, že poradit přes mail strana 2

není v tomto případě technicky možné, protože to, co nazýváte radou, je předmětem 5 denního školení návrhu IS a z toho důvodu obsahově nelze mailem tak širokou problematiku popsat. Mohu se však pokusit o celkové shrnutí chyb, na které byste se měli soustředit a řešit je. Školení OOP a UML v celém 5 denním obsahu mimo jiné vysvětluje jejich podstatu a vede nakonec k jejich odstranění. Tvorbě prvků typu USE CASE spolu s procesním modelováním BPM je ve školení věnován celý jeden den a to i s ukázkovými příklady. Předkládám tedy přehled chyb, které jsou z Vašeho mailu patrné, a to i s jejich charakteristikou a stručným popisem řešení. 1. Zohlednění úrovní abstrakce Ve scénářích není evidentně zohledněno, co je to fáze analytické modelování, fáze designu a kódování a jak se tvoří artefakty těchto úrovní, jaké jsou základní postupy tvorby, jaká je povinná sémantika a vyjadřování na těchto úrovních, jaký tvar a formu mají artefakty těchto úrovní. Došlo k podstatnému smíchání pojmů z různých úrovní abstrakce. Této problematice, jaké jsou zásady psaní analýzy, designu a kódu, je věnován celý jeden půlden školení OOP a UML i s příklady. 2. Chybně psané scénáře v prvcích typu USE CASE Psaní scénářů podléhá přísným pravidlům, která jsou evidentně ve vašem případě porušena. Jedná se zejména o porušení pravidla pojmosloví s dodržením úrovně abstrakce analytického modelování (viz předešlý odstavec - např. věta Uživatel přesune cursor... je chybná resp. v další větě zmínka o gridu není v pořádku). Scénář má vystihovat logiku a nikoliv ovládání samotných design prvků. K vyjadřování ve scénářích slouží zavedené uživatelské koncepty, jako ve vašem případě klient, rodné číslo, seznam klientů atd. Kromě těchto pojmů by tvůrce scénáře neměl používat další pojmy z jiného programátorského prostoru (např. cursor, grid atd.). strana 3

3. Nejsou použity vzory scénářů Vzory jako opakující se řešení situací obecně velmi napomáhají sjednocení postupů. Existují také vzory scénářů případů užití jako opakujících se situací (výběr ze seznamu, editace polí atd.). Tyto vzory evidentně nejsou ve vašem případě použity. 4. Nejsou použita doporučení pro větnou skladbu scénářů Zkušenosti z firem při psaní scénářů mne vedla k určitým doporučením, která zde také nejsou respektována. Jedno z těchto doporučení je, aby se nepoužívalo větné spojení Systém provede..., například u vás Systém nalezne unikátního klienta, ale namísto toho se pro chování systému (nikoliv aktérů) používala zvratná slovesa. Ve vašem případě doporučuji slovní spojení...nalezne se... a nikoliv Systém nalezne.... Toto doporučení velmi úzce souvisí s objektovým přístupem analytika. Navíc v kombinaci se vzory a zásadami psaní scénářů případů užití by se věta měla doplnit o slovní spojení nalezne se v seznamu klientů, k tomu ještě ve větě chybí podle čeho se klient nachází, například podle zadaného rodného čísla. Správná věta by mohla znít například takto: Podle zadaného rodného čísla se v seznamu klientů nalezne klient. Pokud není nenalezen tak <...>... 5. Model BPM (Business Process Model) nemá suplovat modely případů užití Nalézání a vytváření procesního modelu (BPM) se neděje bezúčelně a netvoří se jen pro komunikaci s budoucím uživatelem (i když se nad ním samozřejmě velmi dobře konzultuje!). Jedná se podle mého názoru o nejlepší metodický postup, jak logicky správně a transparentně nalézat případy užití systému, bez logických chyb, se správnými logickými souvislostmi funkcionalit systému. Mohu z vlastní zkušenosti potvrdit, že všechny ostatní metodiky nalézání případů užití buď úplně selhávají anebo vedou v nepříjemným chybám (například nedoporučuji klasickou metodiku hledej případy užití přes prvky typu ACTOR ). Hlavní poslání modelu BPM je nalézat adekvátní případy užití podporující chování podniku a to včetně ověření správné logiky chodu podniku spolu s logikou funkcionalit systému. Ve školení je právě tomuto postupu strana 4

vyhledávání případů užití přes procesy podniku věnována velká pozornost. Závěrem, jaké je tedy doporučení pro Vás a pro Vaše kolegy? Problematika správné tvorby scénářů případů užití je mnohem rozsáhlejší a vyžaduje důkladné studium. Doporučuji absolvovat školení OOP a UML (viz stránka http://www.objects.cz/pobyt/pobytovaskolauml.html). Na tomto školení je tato problematika včetně dobrých základů a názorných příkladů velmi podrobně a detailně popsána. Navíc bych doporučoval kromě tohoto školení věnovat pozornost Seminářům objektových technologií, zejména semináři, který je konkrétně věnován tvorbě modelu případů užití, viz stránka: http://www.objects.cz/seminare/seminare.html. Na tomto konkrétním semináři jsou tvorbě případů užití věnovány celé dva dny. Doufám, že vám tento mail napomohl ke správné orientaci ve složité problematice psaní případů užití. Zdravím, RNDr. Ilja Kraval. http://www.objects.cz --- Konec článku --- strana 5