Masaryk university Faculty of Informatics Konceptuálni modelovaní metódou HIT pomoci nástroje Visual Paradigm for UML Ján Demo, Marek Winkler, Michal Oškera © FI MU, 28. září 2011 1 Úvod Následující dokument je návodem, jak pomocí ER diagramů v nástroji Vísual Paradigm for UML (dále jen VP-UML) vytvářet konceptuálni modely metodou HIT. Očekává se znalost základních pojmů metody HIT, předmětem tohoto dokumentu není výklad způsobu modelování pomocí této metody. Vísual Paradigm for UML je dostupný na FI MU v rámci licence Academie Licence Standard Edition, bližší a aktuální informace lze nalézt např. na http://kore.fi.muni.cz:5080/wiki/index.php/Tools#Visual_Paradigm. Případně je možné stáhnout si prohlížeč či community edition přímo z webu http://www.visual-paradigm.com/. V tomto dokumentu se budeme věnovat následujícím krokům práce s VP-UML: • založení nového modelu, • rozlišení konceptuálního, logického a fyzického modelu, • modelování entit různých druhů, • definice entit a vztahů mezi nimi, • modelování vztahu nadtyp/podtyp, • ostatní nastavení VP-UML. 2 Založení nového modelu Za účelem založení konceptuálního modelu vytvoříme ve VP- UML nový ER diagram. ▼ [^Database Modeling ^ORH Diagram Entity Relationship Diagram 0 New Entity Relationship Diagram i_i New Diagram... Obrázek 1: Založení nového ER diagramu Laboratoř servisních systémů, FI MU Brno 2 3 Nastavení druhu modelu na konceptuálni Ve VP- UML se jednotlivé druhy ER-diagramu nastavují vybráním konkrétního typu modelu v Data Model. Objeví se při kliknutí pravým tlačítkem myši na modelovací plochu. V našem případě vybereme možnost Conceptual. m Sample [¥fl ft 51 * A. Tools c 4^ Point Eraser Sweeper Magnet f Gesture Pen Entity Relationship_^ J$ Entity " View Sequence ■h-H- One-to-One Relationship Open Specification... Add Shape ► Rename... Data Model ► Conceptual Logical Physical Apply Default Schema Show Table Record Editor Paste View Paste Model Element Handi-Selection ► Diagram Content ► Obrázek 2: Nastavení úrovně ER diagramu 4 Modelování entit různých druhů Při tvorbě ER diagramu ve VP-UML rozlišujeme následující druhy entit: • kernel entity znázorňujeme pomocí standardního přednastaveného zobrazení entity ve VP- UML, • asociativní entity odlišujeme pomocí stereotypu assoc; stereotyp vybereme kliknutím pravým tlačítkem myši na již vytvořenou entitu —► Stereotypes —► assoc (viz obrázek 3), • charakteristické entity odlišujeme pomocí stereotypu characteristic; výběr stereotypu je analogický stereotypu assoc. Pokud požadovaný stereotyp není v nabídce dostupný, je nutno tento stereotyp nejprve definovat: Laboratoř servisních systémů, FI MU Brno 3 Eft Sample ^ Tools 4^ Point Eraser Sweeper Magnet Gesture Pen ■■ Entity Relationship _j Entity " View 5arrpk>_ontit New Column Alt+Shift+C Open Specification... Enter Stereotypes ► assoc Convert to Array Table Convert to Partial Table Split Table Edit Stereotypes... Sub Diagrams ► Obrázek 3: Nastavení stereotypu assoc u asociativní entity 1. k úpravě stereotypů se dostaneme pomocí nabídky Tools —► Configure Stereotypes..., 2. ve stromě Model elements vybereme prvek modelu, na který bude možno vytvářený stereotyp aplikovat, v tomto případě to bude Entity Relationship —► Entity (viz obrázek 4), 3. stiskneme tlačítko Add... a v zobrazeném formuláři vyplníme jméno stereotypu (např. assoc) a dokumentaci (např. Denotes that the Entity is an Associative entity.) (obrázek 5). Na obrázku 6 je znázorněno, jak bude vypadat asociativní entita se zvoleným stereotypem. 5 Definic entit a vztahů mezi nimi Konceptuálni modelování metodou HIT vyžaduje zápis definic všech prvků modelu (jak entit, tak i jejich vztahů). V našem případě budeme zapisovat dokumentaci přímo v nástroji VP-UML, který mimo jiné umožňuje generování PDF (příp. HTML) dokumentu se specifikací. Při zápisu definic prvků modelu lze použít dva přístupy: • pravým tlačítkem myši kliknout na entitu/vztah —► Open Specification (Enter) a do okna Documentation zapsat definici, Laboratoř servisních systémů, FI MU Brno 4 o Configure Stereotypes Stereotypes Scope: 1 Workspace Model elements: Number of stereotypes shown in popup menu: 1 10 l j \ Stereotypes: ► ^Component ► [j] Deployment ► ^Composite Structur ► [j]Timing ► [j] Interaction Overvie ► [jj Requirement ▼ ^Entity Relationship O Column (ERD) j Procedure J Relationship OSequence(ERD) Stored Procedun ,j Stored Procedun 9 Trigger J Triggers J View ► i^j Business Process 0 Apply changes to stereotypes in current project f Duplicate^) ( Add... ~) ( Edit... ~) ( Remove^) ( Import... ) ( Export... ) ( OK ) ( Cancel ) ( Help ) Obrázek 4: Úprava stereotypů • v případě, že se chystáme zapisovat několik definic, je užitečné si zviditelnit okno pro zápis definic, do kterého budeme moci zapisovat okamžitě po kliknutí na danou entitu/vztah. Okno lze zviditelnit: — pomocí nabídky Víew —► Panes —► Documentatíon, — nebo klávesovou zkratkou Ctrl+Shif t+U. Při zápisu definic (např. Objektem typu (#Klíent) je každý . . .) je vhodné místo ručního zápisu názvu prvku (v tomto případě Klient) použít funkci Add Model Element označenou ikonou kolečka s plusem (viz obrázek 7) a z nabízeného seznamu vybrat konkrétní prvek modelu. Má to tu výhodu, že při změně názvu prvku modelu se tato změna automaticky zpropaguje do všech výskytů tohoto názvu v modelu. Laboratoř servisních systémů, FI MU Brno 5 _<2_cl Stereotype Specification [ general Tagged Value Definitions ► ' Icon path: Fill: Line: Font: Documentation: assoc LJ □ Use ~~| (122, 2&7, 24S) □ Use J Black □ Use dialog HTML jT] B J iL ■Denotes that the Entity is an Associative entity. G Abstract G Leaf G ^oox ( Reset ) ( OK ) ( Cancel ) ( Apply ) ( Help ) Obrázek 5: Úprava stereotypu assoc sampte_entit Obrázek 6: Odlišení asociativní entity pomocí stereotypu 6 Modelování vztahu nadtyp/podtyp Vztah nadtyp/podtyp (nebo také generalizace/specializace) je možno v ER diagramu namodelovat následujícími kroky: 1. vytvořit vazbu 1:1 směrem od nadtypu k podtypu, 2. zvolit, že jde o identifikující vazbu (pravým tlačítkem na vazbu —► Identify mg), 3. zvolit, že jde o podtyp (pravým tlačítkem na vazbu —► Subtype). Laboratoř servisních systémů, FI MU Brno 6 Entity Specification Ceneral Columns Indices Constraints Relations Chart Relations Name: Verze Platformy Discriminator column: [ Version column: Schema: Data model: Tablespace: DDL clauses: ' Conceptual Documentation: g B I a F & ^ li - ŕ TT ■>1-1 r -ŕ lu rtv'i ■ =_i_ :~ k bz ■v',>t,,"+ ÍTblľUii -J aji-ŕ 1 iľ i vlluV '"i: vazba 9), které je označeno číslem major a minoĽ verze. Hajor číslu verze platformy typicky přísluší kódové označení/jméno [napr. Chiimey). ( Reset ) ( OK ) ( Cancel ) ( Apply ) ( Help ) Obrázek 7: Zápis definice prvku modelu s využitím funkce Add Model Element Obrázek 8 znázorňuje ukázku vztahu generalizace/specializace, kde Entity B je podtypem Entity A. Entity A Obrázek 8: Ukázka notace vztahu generalizace/specializace VP-UML (ve verzi 8.1) nepodporuje v E-R diagramech seskupování generalizací do skupin {generalization set). Tuto možnost nabízí pouze v diagramech tříd1. Vztahy generalizace/specializace se tedy prozatím nemusíte snažit seskupovat a stačí je namodelovat jako oddělené hrany. 1 viz http://www.visual-paradigm.com/support/documents/vpumluserguide/94/ 299/7190_drawingclass.html Laboratoř servisních systémů, FI MU Brno 7 7 Ostatní nastavení VP- UML 7.1 Spell checking Netvoříme-li modely v angličtině, je z důvodu zlepšení čitelnosti dokumentace vhodné mít vypnutý Spell Checking: • v nabídce Tools klikněte na Options, • v okně Options zvolte v levé části položku Spell Checking, • v zobrazeném panelu odškrtněte check box Enable Spell Checking. Laboratoř servisních systémů, FI MU Brno 8