Home

Altova UModel 2013

image

Contents

1. Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 257 CombinedFragment Enter the code fragment e g return Click the Node Link handle of the inserted note and drop the cursor on the lifeline Activate the Is Code check box in the Properties tab to include this code fragment when generating code Model Tree a UModelStyles F Content of Styles sd OnCommandfin nibimt in pUModelkobjectjvord 3 ape dependencies at SI aUModelStyles E E Styles Content of Styles E OnCommand n niD imt in y s o E SeguenceDiagram OnCi Y i d m_bPluginersionOk I 4 C Model STI E Diagra F Favorites Properties nd x a i element kind Note ls Code When selecting a note on a sequence diagram which can be used for code generation the property is code is available in the Properties window Clicking the check box allows you to switch between ordinary notes and code generation notes Ordinary notes return Es Code generation 3 return D shown with a darker dog ear notes Code updates occur automatically on every forward engineering process if the Use for forward engineering check box is active If changes were made to the sequence diagram the code of the operation is always overwritten The sequence diagram shown below was generated by right clicking the OnCommand operation and selecting Generate sequence diagram from code The C code of this example is available in the c
2. Altova UModel 2013 2012 Altova GmbH UML Diagrams Structural Diagrams 285 10 2 5 Object Diagram Please see the Object Diagrams section in the tutorial for more information on how to add new objects instances to the diagram AltovaBank Bank E bankname IPadress Username password accounts AltovaBank 1010 127125 John Doe Jodoe accounts accounts John s Checking CheckingAccount balance 11 975 00 id JDCA 6759 minimumBalance 10 000 00 John s Credit CreditCardAccount balance 62 00 id JDCCA O125 creditLimit 20 000 00 interestRateOnBbalance 3 5 interestrateontCashAdvance 14 0 John s Saving Savings Account balance 6743 00 id JDSA 2545 interestRate 1 2 2012 Altova GmbH Altova UModel 2013 286 UML Diagrams Structural Diagrams 10 2 6 Package Diagram Package diagrams display the organization of packages and their elements as well as their corresponding namespaces UModel additionally allows you to create a hyperlink and navigate to the respective package content Packages are depicted as folders and can be used on any of the UML diagrams although they are mainly used on use case and class diagrams Namezpace Namezpace gt bankuiew lang from altova from java s lt profile 250 Profile from Root Behavior View from Root s lt namespace http Mestre mis py com schemas orgchart Automatic Package Dep
3. The Switch to URL button changes the appearance of the dialog box and allows you to open a UModel project file from an URL 1 Enter the URL you want to access in the Server URL field 2 Enter your User ID in the User and Password fields if the server is password protected 3 Click Browse to view and navigate the directory structure of the server 4 Click the file you want to load into UModel If the server is a Microsoft SharePoint Server check the Microsoft SharePoint Server check box See the Microsoft SharePoint Server Notes below for further information about working with files on this type of server O 2012 Altova GmbH Altova UModel 2013 388 UModel Reference File File URL File load f Use cache proxy Reload Identification User Password save Available files Server URL http Dev UML Help ump W ump Bank_CSharp ump Bank_Java ump Bank_MultilLanguage ump New Folder Delete Switch to File Dialog D peri Cancel L The file URL now appears in the File URL field at the top of the dialog box The Open button only becomes active at this point 5 Click the Open button to load the file The file appears in the main window Please note The Browse function is only available on servers which support WebDAV and on Microsoft SharePoint Servers The supported protocols are FTP HTTP and HTTPS To give you more control over the loading process you can choose t
4. A FinalizerThread Java Lang jawa le E FinalKeference Java Lang java l F float C Profile P a Filter categories Class Interface Primitive Type DataType Enumeration Class Template Interface Template DataType Template Please note To enable disable the autocompletion select Tools Options Diagram Edting tab then click the Enable automatic entry helper option The on demand availability is not affected by this setting however Altova UModel 2013 2012 Altova GmbH UModel User Interface Diagram pane 91 5 10 2 Cut copy and paste in UModel Diagrams Cut Copy and Paste of diagram elements within the Diagram pane All UModel diagram elements can be cut copied and pasted within across the same type and even into other types of diagram tab Mouse or keyboard shortcuts can be used to achieve this in two different ways Having copied an element e Paste using the keyboard shortcut CTRL V or Paste from the context menu as well as Paste from the Edit menu always adds a new modeling element to the diagram and to the Model Tree e Paste in diagram only using the context menu i e right clicking on the diagram background only adds a link view of the existing element to the current diagram and not to the Model Tree Using the Class diagram as an example Paste CTRL V of a copied class e Pasting a copied class in the same diagram or package inserts a new class with the source
5. User and Reference Manual ALTOVA I umodel 2013 Copyright 1998 2012 Altova GmbH All rights reserved Use of this software is governed by and subject to an Altova software license agreement RFMLSpu MapForce StyuleVision SemanticWorks Schemadgent UModel Database Spy DiffDog Authentic Altova KML MissionKit and ALTOVA as well as their logos are trademarks and or registered trademarks of Altova GmbH MIL AXEL XHTML and SC are trademarks registered in numerous countries oF the world wide Web Consortium marks of the WS are registered and held by itz host institutions MIT INF IA and Keio UNICODE and the Unicode Logo are trademarks of Unicode Inc This software ALTOVA contains Srd party software or material that is protected by copyright and subject to other terms and conditions as detailed on the Altova website at http alova comi legal 3 rdparty htmi Altova UModel 2013 User amp Reference Manual All rights reserved No parts of this work may be reproduced in any form or by any means graphic electronic or mechanical including photocopying recording taping or information storage and retrieval systems without the written permission of the publisher Products that are referred to in this document may be either trademarks and or registered trademarks of the respective owners The publisher and the author make no claim to these trademarks While every precaution has been taken in the preparatio
6. 2 Click the BankView component and click the Browse icon next to the directory field in the Properties window Properties qualified name Component View Bank iew de element kind Component public L indirectlyInstantiated code language C 2 0 directory CATEMPIzsciBank_cShat use for code engineering r E Properties Styles Hierarchy 3 Change the code engineering directory to e g c TEMP ssc Bank_CSharp codegen A message box appears if a different folder was previously used 4 Click OK after you have changed the output directory 5 Select the menu item Project Merge Program Code from UModel project 6 Change the Synchronization settings if necessary and click OK to confirm The Messages window displays the code from project process A message box opens asking if you want to place the newly created files under source control Altova UModel 2013 2012 Altova GmbH Source Control Source Control Commands 357 Source Control 54 x 2 Do you want to put the newly added File s Under source control l Don t show this dialog again 7 Click Yes to do so 8 The Add to Source Control dialog box is opened allowing you to select the files you want to place under source control Source Control Add to Source Control y l Files DK c NEMPYSScl6ank_CSharplcodegent2ccount cs c EMPKsc Hank_ _CSharpicodegentBank cz Cancel COTEMP ssc Bank CSharpicodegeniBank view
7. Altova UModel 2013 Chapter 1 UModel UModel 1 UModel UModel 2013 Basic Edition is an affordable UML modeling application with a rich visual interface and superior usability features to help level the UML learning curve and includes many high end functions to empower users with the most practical aspects of the UML 2 4 specification UModel is a 32 64 bit Windows application that runs on Windows Server 2003 2008 2012 Windows XP Windows Vista Windows 7 and Windows 8 64 bit support is available for the Enterprise and Professional editions UModel 2013 supports all 14 UML 2 4 modeling diagrams Support for the Model Driven Architecture MDA which allows conversion between different programming languages Enterprise edition only Ability to import and export SQL databases into UModel Enterprise Professional editions only Teamwork support allowing concurrent project editing 3 way project merging Protocol State Machines SysML 1 2 diagrams Enterprise Professional Edition only Sequence Diagram generation directly from source code Code generation from State Machine diagrams Enterprise Professional Edition only UModel API and plugin Enterprise Professional Edition only Built in Scripting environment and Form editor Enterprise Professional Edition only Visual Studio integration Enterprise Professional Edition only Eclipse integration Enterprise Professional Edition only Support for Version Control syste
8. E lt gt getBalance E getla Cancel L 2 Select the operations that you want to generate a sequence diagram for and click OK Use the Select All Public and Select All buttons where necessary 2012 Altova GmbH Altova UModel 2013 252 UML Diagrams Behavioral Diagrams Clicking OK opens the Sequence Diagram Generation dialog box in which you can further specify the sequence diagram generation options 3 Click OK to generate the sequence diagrams A sequence diagram is generated for each selected operation Note you can now choose to include exclude Getters and Setters when generating the sequence diagram Creating a sequence diagram from getter setter properties C VB NET 1 Right click an Operation with a GetAccessor SetAccessor stereotype s lt attributes BankServer lt lt attributes gt gt sections System ComponentiModel Browwsable false logintin username string in password string bool e e e m Han Mew Override implement Operations Alb Generate Sequence Diagram From Getter Generate Sequence Diagram From Setter Show Show sHide Node content Ctrl Shift H dh Cut Ctra Copy Ctrl C Q Q Q gt O o Q gt o 2 Select the option from the context menu that you want to create a sequence diagram from Getter Setter This opens the Sequence Diagram Generation dialog box in which you can further specify the sequence diagram presen
9. Generate Sequence diagrams Opens the Select Operations dialog box in which you select multiple operations that are to be the basis of the generated Sequence diagram Select one or more operations Please select one ore more operations from a reverse engineered class where a sequence diagram should be generated from Mis com Select All Public Pb W altova i ioi H Mhankyiew Select all i A Bank views Main i i PA Hierarchy of Account es EA Sample Accounts u Include Getters and E El AgencyBank Setters E El John s tt oc EO John s 2nd E Eq John s 3rd E H Account ae al balance i ba id ee Account E gt collectAccountinto E lt gt getBalance E getla Cancel L Having selected the operations and clicked OK the Sequence Diagram Generation dialog box is opened allowing you to further define the generation settings Merge Program Code from UModel Project Opens the Synchronization Settings dialog box with the Code from Model tab active Clicking the Project Settings button allows you to select the specific programming language settings Merging or overwriting code Assuming that code has been generated once from a model and changes have since been made to both model and code e g e Model elements have been added in UModel e g a new class X e new class has been added to the external code e g class Y Merging model into code means that e the newly
10. balance Use this method to reposition links in the diagram tab Entering sample data into objects The instance value of an Attribute Property in an object is called a slot 1 Click in the respective slots of each object and enter sample data 2 E g in John s Checking object double click in the balance slot and enter 11 975 00 as the balance 3 Fill in the rest of the data to give yourself an idea of the current instance state John s Checking CheckingAccount AltovaBank Bank E balance 11 975 00 bankname AltovaBank id JDCA 6789 IPadress 10 10 127 128 minimumBalance 10 000 00 username John Doe password Jodoe accounts John s Credit CreditCardAccount accounts balance 92 00 id JDCCA 01 23 creditLimit 20 000 00 interestRateOnbBalance 3 5 interestRateOnCashAdvance 14 0 John s Saving Savings Account accounts balance 6 43 00 id JDSA 2545 interestRate 1 2 2012 Altova GmbH Altova UModel 2013 44 UModel tutorial Component Diagrams 45 Component Diagrams The aim of this tutorial section is to Show how to insert classes into a component diagram Create realization dependencies between the classes and the BankView component Show how to change line properties Insert components into a component diagram and create usage dependencies to an interface To open the component diagram 1 Click the Diagram Tree tab expand the Component Diagrams component and
11. e After you check out a file you can edit it in your Altova application and save it using File Save Ctrl S e You can check in the edited file via the context menu in the Open URL dialog see screenshot above When a file is checked out by another user it is not available for check out e When a file is checked out locally by you you can undo the check out with the Undo Check Out command in the context menu This has the effect of returning the file unchanged to the server e f you check out a file in one Altova application you cannot check it out in another Altova application The file is considered to be already checked out to you The available commands at this point in any Altova application supporting Microsoft SharePoint Server will be Check In and Undo Check Out Reload Allows you to reload the current project and save or discard the changes made since you opened the project file O 2012 Altova GmbH Altova UModel 2013 390 UModel Reference File Save Saves the currently active modeling project using the currently active file name Save as Saves the currently active modeling project with a different name or allows you to give the project a new name if this is the first time you save it Save Copy As Allows you to save a copy of the currently active UModel project with a different file name Save Diagram as Image Opens the Save as dialog box and allows you to save the currently active dia
12. 7 15 Project Settings This option allows you to define the global project settings Project Settings Java CH vB Scripting Update Program Code from UModel Project TO Write Documentation as DocCommente Update UModel Project from Program Code DocCommentsa as Documentation e Resolve aliases Defined symbols DEBUG Cancel Select the menu item Tools Options to define your local settings please see Tools Options in the Reference section for more details on the local settings 2012 Altova GmbH Altova UModel 2013 160 Projects and code engineering Enhancing performance 7 16 Enhancing performance Due to the fact that some modeling projects can become quite large there are a few ways you can enhance the modeling performance e Make sure that you are using the latest driver for your specific graphics card resolve this before addressing the following tips e Disable syntax coloring Styles tab Use Syntax Coloring false e Disable gradient as a background color for diagrams use a solid color E g Styles tab Diagram background color White e The automatically enabled autocompletion can be deactivated using Tools Options Diagram Editing then unchecking the Enable automatic entry helper check box Altova UModel 2013 2012 Altova GmbH Chapter 8 Creating model relationships 162 Creating model relationships 8 Creating model relationships Mod
13. Son lt lt apply gt gt lt lt protile gt E Relations from Design View from Root acy Interaction View fal Use Case View F Mode EF Diagr ae Favo Properties nx name Bank ew element kind Package visibility public lt lt namespace gt C e Profiles are specific types of packages that are applied to other packages e Stereotypes are specific metaclasses that extend standard classes e Tagged values are values of stereotype attributes A ProfileApplication shows which profiles have been applied to a package and is a type of package import that states that a Profile is applied to a Package The Profile extends the O 2012 Altova GmbH Altova UModel 2013 290 UML Diagrams Structural Diagrams e package it has been applied to Applying a profile using the ProfileApplication icon i means that all stereotypes that are part of it are also available to the package ProfileApplications are shown as dashed arrows from the package to the applied profile along with the lt lt apply gt gt keyword Stereotypes A stereotype defines how an existing metaclass may be extended It is a kind of class that extends Classes through Extensions Stereotypes can only be created in Profiles Stereotypes are displayed as classes in class diagrams with the addition of the keyword lt lt stereotype gt gt added above the name of the class Stereotypes may have properties which are called tag de
14. Diagrams A Account Hierarchy FA Apply Java Profile P Artifacts ES E anken Main SA Banker realization M Deployment 37 Uverview FA Overview Account Balance EA Sample Accounts a SequenceDiagrami C Model Tree E Diagram Tree Favorites All Diagrams are shown in an alphabetically sorted list Altova UModel 2013 2012 Altova GmbH UModel User Interface Favorites 73 5 3 Favorites Favorites tab Use this tab as a user defined repository or library for all types of named UML elements e classes objects associations etc but not ProfileApplication or Generalization dependencies This allows you to create your personal pick list of modeling elements for quick access The contents of the Favorites tab are automatically saved with each project file Select the menu option Tools Options File tab and click the Load and save with project file check box to change this setting To add an existing modeling element to the Favorites tab 1 Right click an element in the Model Tree tab or in the diagram working area 2 Select the menu item Add to Favorites 3 Click the Favorites tab to see the element Favorites ae Favorites E A bankview E Account Hierarchy ES BankWiew Main EA Sample Accounts E g Altovabank ac EQ John s Checking a EQ John s Credit oc E John s Saving E BE Accaun l m_m M C Model Tree E Diagram Tree F Favorites The element appears in the Favo
15. Install IBM Rational ClearCase LT e Keep clicking Next accept the Software License Agreement and start the installation In Vista the second setup could generate the internal error 2739 In this case start Windows Explorer and go to C Windows System32 7 11 e Right click and run cmd exe As Administrator A command window pops up e Type regsvr32 jscript dll e Launch the setup again To work with files stored in ClearCase you should create a view that points to your ClearCase project Jalindi Igloo 1 0 3 http www jalindi com igloo To use Jalindi Igloo with Altova products it is sufficient to run the setup to install Jalindi Igloo Note that if you uninstall Jalindi Igloo all other installed SCC Provider Windows registry keys if any are deleted as well and are not longer available When working with Altova products setting the Auto Commit Mode is recommended e Auto Commit Mode is found in the advanced Source Control options e After defining a workspace you can start to work March Hare CVS Suite Client 2008 3321 http www march hare com cvsnt en asp A typical installation will work correctly with Altova products Mercurial see under Sergey Antonov HgScc 1 0 1 Microsoft SourceSafe 2005 with CTP http msdn microsoft com en us vstudio aa718670 aspx A standard installation of Microsoft Source Safe 2005 will work correctly with Altova products Microsoft Tea
16. Java Project Settings M JavaDocz as Documentation Resolve aliases Defined symbols Synchronization f Merge Code into Model C Overwrite Model according to Code Diagram generation M Enable diagram generation lt Hack Next gt Eirirsh 3 Select the project file type e g jpx and click Open to confirm This Jbuilder project file is available in the OrgChart zip file in the UModelExamples folder Note that the option to import the project relative to the UModel project file is active Altova UModel 2013 O 2012 Altova GmbH Projects and code engineering Importing source code into projects 121 Choose a file Look in OrgChart OrgChart jpx File name OrgChart ipx Files ot type Borlande JBuilder jpx Cancel Eclipse project A FS styles iletbeans project xml REE Porland JBulder pr a TIMO 4 Make sure that you have activated the Enable diagram generation check box and select any other specific import settings you need and click Next 5 Activate the Import in new package check box or click the respective package in the Import Target window Import Target a x Root i Component view a Use Case view i Design view du Interaction View Deployment view E Fa Unknown Externals Lu Behavior view na Ea Java Lang Java Lang ump Met gt Finish Cancel Note that UModel can generate a s
17. Multi license If more than one instance of the application is used within the same LAN these instances will briefly communicate with each other on startup These instances exchange key codes in order to help you to better determine that the number of concurrent licenses purchased is not accidentally violated This is the same kind of license metering technology that is common in the Unix world and with a number of database development tools It allows Altova customers to purchase reasonably priced concurrent use multi user licenses We have also designed the applications so that they send few and small network packets so as to not put a burden on your network The TCP IP ports 2799 used by your Altova product are officially registered with the IANA see the IANA website http www iana org for details and our license metering module is tested and proven technology If you are using a firewall you may notice communications on port 2799 between the computers that are running Altova products You are of course free to block such traffic between different groups in your organization as long as you can ensure by other means that your license agreement is not violated You will also notice that if you are online your Altova product contains many useful functions these are unrelated to the license metering technology 2012 Altova GmbH Altova UModel 2013 454 Appendices License Information 16 1 3 Intellectual Property Ri
18. To open a project Select the menu option File Open or select one of the files in the file list Please note Changes made externally to the project file or included file s are automatically registered and cause a prompt to appear You can then choose if you want to reload the project or not To move a project UModel projects and generated code can be easily moved to a different directory or a different computer and be resynchronized there There are two ways to do this e Select the menu option File Save As and answer Yes at the prompt if you want to adjust the file paths to the new project location e Copy the UModel project ump to a new location adjust the paths of the code generation package s in the Component Diagram view to the new directory location E g using BankMultilanguage ump 1 Open the Component Diagram Overview and click the BankView component 2 Update the entry in the directory field to the new project location 3 Re synchronize the model and code O 2012 Altova GmbH Altova UModel 2013 114 Projects and code engineering component gt BankView GUI from Banker Bank view Component wiew Bank view Bar lt ZUSE Component VE Ublic H 1 s component from Bank view indirectiyinstantiatec I g code language Javal 4 directory CALIML Bank Sample MuttiLar eso Use for code engine BankView E a meme EE m ko u EE a Altova U
19. automatically imported as well Displaying tagged values schema details Schema details displayed as tagged values in the Tagged Value note element can be configured using the Show Tagged Values in the Styles tab or by clicking the Toggle compact mode icon at the bottom right of the Tagged Value note This switches between the two states all and all hide empty etc which are shown below Styles hx Element Styles show Nested Classifier Showy Visibility Show Stereotypes show Constraints show Default Value show Parameter all hide empty show Par direction in compartment Show Property Type lin compartment hide empty Show Tagged values Namespace Display Mo E Properties ST Styles F Hierarchy Note Selecting the tagged values from the Styles tab sets the the tagged value settings project wide Right clicking a class and selecting Tagged values all etc only affects the individually marked classes Show tagged values all Displays the tagged values of the class as well as those of the owned attributes operations etc E O D h A Ae ee n m 74 l lt lt complex Type gt gt y lid i block i mxed esis d Mg_sequence Class c lt sequence gt gt ic l export code Property lt cattribute gt gt id fixed rue l form unqualified i Use A Dr Show tagged values all hide empty Displays only those tagged values where a value exists e g fixed t
20. gethfinimumBalance float W private I package Show nested Classifier he public M protected GS r When new elements are added and not hidden by Els private package Show elements v Hide elements except those added to this node Clicking the left hand class and pressing F7 or clicking the class in the Model Tree and pressing F7 adds a new attribute Property1 to the class SavingsAccount in minimumbBalance tloat 1 0000 minimumbBalance flost 1 0000 savings Account getlnterestrRate 1 float collect ccountintocin bank API getMinimumBalancer float d savings Account detlnterestRate float collect ccountintocin bank P Bank API boolean cethMinimumBalancer float The new element is only visible in the left hand class because Show elements is set as active The right hand class setting is Hide elements so the new element is not shown there Clicking the right hand class and pressing F7 adds a new attribute Property2 to the class This new attribute is now visible because the Hide elements setting has the qualifier except those added to this node where node generically means this class or modelling element 2012 Altova GmbH Altova UModel 2013 274 UML Diagrams Structural Diagrams savings Account savings Account minimumbalance float 1 0000 7 minimumbBalance tloat 1 0000 Property Property savings Account savings Account detinterestrate float detln
21. 1 Click the specific message icon in the toolbar 2 Click anywhere on the timeline sender object e g Idle 3 Drag anddrop the message line onto the receiver objects timeline e g NoCard Lifelines are highlighted when the message can be dropped Code Vat 200255 qualified name Design Views Interaction CardOut element kind lale 10 13 visibility unspecified nessagesoart synchCall operation asynch C NoCard Hastard e The direction in which you drag the arrow defines the message direction Reply messages can point in either direction e Having clicked a message icon and holding down CTRL allows you to insert multiple messages by repeatedly clicking and dragging in the diagram tab To delete a message Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 267 1 Click the specific message to select it 2 Press the Del key to delete it from the model or right click it and select Delete from diagram 2012 Altova GmbH Altova UModel 2013 268 UML Diagrams Structural Diagrams 10 2 Structural Diagrams These diagrams depict the structural elements that make up a system or function Both the static e g Class diagram and dynamic e g Object diagram relationships are presented Structural Diagrams Class Diagram Component Diagram Composite Structure Diagram Deployment Diagram Object Diagram Package Diagram Profile Diagram Altova UModel 2013 2012 Altova
22. 212 UML Diagrams Behavioral Diagrams o Test State Machine Code generated by Altova UModel Ex modeSelect powerButton speedSelect standbyButton Current state s El MainRegion Operating gt RegionMode Heater Debug output messages Event 1 BEGIN_EVENT powerButton TRANSITION Of gt For SET_CURRENT_STATE Operating ACTION OnEntryOperating TRANSITION Fork gt Heater SET CURRENT STATE Heater ACTION OnEntryHeater TRANSITION Fork gt Low SET CURRENT STATE Low END EVENT powerButton To generate code from a State Machine diagram e Right click in the State Machine diagram and select Generate State Machine code or e Select the menu option Project Generate State Machine Code Generate State Machine Code x IState gethlame e getId m getRegions General IRegion e getName wr getStates IW Generate debug messages M getCallEvents Additional imports declarations Suppress arnings serial unused M Automatically update state machine code Cancel The default settings are shown above Click OK to generate the code State Machine code is automatically updated when you start the forward engineering process You can however change this setting by clicking on the State Machine diagram background and Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 213 clicking the Automatic Update Code check box Chan
23. CompanyLogoTyperin ComplanysLocgoT Er CompanyLogoTyperin Org ac dom Node CompanyLogoTyperin org c dom Docu adjustPretix i void CompanyType A lt gt CompanyType gethrethin County int gethrethias ount int getlompanyTypel String ias Ly o gt setCompanyTyper String line qethret Atri int Schemastring ee getstartinghretCursor org 3c dom Mode Making the new class available for code generation While the CompanyType class is active 1 Click into the code file name field and enter the Java file name of the new class Altova UModel 2013 2012 Altova GmbH UModel tutorial Round trip engineering code model code 63 CompanyType java Properties name Company Type qualified name Org Chart com Org chart Class public m CompanyType lt gt qetCompany Type String 0 O I O setCompanyTyper i L code file name CompanyType java code file path annotations C E Properties 2 Click the new CompanyType class in the Model Tree drag upwards and drop onto the OrgChart component below the Component View package A popup appears when the mouse pointer is over a component l E E ipo E Relations E Hi OrgChartTest i lag types ME orgchart ER Content of OrgChart E Content of OrgChart and all su cern Package dependencies of Org E com sven EA Content of com E m altova gf Orgchart ii ER Content of OrgChart piro 7 ch Company
24. EEI getAccouniBalance To select the message numbering scheme There are two methods of selecting the numbering scheme e Click the respective icon in the icon bar e Use the Styles tab to select the scheme To select the numbering scheme using the Styles tab 1 Click the Styles tab and scroll down to the Message Numbering field 2 Click the combo box and select the numbering option you want to use The numbering option you select is immediately displayed in the sequence diagram Please note O 2012 Altova GmbH Altova UModel 2013 246 UML Diagrams Behavioral Diagrams The numbering scheme might not always correctly number all messages if ambiguous traces exist If this happens adding return messages will probably clear up any inconsistencies Message replies Message reply icons are available to create reply messages and are displayed as dashed arrows authenticate response return query result __ 4 Reply messages are also generally implied by the bottom of the activation box when activation boxes are present If activation boxes have been disabled Styles tab Show Execution Specifics false then reply arrows should be used for clarity Activating the L toggle reply messages icon automatically creates syntactically correct reply messages when creating a call message between lifelines activations boxes Creating objects with messages Messages can create new objects This is achieved usi
25. Interface AA L Adding Raised Exceptions to methods of a class 1 Click the method of the class you want to add the raised exception to in the Model Tree window e g getBalance of the Account class 2 Right click in the Properties window and select Add Raised Exception from the popup menu E O getBialance C Model Tree E Diagram Tree F Favorites Properties name getBalance qualified name Design View Bankier cor Operation e IRC Add Raised Exception Remove Raised Exception concurrency sequential query LI E Properties T Styles Overview This adds the raised exceptions field to the Properties window and automatically selects the first entry in the popup menu 3 Select an entry from the popup or enter your own into the field 2012 Altova GmbH Altova UModel 2013 280 UML Diagrams Structural Diagrams Properties lt lt annotations gt s final s native ssstrictfp s lt Zynchronized AbetractMethodError SbstracthMethodError ZbstracthMethodError AccesalbleObject Overview Account ArithmeticException Array E Properties Altova UModel 2013 2012 Altova GmbH UML Diagrams Structural Diagrams 281 10 2 2 Composite Structure Diagram Altova web site E UML Composite Structure diagrams The Composite Structure Diagram has been added in UML 2 0 and is used to show the internal structure including parts ports and connectors of a
26. NA E ESTE gt gt CollectData ibool lt gt GetBalanceAtBank in bankname string int 1 gt GetbalancesSumOtAliBankst j int 3 The project is then saved User2 opens the Bank_CSharp ump project file in folder C _2 and makes changes to the Bank class Altova UModel 2013 O 2012 Altova GmbH Projects and code engineering Merging UModel projects 149 M N E O IS lA AI SCE n Bank t I z a l bankname string i E lPaddress string i username string lea G password string 1 i a l accounts 2ccount B I i gt constructors Bankin name strina in IP string in ye i A Se SABA ea SPN l q O CollectAccountintostin api Bank A amp P bool li eee eee Pere Tere II II III AI III AI rer er rere III III AIA III III III LILLA ill GetBalanceOfAccounts int lt gt O xGet4ccessor property Bank Mamei string lt gt eGetAccessor property IPAddress string i lt gt O eGetAccessor property Username string GetAccessor propertys Passyord string A Changes made to the Bank class 1 The operations CollectAccountinfos and GetBalanceOfAccounts are both changed from public to protected ig bankname string I I G lPaddress string 9 username string ig password string d1 g accounts Account E O constructor Bankin name string in IP string in i gt ColectA4ccountintos n apt Bank APh boo SS a i V i a i E ae am Deere
27. Ol A O x Close View Details ri Gheck Gut Rollback Report Help dd Ad This dialog box is provides various way of comparing and getting specific versions of the file in question Double clicking an entry in the list opens the History Details dialog box for that file Close Closes this dialog box View Altova UModel 2013 O 2012 Altova GmbH Source Control Source Control Commands 361 Opens a further dialog box in which you can select the type of viewer you want to see the file with Details Opens a dialog box in which you can see the properties of the currently active file Get Allows you to retrieve one of the previous versions of the file in the version list and place it into the working directory Check Out Allows you to check out the latest version of the file Diff Opens the Difference options dialog box which allows you to define the difference options when viewing the differences between two file versions Use CTRL Click to mark two file versions in this window then click Diff to view the differences between them Pin Pins or unpins a version of the file allowing you to define the specific file version to use when differencing two files Rollback Rolls back to the selected version of the file Report Generates a history report which you can send to the printer file or clipboard Help Opens the online help of the source control provider plugin 2012 Altova
28. Source Control amp Source control has been disconnected SP Do vou want to remove source control binding information From your project l Don t show this dialog again You are now prompted if you want to remove the binding information from the project To provisionally disable source control for the project select No To permanently disable source control for the project select Yes 2012 Altova GmbH Altova UModel 2013 350 Source Control Source Control Commands 12 4 3 Get Latest Version Retrieves and places the latest source control version of the selected file s in the working directory The files are retrieved as read only and are not checked out If the affected files are currently checked out different things occur depending on the specific version control plugin nothing happens new data are merged into your local file or your changes are overwritten This command works in a similar fashion to the Get command but does not display the Source control Get dialog box It is therefore not possible to specify Advanced get options Note that this command automatically performs a recursive get latest version operation when performed on a folder i e it affects all other files below the current one in the package hierarchy To get the latest version of a file 1 Select the file s you want to get the latest version of in the Model Tree 2 Select Project Source Control Get Latest Version
29. UML Diagrams Behavioral Diagrams 227 10 1 4 Use Case Diagram Please see the Use Cases section in the tutorial for more information on how to add use case elements to the diagram Standard User rie lt incltide gt O 2012 Altova GmbH Altova UModel 2013 228 UML Diagrams Behavioral Diagrams 10 1 5 Communication Diagram Altova web site E UML Communication diagrams Communication diagrams display the interactions e message flows between objects at run time and show the relationships between the interacting objects Basically they model the dynamic behavior of use cases Communication diagrams are designed in the same way as sequence diagrams except that the notation is laid out in a different format Message numbering is used to indicate message sequence and nesting UModel allows you to generate Communication diagrams from Sequence diagrams and vice versa in one simple action see Generating Sequence diagrams for more information la Message 16 1 Messages 4 16 1 1 Meszaged Th Message y 4 1b 1 2 Messages Inserting Communication Diagam elements Using the toolbar icons 1 Click the specific communication icon in the Communication Diagram toolbar Add Elements Communi 7 x E AO E d x E 2 Click in the Communication diagram to insert the element Note that holding down CTRL and clicking in the diagram tab allows you to insert multiple elements
30. View P Checking4ccount cs _ Hp CreditCard ccount cs 7 SavingsAccount cs List files of type Relevant Masks I Branch after share Le 3 Select the file you want to share in the Files to share list box and click the Share button The file is now removed from the File to share list 4 Click the Close button to continue Branch after share Shares the file and creates a new branch to create a separate version 2012 Altova GmbH Altova UModel 2013 360 Source Control Source Control Commands 12 4 12Show History This command displays the history of a file under source control and allows you to view see detailed history info difference or retrieve previous versions of a file To show the history of a file 1 Click on the file in the Model Tree window 2 Select the menu option Project Source control Show history A dialog box prompting for more information opens History Options i 4 x OF Cancel Help Project telp 3 Select the appropriate entries and confirm with OK fr History of Bank CSharp Bank_CSharp ump History 8 items Version Date Acton 8 9 19 08 6 30p Checkedin Bank CSharp none nn y erre E 9018 08 bp Checked in Bank CSharp A 3718708 6 50p Checked in Bank_CSharp 4 9018 08 5 20p Checked in Bank CSharp 3 9018 08 516p Checked in Bank_ CSharp 2 9018 08 5 08p Checked in Bank CSharp 1 9018 08 5 05p Created i
31. bankview and com packages Altova UModel 2013 2012 Altova GmbH UModel User Interface Diagram Tree 71 95 2 Diagram Tree Diagram Tree tab This tab displays the currently available UModel diagrams in two ways e Grouped by diagram type sorted alphabetically e Asan alphabetical list of all project diagrams Please note Diagrams can be added to or deleted from the Diagram Tree tab by right clicking and selecting the requisite command To open a diagram in the Diagram tab e Double click the diagram you want to view in the diagram tab To view all Diagrams within their respective model groups e Right click in the pane and activate the Group diagram by diagram type option Diagram Tree Diagrams i 29 UseCase Diagrams re Overview Account Balance El Class Diagrams Siae ES Account Hierarchy FA Apply Java Profile A BankWView Main E Object Diagrams Li EA Sample Accounts Component Diagrams scali Banklew realization iL E Overview E Deployment Diagrams j A Artifacts F Deployment El E Sequence Diagramas Sequenceliagrami F Model Tree E Diagram Tree F Favorites Diagrams are grouped alphabetically within their group To view all Diagram types in list form alphabetically e Right click in the pane and deactivate the Group diagram by diagram type option O 2012 Altova GmbH Altova UModel 2013 72 UModel User Interface Diagram Tree Diagram Tree
32. dsoc 0 1 show operations compartment dscc 0 1 show nested classifiers compartment post ty O 14 show tagged values dudpl 0 1 use NET property compartment dspd 0 1 show NET property compartment options for export commands ejdc 0 1 Java comments as JavaDocs ecde 0 1 C comments as DocComments evdc 0 1 VB comments as DocComments espl1 0 1 use user defined SPL templates ecod 0 1 comment out deleted emrg 0 1 synchronize merged egfn 0 1 generate missing file names eusc 0 1 use syntax check options for XMI export exid 0 1 export UUIDs exex 0 1 export UModel specific extensions exdg 0 1 export diagrams presets exex exuv ver UML version UML2 0 UML2 1 2 UML2 2 UML2 3 UMLZ2 4 options for merge file mcan file common ancestor file options for documentation generation doof fmt dsps file output format HTML RTF MSWORD PDF SPS design file In the projects section The new parameter defines the path and file name of the new project file ump It can also be used to save an existing project under a different name e g UmodelBatch exe MyFile ump new MyBackupFile ump see also File New Load Save options The set parameter overwrites current default settings in the registry with the options settings defined here The gui parameter displays the UModel interface during the batch process Example 1 Imp
33. stricthpo gt CompanyType Packagel com UrgChart lt lt final gt gt Comparable Unknown Extermalz lt lt native gt Date Unknown Externals Properties StyleqDescT ype Package cam Orglhart Division ype Packagel com UrgChart ere Document Packagel com altova xmi E EU Address Packagel com UrgChart ipo FPackagel com OrgChart ipo Exception Unknown E sternals Packagel com UrgChart Altova UModel 2013 2012 Altova GmbH Projects and code engineering Importing Java C and VB binaries 125 7 3 Importing Java C and VB binaries UModel now supports the import of C Java and VB binaries This is extremely useful when working with binaries from a third party or the original source code has become unavailable If you intend to import Java and or CF binary files the following programs components must be installed Java 1 4 5 0 Sun Java Runtime Environment JRE or Development Kit JDK in Versions 1 4 1 5 1 6 UModel support Type import is supported for all Class Archives targeting these environments i e adhering to the Java Virtual Machine Specification C 2 0 C 3 0 CF 4 0 Visual Basic 7 1 8 0 and 9 0 NET Framework 2 0 3 0 3 5 and 4 0 UModel support Type import is supported for Assemblies targeting NET Framework 1 1 2 0 3 0 3 5 4 0 NET Compact Framework v1 0 v2 0 v3 5 for PocketPC Smartphone WindowsCE These requirements only apply if you intend to import J
34. 162 command from context menu 419 command from toolbar 415 from Favorites 73 icon from toolbar 415 shortcut 418 toolbar 415 Dependency include 20 Show relationships 85 165 usage 44 Deployment diagram 49 icons 374 Deployment diagram 284 Derived class 34 classes inserting 94 Diagram Activity 186 Class 269 Communication 228 Component 283 Composite structure 281 2012 Altova GmbH Index 471 Diagram Deployment 284 Interaction Overview 231 Object 285 Package 286 Profile 289 Sequence 236 State machine 201 Timing 260 Use Case 227 XML schema 304 Add activity to transition 202 adding code to sequence diagram 256 Additional XML schema 303 close all but active 85 constrain elements 67 generate code from sequence diagram 253 generate multiple sequence diagrams from 251 generate Package dependency diagram 286 generate sequence diagram from 248 generate sequence diagram from getter setter 251 hyperlink 96 icons 368 ignore elem from inluded files 422 line weight 35 multiple instances of class 269 open 71 Paste in Diagram only 91 Profile and stereotypes 291 properties 85 save as png 387 save elements as bitmap 392 save open diagrams with project 422 share package and diagram 151 show source code comments 85 sizing 85 styles 76 XML schema import 305 Diagram frame show UML diagram heading 89 Diagram heading show
35. 1D14 a 382 LO USEC ase dap a rapire 383 13 16 AME Scale 384 14 UModel Reference 386 AL EME gt A a lis 387 142 RS O 392 A OE A ld nee eee 395 IAA voll near salen 22 es O RADA Seeders e A oE A teehee 404 Altova UModel 2013 14 5 14 7 14 8 15 15 1 13 2 16 16 1 VE silla 14 6 Tools Loo bditsa aiar TOOLS eren CRR Kde Mil salle Mackie allea Plis A eh E EA A AE 2 E EE eE amine 14 6 7 Restore Toolbars and Windows ossee 14 68 o A yat WINGOW asii Aa Help asscsclliiaziaselalia Code Generator The way to SPL Spy Programming Language ISA BasseSPEstrucure aa lana LZ Variables silicio aaa INS Operators illa lia 15 14 CONdIUONS sacrario ida rd iia Sel Collections and Ora aa Belle IALO SUBLO MMES iia Subroutine declaration sz2s sesser a EE Re E Subroutine inVOCcatiON eeccccecececececocarecooocenaaeann ETTOE COLES eee 20 e a A ed cake eter Appendices License Information e a OS 16 1 1 Electronic Software Distribution 16 1 2 Software Activation and License Metering 16 1 3 Intellectual Property Rights AG pels a aisha 14 62 Spelling Ops 14463 capte Eds ESA WICKS a 14 6 5 User detined Too it 1400 CUSTOMIZE r a COMIMANAS oo ccccccccccccccucccccceccccccecscceuccccsececeeteccseeesceuscesseceeses Altova UModel 2013 16 1 4 Altova End User License Agreement Index
36. 239 Options project 159 source control 422 tools 422 Orthogonal line 44 state 208 Override class operations 269 default SPL templates 130 Overview pane 82 Overwrite code from model 395 model from code 395 OwnedEnd association 162 Ownership dot 167 P Package create as namespace package 115 expand collapse 67 icons 377 profile 291 2012 Altova GmbH Index 477 Package sharing 151 Package diagram 286 generating dependency diagram 286 insert elements 287 Packagelmport 287 PackageMerge 287 Page prevent split over pages 387 Parameter batch 106 template 158 Partial documentation generate 172 Paste element in diagram 91 in Diagram only 91 Path change project location 112 examples folder 14 Import relative to UMP file 120 use namespace in code 53 Performance enhancement 160 PNG save diagram 387 Prerequisites forward engineering 135 Pretty print project on save 112 Print preview 387 Profile diagram 289 Application 289 diagram 289 291 stereotypes 291 Project 395 2 way merge 145 3 way manual merge 148 3 way merge 146 add to source control 356 create 112 create namespace package 115 creating subprojects 320 default code 422 file updating 130 generating documentation 172 import 120 include UModel project 142 insert package 112 Merge 144 move 112 open last on start 422 options 159 remove from sou
37. AND ADEQUACY OF THE SOFTWARE AND ANY DATA GENERATED OR PROCESSED BY THE SOFTWARE FOR YOUR INTENDED USE AND YOU WILL DEFEND INDEMNIFY AND HOLD ALTOVA ITS OFFICERS AND EMPLOYEES HARMLESS FROM ANY 3RD PARTY CLAIMS DEMANDS OR SUITS THAT ARE BASED UPON THE ACCURACY AND ADEQUACY OF THE SOFTWARE IN YOUR USE OR ANY DATA GENERATED BY THE SOFTWARE IN YOUR USE 2 INTELLECTUAL PROPERTY RIGHTS Acknowledgement of Altova s Rights You acknowledge that the Software and any copies that you are authorized by Altova to make are the intellectual property of and are owned by Altova and its suppliers The structure organization and code of the Software are the valuable trade secrets and confidential information of Altova and its suppliers The Software is protected by copyright including without limitation by United States Copyright Law international treaty provisions and applicable laws in the country in which it is being used You acknowledge that Altova retains the ownership of all patents copyrights trade secrets trademarks and other intellectual property rights pertaining to the Software and that Altova s ownership rights extend to any images photographs animations videos audio music text and applets incorporated into the Software and all accompanying printed materials You will take no actions which adversely affect Altova s intellectual property rights in the Software Trademarks shall be used in accordance with accepted trademark practice inc
38. Altova GmbH Altova UModel 2013 418 UModel Reference Tools P BankServer cs Notepad File Edit Format View Help namespace Agency ge RAS RAS pu lic class Bankserver public bool logintstring username TODO add implementation UModel Arguments Project File Name The file name of the active UModel project file e g Test ump Project File Path The absolute file path of the active UModel project file e g c MyDirectory Test ump Focused UML Data Name The name of the currently focused UML element e g Class1 Focused UML Data UML Qualified Name The qualified name of the currently focused UML element e g Package1 Package2 Class1 Focused UML Data Code File Name The code file name of the currently focused UML class interface or enumeration as shown in the Property window relative to the realizing component e g Class1 cs or MyNamespacelClass1 Java Focused UML Data Code File Path The code file path of the currently focused UML class interface or enumeration as shown in the Property window e g C Temp MySource Class1 cs Focused UML Data Code Project File Name The file name of the code project the currently focused UML class interface or enumeration belongs to The code project file name can be relative to the UModel project file and is the same as shown in the Properties of the component e g C Temp MySource MyProject vcproj or MySource
39. Assert assert Designates the valid combined fragment and its sequences Often used in combination with consider or ignore operands Ignore ignore Defines which messages should be ignored in the interaction Often used in combination with assert or consider operands Consider consider Defines which messages should be considered in the interaction Adding InteractionOperands to a combined fragment 1 Right click the combined fragment and select New InteractionOperand The text cursor is automatically set for you to enter the guard condition 2 Enter the guard condition for the InteractionOperand e g passwordOK and press Enter to confirm Properties name Interaction perand element kind Interaction perand visibility unspecihed quard IpazswordUk Properties Styles Use CTRL Enter to create a multi line InteractionOperand 2012 Altova GmbH Altova UModel 2013 242 UML Diagrams Behavioral Diagrams 3 Use the same method to add the second interaction operand with the guard condition else Dashed lines separate the individual operands in the fragment Deleting InteractionOperands 1 Double click the guard expression in the combined fragment element of the diagram not in the Properties tab 2 Delete the guard expression completely and press Enter to confirm The guard expression interaction operand is removed and the combined fragment is automatically resized Interaction Use InteractionU
40. Class diagrams Object diagrams Component diagrams Deployment diagrams Round trip process model code model e Code generation from UModel e Add anew operation to the external code e Merge the external code back into UModel Round trip process code model code e Import code produced by XML Spy from a directory or from a project file e Add anew class to the generated model in UModel e Merge the updated project with the external code All the files used in this tutorial are initally available in the C Documents and Settings All Users Application Data Altova folder When any single user starts the application for the first time the example files for that user are copied to C Documents and Settings lt username gt My Documents Altova UModel2013 UModelExamples folder Therefore do not move edit or delete the example files in the initial All Users directory BankView start ump is the UModel project file that constitutes the initial state of the tutorial sample Several model diagrams as well as classes objects and other model elements exist at this stage Working through the tutorial adds new packages model diagrams and many other elements that will acquaint you with the ease with which you can model applications using UModel Please note that the syntax check function reports errors and warnings on this file the tutorial shows you how to resolve these issues BankView finish ump is the UModel project file that co
41. Client 2008 3a http www purecm com A standard installation will work correctly with Altova products After the installation start the PureCM client to register a server PushOK CVS SCC NT 2 1 2 5 http www pushok com soft_cvs php A standard installation is sufficient for using PushOK CVS SCC NT e After installation is complete make sure your copy of the CVS proxy plug in is correctly registered e After defining a workspace you can start to work PushOK CVS SCC x64 version 2 2 0 4 http www pushok com soft_cvs php A standard installation is sufficient for using PushOK CVS SCC e After installation is complete make sure your copy of the CVS proxy plug in is correctly registered e After defining a workspace you can start to work PushOK SVN SCC 1 5 1 1 http www pushok com soft_svn php A standard installation of PushOK SVN SCC is sufficient for use with Altova products When installing under Vista it is possible that the COM library svncom dll cannot be registered In this case finish the installation and then register the library manually by following these steps 1 Start a command window using the option Run as administrator 2 Enter cd C Program Files PushOK Software SVNSCC svn Altova UModel 2013 2012 Altova GmbH Source Control Installing Source Control Systems 337 3 Type the command gt regsvr32 svncom dll PushOK SVN SCC x64 version 1 6 3 1 http www pushok com soft_svn php A sta
42. Diagram Tree Diagrams E UseCase Diagrams Class Diagrams o FR Apply Java Profile i F7 BankView Main E Object Diagrams E PE Component Diagrams E Deployment Diagrams Ei Sequence Diagrams F Model Tree E Diagram Tree F Favorites All class diagrams contained in the project are displayed 3 Double click the BankView Main diagram icon The Class diagram appears as a tab in the working area Please note You could of course double click the Class diagram icon in the Model Tree tab below the BankView package to achieve the same thing Two concrete classes with a composite association between them are visible in the class diagram Altova UModel 2013 2012 Altova GmbH UModel tutorial Class Diagrams 29 bank Bank ordered bank 4 FT lBankA4Pl thanks Dank AFl collectBankAdre sinfos Bank view Lin boolean colleci4ccountintos boolean collectData boolean getBalance tBankiin string int getBalancesumoOtf A llBank int To add a new class and define it as abstract insert it name if it becomes deselected GOO yy i Account String in String in Bank A amp P boolean String int bankname String Padress String username String password String Bankin String in F String i collect4ccountinto in Ba getBalanceOfAccount int detBankkamel i String detlPAdres String getlsernamer i String gelPas word String Cli
43. E acom lt lt applys profile E Relations 3 Java Profile E Relations from Design view from Root E Interaction View E Model Tree E Diagram EE ES Favorites Properties x hame Bank ew element kind Package visibility public lt namespace gt C The Bank_CSharp ump sample file is shown below e the CF profile has been assigned to the BankView package e the C namespace root has been assigned to the Banking access and BankView packages e the Interaction View package contains two interaction elements which each contain a sequence diagram O 2012 Altova GmbH Altova UModel 2013 102 UModel User Interface Bank samples E Component View E Deployment view El Design View 1 Due as Banking access E ka BankView ci F7 Apply CSharp Profile E E Fs com lt apply lt profile gt gt E Relations from Design view from Root T S Interaction View fal Use Case View F Mode E Diagr HE Favo Properties 1x name Barkley element kind Package visibility public lt lt namespace C The Bank_MultiLanguage ump sample file is shown below the Java profile has been assigned to the BankView package the C namespace root has been assigned to the Bank Server package the Java namespace root has been assigned to the BankView package the Interaction View package contains two interaction elements which each contain a sequence diagram e the project has
44. END USER LICENSE AGREEMENT Licensor Altova GmbH Rudolfsplatz 13a 9 A 1010 Wien Austria Important Read Carefully Notice to User This End User License Agreement Software License Agreement is a legal document between you and Altova GmbH Altova It is important that you read this document before using the Altova provided software Software and any accompanying documentation including without limitation printed materials online files or electronic documentation Documentation By clicking the Il accept and Next buttons below or by installing or otherwise using the Software you agree to be bound by the terms of this Software License Agreement as well as the Altova Privacy Policy Privacy Policy including without limitation the warranty disclaimers limitation of liability data use and termination provisions below whether or not you decide to purchase the Software You agree that this agreement is enforceable like any written agreement negotiated and signed by you If you do not agree you are not licensed to use the Software and you must destroy any downloaded copies of the Software in your possession or control You may print a copy of this Software License Agreement as part of the installation process at the time of acceptance Alternatively you may go to our Web site at http www altova com eula to download and print a copy of this Software License Agreement for your files and
45. En Java Lang Nava Lang a 4 b F Model a SiDiagra SE Favori Properties name Liteline 1 1 1 get ccountBalsnce element kind Lifeline i visibility unspecifed represents b Account destruction C Execution Specification Object activation An execution specification activation is displayed as a box rectangle on the object lifeline An activation is the execution of a procedure and the time needed for any nested procedures to execute Activation boxes are automatically created when a message is created between two lifelines A recursive or self message one that calls a different method in the same class creates stacked activation boxes Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 239 Displaying hiding activation boxes 1 Click the Styles tab and scroll to the bottom of the list The Show Execution Specifications combo box allows you to show hide the activation boxes in the sequence diagram Lifeline attributes The destruction check box allows you to add a destruction marker or stop to the lifeline without having to use a destruction message The selector field allows you to enter an expression that specifies the particular part represented by the lifeline if the ConnectableElement is multivalued i e has a multiplicity greater than one Goto lifeline element Right clicking a lifeline allows you to select Goto XXX where XXX is the specific lifeline type that you
46. GmbH UML Diagrams Structural Diagrams 269 10 2 1 Class Diagram Please see the Class Diagrams section in the tutorial for more information on how to add classes to a diagram savings Account creditLimit float interestrateGnBalance float interestrateGnicashAdvance flos interestRate float minimumbalance flost 1 0000 Savings 2 ccount getinterestRate float collect amp ccountinfo in bank A amp P Dank AF boolean getMinimumbalance float CrediCardA4ccount getCreditLimit float getlnterestrateOnBalance float getlinterestrateOnCashAdvancel collect Accountinforin bank P Da gt gt a aqua bo Expanding hiding class compartments in a UML diagram There are several methods of expanding the various compartments of class diagrams e Click on the or buttons of the currently active class to expand collapse the specific compartment e Use the marquee drag on the diagram background to mark multiple classes then click the expand hide button You can also use CTRL click to select multiple classes e Press CTRL A to select all classes then click the expand collapse button on one of the classes to expand collapse the respective compartments Expanding collapsing class compartments in the Model Tree In the Model Tree classes are subelements of packages and you can affect either the packages or the classes Click the package class you want to expand and Press the key to expand the current
47. GmbH Altova UModel 2013 362 Source Control Source Control Commands 12 4 13Show Differences This command displays the differences between the file currently in the source control repository and the checked in out file of the same name in the working directory If you have pinned one of the files in the history dialog box then the pinned file will be used in the Compare text box Any two files can be selected using the Browse buttons To show the differences between two files 1 Click on a file in the Model Tree window 2 Select the menu option Project Source control Show Differences A dialog box prompting for more information appears Difference Options Format Visual SourceSafe C Unix T Ignore white space l lgnore case Differences for fAltovaTestaltova eye_spyfdefault xml d a aalala 419 2 Altovalest altorva eye_ spy default xml c projects spyyyeb default xmi 1 lt 7xspl version 1 0 encoding 1 lt 7 xspl version 1 0 enca edited with XML Spy v3 5 2 l edited with XML Sp 3 lt DOCTYPE main SYSTEM spyweb 3 lt DOCTYPE main SYSTEM 3 4 lt maln gt 4 lt maln gt lt x begin navigation hi 1 begin naviga meta description gt XHL Spy meta description gt i meta keywords gt KXML XML ed meta_keyvwords gt KXML meta title XML Editor HH meta title XML Edit meta search str gt XML Editor meta search str gt XML pageheader
48. Hierarch The new method added to the code getlnterestRate generates a new operation in the SavingsAccount class of UModel Altova UModel 2013 O 2012 Altova GmbH UModel tutorial Round trip engineering code model code 59 4 8 Round trip engineering code model code Altova web site E Reverse engineering Java C VB NET code The aim of this tutorial section is to e Import a directory containing Java code generated by XMLSpy e Add a new class to the project in UModel e Merge to the program code from a UModel package The files used in this example are available as the OrgChart zip file under UModelExamples folder of your installation Please unzip the OrgChart zip file into the UModelExamples folder before you start this section This creates the OrgChart directory which will then be used to import the existing code To Reverse engineer import existing code from a directory 1 Select File New to create a new project 2 Select Project Import source directory 3 Select the C 1 2 2 0 3 0 or 4 0 Java version 1 4 or 5 0 or VB version 7 1 8 0 or 9 0 that the source code conforms to 4 Click the Browse button Lal and select the OrgChart directory supplied in the UModelExamples folder Import Source Directory a x Language Directory C Documents and Settings My My Documents E W Process all subdirectories M Import directories relative to UModel proje
49. M Make path relative to Bank_MultiLanguage Include subproject elements Editable Readonly Cancel 3 Select Editable to be able to edit the subproject from the main project Selecting Read only makes it uneditable in the main project Then click OK Model Tree Root E Behavior view m Component View E Deployment view E Design view i ee BT Overview fA Account Transfer E c Bank server Bank Server ump E Banking access Banking access ump j E EA Bank view aes Relations The name of the subproject file is shown in square brackets next to the package name and the file Banking access ump file is placed in the UModelExamples Bank_MultiLanguage_Java folder The same method is used to create a subproject of the BankView folder The BankView ump file is placed in the UModelExamples Bank_MultiLanguage_Java folder Model Tree Root E Behavior view Component View E Deployment view E Design view i ee BT Overview El Account Transfer E c Bank Server Bank Server ump E A Banking access j E Bank view Bank iew ump E Relations Please note The file path of the subproject can be changed at any time by right clicking the 2012 Altova GmbH Altova UModel 2013 322 Teamwork support for UModel projects Creating and editing subproject files subproject and selecting Subproject Edit File Path Opening and editing subproject files Having
50. New Diagram Profile diagram This adds the Profile diagram to the selected package 2 Drag the newly created profile MyProfile from the Model Tree into the new Profile diagram 3 Drag the DesignView package into the Profile diagram as well Re 4 Click the ProfileApplication icon lin the icon bar select the DesignView package and drag the connector onto the MyProfile package Model Tree E Deployment View E Pq Unknown Externals E J Behavior View TH profiles gt El E Java Profile Jawa Profile ump MyProfile E Eq Java Lang Java Lang ump from Root E RATH Profile 22 Profile ump Ea MyProfile C Model EH Diagra F Favorites This allows the stereotypes defined in this profile MyProfile to be used in the DesignView package or any of its subpackages 5 Click the stereotype icon El in the icon bar and insert a stereotype class e g MyKeyValuePair lt lt protile gt MyProfile from Root 6 Press F7 to add an attribute to the stereotype e g MyKey1 Do the same thing to add MyKey2 Altova UModel 2013 2012 Altova GmbH UML Diagrams Structural Diagrams 293 bye MyProfile Mykeyalu Property protected perra This concludes the definition of the stereotype for the moment We can now use assign the stereotype when adding an attribute to a class which is part of the BankView package Using assigning stereotypes 1 Double click the BankView Main c
51. Note Note Link O 2012 Altova GmbH Altova UModel 2013 384 UModel Diagram icons XML Schema diagram 13 16 XML Schema diagram Add XSD TargetNamespace XSD Schema XSD Element global XSD Group XSD ComplexType XSD ComplexType simpleContent XSD SimpleType XSD List XSD Union XSD Enumeration XSD Attribute XSD AttributeGroup XSD Notation XSD Import Relationship XSD Include XSD Redefine XSD Restriction XSD Extension XSD Substitution Note Note link Altova UModel 2013 2012 Altova GmbH Chapter 14 UModel Reference 386 UModel Reference 14 UModel Reference The following section lists all the menus and menu options in UModel and supplies a short description of each Altova UModel 2013 O 2012 Altova GmbH UModel Reference File 387 14 1 File New Clears the diagram tab if a previous project exists and creates a new UModel project Open Opens previously defined modeling project Select a previously saved project file ump from the Open dialog box The standard Open dialog is shown below Please note the Switch to URL button at the base of the dialog box SS UModelE samples 4 O 2 eg _ J Emps My Recent OrgChart Documents gt Tutorial h alp Bank_CSharp ump Desktop D Bank_CSharp ump h Bank_Java ump gt Bank Multilanguage ump hy Documents Files of type UModel Projects ump Cancel Switch to URL L hy Computer
52. Realizationd gt I CheckingAcc from bankvie The line properties are immediately altered Lines have small icons along them called waypoints Waypoints can be clicked and moved to alter line characteristics Change the line properties to suit your needs 2012 Altova GmbH Altova UModel 2013 UModel tutorial Component Diagrams 47 Inserting components and creating usage dependencies 1 Double click the Overview diagram icon directly under the Design phase package in the Model Tree The Overview component diagram is opened and displays the currently defined system dependencies between components and interfaces Model Tree Root E 7 Component View s Interface 2 E Banking access IBankAPI E Bank iew from Banking access 2 SU BankView realization m Banker i i Bank View GUI 7 Deployment View El Design phase Overview E Banking access fg EA BankYiew b E Model EXDiagra F Favorites component connectiin String boolean Bank API client logincin String in from Banking access disconnecti void gethrot Accounts int get ccountiD in int String get24ccountBalance in mb get4ccountLimitiin Inti int isCheckingAccountiin sint issavings ccountiin sinti k name Overview element kind ComponentD agram issavyings 2 ccountiin sinti k PODIO OO O 2 Click the BankView GUI component under the Component View BankView package in the Model Tree and drag it
53. Settings dialog box with the Model from Code tab being active No changes are needed for the tutorial see Merge UModel project from code for more information Synchronization Settings x Code from Model Model from Code Synchronization Merge Code into Model C Overwrite Model according to Code Project Settings Lancel 5 Click OK to merge the model from the code O 2012 Altova GmbH Altova UModel 2013 58 UModel tutorial Round trip engineering model code model Messages E Starting Project Check Y LIO Changing file E Documents and Settings billy Documents Altova LMods Changing file Documenta and Settings biy Documents Alto a ode finished update code from project error s wearningl finished Se Check error s warnindg Starting update model from code Parsing file Documents and Settings by Documents AltovatUModel Resolving type references finished update model from code error s warnindg 6 Click the Account Hierarchy tab to see the outcome of the merge process CreditCardAccount 1 nBalance float WlashAdvance float d4 ccount imiti float tRateQGnBalancel float SavingsAccount interestRate float Savings ccount getMinimumbBalance float getlnterestRate float collect 4 ccountintarin Bank AP boolean 2 Bankview realization E Sample Accounts ESBankview Main HH Account
54. Software Activation the software may use your internal network and Internet connection for the purpose of transmitting license related data at the time of installation registration use or update to an Altova operated license server and validating the authenticity of the license related data in order to protect Altova against unlicensed or illegal use of the software and to improve customer service Activation is based on the exchange of license related data such as operating system IP address date time software version and computer name along with other information between your computer and an Altova license server Your Altova product has a built in license metering module that further helps you avoid any unintentional violation of the End User License Agreement Your product is licensed either as a single user or multi user installation and the license metering module makes sure that no more than the licensed number of users use the application concurrently This license metering technology uses your local area network LAN to communicate between instances of the application running on different computers Single license When the application starts up as part of the license metering process the software sends a short broadcast datagram to find any other instance of the product running on another computer in the same network segment If it doesn t get any response it will open a port for listening to other instances of the application
55. Source Control SC plug ins are not automatically installed by all SC products Please read the documentation supplied with your specific SC software for more information about plug ins In this section This section as organized as follows e Supported Source Control Systems lists the Source Control Systems SCSs that are supported by UModel Systems are listed alphabetically by server and for each server the supported clients are also listed e Installing Source Control Systems contains notes about how to install the various SCSs e SCSs and Altova Diffbog Differencing describes how various Source Control Systems can be set up to carry out differencing with Altova DiffDog e Source Control Commands contains individual descriptions of each command in the submenu Project Source Control Resource Speed issues Very large source control databases might be introducing a speed resource penalty when automatically performing background status updates You might be able to speed up your system by disabling or increasing the interval of the Perform background status updates every xxx seconds field in the Source Control tab accessed through Tools Options Altova UModel 2013 O 2012 Altova GmbH Source Control 327 O 2012 Altova GmbH Altova UModel 2013 328 Source Control Supported Source Control Systems 12 1 Supported Source Control Systems The list below shows the Source Control Servers SCSs supported by UMod
56. String IPadress String username String password string accounts 4ccount TARER Bankrin String in F String in String in Str collectAccountntost in Bank SPI boolean getBbalanceOtAccoauntst int 91 balance pil detBankMame String ili E xl Ed Model Tree E Diagram Tree X Favorites Properties 1x getiP Adress String getlisername i String TA getPasz ord String name Sample Accounts element kind ObjectCiagram AltovaBank Bank E bankname Atovabank IPadress 1010 127126 John s Checkint Inserting a class into an Object diagram e Click the Account class icon E 4ceeun in the Model Tree and drag it into the Sample Accounts tab The composite association defined previously in BankView Main diagram is automatically created 2012 Altova GmbH Altova UModel 2013 40 UModel tutorial Object Diagrams balance flost 0 ld String accounts Account gelBalance float getild String collect 2 ecountintaiin string in string in py String Bank AP boolean int To add a new object instance by selecting its type 1 Click the InstanceSpecification icon in the icon bar then click under the John s Checking object in the diagram tab 2 Change the name of the instance to John s Credit and press Enter EJ Mod EF Diagr ae Favo Properties nd Xx name John s Credit John s Checking Checking ccount E element kind InztanceSpecificatio
57. Styles tab Switch to a different Class Diagram and insert a new class Click the Class Header Title and activate the MyKeyValuePair stereotype check box Properties lt lt MyKeywallePair gt Myke MyKey2 a E Properties Styles E Hierarchy The new class now has the styles that were assigned to the stereotype e an aqua gradient Note that the stereotype styles are not applied if the stereotype is applied to an property or operation within the class Click the new stereotype class in the diagram then click the Styles tab Select the Appled Stereotype Styles entry in the Styles combo box black 12 Header Font ie E Properties D Styles E Hierarchy You can now preview the style settings defined for this stereotype in the Styles window Note that you cannot change the style settings here This must be done in the class diagram in which the stereotype was defined Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Structural Diagrams 299 Custom stereotype icons assigning UModel allows you to create custom stereotype icons for custom stereotypes To create a custom stereotype icon 1 Right click the Root package and select New element Package 2 Name the package MyPackage Model Tree Root Component view O MyPackage C Model Tree E Diagram DI Favorites 3 Right click MyPackage and select New Diagram Deployment diagram This creates a deplo
58. The Default menu is the one visible when no XML documents of any type are open The UModel Project menu is the menu bar visible when a ump file has been opened To customize a menu 1 Select the menu bar you want to customize from the Show Menus for combo box 2 Click the Commands tab and drag the commands to the menu bar of your choice To delete commands from a menu 1 Click right on the command or icon representing the command and 2 Select the Delete option from the popup menu or 1 Select Tools Customize to open the Customize dialog box and 2 Drag the command away from the menu and drop it as soon as the check mark icon appears below the mouse pointer To reset either of the menu bars 1 Select either the Default or UModel Project entry in the combo box and 2 Click the Reset button just below the menu name A prompt appears asking if you are sure you want to reset the menu bar To customize any of the Context menus right click menus 1 Select the context menu from the Select context menus combo box 2 Click the Commands tab and drag the specific commands to context menu that is now open To delete commands from a context menu 1 Click right on the command or icon representing the command and 2 Select the Delete option from the popup menu or 1 Select Tools Customize to open the Customize dialog box and 2 Drag the command away from the context menu and drop it as soon as the check mark icon
59. ToolTips check box allows you to decide if you want to have the shortcut displayed in the tooltip When active the Large icons check box switches between the standard size icons and larger versions of the icons Altova UModel 2013 O 2012 Altova GmbH UModel Reference Tools 421 14 6 7 Restore Toolbars and Windows The Restore Toolbars and Windows command closes down UModel and re starts it with the default settings Before it closes down a dialog pops up asking for confirmation about whether UModel should be restarted This command is useful if you have been resizing moving or hiding toolbars or windows and would now like to have all the toolbars and windows as they originally were O 2012 Altova GmbH Altova UModel 2013 422 UModel Reference Tools 14 6 8 Options Select the menu item Tools Options to define your project options The View tab allows you to define e Where the program logo should appear e The application title bar contents e The types of elements you want listed when using the List elements not used in any diagram context menu option in the Model Tree or Favorites tab You also have the option of ignoring elements contained in included files e f a selected element in a diagram is automatically selected synchronized in the Model Tree e The default depth of the hierarchy view when using the Show graph view in the Hierarchy tab e The Autolayout Hierarchic settings which allow you to defi
60. Tree Root E Behavior view m Component View E Deployment view E Design view Ea eM Overview Account Transfer E c Bank Server Bank Server mp ac Banking access Banking access ump E ABank view Bank iew ump E Relations E Interaction view E E JDK5 0 Jawa types only UMmp E Pqunknown Externals El Use Case View Bank_MultiLanguage Use Case Vi E aPC Profile CX Profile ump E kaava Profile Java Profile ump F Model Tree EX Diagram Tree 4 Favorites Please note UModel allows you to share packages and UML diagrams they might contain between different projects Packages can be included in other projects by reference or as a copy Please see Sharing Packages and Diagrams for more information To create a subproject file Subproject files can be split off a main or subproject file at any time 1 Right click a package s e g Banking access and select Subproject Create new Subproject Create new Subproject File path IB anking access ump El M Make path relative to Bank_MultiLanguage Include subproject elements Editable Readonly Cancel 2 Click the Browse button and select the subdirectory Bank_MultiLanguage_Java Altova UModel 2013 O 2012 Altova GmbH Teamwork support for UModel projects Creating and editing subproject files 321 Create new Subproject j File path E ank_MultLanguage Java Banking access ump
61. UML diagram heading 89 Diagram pane 85 Diagram Tree 71 Diagrams 184 behavioral 185 structural 268 Diffdog configure for differencing 340 Differencing configuring Diffdog 340 Directive defined symbols 120 Directory change project location 112 examples folder 14 for code generation 53 ignoring on merge 422 import 59 importing code from 120 use namespace in path 53 Disable source control 349 Distribution of Altova s software products 451 452 454 Document hyperlink to 96 Documentation Annotation 82 generate UML project 172 relative links 172 Documentation tab 82 Dot Ownership 167 Download source control project 347 Drag and drop create association with handles 167 right mouse button 94 Drid snap lines while dragging 20 DurationConstraint Timing diagram 264 E Edit 392 Element add to Favorites 73 align 89 assign constraint to 67 associations when importing 59 constrain 67 cut copy paste 91 generate documentation 172 hyperlink to 96 2012 Altova GmbH 472 Index Element inserting 94 properties 74 relationships 162 save selected as bitmap 392 show hierarchy 79 styles 76 Elements ignore from include files 422 insert State Machine 202 Enable source control 349 End User License Agreement 451 455 Enhance performance 160 Entry point add to submachine 208 Enumeration and stereotypes 295 default v
62. a a Ss Elmo 3913 LALA cla viv D v v amp l gt IF v Viv Class Property lt lt PrimaryKey gt gt Column Class lt lt ForeignKey gt gt Class lt lt UniqueKey gt gt Class Package Package lt lt Index gt gt lt lt namespace gt gt lt lt namespace gt NS lt lt Database gt gt CheckConstraint Mame Class adr arr 2 t MA MA CO A M gt Data Type lle ser ha E View Nl o oO OoOo O l lt lt nullable gt gt Class Column Property lt lt View gt gt Muttiplicity A A PT i E imme CTI definition definition gt gt Operation Class Function name _p Q ume _____l Parameter Parameter lt lt Function gt gt lt lt Functions gt gt i C e a srnmuorim I Kar Class IEEE E A lt lt Trigger gt gt 2012 Altova GmbH Altova UModel 2013 142 Projects and code engineering Including other UModel projects 7 11 Including other UModel projects UModel is supplied with several files that can be included in a UModel project Clicking one of the Java tabs allows you to include Java lang classes interfaces and packages in your project by selecting one of the supplied files 1 Select Project Include Subproject to open the Include dialog box 2 Click the UModel project file you want to include and press OK UModel projects can be included within other UModel projects To include projects place the respective ump files in e UMode
63. a word to the user dictionary enter the word in the Word text box and click Add The word will be added to the alphabetical list in the Dictionary pane To delete a word from the dictionary select the word in the Dictionary pane and click Delete The word will be deleted from the Dictionary pane When you have finished editing the User Dictionary dialog click OK for the changes to be saved to the user dictionary Words may also be added to the User Dictionary during a spelling check If an unknown word is encountered during a spelling check then the Spelling dialog pops up prompting you for the action you wish to take If you click the Add to Dictionary button then the unknown word is added to the user dictionary The user dictionary is located at On Windows 7 C Users lt user gt Documents Altova SpellChecker Lexicons user dic On Windows XP c Documents and Settings lt user gt My Documents Altova SpellChecker Lexicons user dic 2012 Altova GmbH Altova UModel 2013 410 UModel Reference Tools 14 6 2 Spelling options Elements This group allows you to choose between spell checking all UML elements or only the Notes and Comments objects Prefixes Double clicking in the Prefix to ignore column lets you enter the prefixes of specific UML elements you want to ignore during spell checking e g m_ for properties and for Interfaces The Append button adds a new row to the Prefixes table Delete deletes the
64. access Banking access ump ES Bank view Bank ie vy ump E Felstions from Bank PI E Interaction View E EJ JDKS O Java types only ump connect in Paddress El Unknown Externals logintin username Str E Use Case View Bank_MultiLanguage Use Case View ump El ace Profile C Profile ump a Java Profile Jawa Frofile ump disconnect r void gethroraccounts yi getAccountibcin nAct get ccountBalancetli get amp AccountLimit in n E Model Tree EX Diagram Tree ae Favorites lt isChecking4 amp ccountti Subprojects can be structured in any way that you wish in a flat or hierarchical structure or a combination of both This makes it theoretically possible to split off every package of a main project into read only editable subproject files During the code engineering process all subordinate components of a subproject are considered there is no difference between a single project file or one that consists of multiple editable subprojects This also applies to UML diagrams they can also be edited at the main or subproject level Altova UModel 2013 2012 Altova GmbH Teamwork support for UModel projects 319 2012 Altova GmbH Altova UModel 2013 320 Teamwork support for UModel projects Creating and editing subproject files 11 1 Creating and editing subproject files The example discussed here shows how the Bank_MultiLanguage ump project was split up into multiple subprojects Model
65. added class Y in the external code is retained e the newly added class X from UModel is added to the code Overwriting code according to model means that e the newly added class Y in the external code is deleted e the newly added class X from UModel is added to the code O 2012 Altova GmbH Altova UModel 2013 400 UModel Reference Project Synchronization Settings Code from Model Model from Code SPL templates When deleting Code Comment out Delete Synchronization Merge Model into Code C Overwrite Code according to Model e Always show dialog when synchronizing Project Settings Cancel Merge UModel Project from Program Code Opens the Synchronization Settings dialog box with the Model from Code tab active Clicking the Project Settings button allows you to select the specific programming language settings Merging or overwriting code Assuming that code has been generated once from a model and changes have since been made to both model and code e g e Model elements have been added in UModel e g a new class X e A new class has been added to the external code e g class Y Merging code into model means that the newly added class X in UModel is retained the newly added class Y from the external code is added to the model Overwriting Model according to code means that the newly added class X in UModel is deleted the newly added class Y from the external co
66. also ignored The location of the XMLSpy Catalog File RootCatalog xml which enables UModel as well as XMLSpy to retrieve commonly used schemas as well as stylesheets and other files from local user folders This increases the overall processing speed and enables users to work offline 2012 Altova GmbH Altova UModel 2013 426 UModel Reference Tools Altova UModel 2013 O 2012 Altova GmbH UModel Reference Tools 427 The Source Control tab allows you to define e The current source control plugin using the combo box The Advanced button allows you to define the specific settings of the source control plugin that you selected These settings change depending on the source control plugin that you use e The login ID for the source control provider e Specific settings check in out settings e The Reset button is made available if you have checked activated the Don t show this again option in one of the dialog boxes The Don t show this again prompt is then reenabled Local Options x View Editing Diagram E diting File Code Engineering S0urce Control Current source control plug in Microsoft Visual SourceS afe Advanced Logon ID Sources afe alp Perform background status updates every 500 ms Display output messages from plug in Get everthing when opening a project TO Check in everything when closing a project TO Don t show Check Out dialog box when checking out i
67. and clicking in the diagram tab allows you to insert multiple elements of the type you selected Dragging existing elements into the Protocol State Machine diagram Most elements occurring in other Protocol State Machine diagrams can be inserted into an existing diagram 1 Locate the element you want to insert in the Model Tree tab you can use the search function text box or press CTRL F to search for any element 2 Drag the element s into the Protocol State Machine diagram To insert a simple state 1 Click the State icon E in the icon bar and click in the Protocol State Machine diagram to insert it 2 Enter the name of the state and press Enter to confirm Simple states do not have any regions or any other type of substructure To create a Protocol Transition between two states 1 Click the Transition handle of the source state on the right of the element or use the Protocol Transition icon in the icon bar 2 Drag and drop the transition arrow onto the target state The text cursor is automatically set for you to enter the pre and or post condition Please make sure to use the square brackets and slash character when entering the conditions directly Entering the pre post conditions in the Properities window automatically inserts the square brackets and slash character in the diagram Properties name ProtocolTran ition qualified name ProtocolStateMachine1 Reqic element kind ProtocolTranzition visibility
68. and the specific project type Please see Importing source code into projects for a specific example Java projects e JBuilder jpx Eclipse project project files as well as NetBeans project xml are currently supported Import Source Project j x Language Java6 0 1 6 Project file e201 0U ModelExamplesiOrgChartvOrgChart px E Import project relative to UModel project file Java Project Settings M JavaDocz as Documentation FP Resolve aliases Defined symbols Synchronization f Merge Code into Model C Overwrite Model according to Code Diagram generation M Enable diagram generation NEON Nest 5 Einer Cancel CF projects e MS Visual Studio projects csproj csdprj as well as e Borland bdsproj project files VB NET projects e MS Visual Studio projects vbproj vbdproj Import Binary Types Opens the Import Binary Types dialog box allowing you to import Java C and VB binary files Please see Importing Java C and VB binaries for more information Import XML Schema directory Opens the Import XML Schema Directory allowing you to import all XML Schemas in that directory and optionally all XML Schemas in any of the subfolders Import XML Schema File Altova UModel 2013 2012 Altova GmbH UModel Reference Project 399 Opens the Import XML Schema File dialog box allowing you to import schema files Please see XML Schema Diagrams for more information
69. been split up into 4 editable subprojects Bank Server ump Banking access ump BankView ump and Bank_Multilanguage_Use Case View ump Model Tree Root E Behavior view E Component View E Deployment view A Design view Overview E account Transfer ac c Bank server Bank Server ump E 27 Banking access Banking access UMp E SA Bankiew Bank view ump Na Relations EH Interaction View E EJ JDKS 0 Jawa types only ump Unknown Externals E Use Case View Bank_MultiLanguage Use Case wiew ump imac Profile IC Profile umel E Model Tree EH Diagram Tree Favorites interface IBankAPI from Bank AF connect n Paddres String boolean lacintin username String in password disconnect r void gethroraccountst int getAccountiDrin nAccounthr int String get AccountBalancerin nAccounthr int get AccountLimit in nAccounthr int int isChecking4ccount n nAccounthr int R isSavingsAccoaunt in nA amp ccounthr inty E isCLredtCardAccount iin nAccounthr int gethinimimBalancetin nAccounthr int f hai gt Q O D Q D Altova UModel 2013 O 2012 Altova GmbH UModel User Interface Bank samples 103 O 2012 Altova GmbH Altova UModel 2013 Chapter 6 UModel Command line interface 106 UModel Command line interface Please note UModel Command line interface UModel now supports batch processing A UModelBatch exe file is available in th
70. class Altova UModel 2013 2012 Altova GmbH Creating model relationships Showing model relationships 165 8 1 Showing model relationships Showing relationships between modeling elements 1 Right click the specific element and select Show The popup menu shown below is context specific meaning that only those options are available that are relevant to the specific element Generalizations general Generalizations specific Generalization Hierarchy generali Generalization Hierarchy specific Full Generalization Hierarchy general and specific InterfaceRealizations contracts InterfaceRealizations Cimplementing Classifier Dependencies Usages Abstractions client Dependencies Usages Abstractions supplier ProfileApplications appliedProfile Profile pplications applyingPackage Associations All Properties as Associations Propertw1 as Association ElementImports timportingNamespace ElementImports fimportedelementi Packagelmports importingNamespace Packagelmports importedPackage PackageMerges receivingPackage PackageMerges mergedPackage Templates Bound elements TvpedElements To show hide text labels e Right click a class or association arrow and select Text labels Show Hide all Text labels To show a class attribute property as an association 1 Right click the property in the class O 2012 Altova GmbH Altova UModel 2013 166 Creating model relati
71. clicked The element will then be visible in the Model Tree window Combined Fragment CombinedFragment Combined fragments are subunits or sections of an interaction The interaction operator visible in the pentagon at top left defines the specific kind of combined fragment The constraint thus defines the specific fragment e g loop fragment alternative fragment etc used in the interaction bank Bank E 2 1 loginti passwordOk 2 1 1 disconnect Pg 21 2 getMrofAccountali The combined fragment icons in the icon bar allow you to insert a specific combined fragment seq alt or loop Clicking the interactionOperator combo box also allows you to define the specific interaction fragment 2012 Altova GmbH Altova UModel 2013 240 UML Diagrams Behavioral Diagrams Properties name CombinedFragmenti element kind CombinedFragment visibility unspecited Interaction perator alt Properties Styles OVerview InteractionOperators Weak sequencing seq seq The combined fragment represents weak sequencing between the behaviours of the operands ALT Alternatives alt Only one of the defined operands will be chosen the operand must have a guard expression hat evaluates to true E ee ee LI I I al E p l Y m E E E E gt 3 gt y y HHE else a Ara A Tila If one of the operands uses the guard else then this operand is executed if all other guards return false The gua
72. constrain its owner as well e fa prompt should appear when deleting elements from a project from the Favorites tab or in any of the diagrams This prompt can be deactivated when deleting items there this option allows you to reset the prompt on delete dialog box e The delay with which the syntax error popup should be closed Local Options i x View Editing Diagram E diting File Code Engineering Source Control When adding new tems Ask before deleting from project Open new diagrams M in Favorites Tree 7 in diagrams Set default visibility protected gt 1 Syntax Error Bubble tected a deals ci Disappear delay 4000 ms Operations public Set default code language Components Java5 0 1 5 Constraints e Constrain owner cancel ano O 2012 Altova GmbH Altova UModel 2013 424 UModel Reference Tools The Diagram Editing tab allows you to define The number of items that can be automatically added to a diagram before a prompt appears The display of Styles when they are automatically added to a diagram If Associations between modeling elements are to be created automatically when items are added to a diagram If the associations to collections are to be resolved If templates from unknown externals are to be resolved as not fully qualified or use preexisting Collection Templates or define new ones Collection Templates should be defined as fully quali
73. currently active row UML Spelling Options Elements a Check all UML elements 1 Check only Notes and Comments Prefixes Ignore the following prefixes Prefix to ignore In this UML element Property More spelling options Clicking the More spelling options button opens the Spelling Options dialog box shown below More Spelling Options The Spelling Options dialog is Used to define global spellchecker options Altova UModel 2013 O 2012 Altova GmbH UModel Reference Tools 411 Spelling Options Spelling Always suggest corrections Make corrections only from the main dictionary Ignore words n UPPER case Ignore words with numbers Split CamelCase words User Dictionary Dictionary Language English US Get more dictionaries at http mn altova com dictionaries Always suggest corrections Activating this option causes suggestions from both the language dictionary and the user dictionary to be displayed in the Suggestions list box Disabling this option causes no suggestions to be shown Make corrections only from main dictionary Activating this option causes only the language dictionary main dictionary to be used The user dictionary is not scanned for suggestions It also disables the User Dictionary button preventing any editing of the user dictionary Ignore words in UPPER case Activating this option causes all upper case words to be ignored Ignore word
74. day evaluation period After downloading this product you can evaluate it for a period of up to 30 days free of charge About 20 days into this evaluation period the software will start to remind you that it has not yet been licensed The reminder message will be displayed once each time you start the application If you would like to continue using the program after the 30 day evaluation period you have to purchase an Altova Software License Agreement which is delivered in the form of a key code that you enter into the Software Activation dialog to unlock the product You can purchase your license at the online shop at the Altova website Helping Others within Your Organization to Evaluate the Software If you wish to distribute the evaluation version within your company network or if you plan to use iton a PC that is not connected to the Internet you may only distribute the Setup programs provided that they are not modified in any way Any person that accesses the software installer that you have provided must request their own 30 day evaluation license key code and after expiration of their evaluation period must also purchase a license in order to be able to continue using the product For further details please refer to the Altova Software License Agreement at the end of this section Altova UModel 2013 O 2012 Altova GmbH Appendices License Information 453 16 1 2 Software Activation and License Metering As part of Altova s
75. diagram Lifeline n Lifeline The lifeline element is an individual participant in an interaction and is available in two different representations State Condition timeline or General Value lifeline To create a multiline lifeline press CTRL Enter to create a new line To insert a State Condition Statelnvariant lifeline and define state changes 1 Click the Lifeline State Condition icon in the title bar then click in the Timing Diagram to insert it 2 Enter the lifeline name to change it from the default name Lifeline1 if necessary 3 Place the mouse cursor over a section of one of the timelines and click left This selects the line 4 Move the mouse pointer to the position you want a state change to occur and click again Note that you will actually see the double headed arrow when you do this A red box appears at the click position and divides the line at this point 5 Move the cursor to the right hand side of the line and drag the line upwards I i i I I l I Lifelinet Note that lines can only be moved between existing states of the current lifeline O 2012 Altova GmbH Altova UModel 2013 262 UML Diagrams Behavioral Diagrams Any number of state changes can be defined per lifeline Once the red box appears on a line clicking anywhere else in the diagram deletes it To add a new state to the lifeline 1 Right click the lifeline and select New State Condition Statelnvariant
76. double click the BankView realization diagram icon The BankView realization component diagram is displayed E Class Diagrams i 53 Communication Diagrams i ankView DO fa Component Diagrams 0 o from bankview S Bank realizations i E Overview ao E Composite Structure Diagrams component gt Bank HE Deployment Diagrams BankView from bankview i senner ga Interaction Overview Diagrams from Bank view E E Object Diagrams Package Diagrams Ei Sequence Diagrams E fy State Machine Diagrams Eg Timing Diagrams ac 3 UseCase Diagrams CheckingAccount Model T E Diagram 3 Favorites i from banks les Properties x name Bank realizations I element kind Component Diagram CreditCardAccount from bank view 2 Switch back to the Model Tree tab by clicking that tab To insert existing classes into a component diagram 1 Locate the SavingsAccount class under the bankview package 2 Drag it into the component diagram The class is displayed with all its compartments Altova UModel 2013 O 2012 Altova GmbH UModel tutorial Component Diagrams 45 SavingsAccount i from bankwiewwy ie interestRate float O Savings Account i I i lt gt gethtinimumBalance float I gt collect amp ccountintorin Bank APIhoolean a 3 Click both collapse icons to end up with the only the class name compartment 4 Use the same method to
77. e gui parrameter used new UModelBatch gui new options creates a new project executes options nothing saved gui is left open save new UModelBatch gui new xxx ump options creates a new project executes options xxx ump saved gui is left open user mode UModelBatch gui xxx ump options loads project xxx ump executes options nothing saved gui is left open save UModelBatch gui xxx ump options new loads project xxx ump executes options xxx ump is saved gui is left open save as UModelBatch gui xxx ump options new yyy ump loads project xxx ump executes options xxx ump is saved as yyy ump gui is left open If hard errors occur on execution the other options nothing will be saved in all cases Altova UModel 2013 2012 Altova GmbH Chapter 7 Projects and code engineering 112 Projects and code engineering 7 Projects and code engineering UModel now supports all Java specific constructs among them e Java annotations Attributes operations and nested qualifiers for EnumerationLiterals Enumerations can realize interfaces Netbeans project files Reverse engineering now supports e The ability to generate a single diagram for all reverse engineered elements e Possibility to show hide anonymous bound elements on diagrams e Ability to automatically create hyperlinks from packages to their corresponding package content diagrams during the import process e Ability to resolve aliases W
78. e g SavingsAccount and select the menu option Show Hide Node content Yisible elements Element Styles Attributes Show Attributes al interestRate float V public protected minimumBalance float 1 OD0 CESSA Operations l private IW package Savings Account getinterestRate float collectAccountinfotin bank APL Bank APh boolean Show Operations getMinimumBalance float M public fw protected w w private I package Select Al Show nested Classifier Select None fe public protected When new elements are added and not hidden by Element Styles IY private I package Show elements Hide elements except those added to this node Deselecting a protected checkbox in the Attributes group deselects the protected attributes in the preview window Altova UModel 2013 2012 Altova GmbH UML Diagrams Structural Diagrams 271 Element Styles Attributes Show Attributes O interestRate float KW public protected O G minimumBalance float 1 0000 Operations o aee e SavingsAccounti O getinterestRatety float Having confirmed with OK the protected attributes in the class are replaced with ellipsis Double clicking the ellipsis opens the dialog box SavingsAccounti x L 5avinqs20ccount cetlnterestRater float collect4ccountinfo in bankAPh Bank AP boolean gethinimumbalance i float Note that individual attributes can be affected by only deselecting the check box in the
79. error s O warningls e The changes made to the project in the C _1 folder are replicated in the C _2 project file e The changes made to the project in the C _2 folder are retained in the project file e The project file in the C _2 folder should now be used as the Common Ancestor file for future 3 way merges between the project files in folders C _1 and C 2 Altova UModel 2013 2012 Altova GmbH Projects and code engineering Sharing Packages and Diagrams 151 7 13 Sharing Packages and Diagrams UModel allows you to share packages and UML diagrams they might contain between different projects Packages can be included in other UModel projects by reference or as a copy Also note that subproject files can be split off a main or subproject file at any time The subproject files can be included as editable or read only from the main project each package is shared and saved as a subproject file Subprojects can be added to a source control system Please see Teamwork support for UModel projects for more information Shared package prerequisites e Links to other packages outside of the shared scope are not permissible To share a package between projects 1 Right click a package in the Model Tree tab and select Subproject Share package Root ac Component View E y Deployment View Design phase lt de D verve ac Banking access E BankYiew A shared icon appears below the shared package in the
80. existing project file e g one of the ones created above C Program Files Altova UModel2013 UModelBatch exe C Program Files Altova UModel2013 UModelBatchOut Fred ump m2c ejdc 1 ecod 1 emrg 1 egfn 1 eusc 1 C Program Files Altova UModelOMNRUModelBatchOut Fred ump the project file we want to use update the code from the model comments in the project model should be generated as JavaDoc comment out any deleted code Altova UModel 2013 2012 Altova GmbH UModel Command line interface 109 emrg 1 synchronize the merged code legfn 1 generate any missing filenames in the project eusc 1 use the syntax check 2012 Altova GmbH Altova UModel 2013 110 UModel Command line interface File New Load Save options 6 1 File New Load Save options Full batch mode i e gui parameter not used new UModelBatch new xxx ump options creates a new project executes options xxx ump is always saved regardless of options auto save UModelBatch xxx ump options loads project xxx ump executes options xxx ump is saved only if document has changed like ibt save UModelBatch xxx ump options new loads project xxx ump executes options xxx ump is always saved regardless of options save as UModelBatch xxx ump options new yyy ump loads project xxx ump executes options always saves xxx ump as yyy ump regardless of options Batch mode with UModel user interface visible i
81. gt GetAccessor property IPAddress string O GetAccessor property Username string 1 gt GetAccessor property s Passyyord string 2 The project is then saved Usr2 now starts a 3 way project merge 1 Select Project Merge Project 3 way The Open file dialog box appears 2 Select the project file changed by User in the C _1 folder O 2012 Altova GmbH Altova UModel 2013 150 Projects and code engineering Merging UModel projects ne hy Recent Documents You are now prompted to open the Common Ancestor file which is the original project file in the UModelExamples folder Open Common Ancestor File Look in UModelE samples m J Bank_MultiLanquage_CSharp 4 ky Recent Documents j Tutorial Desktop UModel API Fai Account Transfer so Ed Bank_BPMM Bank Csharp hdo Parana no The 3 way merge process is started and you return to the project file from which you started the 3 way merge process i e from the project file in the C _2 folder The Messages window shows you the merge process in detail Messages y al a m a El x Setting type for Parameter return Operation Root Design Vie Bank view com altove bank views Bank view Collect 2ccountintos n Removing ovnedOperation Operation Collect4ccountintos from Class Bank view Package foot Design View Bank view com altova bankvie finished merge project
82. http www altova com privacy to review the Privacy Policy 1 SOFTWARE LICENSE a License Grant i Upon your acceptance of this Software License Agreement Altova grants you a non exclusive non transferable except as provided below limited license without the right to grant sublicenses to install and use a copy of the Software on one compatible personal computer or workstation up to the Permitted Number of computers Subject to the limitations set forth in Section 1 c you may install and use a copy of the Software on more than one of your compatible personal computers or workstations if you have purchased a Named User license Subject to the limitations set forth in Sections 1 d and 1 e users may use the software concurrently on a network The Permitted Number of computers and or users and the type of license e g Installed Named Users and Concurrent User shall be determined and specified at such time as you elect to purchase the Software Installed user licenses are intended to be fixed and not concurrent In other words you cannot uninstall the Software on one machine in order to reinstall that license to a different machine and then uninstall and reinstall back to the original machine Installations should be static Notwithstanding the foregoing permanent uninstallations and redeployments are acceptable in limited circumstances such as if an employee leaves the company or the machine is permanently decommissioned During the ev
83. in the respective fields and enter some values Properties BankView seannotations gt O lt annotationTypeElem L final gt O lt MyKeywaluePair gt MyKey1 hanks Bank ordered bank AFl Bank AFl Bank Wiewtin bank APLBankAPM collectBankAddressinfost boolean collectAaccountintos boolean collectDatatl boolean Displaying tagged values in a diagram 1 Click the Styles tab scroll down to the Show Tagged Values entry and select all Show Parameter true show Par direction true show ExtenzionPoints true show Tagged Values Show Execution Specifi true Show Message Mumber nested Show Assoc Ownershiltrue The diagram tab now displays the tagged values in the Note element Double clicking a value in the note element allows you to edit it directly Altova UModel 2013 2012 Altova GmbH UML Diagrams Structural Diagrams 295 Property Property lt lt MyKeyWaluePair gt MyKeyl 20 hyKey2 30 i lt MyKey aluePair gt BankView lt lt My ke value Care gt MyKeyl 20 MyKey2 30 Finished Yes banks Bank ordered bank SP Bank AFl s constructor Bank vievytin bankAPl lank API collectBankAddreselntasl boolean collect ccountintoas t boolean banks Bank ordered bank APT Bank API Bank iex fin bank APE Dank AFl collectBankAddresslnfosthoole collect amp Accountinfo boolean collectData boolean l LT Displays the tagged
84. insert the abstract class Account component gt BankView Account gt from bankyiewy ga i sRealizationa lt Realization4 SavingsAccount from bankviexy CreditCardAccount from bankwlew The package containing the inserted class is displayed in the name compartment in the form from bankview Please note To create Realization dependencies between a class and component 1 Click the Realization icon in the icon bar 2 Drag from SavingsAccount and drop the arrow on the BankView component O 2012 Altova GmbH Altova UModel 2013 Component Diagrams UModel tutorial Account from bankview j sRealizationa 4 46 Click the ComponentRealization handle of the Account class at the base and drop it 3 on the BankView component code for more information Both of these methods can be used to create realization dependencies There is another method that allows you to create realization dependencies solely in the Model engineering code model Tree please see Round tri Changing Realization line characteristics Clicking a dependency or any other type of line in a UModel diagram activates the line drawing icons in the Layout icon bar 1 Click the realization line between SavingsAccount and BankView 2 Click the line type icon Direct line in the Layout toolbar component E BankView AO i sRealizationa l I r lt
85. into the Overview diagram tab The package containing the inserted component is displayed in the name compartment from BankView 3 Use the same method to insert the BankView component under the same package component E lt Interface BankView GUI IBankAPI from Banker from Banking access O connect in String boolean logincin String in String boolean s lt component E disconnect old BankView gettNrofAccounta int from Bank ie getAccountiDrin Ant String dqet4ccountBalancerin int int The BankView component is the component produced by the forward engineering process described in this tutorial To create a usage dependency between interfaces and components u 1 Click the Usage icon in the icon bar 2 Drag from the BankView GUI component to the BankView component 3 Click the Usage icon again and drag from the BankView component to the IBankAPI interface 2012 Altova GmbH Altova UModel 2013 48 UModel tutorial Component Diagrams component E BankView GUI from Bankier sauger Es I I I I I I sscomponent g BankView from Banker lt lt nterface IBankAPI from Banking access 4 connectiin String boolean login in String in String boolean disconnect void gethrotAccountst int getAccountibiin int String det4AccountBalancerin int int The usage dependency lt lt use gt gt connects a client ele
86. license to the Software in that you may not use the upgrade or updated copy in addition to the copy of the Software that it is replacing and whose license has terminated 1 Title Title to the Software is not transferred to you Ownership of all copies of the Software and of copies made by you is vested in Altova subject to the rights of use granted to you in this Software License Agreement As between you and Altova documents files stylesheets generated program code including the Unrestricted Source Code and schemas that are authored or created by you via your utilization of the Software in accordance with its Documentation and the terms of this Software License Agreement are your property unless they are created using Evaluation Software as defined in Section 4 of this Agreement in which case you have only a limited license to use any output that contains generated program code including Unrestricted Source Code such as Java C CA VB NET or XSLT and associated project files and build scripts as well as generated XML XML Schemas documentation UML diagrams and database structures only for the thirty 30 day evaluation period j Reverse Engineering Except and to the limited extent as may be otherwise specifically provided by applicable law in the European Union you may not reverse engineer decompile disassemble or otherwise attempt to discover the source code underlying ideas underlying user interface techniques or algorit
87. namespace gt gt check box in the Properties tab to define this as the target namespace E yen M Y Schemas coon a il AW my n8 com E Relations E Model Tree E Diagram Tree d Favorites Properties name httg na Ty COM qualified name yl Y Schemas http ve y ny Com element kind Package visibility namespace gt gt 7 Right click the namespace package and select New diagram XML Schema diagram You prompted if you want to add the Schema diagram to a new XSD Schema 8 Click Yes to add the new diagram E RA ASD Profile ASD Profile ump LE hea MY Schemas a CT ito dewey my ms corm i m ES XSDSchema su eo AMLSchemaDiagrami E Felations You can now create your schema using the icons in the XML Schema icon bar Generating the XML schema 1 Drag the XSDSchema onto a component to create a Component Realization 2012 Altova GmbH Altova UModel 2013 316 UML Diagrams Additional Diagrams 2 Make sure that you set the code language of the component to XSD1 0 and enter a path for the generated schema to be placed in e g C schemacode MySchema xsd Properties qualified name Component public LI L oD1 0 clechemacode Myschema xsd use for code engineering E Properties 3 Styles 3 Select the menu option Project Overwrite Program Code from UModel project and click OK to generate the schema Synchronization Settings Code from Model Model from Code SPL t
88. of the type you selected Dragging existing elements into the Communication Diagram Elements occurring in other diagrams e g classes can be inserted into a Communication diagram 1 Locate the element you want to insert in the Model Tree tab you can use the search function text box or press CTRL F to search for any element 2 Drag the element s into the Communication diagram Lifeline The lifeline element is an individual participant in an interaction UModel allows you to insert other elements into the sequence diagram e g classes Each of these elements then appear Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 229 as a new lifeline You can redefine the lifeline colors gradient using the Header Gradient combo boxes in the Styles tab To create a multiline lifeline press CTRL Enter to create a new line To insert a Communication lifeline 1 Click the Lifeline icon in the title bar then click in the Communication diagram to insert It Properties name Lifeline qualified name Interaction Lifeline element kind Lifeline visibility unspecified represents destruction selector 2 Enter the lifeline name to change it from the default name Lifeline1 if necessary Messages A Message is a modeling element that defines a specific kind of communication in an interaction A communication can be e g raising a signal invoking an Operation creating or destroying
89. or view to the element is created in the diagram you paste it into Using the Class diagram as an example Paste in diagram only creates a view to the original class The class is inserted into the diagram and displayed exactly as the source class A new class has not been added to the Model Tree No class name or other Operation Property changes are made Changing element properties in one of the views changes it in the other one automatically Model Tree MB MyClass ii MyProperty I a MyProperty1 3 MyFPropert MiyProperty MyOperetion GN Mveroperty ig MyPronert I I i I Lu MyOperation a My Property os MyProperty t a I i I GNE MyClass O Why Operation O hiyOperation i AccountT AUS O MyOperation 1 MMyOperation E Relations Copy and pasting of elements using the mouse Click on the modeling element you want to copy 2 Move the mouse pointer to the position you want to place the new element 3 Hold down the CTRL key A small plus appears below the mouse pointer to signify that this is a copy procedure 4 Release the mouse button A popup menu appears at this point allowing you to select between Paste and Paste in Diagram only 5 Select the option that you would like to perform Please note Altova UModel 2013 O 2012 Altova GmbH UModel User Interface Diagram pane 93 Using the mouse and CTRL key allows you to copy or move properties and operations d
90. pasea Move Wp Move Down di Cancel Altova UModel 2013 O 2012 Altova GmbH UModel User Interface Hyperlinking modeling elements 97 This opens the Edit Hyperlinks dialog box in which you manage the hyperlinks 2 Click the Add button and select Diagram Link to define a link to an existing diagram Select Hyperlink Target Diagrams HE fray Activity Diagrams E E Class Diagrams E AA Apply Java Profile E F Bank Server PJ Bankview Main E F Hierarchy of Account 7 Eg Communication Diagrams T FA Component Diagrams E Composite structure Diagrams 3 Selectthe hyperlink target that you want to be able to navigate to e g Hierarchy of Account diagram and click OK Edit Hyperlinks User defined name Hierarchy of Account Account Hierarchy iHierarchy of Account Double clicking in the User defined name column allows you to define your own link name Note that you can add multiple as well as different kinds of links from a single modeling element e g a web link to http altova com support help html using the Add Web Link Edit Hyperlinks User defined name Hierarchy of Account Account Hierarchy Hierarchy of Account SS http satora comsuppel gt http Maltova com support_ help Atm 4 Click OK when you have finished defining your hyperlinks A link icon has now been added to the top left of the enumeration element Placing the mouse cursor over the link icon displays a
91. popup with the name of the target element gt gt d I I AccountType Checking4ccount t Credtlard4ccount I Hyperlinks on operations 2012 Altova GmbH Altova UModel 2013 98 UModel User Interface Hyperlinking modeling elements getlredtlimittin nAccounthr int float Hyperlinks from a state machine entry action Sending command to database command sent Wating for result BankAPT Draft entry store current time f x exit free allocated memory epted store result ExitPoint To create a link to a specific Diagram element Diagram Link 1 Create the hyperlink as before but click the sign to expand the diagram contents Select Hyperlink Target EF Diagrams El fa Activity Diagrams E collectData Draft cerro EE 1 sec since last update 8 aborted En collectAccountintos i serren ci DecisionNode DE o ExpansionRegion 8 finished a Go Handle Display Exception i i Jointiode serren gt manual invokation i cesses au Receive Update Ul Event dui D gt Send AtterUpdate Signal n UpdateLog ee Go Validate References i E Class Diagrams 53 Communication Diagrams Cancel L 2 Select the specific modeling element you want to link to and click OK to confirm Altova UModel 2013 O 2012 Altova GmbH UModel User Interface Hyperlinking modeling elements 99 Clicking the link icon opens the designated diagram with the element visible and selected To
92. red box and drag it down to the centre of the window Altova UModel 2013 2012 Altova GmbH 62 UModel tutorial Round trip engineering code model code Overview CompanyLogolype E O 55 Company LogoTyper CompanyLogoTypecn node Company LogoType CompanyLogoTypefin node org wac dom Mode Company Logo Typelin doc org se dom Docu adjustPretix void content of OrgChart HJ Content of OrgChart Please note You could also select the Project Import source project option and select the Borland JBuilder OrgChart jpx project file to import the project created by XMLSpy Round trip engineering and relationships between modeling elements When updating model from code associations between modeling elements are automatically displayed if the option Editing Automatically create Associations has been activated in the Tools Options dialog box Associations are displayed for those elements where the attributes type is set and the referenced type modeling element is in the same diagram InterfaceRealizations as well as Generalizations are all automatically shown in the diagram when updating model from code Adding a new class to the OrgChart diagram 1 Click the Class icon E in the icon bar and click to insert a new class 2 Add a new Class called CompanyType 3 Add new operations to the class using the F8 shortcut key e g CompanyType getCompanyType String setCompanyType String CompanyLogoType
93. s constructor Accountl getBalancer float getld String collect A4ccountintocin bank AP Dank APT boolean H Account CheckingAccount E savings4ccount E CreditCard Account bankview qualified name visibility leat abstract active code file name code file path lt lt annotations gt e lt static lt final lt lt strictfp gt from Bank accounts Design View Bank view com aktora bankview Account public false true false Account java ALA UML Bank Sample WMultiLangquagelLavacodercomialtova bank view 4cco false false false false Account balance collectAccountinto getBalance getld id CheckingAccount CreditCardAccount SavingsAccount Association name Componentrealization BankView Altova UModel 2013 2012 Altova GmbH Generating UML documentation Supplied SPS stylesheet 179 9 1 Supplied SPS stylesheet To generate documentation based on the supplied SPS file 1 Select the menu option Project Generate Documentation 2 Select the Use User Defined Design radio button 3 Select the UModelDocumentation sps stylesheet if not automatically selected in the Generate Documentation dialog box Generate Documentation Main Include Details Fonts Documentation Design C Use Fixed design for documentation in HTML Word or RTF format 7 Use user defined design for HTML Word RTF or PDF format Requires StyleVision Select SPS design Output Form
94. shared packages of the current project List included Packages Lists all include packages in the current project Java Profile Java Profile ump and Java Lang Java Lang ump are automatically supplied in the Bankview example supplied with UModel 2012 Altova GmbH Altova UModel 2013 404 UModel Reference Layout 14 4 Layout The commands of the Layout menu allow you to line up and align the elements of your modeling diagrams When using the marquee drag on the diagram background to mark several elements the element with the dashed outline becomes the active element i e the last marked element All alignment commands use this element as the origin or basis for the following alignment commands Align The align command allows you to align modeling elements along their borders or centers depending on the specific command you select Space evenly This set of commands allow you to space selected elements evenly both horizontally and vertically Make same size This set of commands allow you to adjust the width and height of selected elements based on the active element Line up This set of commands allow you to line up the selected elements vertically or horizontally Line Style This set of commands allow you to select the type of line used to connect the various modeling elements The lines can be any type of dependency association lines used in the various model diagrams Autosize This command resi
95. the Java code class Properties name savings 4ccount qualified name Design phase Bank ileso Class public L L code file name Sawing 4ccount java code file path E Properties 93 Styles Hierarchy E Reusing copying existing Properties Operations Properties and operations can be directly copied or moved from one class to another This can be achieved using drag and drop as well as the standard keyboard shortcuts within a class in the diagram tab between different classes in the diagram tab in the Model Tree view between different UML diagrams by dropping the copied data onto a different diagram tab Please see Cut copy and paste in UModel Diagrams for more information Expand the Account class in the Model Tree Right click the collectAccountinfo operation and select Copy Altova UModel 2013 O 2012 Altova GmbH UModel tutorial Class Diagrams 37 E Accowni o balance oc lt gt getBalance E getld E collect ccountinto E E Bank E E BankView 43 CheckingAccount Su CreditCardAccount E Relations ME Savingz ccount 3 Right click the SavingsAccount class in the Model Tree and select Paste The operation is copied into the SavingsAccount class which is automatically expanded to display the new operation AS SavingsAccount interestRate i OY SavingsAccount E gt getMinimumBalance E gt collect ccountinto ll PA A savings Account collectA
96. the existing element to the current diagram and not to the Model Tree please see Cut copy and paste in UModel Diagrams Delete from Diagram only Deletes the selected modeling elements from the currently active diagram The deleted elements are not deleted from the modeling project and are available in the Model Tree tab Note that this option is not available to delete properties or operations from a class they can be selected and deleted there directly Select all Select all modeling elements of the currently active diagram Equivalent to the CTRL A shortcut Find There are several options you can use to search for modeling elements Bank API amp e Use the text box in the Main title bar L nnas e Use the menu option Edit Find e Press the shortcut CTRL F to open the find dialog box C x Find what accounts Find Next Options Match whole word only Match case Cancel di Allows you to search for specific text in e Any of the three Model Tree panes Model Tree Diagram Tree and Favorites tab e The Documentation tab of the Overview pane Altova UModel 2013 O 2012 Altova GmbH UModel Reference Edit 393 e Any currently active diagram e The Messages pane P gt Find Next F3 Searches for the next occurrence of the same search string in the currently active tab or diagram Find Previous SHIFT F3 Searches for the previous occurrence of the same search string in the curren
97. the package to the applied profile along with the lt lt apply gt gt keyword Altova UModel 2013 2012 Altova GmbH UML Diagrams Structural Diagrams 289 10 2 7 Profile Diagram and stereotypes Altova web site E UML profile diagrams The UModel Profile diagram allows you to define custom stereotypes tagged values and constraints in a dedicated diagram Profiles and stereotypes are used to extend the UML meta model The primary extension construct is the Stereotype which is itself part of the profile Profiles must always be related to a reference meta model such as UML they cannot exist on their own UModel now supports the Profile Diagram in which you can define your own stereotypes The Java Profile ump C Profile ump or VB Profile ump file need to be applied when creating new UModel projects using the menu item Project Include Subproject This profile supplies the Java datatypes and stereotypes and is essential when creating code for round trip engineering The following sections describe e Adding Stereotypes and defining tagged values e Stereotypes and enumerations e User defined stereotype styles The Bank_CSharp ump sample file in the UModelExamples folder shows how this is done The C profile has been applied to the BankView package Model Tree Root E 7 Component View E 7 Deployment view El Design View ET Overview i E Banking access a ka BankView E F7 Apply CSharp Profile i i E
98. user interface the three panes on the left hand side and the empty diagram pane at right Two default packages are visible in the Model Tree tab Root and Component View These two packages cannot be deleted or renamed in a project To open the BankView start project 1 Select the menu option File Open and navigate to the UModelExamples Tutorial folder of UModel Note that you can also open a ump file through a URL please see Switch to URL for more information 2 Open the BankView start ump project file The project file is now loaded into UModel Several predefined packages are now visible under the Root package Note that the main window is empty at the moment Altova UModel 2013 O 2012 Altova GmbH UModel tutorial Starting UModel 17 LI Altova UModel C Program Files Altova UModel2006 UModelExamples i loj xj File Edit Project Layout View Tools Window Help MAA bd om 4 b X Hj Ea E 9 8 message Model Tree no x Root E Component View E 7 Deployment View E 7 Design phase m Faava Lang Jawa Lang ump HE Py Unknown Extemals acs E Java Profile Jawa Profile ump F Model Tree EM Diagram F Favorites Properties a x Messages x Properties Styles E Hierarchy v a v aj BB Overview CAP NUM SCRL g The Model Tree pane supplies you with various views of your modeling project e The Model Tree tab contains and displays all modeling eleme
99. you to define the specific merge settings 2 Click the Project Settings button to select the specific programming language settings 3 Define you specific settings and confirm with OK Synchronization Settings x Code from Model Model from Code SPL templates W User defined override default When deleting Code f Comment out Delete Synchronization Merge Model into Code C Overwrite Code according to Model e Always show dialog when synchronizing OF Cancel Please note When synchronizing code you might be confronted with a dialog box that prompts you to update your UModel project before synchronization Altova UModel 2013 2012 Altova GmbH Projects and code engineering Synchronizing Model and source code 131 This only occurs if you are using UModel projects created before the latest release Please click YES to update your project and save your project file This prompt will not occur once this has been done Updating your model effects There are several way to do this as mentioned above Project Overwrite UModel Project from Program Code This checks all directories project files of all different code languages you have defined in your project New files are identified and added to the project An entry Collecting source files in C 1UMT est appears in your message window Right click a class interface in the Model Tree and select Code Engineering O
100. 2 Altova GmbH Source Control Supported Source Control Systems 331 Seapine Surround SCM Version Surround SCM Client Server for Windows 2009 0 0 Clients e Seapine Surround SCM Client 2009 0 0 Serena Dimensions Version Dimensions Express CM 10 1 3 for Win32 Server Clients e Serena Dimensions 10 1 3 for Win32 Client Softimage Alienbrain Version Alienbrain Server 8 1 0 7300 Clients e Softimage Alienbrain Essentials Advanced Client 8 1 0 7300 SourceGear Fortress Version 1 1 4 Server Clients e SourceGear Fortress 1 1 4 Client SourceGear SourceOffsite Version SourceOffsite Server 4 2 0 Clients SourceGear SourceOffsite Client 4 2 0 Windows SourceGear Vault Version 4 1 4 Server Clients e SourceGear Vault 4 1 4 Client VisualSVN Server 1 6 Version 1 6 2 Clients e Aigenta Unified SCC 1 0 6 e PushOK SVN SCC 1 5 1 1 e PushOK SVN SCC x64 version 1 6 3 1 e TamTam SVN SCC 1 2 24 2012 Altova GmbH Altova UModel 2013 332 Source Control Supported Source Control Systems Note the following e Altova has implemented the Microsoft Source Code Control Interface MSSCCI v1 1 v1 3 in UModel and has tested support for the drivers and revision control systems listed above It is expected that UModel will continue to support these products if and when they are updated e Source Control plugins not listed in the table above but that adhere to the MSCCI 1 1 1 3 specification should also work
101. 2013 UModellInclude Java to appear in the Java tab Javab 0 VBBO vB9 0 OK Basic czo co Javat4 Javas0 EE BPMN CHA Java UML Standard Profile ump Profile ump Profile ump Frofile ump Y Profile ump Browse Descriptions The VE Profile contains datatypes and stereotypes for YB and is essential tor YE Round T ip Engineering Please note An include file which contains all types of the Microsoft NET Framework 2 0 is available in the C 2 0 tab To create a user defined tab folder 1 Navigate to the UModel2013 UModellnclude and create add your folder below UModellnclude i e UModellnclude myfolder To create descriptive text for each UModel project file 1 Create a text file using the same name as the ump file and place in the same folder Eg the MyModel ump file requires a descriptive file called MyModel txt To remove an included project 1 Click the included package in the Model Tree view and press the Del key 2 You are prompted if you want to continue the deletion process 3 Click OK to delete the included file from the project Please note e To delete or remove a project from the Include dialog box delete or remove the MyModel ump file from the respective folder Open Subproject as project Opens the selected subproject as a new project Clear Messages Altova UModel 2013 2012 Altova GmbH UModel Reference Project 403 Clears the synt
102. 51 Sequence diagrams are not updated if you update classes or individual files externally You can however change this setting by clicking on the diagram background and clicking the Automatic Update checkbox Properties SequenceDiagram getFirst element kind Sequence Diagram Automatic Update Trana nana nganan annA nAn AAAA AANA nAn nAn AAAA Annn annann nnr Ee El Properties Styles E Hierarchy Clicking the icon of the Automatic Update field opens the Sequence Diagram Generation dialog box allowing you to change the sequence diagram generation settings Generate Sequence diagrams from properties UModel is able to create multiple sequence diagram models from multiple operations as well as sequence diagrams from Getter Setter properties Creating multiple sequence diagrams from multiple operations 1 Select the menu option Project Generate Sequence diagrams This opens the Select one or more operations dialog box Select one or more operations Please select one ore more operations from a reverse engineered class where a sequence diagram should be generated from ij oo Select All Public E E W altova ii Else Selecta Bank view Main i e F 7YHierarchy of Account pani EJ Sample Accounts O Include Getters and E El AgencyBank Setters E El John s 1st E EY John s 2nd El John s 3rd E E Account ne al balance E ui id E 7 Account E gt collectAccountinto
103. 6 Templates user defined SPL 130 Text labels show hide 85 165 Tick mark Timing diagram 263 TimeConstraint Timing diagram 265 Timeline defining state changes 261 Timing icons 382 Timing diagram 260 DurationConstraint 264 Event Stimuls 264 General Value lifeline 261 inserting elements 261 Lifeline 261 Message 266 2012 Altova GmbH Index 481 Timing diagram 260 switch between types 261 Tick mark 263 TimeConstraint 265 Timeline 261 Toggle compact mode 305 Toolbar activate deactivate 415 add command to 415 create new 415 reset toolbar amp menu commands 415 restore to default 406 show large icons 420 Tools 406 Add to Tools menu 416 options 422 Tooltip show 420 show shortcuts in 420 Transition Add Activity diagram to 202 define between states 202 define trigger 202 transparent background color 299 Traverse hyperlinks 96 Trigger define transition trigger 202 Tutorial aims 14 example files 14 examples folder 14 Type property show 158 Typed property as lifeline 238 Types and autocompletion 89 U UML diagram sharing 151 diagram heading show 89 Diagrams 184 templates 154 variables 435 visibility icons 269 UModel starting 16 to C code 138 to Java code 137 to VB NET code 140 to XML Schema code 139 UModel diagram icons 368 UModel Inroduction 6 UMP change project location 112 fil
104. 72 UModel Diagram icons Composite Structure Diagram 13 4 Composite Structure Diagram Add Collaboration CollaborationUse Part Property Class Interface Port Relationship Connector Dependency Role Binding InterfaceRealization Usage Note Note Link Altova UModel 2013 O 2012 Altova GmbH UModel Diagram icons Component Diagram 373 13 5 Component Diagram Add Package Interface Class Component Artifact Relationship Realization InterfaceRealization Usage Dependency Note Note Link O 2012 Altova GmbH Altova UModel 2013 374 UModel Diagram icons Deployment Diagram 13 6 Deployment Diagram Add Package Component Artifact Node Device ExecutionEnvironment Relationship Manifestation Deployment Association Generalization Dependency Note Note Link Altova UModel 2013 O 2012 Altova GmbH UModel Diagram icons Interaction Overview diagram 375 13 7 Interaction Overview diagram Add Elements Interaction Overview Diagram Fl el 34 E SD gt a Add CallBehaviorAction Interaction CallBehaviorAction InteractionUse DecisionNode MergeNode InitialNode ActivityFinalNode ForkNode ForkNode Horizontal JoinNode JoinNode Horizontal DurationConstraint Relationship ControlFlow Note Note Link 2012 Altova GmbH Altova UModel 2013 376 UModel Diagram icons Object Diagram 13 8 Relationshi
105. Altova UModel 2013 2012 Altova GmbH Source Control Source Control Commands 351 12 4 4 Get Retrieves a read only copy of the selected files and places them in the working folder The files are not checked out for editing per default Using Get Folders e Select the files you want to get in the Model Tree e Select Project Source Control Get Source Control Get Files CATEMPissc Bank_ CSharp icodegenV4account cs CATEMP eec iBank CSharpicodegen Bank cs CATEMPigec iBank CSharp icodegen Bank View cz CATEMPigsciBank_ CSharpicadegeniChecking amp ccaunt cs Select All CATEMPissc Bank_ CSharp icodegentCreditCardAccount cs CTEMPigsc Bank_CSharpicadegentSavings4 ccaunt cs Advanced K Cancel ie Overwrite changed files Overwrites those files that have been changed locally with those from the source control database Select All Selects all the files in the list box Advanced Allows you to define the Replace writable and Set timestamp options in the respective combo boxes Replace writable Ask Set timestamp Current The Make writable check box removes the read only attribute of the retrieved files 2012 Altova GmbH Altova UModel 2013 352 Source Control Source Control Commands 12 4 5 Get Folder s Retrieves read only copies of files in the selected folders and places them in the working folder The files are not checked out for ed
106. Altova UModel 2013 2012 Altova GmbH Source Control Source Control Commands 365 12 4 16 Source Control Manager This command starts your source control software with its native user interface O 2012 Altova GmbH Altova UModel 2013 366 Source Control Source Control Commands 12 4 17 Change Source Control This dialog box allows you to change the source control binding that you are using Click the Unbind button first then optionally click the Select button to select a new source control provider and finally click the Bind button to bind to a new location in the repository Change Source Control lt x Local Path CEP gt gt gt Browse Soc Provider Microsoft Visual SourceSafe gt gt gt gt Select Server Name ma gt U gt Bind Server Binding EA AAAAAAAA gt gt gt Unbind Logon ID alp Connected Jw Cancel Altova UModel 2013 O 2012 Altova GmbH Chapter 13 UModel Diagram icons 368 UModel Diagram icons 13 UModel Diagram icons The following section is a quick guide to the icons that are made available in each of the modeling diagrams The icons are split up into two sections e Add displays a list of elements that can be added to the diagram e Relationship displays a list of relationship types that can be created between elements in the diagram Altova UModel 2013 O 2012 Altova GmbH UModel Diagram icons Activity Diagram 369 13 1 Activ
107. BankAdresses ini BankAPl jar Please note Dragging an artifact out of a node onto the diagram background automatically creates a Deployment dependency n To delete an artifact from a node and the project e Click the artifact you want to delete and press the Del keyboard key The artifact and any dependencies are deleted from the node as well as the project To remove an artifact from a node and its diagram 1 Use drag and drop to place the artifact onto the diagram background 2 Hold down the CTRL key and press Del The artifact and any dependencies are deleted from the current diagram and not from the project To create operations properties or nesting artifacts 1 Right click the artifact in the Model Tree 2 Select the appropriate action from the context menu e g New Element Operation Property or Artifact The new element will appear below the selected artifact in the Model Tree Altova UModel 2013 2012 Altova GmbH UModel tutorial Round trip engineering model code model 53 4 7 Round trip engineering model code model Altova web site E UML code generation and UML Round trip engineering The aim of this tutorial section is to Perform a project syntax check Generate project code Add a new method external code i e to the SavingsAccount class Synchronize the UModel model new code with the model Packages and Code model sy
108. BankView Main class diagram 6 The Property Finished is now shown as a tagged value in the note element Propertyl Property lt lt MyKey aluePair gt gt MyKey1 20 MyKey2 30 Finished APPEAR Bank iesdin collectBanks collectAccou collectData Double clicking the Finished tagged value presents the predefined enumeration values in a popup Click one of the enumerations to select it Properties BankView s lt annotatione O Property Property lt annotationTypeEleme Ll lt lt MyKeyWaluePair gt MykKeyl 20 p 1 banks Bank jordered lt lt final gt C MykKey2 30 57 bankAPLlBank2Pl cohlyKeyYaluePair gt Finizhed Yez hye 20 Mykey 30 Bank iewfin bank APE Bank A amp F Finished El collectBankAddressintosl booles collectaccountintos boolean collectDataly boolean Prope A Styles Hierar getBalanceStBank in bankname S getBalancesumOtallBankst int Overview Altova UModel 2013 2012 Altova GmbH UML Diagrams Structural Diagrams 297 Enumeration default values UModel allows you to define default tagged values When adding an attribute to the stereotype double click in the default field and enter one of the existing enumerations as the default value Properties My Enum type modifier na static readonly derived derivedUnion default aggregation memberEndkind n a In this case the default value Yes is entered When a property is added to a class
109. ComponentSoftware CS RCS PRO 5 1 http www componentsoftware com Products RCS The following steps will integrate Altova DiffDog into ComponentSoftware CS RCS Pro 1 Go to the ComponentSoftware CS RCS Properties 2 In the File Types tab choose a file extension and edit it 3 Enter select the value Custom Tool for the Difference Analysis Tool and browse to insert the DiffDog full path Dynamsoft SourceAnywhere for VSS 5 3 2 Client http www dynamsoft com Products SAW_Overview aspx The following steps will integrate Altova DiffDog into Dynamsoft SourceAnywhere for VSS 1 Go to the Dynamic SourceAnywhere For VSS client Options 2 Specify the DiffDog full path as External application for diff merge with the arguments SFIRST FILES SECOND FILES Warning Do not perform these settings from the Altova product options as there is no possibility of inserting the external application parameters Dynamsoft SourceAnywhere Hosted Client 22252 http www dynamsoft com Products SourceAnywhere Hosting Version Control Sourc e Control aspx Dynamsoft SourceAnywhere Standalone 2 2 Client http www dynamsoft com Products SourceAnywhere SourceSafe VSS aspx The following steps will integrate Altova DiffDog into Dynamsoft SourceAnywhere Hosted and Dynamsoft SourceAnywhere Standalone 1 Click the Advanced button of the Source Control tab 2 Specify the DiffDog full path as External program application for diff merge with argument
110. DIES STATE THE SOLE AND EXCLUSIVE REMEDIES FOR ALTOVA OR ITS SUPPLIER S BREACH OF WARRANTY ALTOVA AND ITS SUPPLIERS DO NOT AND CANNOT WARRANT THE PERFORMANCE OR RESULTS YOU MAY OBTAIN BY USING THE SOFTWARE EXCEPT FOR THE FOREGOING LIMITED WARRANTY AND FOR ANY WARRANTY CONDITION REPRESENTATION OR TERM TO THE EXTENT WHICH THE SAME CANNOT OR MAY NOT BE EXCLUDED OR LIMITED BY LAW APPLICABLE TO YOU IN YOUR JURISDICTION ALTOVA AND ITS SUPPLIERS MAKE NO WARRANTIES CONDITIONS REPRESENTATIONS OR TERMS EXPRESS OR IMPLIED WHETHER BY STATUTE COMMON LAW CUSTOM USAGE OR OTHERWISE AS TO ANY OTHER MATTERS TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW ALTOVA AND ITS SUPPLIERS DISCLAIM ALL OTHER WARRANTIES AND CONDITIONS EITHER EXPRESS OR IMPLIED INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF MERCHANTABILITY FITNESS FOR A PARTICULAR PURPOSE SATISFACTORY QUALITY INFORMATIONAL CONTENT OR ACCURACY QUIET ENJOYMENT TITLE AND NON INFRINGEMENT WITH REGARD TO THE SOFTWARE AND THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT SERVICES THIS LIMITED WARRANTY GIVES YOU SPECIFIC LEGAL RIGHTS YOU MAY HAVE OTHERS WHICH VARY FROM STATE JURISDICTION TO STATE JURISDICTION c Limitation of Liability TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW EVEN IF A REMEDY FAILS ITS ESSENTIAL PURPOSE IN NO EVENT SHALL ALTOVA OR ITS SUPPLIERS BE LIABLE FOR ANY SPECIAL INCIDENTAL DIRECT INDIRECT OR CONSEQUENTIAL DAMAGES WHATSOEVER INCLUDING WITHOUT LIMITATI
111. Documents and Settings lt user gt My Documents Altova UModel2012 UModelExamples IDEPlugIn Styles folder Use the option Project Import Source Project to import the project 2012 Altova GmbH Altova UModel 2013 258 UML Diagrams Behavioral Diagrams sd OnCommandfin niD imt in pUModekobjectkvord nD 3 niD 6 OnSetsStyles lApplication pUModel red Ed nD 4 nD 7 OnsetStyles lApplication puModel green 2 The code shown below is generated from the sequence diagram Public void OnCommand int nID object pUModel Generated by UModel This code will be overwritten when you re run code generation af gt im bPlugiINVersiomOk return if nID 3 nID 6 OnSetStyles IApplication pUModel red if nID nID 7 OnSetStyles IApplication pUModel green Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 259 GC Collect O 2012 Altova GmbH Altova UModel 2013 260 UML Diagrams Behavioral Diagrams 10 1 8 Timing Diagram Altova web site E UML Timing diagrams Timing diagrams depict the changes in state or condition of one or more interacting objects over a given period of time States or conditions are displayed as timelines responding to message events where a lifeline represents a Classifier Instance or Classifier Role A Timing diagram is a special form of a seque
112. Finishing up the use case diagram Using the methods discussed above 1 2 3 4 Click the Use Case icon in the icon bar and simultaneously hold down the CTRL keyboard key Click at two different vertical positions in the diagram tab to add two more use cases then release the CTRL key Name the first use case get account balance sum and the second generate monthly revenue report Click on the collapse icon of each use case to hide the extensions compartment Altova UModel 2013 2012 Altova GmbH 24 UModel tutorial Use cases Standard User 5 Click the actor and use the association handle to create an association between Standard user and get account balance sum Standard User To create an Include dependency between use cases creating a subcase 1 Click the Include handle of the get account balance sum use case at the bottom of the ellipse and drop the dependency on get account balance An include dependency is created and the include stereotype is displayed on the dotted arrow Altova UModel 2013 2012 Altova GmbH UModel tutorial Use cases 25 Standard User 1 szinclude gt I Inserting user defined customized actors The actor in the generate monthly revenue report use case is not a person but an automated batch job run by a Bank computer 1 Insert an actor into the diagram using the Actor icon in the icon bar 2 Rename the actor to Bank 3 Mov
113. H Altova UModel 2013 194 UML Diagrams Behavioral Diagrams Inserts an input pin onto a Call Behavior or Call Operation action Input pins supply input values that are used by an action A default name argument is automatically assigned to an input pin Properties argument InputPin unspecified The input pin symbol can only be placed onto those activity elements where the mouse pointer changes to the hand symbol _ Dragging the symbol repositions it on the element border OutputPin Inserts an output pin action Output pins contain output values produced by an action A name corresponding to the UML property of that action e g result is automatically assigned to the output pin result OutputPin unspecified The output pin symbol can only be placed onto those activity elements where the mouse pointer changes to the hand symbol d Dragging the symbol repositions it on the element border Exception Pin An OutputPin can be changed to an Exception pin by clicking the pin and selecting isExceptionPin from the Properties pane ValuePin Inserts a Value Pin which is an input pin that provides a value to an action that does not come from an incoming object flow It is displayed as an input pin symbol and has the same properties as an input pin E ObjectNode Inserts an object node which is an abstract activity node that defines object flow in an activity Object nodes can only contain values at runtim
114. INE 1A and Keio UNIC ODE and the Unicode Logo are trademarks of Unicode Inc This software ALTOVA contains 3rd party softwars or material that is protected by copyright and subject to other terms and conditions as detailed on the Altova website at http ww altova com legal 3rdparty html UML OMG Object Management Group and Unified Modeling Language are either registered trademarks or trademarks of Object Management Group Inc in the United States and or other countries Last updated 11 13 2012 Altova UModel 2013 2012 Altova GmbH Chapter 2 Introducing UModel 6 Introducing UModel 2 Introducing UModel Altova web site E Introduction to Altova UModel The UML is a complete modeling language but does not discuss or prescribe the methodology for the development code generation and round trip engineering processes UModel has therefore been designed to allow complete flexibility during the modeling process e UModel diagrams can be created in any order and at any time there is no need to follow a prescribed sequence during modeling e Code or model merging can be achieved at the project package or even class level UModel does not require that pseudo code or comments in the generated code be present in order to accomplish round trip engineering e Code generation is customizable the code generation in UModel is based on SPL templates and is therefore completely customizable Customizatio
115. John s Saving DE Aecouni While the object is still selected in the Model Tree tab 3 Click the classifier combo box in the Properties tab and select SavingsAccount Emod E Diagr Favo Properties name John s Saving element kind Instances pecification visibility public classifier SavingsAccount specification 4 Drag the John s Saving object instance from the Model Tree tab into the Sample Accounts tab placing it below John s credit Properties name John s Saving element kind Instances pecification visibility public n classifier Savings4ccourit creditLimit specification InteresthiateOnBalance interestRateOnCashAdvance balance balance I ld Properties Styles Hierarchy Te n E i intere e e n Creating links between objects Links are the instances of class associations and describe the relationships between objects instances at a fixed moment in time 2012 Altova GmbH Altova UModel 2013 42 UModel tutorial Object Diagrams 1 Click the existing link association between the AltovaBank and John s Checking 2 In the Properties tab click the classifier combo box and select the entry Account Bank The link now changes to a composite association in accordance with the class definitions Properties name John s Checking element kind InstanceSpecification visibility public balance classifier Account Bank accounts sp
116. K to include the project again Altova UModel 2013 O 2012 Altova GmbH Chapter 12 Source Control 326 Source Control 12 Source Control Since UModel implements the Microsoft Source Code Control Interface MSSCCI v1 1 v1 3 multiple source control systems including Microsoft SourceSafe and other compatible repositories are supported Note The 64 bit version of UModel automatically supports any of the supported 32 bit source control programs mentioned in this documentation When using a 64 bit version of UModel with a 32 bit source control program the Perform background status updates every ms option Tools Options is automatically grayed out and cannot be selected Accessing SC controls in UModel Source Control commands can be accessed using the commands in the Project Source Control submenu Note that a Source Control project is not the same as a UModel project Source Control projects are directory dependent whereas UModel projects are logical constructions without direct directory dependence The Visual Studio and Eclipse versions of UModel now support the Source Control functions and menu items and these are available in the respective IDE Registry entry and plug ins Microsoft has defined a Registry entry where all Source Control compatible programs can register themselves This is the entry for UModel HKEY LOCAL MACHINE SOFTWARE SourceCodeControlProvider InstalledSCCProviders Note that
117. LogoType ii E E CompanyType E DescType Content of OrgChart Please note This method creates a Realization between a class and a component without having to use component or deployment diagrams 3 Expand the Relations item below the Orgchart component to see the newly created realization m lt gt CompanyType Ei getlompany Type String I O seiCompanyTypebr 2 2012 Altova GmbH Altova UModel 2013 64 UModel tutorial Round trip engineering code model code E g OrgChart E Relations cp ComponentRealization CompanyLogoType on ComponentRealization Company T ype ap Component Realization Desc Type Component Realization Division ype Merging program code from a package 1 Right click the OrgChart package select Code Engineering Merge Program code from UModel Package and press Enter to confirm Synchronization Settings Code from Model Model from Code SPL templates When deleting Code Comment out Delete Synchronization Merge Model into Code C Overwrite Code according to Model M Always show dialog when synchronizing Project Settings Cancel The messages window displays the syntax checks being performed and status of the synchronization process When complete the new CompanyType java class has been added to the folder OrgChart com OrgChart Please note All method bodies and changes to the code will eith
118. Main Include Details Fonts Element details Generals e Hierarchy diagram Expanded nesting depth up 5 dowr 1 Iv Expand each element only once MW Owner Template parameters Specifics Implemented Interfaces Associations to from Sourcetarget of other relations Typed elements Bound elements Template parameter substitutions shown on diagram e Properties M Operation parameters Constraints M Owned diagrams Documentation Select All 7 as HTML Iv Owned members a Hyperlinks lt 1 lt 1 X 41 41 41 41 41 Lancel Fonts tab allows you to customize the font settings for the various headers and text content 2012 Altova GmbH Altova UModel 2013 176 Generating UML documentation Generate Documentation Header Element Name Header Element Kind Header Line Title Line Content Sub line Title sub line Content Footer Footer Altova UModel 2013 2012 Altova GmbH Generating UML documentation 177 The following screenshots show the fixed design documentation for the Bank_MultiLanguage ump file that is included in the UModelExamples directory Bank_MultiLanguage ump project location Bank MultiLanquage ump Index of diagrams Activity Diagram Class Diagram Component Diagram Composite Structure Diagram Deployment Diagram Object Diagram Sequence Diagram state Machine Diagram UseCase Diagram Index of elements Activity Act
119. Model XML Schemas are also not taken into account during the project syntax check A well formed check is however performed when importing an XML schema Altova UModel 2013 2012 Altova GmbH UML Diagrams Additional Diagrams 305 Importing XML Schema s To import a single XML Schema 1 Select the menu option Project Import XML Schema file Import XML Schema File X Language 501 0 5D file va UModel2007 UModelE xamples OngChart xsd El Synchronization Merge Code into Model C Overwrite Model according to Code Diagram generation M Enable diagram generation lt Back Finish Cancel 2 Make sure that the Enable diagram generation check box is active and click Next to continue Content Diagram Generation i x Content diagrams Aro A ARL 1 5 tyle M Open diagrams M Show Attributes compartment FF Hyperlink di O Show Operations compartment vperlink diagrams MW Show nested Classifiers compartment M Show EnumerationLiterals compartment W Show Schema Details as Tagged Values lt Back Finish Lancel 3 Define the Content diagram options in the group of that name The first option creates a separate diagram for each schema global element 4 Select the compartments that are to appear in the class diagrams in the Style group The Show schema details as tagged values option displays the schema details in the Tagged Value note modeling element 5 Click Nex
120. Model 2013 2012 Altova GmbH Projects and code engineering Minimalist UModel project starting from scratch 115 7 1 Minimalist UModel project starting from scratch This section describes the steps necessary to create a project from scratch and successfully generate code for a single class Although it is very minimalist it uses various diagrams to show how to add methods etc it is not the absolute minimum needed to produce code All of the actions could be achieved using only the Model Tree tab there is no need to use modeling diagrams to create classes or methods Creating a new project and defining the Namespace Root In the Model Tree pane of UModel 1 Select File New to create a new modeling project 2 Right click the Root package and select New Element Package name the package e g MyPackage Root Component view MyPackage 3 Right click MyPackage and select Code Engineering Set as Java Namespace Root click OK to apply the UModel Java profile to the package This adds a Java Profile package to the Model Tree Model Tree Root ico Component view El E MyPackage e Raava Profile Java Profile ump Including Java Lang to supply JDK datatypes 1 Click the Root package and select the menu option Project Include Subproject 2 Click the Java 1 4 tab and select the Java Lang ump package Click OK to use the default option Include by reference This adds a Java Lang and an Unknown Externals p
121. Model Tree This package can now be included in any other UModel project To include import a shared folder in a project 1 Open the project which should contain the shared package an empty project in this example Root Component View 2 Select the menu item Project Include Subproject 3 Click the Browse button select the project that contains the shared package and click Open O 2012 Altova GmbH Altova UModel 2013 152 Projects and code engineering Sharing Packages and Diagrams Include Subproject Kind of include Include subproject elements Editable Readonly Include as a copy Store a copy of the shared data of pour subproject in your UModel project file References to the original data will be lost Styles of included diagrams Retain styles Included diagrams will appear as defined in their subproject C Use project file styles Diagrams will use current project file styles BankJavaump gt e Make path relative to alp minimalsit Cancel The Include dialog box allows you to choose between including the package project by reference or as a copy 4 Select the specific option Include by reference and click OK Root E 7 Component View E 67 Deployment View El 7 Design phase E Faava Lang Jawa Lang ump fo Pq Unknown Externals qc CH Profile CH Profile ump im Ef lava Profile Jawa Profile ump The Deployment View package is now visible in the new
122. MyProject vcpro Focused UML Data Code Project File Path The file path of the code project the currently focused UML class interface or enumeration belongs to e g C Temp MySource MyProject vcpro Keyboard The Keyboard tab allows you to define or change keyboard shortcuts for any command To assign a new Shortcut to a command 1 Select the commands category using the Category combo box 2 Select the command you want to assign a new shortcut to in the Commands list box 3 Click in the Press New Shortcut Key text box and press the shortcut keys that are Altova UModel 2013 2012 Altova GmbH UModel Reference Tools 419 to activate the command The shortcuts appear immediately in the text box If the shortcut was assigned previously then that function is displayed below the text box 4 Click the Assign button to permanently assign the shortcut The shortcut now appears in the Current Keys list box To clear this text box press any of the control keys CTRL ALT or SHIFT To de assign or delete a shortcut 1 Click the shortcut you want to delete in the Current Keys list box and 2 Click the Remove button which has now become active 3 Click the Close button to confirm all the changes made in the Customize dialog box Menu The Menu tab allows you to customize the main menu bars as well as the popup right click context menus You can customize both the Default and UModel Project menu bars
123. ON DAMAGES FOR LOSS OF BUSINESS PROFITS BUSINESS INTERRUPTION LOSS OF BUSINESS INFORMATION OR ANY OTHER PECUNIARY LOSS ARISING OUT OF THE USE OF OR INABILITY TO USE THE SOFTWARE OR THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT SERVICES EVEN IF ALTOVA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES IN ANY CASE ALTOVA S ENTIRE LIABILITY UNDER ANY PROVISION OF THIS SOFTWARE LICENSE AGREEMENT SHALL BE LIMITED TO THE AMOUNT ACTUALLY PAID BY YOU FOR THE SOFTWARE PRODUCT Because some states and jurisdictions do not allow the exclusion or limitation of liability the above limitation may not apply to you In such states and jurisdictions Altova s liability shall be limited to the greatest extent permitted by law and the limitations or exclusions of warranties and liability contained herein do not prejudice applicable statutory consumer rights of person acquiring goods otherwise than in the course of business The disclaimer and limited liability above are fundamental to this Software License Agreement between Altova and you d Infringement Claims Altova will indemnify and hold you harmless and will defend or settle any claim suit or proceeding brought against you by a third party that is based upon a claim that the content contained in the Software infringes a copyright or violates an intellectual or proprietary right protected by United States or European Union law Claim but only to the extent the Claim arises directly out of the u
124. Operation Oper on ation A Ci O O Element appliedStereo di appliedStereotype S applied stereotypes type tereotypeApplication Element ownedComm ownedComment Com ent ment ElementImport importedElem 1 importedElement Pack ent ageableElement Enumeration ownedLiteral j ownedLiteral Enumera tionLiteral Enumeration nestedClassifi nestedClassifier Cl er assifier Enumeration interfaceReali il interfaceRealization zation Interface EnumerationLitera ownedAttribut ownedAttribute Prop e erty EnumerationLitera ownedOperati ownedOperation Op on eration EnumerationLitera nestedClassifi a nestedClassifier Cla er ssifier Altova UModel 2013 O 2012 Altova GmbH Code Generator The way to SPL Spy Programming Language 437 Interface ownedAttribut 2 ownedAttribute Proper e ty Interface ownedOperati 7 ownedOperation Oper on ation Interface nestedClassifi i nestedClassifier Classi er fier InterfaceRealizati contract 1 contract Interface on MultiplicityElemen lowerValue 0 1 lowerValue ValueSpec t ification MultiplicityElemen upperValue 0 1 upperValue ValueSpe t cification NamedElement visibility MI visibility VisibilityKind O T NamedElement isPublie PP isPublic Boolean visibility lt public gt NamedElement isProtected E T isProtected Boolean visibility lt protected gt NamedElement isPrivate fd isPrivate Boolean visibility lt private gt NamedElement isPackage fo PO isPackage Boolean visibility
125. SPS design in StyleVision is described in detail in the StyleVision user manual The advantage of using an SPS for generating schema documentation is that you have complete control over the design of the documentation Note also that PDF output of the documentation is available only if an SPS is used PDF output is not available if the fixed design Is used 2012 Altova GmbH Altova UModel 2013 Chapter 10 UML Diagrams 184 UML Diagrams 10 UML Diagrams There are two major groups of UML diagrams Structural diagrams which show the static view of the model and Behavioral diagrams which show the dynamic view UModel supports all fourteen diagrams of the UML 2 4 specification as well as XML Schema and Business Modeling Notation diagrams Behavioral diagrams include Activity State machine Protocol State Machine and Use Case diagrams as well as the Interaction Communication Interaction Overview Sequence and Timing diagrams Structural diagrams include Class Composite Structure Component Deployment Object and Package diagrams Additional diagrams XML schema diagrams Please note The CTRL Enter keys can be used to create multi line labels for most of the modeling diagrams e g Lifeline labels in sequence diagrams timing diagrams guard conditions state names activity names etc Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 185 10 1 Behavioral Diagrams These diagrams dep
126. SR EU bankview pil 2 ae EA Account Hierarchy 2 i cn FA Bank view Main gt banks Bank ordered banknam po PR EA h c m 2 comde m I EJ Mode 7 E com PA Favorites bank AFl Bank API thanks pl Padre 181 usernam Properties DX Bank view in Bank AFI di fessi collectBank4 amp dressintos boolean name Bank element kind Class visibility public accounts collect4ccountinfos hoolean collectDatar boolean Bank in doo De QE qetllserr i I leaf LI getBalanceAtBank in String int lt gt collectAc EA getBalancesumoOtAllBank int gt getBalan achue C Properties Styles Hierarchy i O getBankt 1 getlrAdn Overview LX Ei Q detPass ES Bank iew Main 4 CAP NUM SCRL e Altova UModel 2013 2012 Altova GmbH UModel User Interface Model Tree 67 5 1 Model Tree Model Tree tab The Model Tree tab allows you to manipulate model items directly in the Model Tree as well as navigate view specific items in the Design tab Right clicking an item opens the context menu from which specific commands can be selected The contents of the context menu depend on the item that you select Model elements in the Model Tree pane can be directly manipulated e e O O Model Tree EE BankView Added inserted Copied or moved Deleted Renamed Sorted according to several criteria Constrained Ee Apply Java Profile g com i hga atova ii oi
127. Select the menu option List elements not used in any diagram A list of unused element appears in the Messages pane The list in parenthesis displays the specific elements which have been selected to appear in the unused list please see the View tab in Reference section under Tools Options for more information List all elements Classitter Package Relations InstanceS pecification not used in any diagram corn altowa bs Ea ts bankview A elements have been found To locate the missing elements in the Model Tree e Click the element name in the Messages pane Please note The unused elements are displayed for the current package and its sub packages 2012 Altova GmbH Altova UModel 2013 70 UModel User Interface Model Tree Packages in the Model Tree tab Only the Root and Component packages are visible on startup i e when no project is currently loaded e Packages can be created or deleted at any position in the Model Tree e Packages are the containers for all other UML modeling elements use case diagrams etc e Packages contents can be moved copied to other packages in the Model Tree as well as into valid model diagrams in the diagram tab e Packages and their contents can be sorted according to several criteria e Packages can be placed within other packages e Packages can be used as the source or target elements when generating or synchronizing code Generating merging code UMode
128. To move a state within a lifeline 1 Click the state label that you want to move 2 Drag it to a different position in the lifeline To delete a state from a lifeline 1 Click the state and press the Del key or alternatively right click and select Delete To switch between timing diagram types 1 Click the toggle notation icon at the bottom right of the lifeline This changes the display to the General Value lifeline the cross over point represents a state value change n EE EE zo A HL HM E I I I Lifeline State XK tte dX Statel I H A e e gt gt e b amp u _u mmu mu UMmu1 MMu uumu m u u ue uUuUu u u_ _uuuuuP J J 3 J 3 y 3 yq _ JPVUWpyuj Svyv amp xKWS n_ 9 J y J J JH JH ET Please note that clicking the Lifeline General Value icon inserts the lifeline as shown above You can switch between the two representations at any time To add a new state to the General value lifeline 1 Right click the lifeline and select New State Condition Statelnvariant 2 Edit the new name e g State3 and press Enter to confirm Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 263 I I Lifeline State XK State X State3 I A new State is added to the lifeline Grouping lifelines Placing or stacking lifelines automatically positions them correctly and preserves any tick marks that might have been added Messages can also be
129. a Se Favorites Properties sin r bankname string element kind Operation visibility public IPaddress string username string leal O password string static LI accounts Account abstract C quern L Bank in name string in IF string in user string in pw string lt AddRemove ccessor 1 CollectAccountinfosfin api lBankAPly bool lt lt attributes gt L CelBal ota ee e O alance ccount t i lt lt extern gt gt C lt lt GelAccessorn gt lt lt Get amp ccessor property PAddres 01 string visibility protected lt lt GetAccessor property Username string Indexer gt LI lt lt GetAccessor property gt Passwvword string lt lt internal gt gt C ENG C 1 Properties Styles F Hierarchy A BankYiew Main qb Ready CAP NUM SCRL Adding Stereotypes and defining tagged values This section uses the Bank_MultiLanguage ump file available in the UModelExamples folder Creating a Profile diagram and a stereotype 1 Create a new profile in the Model Tree view e g right click the Root package and select New element Profile and name it MyProfile 2012 Altova GmbH Altova UModel 2013 292 UML Diagrams Structural Diagrams HE Behavior view E Raava Profile Java Profile ump HE Java Lang Java Lang ump 1 Ra C Profile C Profile ump i 4 r MyProfile 2 Right click the MyProfile package in the Model Tree and select
130. a GmbH Altova UModel 2013 76 UModel User Interface Styles 5 5 Styles Styles tab The Styles tab is used to view or change attributes of diagrams or elements that are displayed in the diagram view Project Styles All Color white Pen Color 4525252 black Arial Font Size 11 Font eight normal Header Color black Header Font Artal Header Font Size 11 Header FontW elght bold Attribute Color purple Attribute Font Artal Attribute Font Size 11 Properties Styles E Hierarchy These style attributes fall into two general groups e Formatting settings i e font size weight color etc e Display settings options show background color grid visibility settings etc The Styles tab is subdivided into several different categories sections which can be selected by clicking the Styles combo box The combo box contents depends on the currently selected model element Element Styles Element Styles Element Family Styles Node Styles Project Styles ont Font Size Clicking an element in a diagram tab automatically selects the Element Style context while clicking and element in the Model Tree tab selects the Project Style context Style precedence is bottom up i e changes made at the more specific level override the more general settings E g changes to an object made at the Element Style level override the current Element Family and Project Styles settings However selecting a different object and ch
131. aType OM Packagelmports importedPackage gni ii Sethu void E Properties D Styles EJ Hierarchy crisi This view shows multiple relations of the currently selected element e g SchemaString Clicking the various icons in the icon bar allows you to show all types of relations or narrow them down by clicking activating the various icons In the screenshot above all icons are active and thus all relations are shown in a tree view Double clicking one of the element icons in the tab displays the relations of that element Show graph view 2012 Altova GmbH Altova UModel 2013 80 UModel User Interface Hierarchy Hierarchy EE lo 0 gt oy on Oe Cloneable Ce Comparable Oe Serializable O Cloneable p SchemaType E SchemaTypeNumber SchemalormalizedString H SchemaToken H Schemalame SchemahChHame 4 Z UU E E Properties Styles E Hierarchy This view shows a single set of relations in an hierarchical overview Only one of the relation icons can be active at any one time The Show Generalizations icon is currently active Double clicking one of the element icons in the tab e g SchemaTypeNumber displays the relations of that element g schemaType SchemaType Ce Cloneable O Comparable Oe Serializable m SchemaType C SchemaTypeMumber Schemalnt Schemalnteger H SchemaLonc Creating a new diagram from the contents of the window The curr
132. ab itself you are not even forced to create them as part of a diagram To insert a new package 1 Right click the package you want the new package to appear under either Root or Component View in a new project 2 Select New Package A new package is created under an existing one The name field is automatically highlighted allowing you to enter the package name immediately e Packages are the containers for all other UML modeling elements use case diagrams classes instances etc e Packages can be created at any position in the Model Tree e Packages contents can be moved copied to other packages in the Model Tree as well as into valid model diagrams in the diagram tab e Packages and their contents can be sorted in the Model Tree tab according to several criteria Packages can be placed within other packages e Packages can be used as the source or target elements when merging or synchronizing code To have elements appear in a UML diagram you have to 1 Insert a new UML diagram by right clicking and selecting New Class Diagram 2 Drag and drop an existing model element from the Model Tree into the newly created Diagram or 3 Use the context menu within the diagram view to add new elements directly To save a project Select the menu option File Save as or File Save Note Using the Tools Option File tab you can define if you want the ump file to be saved in a pretty print format on saving
133. ackage to the Model Tree Model Tree Foot Component view ac SA MyPackage ac kaava Profile Java Profile ump E E Java Lang Java Lang ump E Fa Unknown External Creating the class properties and methods 1 Right click MyPackage and select New Diagram Class Diagram 2 Right click in the class diagram and select New Class to create a new class in the diagram e g MyClass 3 Press F7 and add some attributes e g UserName String and Password String O 2012 Altova GmbH Altova UModel 2013 116 Projects and code engineering Minimalist UModel project starting from scratch 4 Press F8 and add some operations e g GetUserName String and GetPassword String Model Tree Root i Component view E SA MyPackage E EA ClassDiagraml MyFirstClass ol UserName String I si getUserName 039 Password String o 3 oc getPassword I I gt getUserName String dc E User UserName i O gt getPassword String e al Password i Relations ac Faava Profile Java Profile ump E Ea Java Lang Java Lang ump m P Unknown Externals E Model T E Diagram Favorites Creating a Component and defining the code directory 1 Right click the Component View package and add a new Component diagram 2 Drag the MyFirstClass class element from the Model Tree into the Component diagram Root E Component view Se ComponentDiagrami E EA MyPackage aa E Cl
134. add the entry exit point to O 2012 Altova GmbH Altova UModel 2013 210 UML Diagrams Behavioral Diagrams Performing Transaction A Hinsacting BankServer i D Right click in the Properties tab and select Add entry Please note that another Entry or Exit Point has to exist elsewhere in the diagram to enable this pop up menu E Performing Transaction ConnectionPointReterer ConnectionPointheteren j unspecified a EESDSacUna dl adeny Remove entry Logging Transaction Add exit Properties Remove exit This adds an EntryPoint row to the Properties tab and changes the appearance of the ConnectionPointReferece element ConnectionFointRetferenmi ConnectionPotReteren unspecified La Logging Transaction J Use the same method to insert an ExitPoint by selecting Add exit from the context menu Code generation from State Machine diagrams UModel is now able to generate executable code from State Machine diagrams Java VB NET or C Almost all of the State Machine diagram elements and features are supported State CompositeState with any hierarchical level OrthogonalState with any number of regions Region InitialState FinalState Transition Guard Trigger Call Event Fork Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 211 Join Choice Junction DeepHistory ShallowHistory Entry exit do actions Effects State Machine code
135. adegeniBank cs CTEMP ssc Bank CSharpicodegen Checking4ccount cs Cancel COTEMPissc Bank CSharpicodegentsavingsA4ccount cs Select All C Keep checked out Differences EEE PEE BE SR A rrr I Eli Comment Note You can change the number of files to check in by activating the individual check boxes in the Files list box The following items can be checked in e Single files click on the respective files CTRL click in Model Tree e Folders click on the folders CTRL click in Model Tree lla RS The lock symbol denotes that the file folder is under source control but is currently not checked out Altova UModel 2013 2012 Altova GmbH Source Control Source Control Commands 355 12 4 8 Undo Check Out This command rejects changes made to previously checked out files i e your locally updated files and retains the old files from the source control database To Undo Check Out e Select the files in the Model Tree e Select Project Source Control Undo Check Out Source Control Undo Check Out l Files CATEMPissc Bank_ CSharp icodegen Bank cs CATE MP 20 Bank CSharpicodegeniChecking4ccount cs Cancel COTEMP esc Bank _ CSharpicodegenisavings4ccount cs Select All Advanced Note You can change the number of files by activating the individual check boxes in the Files list box The Undo check out option can apply to the following items e Single files click on t
136. aktora i EE MyFirstClass getUserMamer String E Relations getPassword String E Fa Unknown Externals E A Jawa Profile Java Profile ump altowa myPackage altova Package public Nnamezspaces 3 In the Model Tree window move the MyFirstClass class into the altova package Altova UModel 2013 O 2012 Altova GmbH Projects and code engineering Minimalist UModel project starting from scratch 119 When code is generated the class will now be in the namespace altova O 2012 Altova GmbH Altova UModel 2013 120 Projects and code engineering Importing source code into projects 7 2 Importing source code into projects Source code can be imported as a source project or as a source directory For an example of importing a source directory please see Round trip engineering code model code in the tutorial e JBuilder jpx Eclipse project project files as well as NetBeans project xml are currently supported e C projects Visual Basic projects MS Visual studio projects sin csproj csdprj vbproj vbp as well as Borland bdsproj project files To import an existing project into UModel 1 Select Project Import source project 2 Click the browse button Lal in the Import Source Project dialog box Import Source Project i x Language Java6 0 1 6 Project file el20104UModelE xamples OrgChart OraChart px E I Import project relative to UModel project file
137. al Diagrams 209 Orthogonal state This type of state contains a second compartment comprised of two or more regions where the separate regions indicate concurrency Right clicking a state and selecting New Region allows you add new regions a iia _ OrthogonalState1 i gt ti in es i i i i i i T n is A A To show hide region names Click the Styles tab scroll to the Show region names on states entry and select true false Submachine state This state is used to hide details of a state machine This state does not have any regions but is associated to a separate state machine To define a submachine state 1 Having selected a state click the submachine combo box in the Properties tab A list containing the currently defined state machines appears 2 Select the state machine that you want this submachine to reference Properties name Transacting element kind tate visibility unspecified Please note that a hyperlink icon automatically appears in the submachine clicking it opens the referenced statemachine BankServer in this case To add entry exit points to a submachine state e The state which the point is connected to must itself reference a submachine State Machine visible in the Properties tab e This submachine must contain one or more Entry and Exit points 1 Click the ConnectionPointReference icon pS in the title bar then click the submachine state that you want to
138. allows you to embed an existing referenced CSS file in the HTML documentation when active or keep the reference to the CSS file and the file itself external when inactive The Embed diagrams option is enabled for the Microsoft Word and RTF output options When this option is selected diagrams are embedded in the generated file Diagrams are created as PNG files for HTML or PNG EMF files for MS Word and RTF which are displayed in the result file via object links Create folder for diagrams generates a subfolder below the selected output folder that will contain all diagrams when the documentation is output The Show Result File option is enabled for all output options When checked the result files are displayed in Browser View HTML output MS Word MS Word output and the default application for rtf files RTF output Generate links to local files option allows you to specify if the generated links are to be absolute or relative to the output file O 2012 Altova GmbH Altova UModel 2013 174 Generating UML documentation Include tab allows you to select which diagrams and modeling elements are to appear in the documentation Generate Documentation Main Include Details Fonts Diagrams Elements Activity Diagram AcceptEventAcotion KW Index BPMN 1 Business Process L Action o 7 Named elements only BPMN 2 Business Process ActionExecutionSpeciti
139. als T Use Case View E Raava Profile Java Profile ump Ok Lancel L Clicking the Select All button selects all the Sequence Diagrams in the UModel project 2 Click OK to generate the code The Messages window shows the status of the code generation process Model Tree e Right click a Sequence Diagram and select Generate Code from Sequence diagram Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 255 E i bankview 3 F Bank view Main Hierarchy of Account POS Sample Accounts E C getBankName String New element Generate Communication Diagram Update Sequence Diagram From Code Generate Code From Sequence Diagram Goto Operation Show in new diagram Open diagram Sequence Diagram containing code of an operation 1 Click into the empty space of the Sequence Diagram that contains code of an operation 2 Select Generate Code from Sequence diagram sd getBankHame String Generate Communication Diagram Update Sequence Diagram From Code Generate Code From Sequence Diagram Paste y Paste in Diagram only Copy as Bitmap This command starts the forward engineering process at this point To create a Sequence diagram for code engineering 1 In the Model Tree right click an operation and select Create Sequence diagram for code 2012 Altova GmbH Altova UModel 2013 256 UML Diagrams Behavioral Diagrams New element Generate Seq
140. aluation period hereinafter defined only a single user may install and use the software on one 1 personal computer or workstation If you have licensed the Software as part of a suite of Altova software products collectively the Suite and have not installed each product individually then the Software License Agreement governs your use of all of the software included in the Suite 11 If you have licensed SchemaAgent then the terms and conditions of this Software License Agreement apply to your use of the SchemaAgent server software O 2012 Altova GmbH Altova UModel 2013 456 Appendices License Information SchemaAgent Server included therein as applicable and you are licensed to use SchemaAgent Server solely in connection with your use of Altova Software and solely for the purposes described in the accompanying documentation iii If you have licensed Software that enables users to generate source code your license to install and use a copy of the Software as provided herein permits you to generate source code based on i Altova Library modules that are included in the Software such generated code hereinafter referred to as the Restricted Source Code and ii schemas or mappings that you create or provide such code as may be generated from your schema or mapping source materials hereinafter referred to as the Unrestricted Source Code In addition to the rights granted herein Altova grants you a non e
141. alue 295 Error messages 84 syntax check 53 Evaluation period of Altova s software products 451 452 454 Event Stimulus Timing diagram 264 Examples tutorial folder 14 Exception Adding raised exception 269 Java operation 120 Execution specification lifeline 238 Exit point add to submachine 208 Expand all class compartments 269 collapsing packages 67 F Favorites 73 Fetch file source control 350 File 387 merging project files 144 new load save batch 110 open from URL 387 tutorial example 14 ump 112 Files sample files 101 Filter types autocompletion window 89 Find modeling elements 67 392 searching tabs 66 unused elements 67 Folder examples folder 14 Folders get in source control 352 Format autocompletion window 89 user defined stereotype 297 Forward engineering 135 Frame show UML diagram heading 89 Full batch mode 110 G Gate sequence diagram 242 General Value lifeline Timing diagram 261 Generalize specialize 34 Generate code from schema 432 ComponentRealizations automatically 132 multiple sequence diagrams from code 251 reply message automatically 243 Sequence dia from Communication 228 sequence diagram from code 248 UML project documentation 172 XML Schema 315 Get getter setter methods 269 Get file 2012 Altova GmbH Index 473 Get file source control 351 Get folders
142. ame s title space and the occurrence s name in the frame Inserting Interaction Overview elements Using the toolbar icons 1 Click the specific icon in the Interaction Overview Diagram toolbar O 2012 Altova GmbH Altova UModel 2013 232 UML Diagrams Behavioral Diagrams Add Elements Interaction Overview Diagram Bm ete 0 TE l a 2 Click in the diagram to insert the element Note that holding down CTRL and clicking in the diagram tab allows you to insert multiple elements of the type you selected Dragging existing elements into the Interaction Overview Diagram Elements occurring in other diagrams e g Sequence Activity Communication or Timing diagrams can be inserted into a Interaction Overview diagram 1 Locate the element you want to insert in the Model Tree tab you can use the search function text box or press CTRL F to search for any element 2 Drag the element s into the diagram Inserting an Interaction element 1 Click the CallBehaviorAction Interaction icon in the icon bar and click in the Interaction Overview diagram to insert it Properties nx name CallBehavior Action Interaction qualified name Design Views Activity Callbehi element kind CallBehavior4ction unspecified O isSynchronous behavioridiagram Collect Account Information E Properties D Styles Overviey The Collect Account Information sequence diag
143. amp amp SlocalName endif EndSub Subroutine invocation Use call to invoke a subroutine followed by the procedure name and parameters if any Call Simplesub or Call CompleteSub FirstParameter SParamByValue SParamByRef Function invocation To invoke a function any subroutine that contains a return statement simply use its name inside an expression Do not use the call statement to call functions Example SQName MakeQualifiedName Snamespace entry Altova UModel 2013 2012 Altova GmbH Code Generator Error Codes 447 15 2 Error Codes Operating System Error Codes 201 File not found s 202 Cannot create file s 203 Cannot open file s 204 Cannot copy file s to s Syntax Error Codes 401 Keyword expected 402 s expected 403 No output file specified 404 Unexpected end of file 405 Keyword not allowed Runtime Error Codes 501 Unknown variable s 502 Redefinition of variable s 503 Variable s is not a container 504 Unknown property s 505 Cannot convert from s to s 507 Unknown function 508 Function already defined 509 Invalid parameter 510 Division by zero 511 Unknown method 512 Incorrect number of parameters 513 Stack overflow O 2012 Altova GmbH Altova UModel 2013 Chapter 16 Appendices 450 Appendices 16 Appendices These appendices contain technical information about UModel and important licensing information License Inf
144. an instance The message specifies the type of communication as well as the sender and the receiver Message Call Message Reply L Message Creation Message Destruction To insert a message 1 Click the specific message icon in the toolbar 2 Drag and drop the message line onto the receiver objects Lifelines are highlighted when the message can be dropped Properties name Message qualified name Interaction Messaq FERMA Lifeline element kind visibility unspecified 1 Message messaqesoart y nchCall n H operation 1 1 Message2 H asynch C Ei user defined sequence Lifeline Note holding down the CTRL key allows you to insert a message with each click To insert additional messages 1 Right click an existing communication link and select New Message 2012 Altova GmbH Altova UModel 2013 230 UML Diagrams Behavioral Diagrams Lifeline Lifeline 1 Me zagel 4 1 1 Message t 1 2 Messages Lifeline e The direction in which you drag the arrow defines the message direction Reply messages can point in either direction e Having clicked a message icon and holding down CTRL allows you to insert multiple messages by repeatedly clicking and dragging in the diagram tab Message numbering The Communication diagram uses the decimal numbering notation which makes it easy to see the hierarchical structure of the messages in the diagram The sequence is a dot se
145. an interruptible region all flows and behaviors in the region are terminated To add an interrupting edge Making sure that e an Action element is present in the InterruptableActivityRegion as well as an outgoing Control Flow to another action We e ne e meee 2 F 2012 Altova GmbH Altova UModel 2013 200 UML Diagrams Behavioral Diagrams 1 Right click the Control Flow arrow and select New InterruptingEdge Properties element kind InterruptibleActivityRegion interruptingEdge ControlFlow Action collec i i i i i i i i i i i i i F ee Please note You can also add an InterrupingEdge by clicking the InterruptableActivityRegion right clicking in the Properties window and selecting Add InterruptingEdge from the pop up menu Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 201 10 1 2 State Machine Diagram Altova web site E UML State Machine diagrams The State Machine Diagram models the behavior of a system by describing the various states an object may be in and the transitions between those states They are generally used to describe the behavior of an object spanning several use cases A state machine can have any number of State Machine Diagrams or State Diagrams UModel Two types of processes can achieve this Actions which are associated to transitions are short term processes that cannot be interrupted E g an initial transition int
146. and the MyEnum type is selected the default value is automatically inserted as the tagged value e Finished Yes AA A Property Property nm E Usert si i lt lt MyKeyWaluePair gt gt MykKeyl serMame String a Password Error ii iii ae a a z MyKey aluePair Property z Wy Enum lt gt GetUserName y String GetPasswsord Strina manana mE ee ee User defined stereotype styles It is now possible to create user defined styles for individual stereotypes This means that you can have specific fonts colors etc that are applied to those classes which are of that type of stereotype To create user defined stereotype styles 1 Click a previously defined stereotype e g MyKeyValuePair in the Class diagram 2 Activate the Styles tab then select Styles of elements with this Stereotype from the combo box 3 Define the styles of this stereotype using the options in the Styles tab e g Header Gradient End Color aqua 2012 Altova GmbH Altova UModel 2013 298 UML Diagrams Structural Diagrams Styles Dx Styles of Elements with this Stereotype Header Gradient Begin white Header Gradient End Cagua Header Color black Header Font Header Font Size 12 Header Font Weight Fill Color Trans Fill Color a RA i tereotype gt 0 NyKeyvaluePair i yet I i MyKey2 Finished My End Clicking the stereotype class automatically displays the stereotype styles in the
147. anging the Element Family Styles setting updates all other objects except for the one just changed at the Element Style level Please note Style changes made to model elements can all be undone Element Styles Applies to the currently selected element in the currently active diagram Multiple selections are possible Altova UModel 2013 2012 Altova GmbH UModel User Interface Styles 77 Styles of Elements with this Stereotype Applies to the currently selected stereotype class in the diagram it has been defined please see User defined stereotype styles Element Family Styles Applies to all elements of the same type i e of the selected Element Family E g you want to have all Component elements colored in aqua All components in the Component and Deployment diagrams are now in aqua Node Line Styles Node applies to all rectangular objects Lines applies to all connectors association dependency realization lines etc for the whole project Project Styles Project Styles apply to the current UModel Project in its entirety e g you want to change the default Arial font to Times New Roman for all text in all diagrams of the project Diagram Styles These styles only becomes available when you click select a diagram background Changing settings here only affects the single UML diagram for which the settings are defined in the project To change settings for all diagrams of a project 1 Click in the re
148. ank4PI l dressintos boolean password String accounts 4Accou intinfo boolean boolean Bankrin Str tBank in String int collect Accountin UmMOTA Banks int getBalanceotac getBankHName i s getiP Adress Stg Pu H Bank iew Main E Overview Account Balance Account Hierarchy To create a new diagram 1 Click a package in the Model Tree tab 2 Select New YYY Diagram To create a new diagram containing contents of an existing package 1 Right click a package and select Show in new Diagram Content To open access a diagram e Double click the diagram icon in any of the Model Tree pane tabs to open e Clicking any of the tabs in the Diagrams pane to access To close all but the active diagram e Right click the diagram tab that is to remain open select the option Close All but active Deleting a diagram e Click the diagram icon in the Model Tree and press Del key Moving diagrams in a project e Drag the diagram icon to any other package in the Model Tree Tab You might have to enable the no sort option to move it Finding deleting class properties and options from the Model Tree Properties and options can also be deleted directly from the Model Tree To do this safely it is important to first find the correct property Assuming you have inserted Operation1 in the Account class press F8 then Enter to insert 1 Right click Operation1 in the Account class 2 Select the opti
149. ankAPl Design ies Bar llegalScces Error Java Lang java 1 ISSN al ae E 8 Press the b key to select the boolean datatype then Enter to insert it 9 Press Enter to end the definition O 2012 Altova GmbH Altova UModel 2013 32 UModel tutorial Class Diagrams Account balance flost 0 ld String ACCOUNT getBalance float getld i String 747 Please note g Clicking the visibility icon to the left of an operation O or property gl opens a drop down list enabling you to change the visibility status Note that these visibilty icons can be changed to the UML conformant symbols Deleting class properties and operations from a Class Diagram 1 Press F8 then Enter to add a default operation Operation1 in the Account class 2 Click Operation1 and press the Del key to delete it A delete prompt appears asking if you want to delete the element from the project Click Yes to delete Operation1 from the class as well as from the project Please note If you only want to delete the operation from the class in the diagram but not from the project press the CTRL Del key You can also enable a prompt that queries you when deleting objects please see Tools Editing for more information Finding deleting class properties and options from the Model Tree Properties and options can also be deleted directly from the Model Tree To do this safely it is important to first find the corr
150. appears below the mouse pointer To reset any of the context menus O 2012 Altova GmbH Altova UModel 2013 420 UModel Reference Tools 1 Select the context menu from the combo box and 2 Click the Reset button just below the context menu name A prompt appears asking if you are sure you want to reset the context menu To close an context menu window 1 Click on the Close icon at the top right of the title bar or 2 Click the Close button of the Customize dialog box Menu shadows e Click the Menu shadows check box if you want all your menus to have shadows Macros The Macros tab allows you to select from the macros defined in the Scripting Project that is currently active in UModel The active Scripting Projects are specified in the Scripting tab of the Options dialog or in the Scripting tab of the project settings Please see Running a Macro for more information Plug Ins The Plug Ins tab allows you to select a UModel Plugin file dll to the list of currently active Plug Ins Please see Testing the UModel plugin for more information Options The Options tab allows you to set general environment settings Toolbar When active the Show ToolTips on toolbars check box displays a popup when the mouse pointer is placed over an icon in any of the icon bars The popup contains a short description of the icon function as well as the associated keyboard shortcut if one has been assigned The Show shortcut keys in
151. arArgList Boolea true if parameter is a n variable argument list Parameter defaultValue 0 1 defaultValue ValueSpe cification Property defaultValue 0 1 defaultValue ValueSpe cification nt Slot name name String name of the defining feature Slot values i value ValueSpecificati on Slot value value String value of the first value specification StereotypeApplica name name String name of applied tion stereotype StereotypeApplica taggedValue taggedValue Slot first slot of the instance tion specification ION oie unas ll ownedAttribute Proper ty a signature TemplateSig nature TemplateBinding parameterSu parameterSubstitution bstitution TemplateParameterSu bstitution MESSA paramDefault paramDefault String template parameter default value ui ownedParam ownedParameteredEle ee ment ParameterableEl ement TemplateParamet A parameterSubstituti Java only code erSubstitution bstitution on String wildcard handling TemplateParamet parameterDi parameterDimensio code dimension count of erSubstitution Adan nCount Integer the actual parameter TemplateParamet actual OwnedActual Paramet erSubstitution erableElement TemplateParamet formal formal TemplatePara erSubstitution meter TemplateSignatur template 1 template Templateabl e eElement TemplateSignatur JownedParam ownedParameter Tem e eter plateParameter TemplateableEle isTemplate isTemplate Boolean true if template ment signature set TemplateableEle ownedTempl 0 1 ownedTe
152. aracters name is not a keyword no element to check multiple inheritance Error Error Error Error Error Error Error Error Error None Error Constraints on model elements are not checked as they are not part of the Java code generation process Please see constraining model elements for more information Source control UModel now supports Microsoft SourceSafe and other compatible repositories Microsoft has defined a Registry Entry where all SCC compatible programs can register themselves UModel only reads this entry HKEY LOCAL MACHINE SOFTWARE SourceCodeControlProvider InstalledSCC Providers Also note that Source Control plugins are not automatically installed by all SSC products Please read the documentation supplied with your specific source control software for more information Please see Source control systems for detailed information on source control servers and clients and how to use them Altova UModel 2013 O 2012 Altova GmbH UModel Reference Project 397 Import Source Directory Opens the Import Source Directory wizard shown below Please see Round trip engineering code model code for a specific example Import Source Directory O 2012 Altova GmbH Altova UModel 2013 398 UModel Reference Project Import Source Project Opens the Import Source Project wizard shown below Clicking the browse E button allows you to select the project file
153. assDiagram MyFirstClass gip from Root MyPackage ii PIE ac getPass word E UserName String j Lala al U erhlame n a Password E Relations getUserNamety String E 47 Java Profile Java Profile ump lt gt getPass word String m ET Java Lang Java Lang Ump Tm P3Unknowen Externalz C Model El Diagra 4 Favorites Properties 1 x ESclassDiagram E ComponentDiagrami al Password String 3 Add anew component to the diagram e g MyComponent 4 Click the component in the diagram to select it then click in the directory field of the Properties window and enter the directory you want the code to be placed in e g C MyCode Altova UModel 2013 2012 Altova GmbH Projects and code engineering Minimalist UModel project starting from scratch 117 Model Tree Component view gue ComponentDiagrami Lr 5 MyComponent EMyPackage E EA Clas Diagram EE MyFirstClass El O getUserMame i O getPassword C Model T EH Diagram F Favorites Properties My Component Component wiew hu Component public Pa indirectlyInstantiated code language directory Use for code engineering Realizing the class 1 Click MyClass and drag the ComponentRealization handle at the bottom of the element and drop it on the new component MyComponent MyFirstClass components E from Root MyPackage MyComponent al UserName String I a Passwor
154. associate it to an application Customize w x Commands Toolbars Tools Keyboard Menu Macros Plug Ins Options Menu contents QG X Open code file Command Cs NOUS notepad exe E Arguments S F_CodeFileN ame gt Initial directory cAUML_B ank_ Sample MultilLanguage CS harplode The Tools tab now also supports the definition of Arguments Arguments are variables that are Altova UModel 2013 O 2012 Altova GmbH UModel Reference Tools 417 assigned specific values when the external tool is started using the menu item E g Open the source code file of the currently selected UML class in Notepad 1 Select the menu item Tools Customize and click the Tools tab 2 Enter the name and path of the external application e g C notepad exe 3 Click the Flyout button of the Arguments field and select the argument you want to use e g Code File Name componente E ww BankServer from BankSerwer Project File Name EA Project File Path sharpLodes Focused UML Data UML Qualified Mame Code File Mare Code File Path Code Project File Mame Code Project File Path 4 Click the Close button to finish 5 Click the Tools menu and select Open code file Window Help E cripting Editor Macros Open code File Customize Restore Toolbars and Windows Options The BankServer cs file is opened in Notepad and is ready to be edited 2012
155. at Generate links to local files HTML Create diagrams as 7 absolute C Microsoft Word PNG C EMF C relative to result file RTF PF embed diagrams You are now prompted to save the file 4 Enter the file name and select the location you want to save it Bank_MultiLanguage ump project location C Documents and Settings My My Documents Altova UModel2011 UMod Index of diagrams Activity Diagram collectData Draft Component Diagram Bank realizations Overview Composite Structure Diagram Account Transfer Deployment Diagram Deployment sequence Diagram Collect Account Information Connect to BankAPl State Machine Diagram BankAPi Draft Query BankServer Draft Index of elements Component Package Behavior View Deployment View Design View Clicking a link in the generated documentation navigates to the modeling element in the browser 2012 Altova GmbH Altova UModel 2013 180 Generating UML documentation Supplied SPS stylesheet Altova UModel 2013 O 2012 Altova GmbH Generating UML documentation User defined Stylesheets 181 9 2 User defined Stylesheets Instead of using the fixed design you can create a customized design for the UModel documentation The customized design is created in a StyleVision SPS Note that the predefined SPS Stylesheet is supplied with UModel Specifying the SPS to use for UModel documentation The SPS you wish to use for generating the documentation is specified in the Ge
156. ate change takes place Properties name Code qualified name Design wiew Code vvaitCard element kind Executionevent visibility public WalAccess Cardit 2 Enter a name for the event in this example the event is Code Note that the event properties are visible in the Properties tab DurationConstraint DurationConstraint A Duration defines a ValueSpecification that denotes a duration in time between a start and endpoint A duration is often an expression representing the number of clock ticks which may elapse during this duration To insert an DurationConstraint 1 Click the DurationConstraint icon then click the specific position on the lifeline where the constraint is to be displayed Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 265 Properties name Durationtonstraint qualified name Design view Interact _ I a I element kind DurationConstraint Pole u t di l visibility public vaitCard d t The default minimum and maximum values d t are automatically supplied These values can be edited by double clicking the time constraint or by editing the values in the Properties window 2 Use the handles to resize the object if necessary Properties name Durationconstraint qualified name Design View Interact element kind Duration lonstraint visibility public EI Cerd d ad Wattccess Cardit Idle Changing the orientation of the D
157. ations Automatic generation of ComponentRealizations UModel is now capable of automatically generating ComponentRealizations during the code engineering process ComponentRealizations are only generated where it is absolutely clear to which component a class should be assigned e Only one Visual Studio project file exists in the UMP project e Multiple Visual Studio projects exist but their classes are completely separate in the model Automatic ComponentRealizations are created for a Classifier that can be assigned ONE and only ONE Component e without any ComponentRealizations or e contained in a code language namespace The way the Component is found differs for the two cases Component representing a code project file property projectfile set e if there is ONE Component having realizing classifiers in the containing package e if there is ONE Component having realizing classifiers in a subpackage of the containing package top down e if there is ONE Component having realizing classifiers in one of the the parent packages bottom up e if there is ONE Component having realizing classifiers in a subpackage of one of the the parent packages top down Component representing a directory property directory set e if there is ONE Component having realizing classifiers in the containing package e if there is ONE Component having realizing classifiers in one of the the parent packages bottom up Notes e The option Code E
158. ava Lang java le F float CH Profile Gi E Float Java Lang javer le a 4 Continue on the same line by appending 0 to define the default value 5 Press the F7 keyboard key to add a second property to the class 6 Enter Id and select String from the drop down list Account o gl balance float 0 io ld String H a oa To add operations to a class 1 Right click the Account class and select New Operation or press the F8 key 2 Enter Account as the constructor Using the method described above Altova UModel 2013 2012 Altova GmbH UModel tutorial Class Diagrams 31 3 Add two more operations namely getBalance float and getld String Account balance flost 0 Id String Using the autocomplete function while defining operations 4 Create another operation using F8 collectAccountinfo and enter the open parenthesis character Entering the i character opens the drop down list allowing you to select one of the operation direction parameters in inout or out 5 Select in from the drop down list enter a space character and continue editing on the same line 6 Enter bankAPl and then a colon 7 Select IBankAPI from the drop down list add the close parenthesis character and enter a colon Acconni balance flost 0 id String lt lt con tructor gt Accountt getBalancel float enne getld0 Strina lt collect Accountinfocin bankAPIy i i B
159. ava or C or VB NET binaries if you do not there is no need for the Java Runtime Environment or the MS NET Framework to be installed The import of obfuscated binaries is not supported To import binary files 1 Select the menu option Project Import Binary Types Import Binary Types Language Javas 0 1 5 bl Runtime JRE1 5 0 04 Synchronization f Merge Code into Model Overwrite Model according to Code Diagram generation lt Back Finnish Cancel 2 Select the language and runtime edition then click Next This opens the Import Binary Selection dialog box 3 Click the Add button and select the Class Archive from the flyout window e g Class Archives from Java Runtime 2012 Altova GmbH Altova UModel 2013 126 Projects and code engineering Importing Java C and VB binaries Class File Archive JAR ZIP Class File Package Root Folder Remove Class Archives from Class Path Class Archives from Java Runtime Remove Sl i E k H Move Down CreditCardAccount ative code libraries ditLimit float restrateOnBalance float erestrateOntcash Advance float 3 Click the expand button to expand the list of binaries and activate the check box es of those that you want to import the first three in the screen shot below then click Next Import Binary Selection Binaries in load order set check mark to import types el E C Program FilestJavatjre1 5 0 _ 04 ib u
160. ax check and code merging messages warnings and errors from the Messages window Please note Errors are generally problems that must be fixed before code can be generated or the model code can be updated during the code engineering process Warnings can generally be deferred until later Errors and warnings are generated by the syntax checker the compiler for the specific language the UModel parser that reads the newly generated source file as well as during the import of XMI files Generate documentation Allows you to generate documenation for the currently open project in HTML Microsoft Word and RTF formats please see Generating UML documentation for more information Generate Documentation 8 x Main Include Details Fonts Documentation Design Use fixed design for documentation in HTML Word or RTF Format Use user defined design for HTML Word RTF or PDF format Requires StyleVision Select SPS design RATE Edit Output Format Generate links to local files absolute i HTML Create diagrams as C Microsoft Word SF PNG C EME C RTF Embed diagrams PDF see above C relative to result file Create folder For diagrams i Split output to multiple Files C Embed C55 in HTML M Show result file after generation Cancel List Elements not used in any Diagram Creates a list of all elements not used in any diagram in the project List shared Packages Lists all
161. c coTEMPrs c Bank _CSharpicodegentCheckingAccount cs Select All dui c TEMP ec Bank _CSharpicadegentlredtlardAccaunt cs COTEMP isc Bank _ CSharpicodegentsavings4ccount cs I Keep checked out Comment Please note that you can split your project into multiple subprojects Each individual subproject can be added to the source control system separately allowing multiple developers to work on a single project 9 Click OK once you have selected the files you want to place under source control The lock symbol now appears next to each of the classes file sources placed under source control i ea Bank view saran P Apply CSharp Profile amac E Qaltova gt E bankview sia EA Sample Accounts scien ES Bankvieswr Main ase F Hierarchy of Account Mis Checking ccount fos SavingsAccount MES CreditCardAccount ae Account ME Bank F Model Tree EF Diagram Tree Favorites 2012 Altova GmbH Altova UModel 2013 358 Source Control Source Control Commands 12 4 10 Remove from Source Control This command removes previously added files from the source control database These type of files remain visible in the Model Tree but cannot be checked in or out Use the Add to Source Control command to place them back under source control To remove files from the source control provider e Select the files you want to remove in the Model Tree e Select Project Source Control Remove from Sourc
162. cal files absolute or relative links 172 Local project 347 Location move project 112 2012 Altova GmbH Index 475 Mail send project 387 Make same height width size 89 Manifest artifact 49 Mapping C to from model elements 138 Java to from model elements 137 VB NET to from model elements 140 XML Schema to from model elements 139 Member end stereotype 291 MemberEnd association 162 Menu Add menu to 416 add delete command 415 customize 419 Default XMLSPY 419 delete commands from 419 edit 392 file 387 help 429 layout 404 project 395 tools 406 view 405 window 428 Merge 2 way project merge 145 3 way manual project merge 148 3 way project merge 146 code from model 53 code into model 395 create in Activity 189 ignore directory 422 model into code 395 projects 144 Message arrows 243 call 243 create object 243 go to operation 243 inserting 243 moving 243 numbering 243 Timing diagram 266 Messages pane 84 Method Add raised exception 269 generate multiple sequence diagram from 251 generate sequence diagram from 248 generate sequence diagram from getter setter 251 Methods getter setter 269 Minimalist project code engineering 115 Minimum code generation conditions 135 Missing elements listing 67 Model changing class name effect in Java 134 link add 96 Model from code showing associations 59 Model Tree create hyperli
163. can be accessed using the operator It is not possible to create new objects in SPL they are predefined by the code generator derived from the input but it is possible to assign objects to variables Example class Sclass Name This example outputs the word class followed by a space and the value of the Name property of the class object The following table show the relationship between UML elements their SPL equivalents along with a short description O 2012 Altova GmbH Altova UModel 2013 436 Code Generator The way to SPL Spy Programming Language Predefined variables y Attribute Attribute Association Association BehavioralFeature isAbstract 0 isAbstract Boolean FT EEE BehavioralFeature raisedExcepti 7 raisedException Type on BehavioralFeature lownedParam 7 ownedParameter Para eter meter BehavioredClassif interfaceReali E interfaceRealization Int ier zation erfaceRealization Class ownedOperati ownedOperation Oper on ation Class nestedClassifi li nestedClassifier Classi er fier Classifier namespace i namespace Packag packages with code language lt lt namespace gt gt set Classifier rootNamespa i project root VB only root ce namespace String namespace Classifier generalization i generalization General ization ClassifierTemplat constrainingC l constrainingClassifier eParameter lassifier DataType ownedAttribut ownedAttribute Proper O T e ty DataType ownedOperati j owned
164. cation i BPMN 2 Choreography Dia O ActioninputPin l Included subprojects BP 2 collaboration Diagr Activity r Predefined subprojects Class Diagram ActivityEdde Communication Diagram _ A ctivityFinalWode l Unknown Esternals Component Diagram ActivityGroup l Composite Structure Diacre ActivityNMode select All Diagrams Database Diagram ActivityParameterNode Deployment Diagram 7 ActivityPartition Select No Diagrams Interaction Overview Diagr Actor Object Diagram AnyReceiveEvent sell leerte Package Diagram Artifact Profile Diagram 4ssociationClass Select No Elements Protocol State Machine Dian Behavior l Senuence Dianra Pa BehavioralFeature BehavioredClassitier El select Default Cancel Note that documenting subprojects can be disabled by deselecting the Included subprojects check box Details tab allows you to select the element details that are to appear in the documentation e f you intend to import XML tags text in your documentation please de activate the as HTML option under the Documentation option e The up down fields allow you to define the nesting depth shown above below the current class in the hierarchy diagram e The expand each element only once option only allows one of the same classifiers to be expanded in the same image diagram Altova UModel 2013 O 2012 Altova GmbH Generating UML documentation 175 Generate Documentation E x
165. ccountinto Operation public LI LI C Styles Hierarchy The new operation is now also visible in the SavingsAccount class in the Class Diagram 161 interestrate float lt SavingsAccount gt getMinimumBalancer float Please note You can use the Copy Paste keyboard shortcuts CTRL C or V as well as drag and drop in the Model Tree to achieve the same effect You might have to disable the sort options to drop the operation between specific items Creating derived classes Generalization Specialization At this point the class diagram contains the abstract class Account as well as three specific Account classes We now want to define or create a generalization specialization relationship between Account and the specific classes i e to create three derived concrete classes 1 Click the Generalization icon in the icon bar and hold down the CTRL key 2 Drag from CreditCardAccount the class in the middle and drop on the Account class 3 Drag from the CheckingAccount class and drop the arrowhead of the previously created generalization 4 Drag from the SavingsAccount class and drop the arrowhead of the previously created 2012 Altova GmbH Altova UModel 2013 38 UModel tutorial Class Diagrams generalization release the CTRL key at this point 5 Generalization arrows are created between the three subclasses and the Account superclass Account from bkankwiewy balance float 0 ld Strin
166. ceAnywhere Standalone 2 2 Client IBM Rational ClearCase 7 Version 7 0 1 LT Clients e IBM Rational ClearCase 7 0 1 LT March Hare CVSNT 2 5 Version 2 5 03 2382 Clients e Aigenta Unified SCC 1 0 6 March Hare CVS Suite 2008 Version Server 2008 3321 Clients e Jalindi Igloo 1 0 3 March Hare CVS Suite Client 2008 3321 PushOK CVS SCC NT 2 1 2 5 PushOK CVS SCC x64 version 2 2 0 4 TamTam CVS SCC 1 2 40 Mercurial Version Mercurial 1 0 2 for Windows Clients e Sergey Antonov HgSCC 1 0 1 Microsoft SourceSafe 2005 2012 Altova GmbH Altova UModel 2013 330 Source Control Supported Source Control Systems Version 2005 with CTP Clients e Microsoft SourceSafe 2005 with CTP Microsoft Visual Studio Team System 2008 Team Foundation Server Version 2008 Clients e Microsoft Team Foundation Server 2008 MSSCCI Provider Perforce 2008 Version P4S 2008 1 Clients e Perforce P4V 2008 1 PureCM Version PureCM Server 2008 3a Clients e PureCM Client 2008 3a QSC Team Coherence Version Manager Version QSC Team Coherence Server 7 2 1 35 Clients QSC Team Coherence Client 7 2 1 35 Qumasoft QVCS Enterprise Version QVCS Enterprise 2 1 18 Clients e Qumasoft QVCS Enterprise 2 1 18 Qumasoft QVCS Pro Version 3 10 18 Clients e Qumasoft QVCS Pro 3 10 18 Reliable Software Code Co Op Version Code Co Op 5 1a Clients e Reliable Software Code Co Op 5 1a Altova UModel 2013 201
167. ck the class icon in the icon bar then click to the right of the Bank class to Change the Class1 name to e g Account press Enter to confirm double click the Note that the Properties tab displays the current class properties Click the abstract check box in the Properties pane to make the class abstract Click in the code file name text box and enter Account java to define the Java class Properties Account Design Views Blank Class name qualified name element kind public fidi code file name code file path Account java CAUML Bank Same CA Styles F Hierarchw Properties 2012 Altova GmbH Altova UModel 2013 30 UModel tutorial Class Diagrams The class title is now displayed in italic which is the identifying characteristic of abstract classes ica Account i To add properties to a class 1 Right click the Account class and select New Property or press the F7 key A default property Property1 is inserted with stereotype identifiers lt lt gt gt 2 Enter the Property name balance and then add a colon character A drop down list containing all valid types is displayed 3 Enter the f character through the keyboard and press Enter to insert the return value datatype float Please note that drop down lists are case sensitive oe I Acconni Bj Finalizer dava Lang jawa Bj OF inalizer Thread Java Lang jawa le A Finalketerence d
168. ckage Properties lt lt sCchema gt lt lt recefine O address Schema 2chema gt id attributeFormDefautt sscomplexType global Address blockDefaultt s complexType global EU 4ddres elementFormDetaut qualified s global simple Type US State finalDefauit global simple Type EU Postcode version s complexType global US Address I xml lang un http Shaw 906042001 EMILE Properties Element global Inserts a global element into the diagram Note that a property is also automatically generated in the attributes compartment Messages Properties lt element I I AsDElement3 I I from SCSchema Lg a 16 XSDElement3 I fixed form El fd Sl E El nillable ssglohal To define the property datatype 1 Double click the property and place the cursor at the end of the line 2 Enter a colon character and select the datatype from the popup dialog box e g string 2012 Altova GmbH Altova UModel 2013 312 UML Diagrams Additional Diagrams Properties name ADE lements qualified name hY Schemas ht sselement element kind Property YSDElement3 visibility protected y from SDSchema multiplicity type type modifier Creating a content model consisting of a complexType with mandatory elements This will entail inserting a complexType element a sequence element compositor and three elements Ca 1 Click the XSD ComplexType ico
169. class name plus a sequential number E g source class name is myClass pasted class name is myClass1 All operations and properties are also copied to the new class Model Tree i Ae MyClass i EE MyClassi E JE ACCOUNTTYpe al MyProperty 0 1 al MyProperty i ii iE Relations i La Relations lt gt MyOperation i MyOperation e Pasting a copied class into a different package also inserts a new class but keeps the original class name e n both cases the new class is also added to the Model Tree as well Paste CTRL V of copied Properties or Operations e Pasting a Property in the same class inserts a new property with the source property name plus a sequential number e g MyProperty1 Model Tree MB MyClass j MyProperty ui al hMyProperty MyOperation E E MyClass E LE AccountT ype E Relations e Pasting an Operation in the same class inserts a new operation of the same name as the source operation 2012 Altova GmbH Altova UModel 2013 92 UModel User Interface Diagram pane Model Tree p hyClazz MyProperty I MyProperty1 Gl MyProperty gl MyProperty 47 i Le C MyOperation on gt My Operation E A MyClass1 E JE AccountType E Relations I I I DA a MyProperty 1 o e In both cases a new property operation is added to the Model Tree Paste in Diagram only Whenever you use the context menu and select this option a link
170. create a link to an element in the Model Tree Model Link e Use the same method as described above but click Add Model Link in the dialog box Clicking the link once it has been inserted navigates to the specific element you selected from the dialog box in the Model Tree Note when generating project documentation the hyperlinks to the model elements in the Model Tree are adjusted to point to the correct definitions in the generated documentation To create a link to a document 1 Click the Add File Link in the Edit Hyperlinks dialog box 2 Select the document that you want to link e g DOC XLS PDF etc To create a hyperlink from a note 1 Select the text in the note by dragging or double clicking a word 2 Right click the selected text and select the menu object Insert Edit Hyperlinks 3 Use the Edit Hyperlinks dialog box to create a link to a diagram Please note Use the same method to create hyperlinks from Comment elements To create a link from the Documentation tab 1 Enter the explanatory text into the Documentation tab 2 Select the text you want to use as a link 3 Right click and select the type of link you want to create Documentation Also see the Block Definition diagrams Overview Documentation To navigate to a hyperlink target 1 Click the hyperlink icon in the modeling element If only one target is defined then the target diagram website etc will appear immediately If mult
171. created a subproject file the resulting ump file can then be opened and edited as a main UModel project file For this to be successful there should not be any unresolved references to other elements UModel automatically performs checks when creating a subproject from the main project and whenever a file is saved 1 Right click the subproject package e g Bank Server ump in the main project and select Project Open as Project This starts another instance of UModel and opens the subproject as a main project Any unresolved references are shown in the Messages window LI Altova UModel Bank_MultiLanguage BankYiew Main F File Edit Project Layout View Tools Window Help MIA PO 4 R dk X EB amp BR type A frp e gt dO AA eA E pece a X kg bankviewJ Root El Behavior view E Component view El Deployment view Al Design View z F Overview LI Altova UModel Bank Server Bank Server oc Account Transfer cor Ed x qa 4 b DE Bank Server Bank Server Um E 7 Banki F File Edit Project Layout View Tools Wi HH EA Banking access Banking acces H ET Bankyiew Bank View ump E Relations Interaction view El ET JDKS O Java types only ump Ha Unknown Externals E Py Component View E Use Case view Bank_MultiLangus gu Design View H Ea C Profile C Profile ump E E JDK5 0 Java types only ump Eg Java Profile Java Profile ump H Unknown Externals i E 7 CR Profil
172. created between separate lifelines by dragging the respective message object Watlard Waticcess idle I I I I I I I I I I I I I I I I I i User i I I I I I I I I I I I I I I I I I I Motard Ha tard Tick Mark A TickMark The tick mark is used to insert the tick marks of a timing ruler scale onto a lifeline To insert a TickMark 1 Click the tick mark icon and click on the lifeline to insert it state Lifeline State states 2 Insert multiple tick marks by holding down the CTRL key and repeatedly clicking at different positions on the lifeline border 3 Enter the tick mark label in the field provided for it Drag tick marks to reposition them on the lifeline To evenly space tick marks on a lifeline 1 Use the marque by dragging in the main window to mark the individual tick marks 2012 Altova GmbH Altova UModel 2013 264 UML Diagrams Behavioral Diagrams 2 Click the Space Across icon in the icon bar State Lifeline State e States E NH HE HHE HHE HH E Event Stimulus Event Stimulus The Event Stimulus ExecutionEvent is used to show the change in state of an object caused by the respective event or stimulus The received events are annotated to show the event causing the change in condition or state To insert an Event Stimulus 1 Click the Event Stimulus icon then click the specific position in the timeline where the st
173. ct file Java Project Settings JavaDocz as Documentation Defined symbols Synchronization Merge Code into Model C Overwrite Model according to Code Diagram generation M Enable diagram generation lt Back Eirirsh Cancel 5 Making sure that the Enable diagram generation check box is active select any specific import settings you need and click Next 2012 Altova GmbH Altova UModel 2013 60 UModel tutorial Round trip engineering code model code Content Diagram Generation 2 a x Content diagrams Style Generate single diagram Show Attributes compartment M Generate diagram per package Show Operations compartment Open diagram Show nested Classifiers compartment Show nested classifiers separately Show EnumerationLiterals compartment Show Tagged Values Use own compartment for MET properties Show anonymous bound elements w Hyperlink package s to diagramjz Show HET properties compartment Autolayout e Autolapont hierarchic Z lt Back Finish Cancel Note that UModel can generate a single overview diagram and or a diagram for each package The settings show above are the default settings 6 Click Next to continue Package Dependency Diagram Generation j x Fackage dependency diagram Style Fill color of external packages w Open diagram E IS T Ignore external packages
174. ct from SourceSafe dialog box appears Define the directory to contain the new local project e g c temp ssc This becomes the Working directory or the Check Out Folder Create local project from SourceSafe 2 x Create a new project in the Folder c temp ssc Browse SourceSafe project to download RE ESE H 3 Bank CSharp carcel o 3 Select the SourceSafe project you want to download e g Bank_CSharp If the folder you define here does not exist at the location a dialog box opens prompting you to create it 4 Click Yes to create the new directory The Open dialog box is now visible Open Lookin Bacs OP Bank_CSharp ump File name Bank_CS harp ump Files of type UnMode Projects ump Cancel L 5 Select the Bank_CSharp ump UModel project file and click Open Bank_CSharp ump now opens in UModel and the file is placed under source control This is indicated by the lock symbol visible on the Root folder in the Model Tree window The Root folder represents both the project file and the working directory for source control operations O 2012 Altova GmbH Altova UModel 2013 348 Source Control Source Control Commands Model Tree E Component view E Use Case view Design view E Interaction View The BankCSharp directory has been created locally you can now work with these files as you normally would Note To place the code files generated when
175. ction SortByKind bAscending returns a collection whose elements are sorted by kind names e g Class Interface in ascending or descending order collection SortByKindAndName bAscendingKind bAscendingName returns a collection whose elements are sorted by kind e g Class Interface in ascending or descending order and if the kinds are equal by name case sensitive in ascending or descending order collection SortByKindAndNameNoCase bAscending returns a collection whose elements are sorted by kind e g Class Interface in ascending or descending order and if the kinds are equal by name case insensitive in ascending or descending order Altova UModel 2013 2012 Altova GmbH Code Generator The way to SPL Spy Programming Language 445 15 1 6 Subroutines Code generator supports subroutines in the form of procedures or functions Features e By value and by reference passing of values e Local global parameters local within subroutines e Local variables e Recursive invocation subroutines may call themselves Subroutine declaration Subroutines Syntax example Sub SimpleSub lines of code EndSub Sub is the keyword that denotes the procedure SimpleSub is the name assigned to the subroutine Round parenthesis can contain a parameter list The code block of a subroutine starts immediately after the closing parameter parenthesis e EndSub denotes the e
176. ctures group The Prevent option prevents modeling elements from being split over a page and keeps them as one unit Use optimal scales the modeling project to fit the page size You can also specify the zoom factor numerically Print all diagrams Opens the Print dialog box and prints out all UML diagrams contained in the current project file Print Preview Opens the same Print dialog box with the same settings as described above Print Setup Opens the Print Setup dialog box in which you can define the printer you want to use and the paper settings O 2012 Altova GmbH Altova UModel 2013 392 UModel Reference Edit 14 2 Edit Undo UModel has an unlimited number of Undo steps that you can use to retrace you modeling steps Cul Redo The redo command allows you to redo previously undone commands You can step backward and forward through the undo history using both these commands Cut Copy Delete The standard windows Edit commands allow you to cut copy etc modeling elements please see Cut copy and paste in UModel Diagrams for more information Paste using the keyboard shortcut CTRL V or Paste from the context menu as well as Paste from the Edit menu always adds a new modeling element to the diagram and to the Model Tree please see Cut copy and paste in UModel Diagrams Paste in Diagram only using the context menu i e right clicking on the diagram background only adds a link view of
177. d String E ClassDiagrami E ComponentDiagrami A class has to be realized before code can be generated Note that you could also drag the class and drop it on the component directly in the Model Tree Syntax check and generating code 1 Select Project Check Project Syntax to check to see if everything is OK O 2012 Altova GmbH Altova UModel 2013 118 Projects and code engineering Minimalist UModel project starting from scratch MyFirstClass components E a from Root MyPackage al UserName String al Password String MyComponent lt gt getUserNamel String getPassword String 4 Y 7 4 7 2 v aj BB Gl x Elstating Syntax Check i MyFirstClass code file name not set default name will be generated finished Syntax Check error 1 warnind s Zero errors and one warning are generated Although the code name was not previously set a default name will be generated automatically 2 Select Project Merge Project code from UModel Project to output generate the Java code Creating a namespace If you want to generate the class inside a specific namespace 1 Add a new package below myPackage e g altova 2 Click the package and activate the lt lt namespace gt gt check box in the Properties window El Component view MyFirstClass El En Java Lang types only lava Lang types onl from altova E 27 myPackage G UserName String e al Password String d
178. d String Propertyl Property Account 2 Double click the new Property1 entry in the Bank class and change it to accounts being sure not to delete the Account type definition displayed in teal green 3 Press the End keyboard key to place the text cursor at the end of the line and 4 Enter the open square bracket character and select from the dropdown list to define the multiplicity and press Enter to confirm bankname String IPadress String balance float 0 Username String id String password String a Accountl al accounts 4ccount getBalance float 2012 Altova GmbH Altova UModel 2013 34 UModel tutorial Class Diagrams 4 3 1 Creating derived classes The aim of this tutorial section is to e Add anew Class diagram called Account Hierarchy to the project e Insert existing classes and create a new Savings account class e Create three derived classes of the abstract base class Account using Generalizations To create a new Class Diagram 1 Right click the bankview package under Design phase BankView com altova in the Model Tree tab and select New Diagram Class Diagram 2 Double click the new ClassDiagram1 entry and rename it to Account Hierarchy and press Enter to confirm Model Tree El Desigr phase gt EM Overview a Es Banking access E Bank iew j A Apply Java Profile EM com E n alkova E s bankview 3 ES Account Hierarc
179. d such use by you does not constitute a violation of this Agreement Except as otherwise expressly permitted in Section 1 j reverse engineering of the Software is strictly prohibited as further detailed therein iv In the event Restricted Source Code is incorporated into executable object code form you will include the following statement in 1 introductory splash screens or if none within one or more screens readily accessible by the end user and 2 in the electronic and or hard copy documentation Portions of this program were developed using Altova name of Altova Software e g MapForce 2011 and include libraries owned by Altova GmbH Copyright 2007 2011 Altova GmbH www altova com b Server Use for Installation and Use of SchemaAgent You may install one 1 copy of the Software on a computer file server within your internal network solely for the purpose of downloading and installing the Software onto other computers within your internal network up to the Permitted Number of computers in a commercial environment only If you have licensed SchemaAgent then you may install SchemaAgent Server on any server computer or workstation and use it in connection with your Software No other network use is permitted including without limitation using the Software either directly or through commands data or instructions from or to a computer not part of your internal network for Internet or Web hosting services or by any user not l
180. d by the marquee becomes the template element whose properties are applied to the other marked objects 7 Di d HO E 81 20 1a B BEI S Icon functions for each icon group Align Left align Right Align Top align Bottom Center vertically center horizontally 2012 Altova GmbH Altova UModel 2013 90 UModel User Interface Diagram pane Space Across Space down Line up horizontally line up vertically Make same width make same height make same size Enhanced autocompletion window selecting datatypes When inputting datatypes for operations or properties an autocomplete window is automatically opened The autocompletion popup has the following features e Clicking a column name sorts the window by that attribute in ascending descending order The window can resized by dragging the bottom right corner e The window contents can be filtered by clicking the respective category icons at the bottom of the window __ e The Single mode icon lets you switch between enabling only one of the category icons at any one time single mode or enabling multiple category icons multi mode Ths shot below shows the autocompletion window in multi mode i e all category icons are enabled The single mode icon is not enabled e The Set all Clear all Categories icons set or clear all categories icons e On demand popup pressing CTRL Space when autocompletion is disabled o z l Account Bj Finalizer dava Lang jawa
181. d elements are hyperlinked in the onscreen output enabling you to navigate from component to component All manually created hyperlinks also appear in the documentation Note also documentation is also generated for included CF Java and or VB subprojects profiles if enabled in the Include tab Main tab Documentation Design Select Use fixed design to use the built in documentation template Select Use user defined to use a predefined StyleVision Power Stylesheet created in StyleVision The SPS files are available in the My Documents Altova UModel2013 Documentation UModel folder Click Browse to browse for a predefined SPS file Click Edit to launch StyleVision and open the selected SPS in a StyleVision window Output format The output format is specified here either HTML Microsoft Word RTF or PDF Microsoft Word documents are created with the doc file extension when generated using a fixed design and with a docx file extension when generated using a StyleVision SPS The PDF output format is only available if you use a StyleVision SPS to generate the documentation Split output to multiple files generates an output file for each modeling element that would appear in the TOC overview when generating a single output file e g a class C1 with a nested class CNest exists C1 html contains all info pertaining to C1 and CNest as well as all their attributes properties etc The Embed CSS in HTML option
182. d generating an XML ScheMad occmmocoooocccnnnnnnanananannnncnnnnnanannnnnnnos 315 11 Teamwork support for UModel projects 318 ital Creatine and dia subprojecCiiles belle 320 12 Source Control 326 121 Supported Source Control Systems sudar iii ide 328 122 Installing Source Control Sy Steins irritare 333 12 3 SCSs and Altova DiffDog Differencing iii 340 12 4 Source Control Commands uri ad 346 241 Open tom Source C Ont Gl siii 347 12 462 Enable Source Controls olona 349 12 4 37 ret atest ESO al 350 OA E a A 351 Altova UModel 2013 245 GECFolder SY iaa 332 1246 Ce COIT dosia a paniere 353 12 457 Che aa E LIRA 354 PAS Vidot AA A AR TAA E 2 A2 22 355 1249 Add A elia 356 124 10 Remove from Source Conto ille 358 124 11 Share trom Source Control usar ti ii 359 DAT Show T STO a R 360 IA SODA al rad tle ds 362 MAJA SO WE ELO DEHESA san 363 MAT Refresh Status a dll 364 124 16 Source Control Manager vunisriida iii 365 MAI Change Source Controla 366 13 UModel Diagram icons 368 1321 A Deiana lia 369 12 Class Diarra aaa ciale 370 13 37 Communication C1 eni ia ea 371 13 4 Composite Structure Data selle ale lia 372 13 5 COMPONCAEDa gianna 373 13 56 Deploy ment Dia granada 374 1357 Interaction Overview dla rada 375 13 58 Ob ect Dido i ii a 376 13 9 Package diagram 377 13 40 Profile Diastasi E N in 378 13 11 Protocol State A A 379 AAA O A iaia 380 AR AAA rali 381 Bit Trias
183. d in the Scripting tab of the Options dialog box Window Help w Spelling Spelling Options Scripting Editor User defined tools PE Customize Restore Toolbars and Windows Options O 2012 Altova GmbH Altova UModel 2013 414 UModel Reference Tools 14 6 5 User defined Tools Placing the cursor over the User defined Tools command rolls out a sub menu containing custom made commands that use external applications You can create these commands in the Tools tab of the Customize dialog Clicking one of these custom commands executes the action associated with this command The User Defined Tools Customize command opens the Tools tab of the Customize dialog in which you can create the custom commands that appear in the menu of the User Defined Tools command Altova UModel 2013 O 2012 Altova GmbH UModel Reference Tools 415 14 6 6 Customize The customize command lets you customize UModel to suit your personal needs Commands Toolbars Tools Keyboard Menu Options Commands The Commands tab allows you customize your menus or toolbars To add a command to a toolbar or menu 1 Open this dialog box using Tools Customize 2 Select the command category in the Categories list box The commands available appear in the Commands list box 3 Click on a command in the commands list box and drag it to an to an existing menu or toolbar 4 An I beam appears when you place
184. de is added to the model Altova UModel 2013 2012 Altova GmbH UModel Reference Project 401 Synchronization Settings x Code from Model Model from Code Synchronization Merge Code into Model C Overwrite Model according to Code Project settings Allows you to define the specific languages settings for your project Java c we Update Program Code from UModel Project Update UModel Project from Program Code JavaDocs as Documentation Cancel Synchronization Settings Opens the Synchronization Settings dialog box as shown in the screenshots above Merge Project Merges two UModel project files into one model The first file you open is the one the second file will be merged into Please see Merging UModel projects for more information Include Subproject UModel is supplied with several files that can be included in a UModel project Clicking the Java tab allows you to include Java lang classes interfaces and packages in your project by selecting one of the supplied files 1 Select Project Include to open the Include dialog box 2 Click the UModel project file you want to include and press OK 2012 Altova GmbH Altova UModel 2013 402 UModel Reference Project UModel projects can be included within other UModel projects To include projects place the respective ump files in e UModel2013 UModellInclude to appear in the Basic tab or e UModel
185. del projects 7 12 2 3 way Project merge UModel now supports the merging of multiple UModel projects that have been simultaneously edited by different developers in a 3 way project merge Project merging The 3 way project merge works with top level UModel projects e main projects that may contain subprojects it does not support individual file merging when these files have unresolved references to other files When merging main projects any editable subprojects are automatically merged as well There is no need for a separate subproject merging process Please see Manual 3 way project merge example for a simple example The whole merge process can be undone step by step by clicking the Undo icon in the icon bar or pressing CTRL Z Clicking an entry in the message window displays that element in the Model Tree The file name of the merged file the first file you opened is retained Merging results Note source in the following text means the initial first project file you open before starting the merge process New modeling elements in the second file e that do not exist in the source are added to the merged model New modeling elements in the source file e that do not exist in the second file remain in the merged model Deleted modeling elements from the second file e those that still exist in the source are removed from the merged model Deleted modeling elements from the source file e t
186. e UModel2013 folder The command line parameter syntax is shown below and can be displayed in the command prompt window by entering umodelbatch If the path or file name contains a space please use quotes around the path file name i e c Program Files File name usage umodelbatch project options or help project new file set qui display this help information project file ump see also File New Load Save options create save save as new project set options permanent display UModel user interface commands executed in given order chk isd path Jiso tile check project syntax import source directory import source project file project ml px CS pro ly e ESOProl VOpiol 9Vbderoj 31n s bdspr oj Fibbe tast ixd path ixs file m2c c2m ixF fF1 Le exf file inc file mrg file doc file luel cpri dg Lil 1sp LLP import binary types specify binary typenames list separator all types before assembly names import XML schema directory import XML schema file xsd update program code from model export forward engineer update model from program code import reverse engineer import XMI file export to XMI file include file merge file write documentation to specified file list all elements not used on any diagram i e unused list all diagrams list all classes list all shared packages list all inc
187. e Root E Component view E OrgChart E P Unknown External E Eslava Profile Java Profile ump lt lt final gt Attribute short 0 lt final Element short 1 lt lt tinal Text short 2 4 F 21 5 lt lt final gt CDatashort 3 Ei mode E Disgr Favo 57 s final Comment short 4 Properties Dx 2 final Processinglnstruction short 5 1 I name OrgChart domblode orq 3c dom Mode nuil qualified name Orgchart element kind Package visibility public namespace gt C DI Content of OrgChart and all subpackages D Packa E Properties Styles Hierar Messages y vaj va val x Parsing file C Program Filezi amp Alto va iUbodel2 00M UModele Parsing file C Program FileztAlto va WUbodel 00M Ubodele Parsing file C Program File i amp ltova i Ubodel2 007 ModelE Parsing file C Program Files AttoyvailModel 00 WhodelE Parsing file C Program FileziAlto va Ubodel 00M WUModelE Parsing file C Program Filezi amp ltova UModel2007 UModelE Overview hd X Please note If you are importing into an existing project you will be prompted for the package it should be imported into If you are using a new project an OrgChart folder is automatically created Resolve aliases When reverse engineering code which contains namespace or class aliases you can now choose if the alias is to be resolved Check box Resolve aliases in Import Source Project Directory dialog box When updating code
188. e association 162 Root catalog XMLSpy 422 Java namespace 135 package class synchronization 130 Round trip code model code 59 engineering 53 model code model 53 Run native interface 365 S Sample example files 101 Save diagram as image 387 elements as bitmaps 392 subproject files 320 SC syntax coloring 275 Schema code generator 432 create XML Schema 315 Datatype defining 310 XML Schema 304 XML Schema import 305 Search Find 392 Searching tabs 66 Select attribute in Model Tree 74 Send by mail project 387 Sequence icons 380 Sequence diagram 236 adding code to 256 combined fragment 239 gate 242 generate code from 253 generate from Communication diag 228 inserting elements 237 interaction use 242 lifeline 238 messages 243 operation names to ignore 248 state invariant 243 Set getter setter methods 269 Setter Getter generate sequence diagram from 251 Setting 2012 Altova GmbH Index 479 Setting synchronization 130 Settings source control 422 Share from source control 359 package and diagram 151 Shortcut 418 assigning deleting 418 show in tooltip 420 Show all relations hierarchy tab 79 graph view 79 hide slot 269 hide tagged values attributes 291 hide region name 208 model relationships 85 165 or snap to grid 85 property as association 85 158 tagged values 305 308 tex
189. e 22 Profile ump E kaava Profile Java Profile ump Reusing subprojects Subprojects that have been split off from a main project can be used in any other main project s 1 Right click a project and select Project Inlcude Subproject 2 Click the Browse button and select the ump file that you want to include e g Banking access ump Altova UModel 2013 O 2012 Altova GmbH Teamwork support for UModel projects Creating and editing subproject files 323 Include Subproject f Kind of include f Include by reference Store a reference to the original data of your subproject Include subproject elements Editable Readonly Include as a copy Store a copy of the shared data of pour subproject in your UModel project file References to the original data will be lost Styles of included diagrams f Retain styles Included diagrams will appear as defined in their subproject Use project file styles Diagrams will use current project file styles Bank_M ultiLanguage Java anking access ump IY Make path relative to Bank_MultiLanquage Cancel 3 Choose how the file is to be included by reference tor as copy Saving projects When saving the main project file all editable subproject files are also saved l e all data contained in the shared packages of the subproject files are saved You should therefore not create add data components outside of the shared subproject structure if the subproj
190. e A memberEndKind memberEnd attribute is visible in class1 or e the association i e B memberEndKind ownedEnd attribute not visible in class2 If both attributes belongs to the association i e both ends are defined as ownedEnd then this association becomes bi directional and the navigability arrow disappears Both ends of the association are ownedEnd If the memberEndKind of any of the association is set to navigableOwnedEnd then the attribute is still part of the association but the navigability arrow reappears depending on which end A name or B Name it is set To define the type of association association aggregate or composite 1 Click the association arrow 2 Scroll down to the aggregation item in the Properties tab 3 Select none shared or composite None a standard association shared an aggregate association composite a composite association Please note Associations can be created using the same class as both the source and target This is a so called self link It describes the ability of an object to send a message to itself for recursive calls Click the relationship icon then drag from the element dropping somewhere else on the same element A self link appears Displaying associations in Diagrams automatically When inserting diagram elements in a diagram the Automatically create Associations option in the Tools Options Editing tab allows existing associations between modeling ele
191. e Ability to generate code from a sequence diagram e UModel supports logical files of the IBM iSeries database and shows logical files as views e Supportfor IBM DB2 logical files A logical file in IBM iSeries editions of the DB2 database represents one or more physical files A logical file allows users to access data in a sequence or format that can be different from the physical file Users who connect to IBM iSeries computers may encounter existing databases constructed with logical files These were previously not accessible but are now supported in Version 2012 Release 2 The 2012 Release version of UModel includes the following major and minor enhancements e Snap line positioning during drag and drop The 2011 Release 3 version of UModel includes the following major and minor enhancements e Ability to show VS NET C or VB NET properties in their own compartment e Ability to create new directories following the Java namespace hierarchy e Small enhancements in SPL to sorting of collections by name and kind as well as new string comparison functions The 2011 Release 2 version of UModel includes the following major and minor enhancements e Code generation from State Machine diagrams in Java VB NET or C e Ability to customize UML Documentation using StyleVision Power Stylesheets SPS e Ability to automatically add operations to State Machine activities e Ability to toggle region names in States The 2011 version of UModel includes
192. e Control Source Control Remove from Source Control Files CATEMPissc Bank_ CSharp icodegenvaccount cs CATE MP esc Bank CSharpicodegeniBank cs Cancel CATEMPgec Bank CSharp icodegen Bank View cz C CATEMPisscBank_ CSharpicadegeniCheckingAccaunt c Select All _ OATEMPssciBank_CSharpicodegentiCreditCard4 ccount cs CATE MP sciBank_CsharpicodedgentSsavings 4 ccount cs Note You can change the number of files to remove by activating the individual check boxes in the Files list box The following items can be removed from source control e Single files click on the respective files CTRL click for several e Folders click on the folder icon Altova UModel 2013 O 2012 Altova GmbH Source Control Source Control Commands 359 12 4 11 Share from Source Control This command shares branches files from other projects folders within the source control repository into the selected folder To use the Share command you must have the Check in out rights to the project you are sharing from To share a file from source control 1 Select the folder you want to share files to in the Model Tree window and select Project Source Control Share from Source Control e g BankView Component in the Component View folder 2 Select the project folder that contains the file you want to share in the Projects list box share to i x File to share Projects Close Bankes gt l codegen
193. e Font Size 11 Attribute Font eight normal tribute Sort Mode no sort blue Arial Overriding base class operations and implementing interface operations UModel gives you the ability to override the base class operations or implement interface 2012 Altova GmbH Altova UModel 2013 276 UML Diagrams Structural Diagrams operations of a class This can be done from the Model Tree Favorites tab or in Class diagrams 1 Right click one of the derived classes in the class diagram e g CheckingAccount and select Override Implement Operations This opens the Overriden Methods dialog box shown below Override Implement Operations E Account Operations O lt gt Account Sort Mode no sort etBal float O s i Iw Hide static O getdi String j lt gt collect4ccountinfofin bank 4PI Bank APL boo I Hide private T Hide final Select undefined Interface methods Select undefined abstract methods Select All 4 gt Select None Cancel 2 Select the Operations that you want to override and confirm with OK The Select undefined buttons select those method types in the window at left di L Please note When the dialog box is opened operations of base classes and implemented interfaces that have the same signature as existing operations are automatically checked i e active Creating getter setter methods During the modeling process it is often necessary to c
194. e Lifelines are the horizontally aligned boxes at the top of the diagram together with a dashed vertical line representing the object s life during the interaction Messages are shown as arrows between the lifelines of two or more objects e Messages are sent between sender and receiver objects and are shown as labeled arrows Messages can have a sequence number and various other optional attributes argument list etc Conditional optional and alternative messages are all supported Please see Combined Fragment for more information Please see the following topics for more information Lifeline Combined Fragment Interaction Use Gate State Invariant Messages Sequence diagram and other UModel elements can be inserted into a sequence diagram using several methods Co Bank O b Account C clBank PFi b Account E ciBankAPIO aL ju c x y a 1 collectAccountintos E loop 0 n 1 1 collect amp Accountinfo 1 1 1 getAccountBalance 1 query SOF database 1111414 authenticate challenge return query result __ T gqet4ccountBalancer collect4ccountintot Using the toolbar icons 1 Click the specific sequence diagram icon in the Sequence Diagram toolbar 2012 Altova GmbH Altova UModel 2013 238 UML Diagrams Behavioral Diagrams 2 Click in the Sequence diagram to insert the element Note that holding down CTRL and clicking in the diagram tab allows you to insert multiple e
195. e Namespace Name in model Class AirtonditionController3 AirCondition Airconditiontontraller 2 L If a class was renamed select the previous class name using the combo box in the Name in model column e g C1 This ensures that all related data are retained and and the code engineering process remains accurate Changing class names in the model and regenerating code Having created a model and generated code from it it is possible that you might want to make changes to the model again before going through the synchronization process E g You decide that you want to change the class names before generating code the second time round As you previously assigned a file name to each class in the code file name field of the Properties window the new class and file name would now be out of sync UModel prompts if you want the code file name to agree with the new class name when you start the synchronization process Note that you also have the option to change the class constructors as well Altova UModel 2013 O 2012 Altova GmbH Projects and code engineering Forward engineering prerequisites 135 7 5 Forward engineering prerequisites Minimum conditions needed to produce code for forward engineering e A component must be realized by one or more classes or interfaces e The component must have a physical location i e directory assigned to it The generated code is then placed in this directory e Components must be ind
196. e diagram al balance float a id string 4 GetAccessor property d string Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Structural Diagrams 275 Changing the syntax coloring of operations properties UModel automatically enables syntax coloring but lets you customize it to suit your needs The default settings are shown below hanks Bank ordered bank AFI Dank F HF IF SIF Bank iewtin bank AFI Bank A amp P ER collectBankAddressintosl boolean navy SC Default Value maroon SC Constraint purple SC Parameter 555555 SC Par direction blue SC Nested Clas ifier navy Show Attributes Comparitrue collectAaccountintos boolean collectDataly boolean getBalanceAtBank in bankname String int getBalancesumOtAllBanks int TANTE alalalalalalalalc A 000550 uri ibi To change the default syntax coloring options shown below 1 Switch to the Styles tab and scroll the SC prefixed entries 2 Change one of the SC color entries e g SC Type to red al banks Bank ordered a bank Plank AFl lt gt Bank viewtin banka Bank A amp P g gt collectHank4ddressinfos boolean To disable syntax coloring 1 Switch to the Styles tab and change the Use Syntax Coloring entry to false 2 Use the Attribute Color or Operation Color entries in the Styles tab to customize these items in the class Project Styles Attribute Color purple Attribute Font Arial Attribut
197. e e e e e e e Ein e be n Caj r turk p hdr par JJ A A A O O A ee As this is also a sequence diagram the Interaction element appears as an iconized version of the sequence diagram If you select lt ref gt BankAPI then the Interaction element occurrence is displayed Properties name CallBehavior Action Inte qualified name Design View Activity Callbehavior Action unspecified isSynchronous behaviordiagram sref Bank amp Ph Inserting an Interaction element occurrence 1 Click the CallBehaviorAction InteractionUse icon in the icon bar and click in the Interaction Overview diagram to insert it 2012 Altova GmbH Altova UModel 2013 234 UML Diagrams Behavioral Diagrams Collect Account Information is automatically inserted as a Interaction occurrence element if you are using the Bank_Multilanguage ump example file from the UModelExamples folder The first existing sequence diagram is selected per default Properties name Callbehavior Action InteractionUse qualified name Design View Activity 2 Callbehaviora element kind CallBehavior Action visibility unspecified L is synchronous behavioridiagram lt ref Collect Account Information 2 Tochange the Interaction element double click the behavior combo box in the Properties tab A list of all the possible elements that can be inserted is presented 3 Select the occurrence you want to insert Note that all elements i
198. e exclude components from code generation 1 Click the BankView GUI component 2 Uncheck the use for code engineering check box if not already unchecked Properties Bank ies GUI Component wiew Bank viev Component public E Properties Styles Hierarchy Altova UModel 2013 2012 Altova GmbH UModel tutorial Round trip engineering model code model 55 Checking project syntax prior to code generation 1 Select the menu option Project Check project syntax 2 A syntax check is performed and messages appear in the Messages window Bank API client code project file or directory not set IBankAPI code file name not set Messages s lt al lt 2 va a Al E x starting syntax Check At Bank API client code project file or directory not set i Bank AFI code file name not set a default name will be generated finished Syntax Check 1 error s1 1 warning 3 Click the first message in the messages window 4 The Bank API client package is highlighted in the Model Tree view with its properties visible in the Properties tab 5 Uncheck the use for code engineering check box for the Bank API client component Model Tree Root E 7 Component view a Banking access EE Bank API client El Bank view Bank view realization 03 Bank view E Bankview GUI C Model Tree EH Diagram T E Favorites Properties ax Bank API client Component
199. e exercise of personal jurisdiction in 2012 Altova GmbH Altova UModel 2013 466 Appendices License Information the Handelsgericht Wien Commercial Court Vienna in connection with any such dispute or claim This Software License Agreement will not be governed by the conflict of law rules of any jurisdiction or the United Nations Convention on Contracts for the International Sale of Goods the application of which is expressly excluded This Software License Agreement contains the entire agreement and understanding of the parties with respect to the subject matter hereof and supersedes all prior written and oral understandings of the parties with respect to the subject matter hereof Any notice or other communication given under this Software License Agreement shall be in writing and shall have been properly given by either of us to the other if sent by certified or registered mail return receipt requested or by overnight courier to the address shown on Altova s Web site for Altova and the address shown in Altova s records for you or such other address as the parties may designate by notice given in the manner set forth above This Software License Agreement will bind and inure to the benefit of the parties and our respective heirs personal and legal representatives affiliates successors and permitted assigns The failure of either of us at any time to require performance of any provision hereof shall in no manner affect such party s ri
200. e extension 112 Undo Check out 355 Unused elements listing 67 Update background status updates 340 project file 130 URL open file from 387 Usage dependency 44 Use case adding 20 association 20 compartments 20 icons 383 multi line 20 Use Case diagram 227 User multi user examples folder 14 User defined actor 20 User interface 66 User defined SPL templates 130 stereotype styles 297 V value tagged 291 tagged show 308 2012 Altova GmbH 482 Index Values tagged 289 Tagged displaying 305 Variables external tool arguments 416 UML 435 VB NET code to model correspondence 140 Version control commands 346 Diffdog differencing editor 340 installation procedures 333 View 405 to multiple instances of element 269 Visibility icons selecting 269 W Warning messages 84 syntax check 53 Web hyperlink 96 Weight Line thickness 85 Window 428 restore to default 406 Workflow project 112 Working directory source control 347 X XML Schema annotation 305 code to model correspondence 139 Content model 310 create generate 315 diagram 304 icons 384 XML schema insert element 310 Z Zoom sizing 85 2012 Altova GmbH
201. e successful 2012 Altova GmbH Altova UModel 2013 340 Source Control SCSs and Altova DiffDog Differencing 12 3 SCSs and Altova DiffDog Differencing You can configure certain Source Control Systems so that they use Altova DiffDog as their differencing tools The systems that support this feature are listed below together with the setup steps for each In UModel you access the setup process via the Source Control tab of the Options dialog Tools Options screenshot below When using a 64 bit version of UModel with a 32 bit source control program the Perform background status updates every ms option Tools Options is automatically grayed out and cannot be selected Local Options Source Control Current source control plug in Microsoft Visual Sources afe Advanced Logon ID Sources afe MyDocs M Display output messages from plug in Get everything when opening a project TO Check in everything when closing a project TO Don t show Check Out dialog box when checking out items TO Don t show Check In dialog box when checking in items Keep items checked out when checking in or adding items f dialogs were hidden using Dont show this again click Reset to view them again The Perform background status updates every xx ms check box is unchecked per default which means that status updates are not performed at all Activate the check box and enter a value in the field if you want
202. e that conform to the type of the object node CentralBufferNode Inserts a Central Buffer Node which acts as a buffer for multiple in and out flows from other object nodes DataStoreNode Inserts a Data Store Node which is a special Central Buffer Node used to store persistent i e non transient data Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 195 ActivityPartition horizontal Inserts a horizontal Activity Partition which is a type of activity group used to identify actions that have some characteristic in common This often corresponds to organizational units in a business model Properties name element kind ActiwityPartition Visibility unspecified isDimension isExternal Double clicking a label allows you to edit it directly pressing Enter orients the text correctly Please note that Activity Partitions are the UML 2 0 update to the swimlane functionality of previous UML versions e Elements placed within a ActivityPartition become part of it when the boundary is highlighted e Objects within an ActivityPartition can be individually selected using CTRL Click or by dragging the marquee inside the boundary e Click the ActivityPartition boundary or title and drag to reposition it ActivityPartition vertical Inserts a vertical Activity Partition which is a type of activity group used to identify actions that have some characteristic in common This often cor
203. e the cursor over to the Properties tab and click the browse Ed icon next to the icon file name entry 4 Click the Browse icon to select the user defined bitmap Bank PC bmp 5 Deselect the Absolute Path check box to make the path relative Preview displays a preview of the selected file in the dialog box Enter Filepath ar Model Tree i File path B ank PC bmp El 7 Design ph a lp Java Lang V Preview E Pq Unknown a Use Case Refresh EA Dvervie i get acci oe a Standard User C Model Tree E Diagram Favorites Properties na x element kind Actor a 12 visibility public Fl Overview Account Balance leaf abstract Messages icon file name 25 6 Click OK to confirm the settings and insert the new actor 7 Move the new Bank actor to the right of the lowest use case 8 Click the Association icon in the icon bar and drag from the Bank actor to the generate monthly revenue report use case This is an alternative method of creating an association 2012 Altova GmbH Altova UModel 2013 26 UModel tutorial Use cases Please note The background color used to make the bitmap transparent has the RGB values 82 82 82 Dragging elements Snap lines When dragging components in a diagram guide lines appear allowing you to align an element to any other element in the diagram This option can be enabled disabled using the menu option Tools Options View Alig
204. e the fill colors at the project level clear the value in the Element Family Styles i e select the empty entry in the drop down list box select Project styles from the Styles combo box and change the fill color there Altova UModel 2013 2012 Altova GmbH UModel User Interface Hierarchy 79 9 6 Hierarchy Hierarchy tab The hierarchy tab displays all relations of the currently selected modeling item in two different views The modeling element can be selected in a modeling diagram the Model Tree or in the Favorites tab Please note General Hierarchy tab settings are set using the menu option Tools Options View in the Hierarchy group in the lower section of the dialog box E Show Tree view Hierarchy EJE CEECEES chemastring E gt upertypes Hp EA 2a Schema T ype o schemaTypeCalendar Hg schemaT ype a 4 Subtypes oe schemabormalizedString a H H SchemaToken E emailType SchemaString in new value String value String lsempty boolean isnull boolean schemastrina SchemaString in new vwalye Sche DES E EU Postcode schemastring n newwalue Sche achemastring n nevalue Sche gt Dependencies Usages client Schemastring n new value Sche it Usages supplier get alue String Associations set Value in nevevalue String void JM Elementinports importedElementi parsetin newvalue String void dM Elementimporta inportinghamespace N lueSchemaT assign in newvalye Schem
205. e the scroll bars to scroll within the window 2012 Altova GmbH Altova UModel 2013 206 UML Diagrams Behavioral Diagrams SI Reading transaction data data read d sent effect H I sef I I I I I I I a I k a 3 exit free allocated memory entra 3 Double click the Action window to switch into the Activity diagram and further define the transition e g change the Action name to Database logon lt Query BankServer Draft rh ActivityDiagramil Note that a new Activity Diagram tab has now been added to the project You can add any activity modeling elements to the diagram please see Activity Diagram for more information 4 Click the State Machine Diagram tab to switch back to see the update transition Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 207 Reading transaction data data read E n exit free allocated memory result accepted store result Query BankServer Draft rh ctivityDiagrami 5 Drag the Activity window to reposition it in the diagram and click the resize handle if necessary Reading transaction data data read Sending command to database Command sent effect Mr osp y Wating for result entry store current time Ma Database logon exit free allocated memory iL Dragging the Activity window between the two states displays the transition in and out of the acti
206. e the transition arrow if it is the first trigger in the state diagram Triggers are assigned default values of the form alphabetic letter source state gt target state 3 Double click the new character and enter the transition properties in the form eventTrigger guard condition activity Transition property syntax the text entered before the square brackets is the trigger between brackets the guard condition and after the slash the activity Manipulating this string automatically creates or deletes the respective elements in the Model Tree Please note To see the individual transition properties right click the transition arrow and select Select in Model Tree The event activity and constraint elements are all shown below the selected transition Model Tree EL User Connected Hot Connected gt Pelatiane a 2 ADS do lt listen for incoming connections acd Transition gt Mot Connected E gt Transition connect SSL available JE a connect connect SSL available i Y SSL available Adding an Activity diagram to a transition UModel has the unique capability of allowing you to add an Activity diagram to a transition to describe the transition in more detail 1 Right click a transition arrow in the diagram and select New Activity Diagram This inserts an Activity diagram window into the diagram at the position of the transition arrow 2 Click the inserted window to make it active You can now us
207. ease note Static operation names are show as underlined in sequence diagrams Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 245 To position dependent messages 1 Click the respective message and drag vertically to reposition it The default action when repositioning messages is it to move all dependent messages related to the active one Using CTRL click allows you to select multiple messages To position messages individually a 1 Click the Toggle dependent message movement icon to deselect it 2 Click the message you want to move and drag to move it Only the selected message moves during dragging You can position the message anywhere in the vertical axis between the object lifelines To automatically create reply messages meo 1 Click the Toggle automatic creation of replies for messages icon a 2 Create a new message betwween two lifelines A reply message is automatically inserted for you Message numbering UModel supports different methods of message numbering nested simple and none e None removes all message numbering 1 e Simple assigns a numerical sequence to all messages from top to bottom i e in the order that they occur on the time axis 1 2 e Nested uses the decimal notation which makes it easy to see the hierarchical structure of the messages in the diagram The sequence is a dot separated list of sequence numbers followed by a colon and the message name
208. ease see Round trip engineering code model code in the tutorial for more information on importing code 1 Having imported the code right click the main method of the OrgChartT est class in the Model Tree and select Generate Sequence Diagram Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 249 E OorgCchartTest Content of OrgChartTest E E OrgChartTest m lt example E lt gt main E Relations New element uo anaes Ue Generate Sequence Diagram E E Unknown Ex Show in new diagram Open diagram Show element in active diagram C Model Tree E Show element in all diagrams This opens the Sequence Diagram Generation dialog box in which you define the generation settings Sequence Diagram Generation x General Diagram owner autoselect a Automatically update diagram when model is updated from code Presentation Show code in notes Also show code of messages displayed directly below M Use special color for non displavable invocations o M Show empty Combined Fragments M Show unknown invocations w Split into smaller diagrams where appropriate Layout Maximum invocation depth 3 Type names to ignore Operation names to ignore initComponents T Use dedicated Lifeline for static calls Cancel 2 Select the presentation and layout options then click OK to generate the diagram The settings shown above produce the
209. ecification minimumbBalance John s Credit Cri 3 Click the InstanceSpecification icon in the icon bar and position the cursor over the John s Credit class The cursor now appears as a sign John s Credit Cred balance ld 4 Drag from John s Credit object to AltovaBank to create a link between the two 5 Use the classifier combo box in the Properties tab to change the link type to Account Bank 6 Use the method outlined above to create a link between John s Saving and AltovaBank AltovaBank Bank E John s Checking bankname AltovaBank balance IFadress 10 10 127 125 Id username John Doe minimumbalance 10 password Jodoe accounts John s Credit Cred accounts balance Id creditLimit iterestRateOnBalance iteresztrate ntash 0 account John s Saving Savi balance Id interestRiate Please note Changes made to the association type in any class diagram are now automatically Altova UModel 2013 2012 Altova GmbH UModel tutorial Object Diagrams 43 updated in the object diagram Formatting association link lines in a diagram 1 Click the lowest link in the diagram if not active and drag the corner connector to the left This allows you to reposition the line both horizontally and vertically accounts _ John s Credit Credi T accounts balance ld creditLimit interestRateQnBalance interestFRateQnCash4c J John s Saving Savir
210. ect is defined as editable in a main project file If data exists outside of the subproject structure a warning message will be displayed in the Messages window Saving subproject files When saving subprojects from the main project level all references to sibling as well as child subprojects are considered and saved E g if two sibling subprojects sub1 and sub2 exist and sub1 uses elements from sub2 then sub1 is saved in such a way that it automatically saves references to sub2 as well If sub1 was opened as a main project then it is considered as a self contained project and can be edited without any reference to the actual main project Reintegrating subprojects into the main project Previously defined subprojects can be copied back into the main project again If the subproject does not contain any diagrams then the reintegration will be immediate If diagrams exist a dialog box will open 1 Right click the subproject and select Subproject Include as Copy This opens the Include Subproject dialog box which allows you to define the diagrams styles you want to use when including the subproject O 2012 Altova GmbH Altova UModel 2013 324 Teamwork support for UModel projects Creating and editing subproject files Include Subproject Include by reference Po Editable t Feadoniy Include as a copy o Make path relative to Bank Multilanguage 2 Select the style option that you want to use then click O
211. ect property Assuming you have inserted Operation1 in the Account class press F8 then Enter to insert 1 Right click Operation1 in the Account class 2 Select the option Select in Model Tree or press F4 The Operation1 item is now highlighted under Account in the Model Tree tab Model Tree E EQ Altowab ank E EJ John s Checking as Accowr balance e Account balance float 0 E gelBalance HO gelld E collect amp ccountin l Account i gt Operation AS Bank Emod E Diagr 4 Favo Id String Properties x Altova UModel 2013 O 2012 Altova GmbH UModel tutorial Class Diagrams 33 3 Press the Del key to delete the operation from the class and project Note that almost any modeling element can be found in the Model Tree when pressing F4 Please note It is also possible to navigate from the Properties pane to the Model Tree when viewing an attributes properties please see the Properties in the User Interface section Creating an composition association between the Bank and Account classes 1 Click the Composition icon in the title bar then drag from the Bank class to the Account class The class is highlighted when the association can be made A new property Property1 Account is created in the Bank class and an composite association arrow joins the two classes bankname String gf balance float 0 IPadress String 57 ld String username String passwor
212. ection and handling of types and namespaces when refactoring code Goto feature for lifelines in sequence diagrams Improved hierarchy window display Ability to save UModel project files in pretty print format Improved partial documentation functionality Ability to open UModel projects from a URL Ability to load save currently open diagrams with the project file The 2008 Release 2 version of UModel includes the following major and minor enhancements Support for Visual Basic NET 9 0 and CF 3 0 as well as Visual Studio 2008 Java 1 6 Merging of projects is now supported User defined Stereotype styles and how to define them Enhanced Autocompletion capabilities Automatic generation of ComponentRealizations Importing multiple XML Schemas from a directory Automatic generation of namespace directories for generated code Support for ObjectNodes on Activity diagrams Ability to generate relative links for UML documentation UML conformant visibility icons in class diagrams Support for Collection Associations The 2008 version of UModel includes the following major and minor enhancements Visual Basic code generation from models and reverse engineering of Visual Basic code Abilty to save all project diagrams as images in one go Altova UModel 2013 O 2012 Altova GmbH What s new in UModel 11 e Multiline lifeline titles in sequence communication and timing diagrams e Support for event subelements in State Machine Diagram
213. editCard amp ccount cs Select All ICATEMP ssc Bank CSharpicodegenSavings4ccount cs Advanced a Checkout local versiori itet Comment Note You can change the number of files to check out by activating the individual check boxes in the Files list box Checkout local version Checks out only the local versions of the files not those from the source control database The following items can be checked out e Single files click on the respective files CTRL click in the Model Tree e Folders click on the folders CTRL click in the Model Tree The red check mark denotes that the file folder has been checked out Advanced Allows you to define the Replace writable and Set timestamp options in the respective combo boxes Replace writable Ask Cancel Set timestamp Current r The Make writable check box removes the read only attribute of the retrieved files 2012 Altova GmbH Altova UModel 2013 354 Source Control Source Control Commands 12 4 7 Check In This command checks in the previously checked out files e your locally updated files and places them in the source control database To Check In files e Select the files in the Model Tree e Select Project Source Control Check In Shortcut Right click a checked out item in the project window and select Check in from the Context menu Source Control Check In B Files OK COTEMP Rec Bank _ CSharp c
214. egation composite A membere ndk ind memberE nd A multiplicity i name Property aggregation hone memberE ndk ind ownedEe nd multiplicity 1 EMI ENI E EMI ENI E Properties Stwles 2 Hierarchy e Clicking any model element in any of the supplied views or tabs displays its properties e Once visible model properties can be changed or completed by entering data or selecting various options in the tab e Selected properties can also be located in the diagram tabs by selecting Show in Active Diagram from the context menu Select in Model Tree Clicking an attribute in a class diagram displays its properties in the Properties tab To navigate find it in the Model Tree 1 Right click the type entry of the attribute in the Properties tab 2 Click the Select in Model Tree popup Properties BankView Select in Model Tree a constructor Bank View in E gt collectBankAddressintos J boc i Y collect Accountinfo boolean i collectData y boolean 1 getBalanceAtBank in bankname lt gt getBalancesumOtAllBank C1i The IBankAPI interface is now visible in the Model Tree Altova UModel 2013 2012 Altova GmbH UModel User Interface Properties 75 Model Tree E A Banking access a El Bankr Oe Bank A Relations EE Bank Server Sa Account Transfer _ A Relations E Interaction views an 4 b C Model T E Diagram d Favorites O 2012 Altov
215. el together with their respective Source Control Client s SCCs The list is organized alphabetically by SCS Please read the notes following the list for information about support levels AccuRev Version AccuRev 4 7 0 Windows Clients e AccuBridge for Microsoft SCC 2008 2 Bazaar Version Bazaar 1 9 Windows Clients e Aigenta Unified SCC 1 0 6 Borland StarTeam 2008 Version StarTeam 2008 Release 2 Clients e Borland StarTeam Cross Platform Client 2008 R2 Codice Software Plastic SCM Version Codice Software Plastic SCM Professional 2 7 127 10 Server Clients e Codice Software Plastic SCM Professional 2 7 127 10 SCC Plugin Collabnet Subversion 1 5 Version 1 5 4 Aigenta Unified SCC 1 0 6 PushOK SVN SCC 1 5 1 1 PushOK SVN SCC x64 version 1 6 3 1 TamTam SVN SCC 1 2 24 Clients ComponentSoftware CS RCS PRO Version ComponentSoftware CS RCS PRO 5 1 Clients e ComponentSoftware CS RCS PRO 5 1 Dynamsoft SourceAnywhere for VSS Altova UModel 2013 O 2012 Altova GmbH Source Control Supported Source Control Systems 329 Version Dynamsoft SourceAnywhere for VSS 5 3 2 Standard Professional Server Clients e Dynamsoft SourceAnywhere for VSS 5 3 2 Client Dynamsoft SourceAnywhere Hosted Version Server hosted in a Bell Data Center Clients e Dynamsoft SourceAnywhere Hosted Client 22252 Dynamsoft SourceAnywhere Standalone Version SourceAnywhere Standalone 2 2 Server Clients e Dynamsoft Sour
216. el relationships can be created and inserted into diagrams using several methods e By using the connection handles please see Use cases for an example e By clicking the specific icon in the icon bar and using drag and drop to create the connections between the elements aggregation composition containment When an association has been created a new attribute is automatically inserted in the originating A name class e g Property1 Class2 in the example below G Property1 Class2 Property Having created the association it is shown as active and the Properties tab displays its properties A text label shows the default name of the member end of the association i e Property1 Note that the context menu option Text Label allows you to show hide labels Clicking an association line displays the association properties in the Properties tab A Name and B Name indicate the role of each class in the other Properties name element kind Association visibility public leat O abstract L derved O name Property A aggregation none A member ndk inc member nd A multiplicity a ENI E name aggregation hone memberEndkinc ownedE nd multiplicity Properties Styles E Hierarchy Depending on the memberEndKind property of A name Property1 the attribute either belongs to EEE Altova UModel 2013 O 2012 Altova GmbH Creating model relationships 163 e the class i
217. election StructuredActivityNode Inserts a Structured Activity Node which is a structured part of the activity that is not shared with any other structured node Properties name Structured Activity Mode element kind structuredActivity Mode visibility unspecified eaf C mustlzolate L I x l ExpansionRegion An expansion region is a region of an activity having explicit input and outputs using ExpansionNodes Each input is a collection of values Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 199 Properties ExpanzionRegion ordering ordered ExpanzionRegion unspecified L mustizolate C mode parallel The expansion region mode is displayed as a keyword and can be changed by clicking the mode combo box in the Properties tab Available settings are parallel iterative or stream ExpansionNode Inserts an Expansion Node onto an Expansion Region Expansion nodes are input and output nodes for the Expansion Region where each input output is a collection of values The arrows into or out of the expansion region determine the specific type of expansion node Properties Expanzioniode ordering ordered ExpanzioniJode unspecitied O type modifier n a izControlType C ordering ordered selection upperBound Properties E 5 InterruptableActivityRegion An interruptible region contains activity nodes When a control flow leaves
218. emplates W User defined override default When deleting Code f Comment out Delete Synchronization Merge Model into Code C Overwrite Code according to Model ML Schema files are always overwritten Project Settings Cancel Altova UModel 2013 2012 Altova GmbH Chapter 11 Teamwork support for UModel projects 318 Teamwork support for UModel projects 11 Teamwork support for UModel projects UModel projects can be split up into multiple subprojects allowing several developers to simultaneously edit different parts of a single project Each individual subproject can be added to a source control system The top level project i e the project from which the subprojects can be included is called the main project Subprojects are created on the package level as individual UModel project files and have a ump extension Subprojects can be created included in two different ways e As editable from within the main project and at the subproject level e As read only from within the main project i e only editable at the subproject level LI Altova UModel Bank_MultiLanguage Overview Doa dar AX REE amp H a g 0 gt 7 7 uU l ruo _ TR T R S File Edit Project Layout View Tools Window Help Model Tree Root E Behavior view ac Component View E Deployment view E Design view Overview E Account Transfer m Bank server Bank Server ump m A Banking
219. encouraged to review the terms of the Privacy Policy as posted on the Altova Web site from time to time f Audit Rights You agree that Altova may audit your use of the Software for compliance with the terms of this Software License Agreement at any time upon reasonable notice In the event that such audit reveals any use of the Software by you other than in full compliance with the terms of this Software License Agreement you shall reimburse Altova for all reasonable expenses related to such audit in addition to any other liabilities you may incur as a result of such non compliance g Notice to European Users Please note that the information as described in paragraph 7 d above may be transferred outside of the European Economic Area for purposes of processing analysis and review by Altova Inc a company located in Beverly Massachusetts U S A or its subsidiaries or Altova s subsidiaries or divisions or authorized partners located worldwide You are advised that the United States uses a sectoral model of privacy protection that relies on a mix of legislation governmental regulation and self regulation You are further advised that the Council of the European Union has found that this model does not provide adequate privacy protections as contemplated by Article 25 of the European Union s Data Directive Directive 95 46 EC 1995 O J L 281 31 Article 26 of the European Union s Data Directive allows for transfer of personal data
220. endency diagram generation UModel has the capability to generate a package dependency diagram for any package in the Model Tree Dependency links between packages are created if there are any references between the modeling elements of those packages E g Dependencies between classes derived classes or if attributes have types that are defined in a different package To generate a package dependency diagram 1 Right click a package in the Model Tree e g altova and select Show in new Diagram Package Dependencies This opens the New Package Dependency Diagram dialog box Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Structural Diagrams 287 Mew Package Dependency Diagram Diagram Name Package dependencies of altova l Ignore external packages not child of altova Iw Create hyperlink to diagram Style Fill color of external packages Autolayout M Autolavout hierarchic L IS Cancel 2 Select the specific options you need and click OK to confirm E Bank view Apply Java Profile E E lt profile gt N g altova Java Profile Package depe from nee E CH bankview i E Relations Relations E Banking access Namespace La Bank API altova namespace gt f Relations from com bankview A new diagram is generated and displays the package dependencies of the altova package Inserting Package Diagram elements Using the toolbar icons 1 Click the spec
221. ent contents of the graph view pane can be displayed in a new diagram 1 Right click in the graph view pane and select Create diagram as this graph Altova UModel 2013 O 2012 Altova GmbH UModel User Interface Hierarchy 81 New Hierarchy Diagram S SGSG GG D00 E Hierarchy diagram Class Diagram TT 2 Edit the diagram name if necessary select the style options and click OK A new diagram is created 2012 Altova GmbH Altova UModel 2013 82 UModel User Interface Overview 5 7 Overview Overview tab The Overview tab displays an outline view of the currently active diagram Clicking and dragging the red rectangle scrolls the diagram view in the diagram tab Cveryiey Overview Documentation Altova UModel 2013 2012 Altova GmbH UModel User Interface Documentation 83 9 9 Documentation Documentation tab Allows you to document any of the UML elements available in the Model Tree tab Click the element you want to document and enter the text in the Documentation tab The standard editing shortcuts are supported e cut copy and paste Documentation LX Bank to account association E This ig a composite association Overview Documentation Documentation and code engineering During code engineering only class and interface documentation is input output This includes documentation defined for class interface properties and operations 1 Select Project Synchronization s
222. ent relationship between modeling elements in this case packages or profiles T Packagelmport Inserts an lt lt import gt gt relationship which shows that the elements of the included package will be imported into the including package The namespace of the including package gains access to the included namespace the namespace of the included package is not affected Note elements defined as private within a package cannot be merged or imported PackageMerge Inserts a lt lt merge gt gt relationship which shows that the elements of the merged source package will be imported into the merging target package including any imported contents the merged source package If the same element exists in the target package then these elements definitions will be expanded by those from the target package Updated or added elements are indicated by a generalization relationship back to the source package Note elements defined as private within a package cannot be merged or imported sP i ProfileApplication Inserts a Profile Application which shows which profiles have been applied to a package This is a type of package import that states that a Profile is applied to a Package The Profile extends the package it has been applied to Applying a profile using the ProfileApplication icon means that all stereotypes that are part of it are also available to the package Profile names are shown as dashed arrows from
223. environment variable points to the location of your JVM If you work with Vista you might have problem when saving the file 1 If this is the case start Windows Explorer and go to C Windows System32 Right click and run cmd exe As Administrator A command window pops up Type cd lt installation folder of the QVCS Enterprise client gt Type Notepad setEnv cmd and then edit the file and save it From the installation directory of the Qumasoft QVCS Enterprise client run the batch file gui bat Add a server from the Server menu specifying the requested name IP address and ports log in and define a local workspace D Ue NN N Qumasoft QVCS Pro 3 10 18 http www qumasoft com To install Qumasoft QVCS Pro run the installer 2012 Altova GmbH Altova UModel 2013 338 Source Control Installing Source Control Systems e f your operating system is Vista you must modify the installation directory from the default value C Program Files QVCSBin to CAQVCSBin This must be done as Vista does not let applications write to the C Program Files area e After installation is finished launch the QVCS 3 10 client create a new user and enable Ide integration by selecting the submenu Ide Integration in the Admin menu and adding QVCS as a Version Control Tool e Create a project and set a workspace Reliable Software Code Co Op 5 1a http www relisoft com co_op index htm A standard
224. er be commented out or deleted depending on the setting in the When deleting code group in the Synchronization settings dialog box That s it You have learned how to create a modeling project using the forward engineering process and also completed a full round trip code engineering cycle with UModel The rest of this document describes how best to achieve modeling results with UModel Altova UModel 2013 2012 Altova GmbH Chapter 5 UModel User Interface 66 UModel User Interface UModel User Interface UModel consists of series of panes on the left and a larger diagram tab at right The panes at left allow you to view and navigate your UModel project from differing viewpoints and edit data directly The panes are Model Tree Properties and Overview The working viewing area at right is the UModel Diagram tab which currently shows the Class Diagram of the BankView Main package Please note All panes as well as diagram tabs can be searched using the Find combo box in the Main toolbar which contains the text account in the screenshot below or by pressing CTRL F Program Files Altova UModel2006 UModelExamples BankYiew finish jawa 10 x L Altova UModel C J File Edit Project Layout View Tools Window Help _ EX DORE loco 4 H sx F Ba E 8 fn DG Also 29 Model Tree Ax i EE BankView i i La EA Apply Java Profile com E 1 g A altova
225. erator in collection statements next Example foreach Sclass in Sclasses if not class IsInternal class Sclass Name endi f next Example 2 foreach i in 1 To 3 Write Step amp i amp An Do some work next Foreach steps through all the items in classes and executes the code following the instruction up to the next statement for each of them In each iteration class is assigned to the next class object You simply work with the class object instead of using classes i gt Name as you would in C All collection iterators have the following additional properties Index The current index starting with 0 IsFirst true if the current object is the first of the collection index is 0 IsLast true if the current object is the last of the collection Example foreach Senum in facet Enumeration if not Senum IsFirst l endi f Senum Value next Collection manipulation routines collection SortByName bAscending returns a collection whose elements are sorted by name case sensitive in ascending or descending order collection SortByNameNoCase bAscending returns a collection whose elements are sorted by name case insensitive in ascending or descending order Example SSortedNestedClassifier Class nestedClassifier SortByNameNoCase true 2012 Altova GmbH Altova UModel 2013 444 Code Generator The way to SPL Spy Programming Language colle
226. erences and choose the Tools tab 2 Specify the DiffDog full path as Diff application and the parameters 51 2 as two way differencing parameters Mercurial see under Sergey Antonov HgScc 1 0 1 Microsoft SourceSafe 2005 with CTP http msdn microsoft com en us vstudio aa718670 aspx The following steps will integrate Altova DiffDog into Microsoft SourceSafe 2005 1 Click the Advanced button of the Source Control tab 2 Click the Custom Editors tab and enter c Program Files Altova DiffDog2013 DiffDogexe 1 2 in the Command Line field 3 Inthe Operation combo box select File Difference Microsoft Team Foundation Server 2008 MSSCCI Provider http www microsoft com downloads Requirements Visual Studio 2008 Team Explorer or Visual Studio 2008 with Team Explorer 2008 The following steps will integrate Altova DiffDog into Microsoft Visual Studio Team System 2008 Team Foundation Server MSSCCI Provider 1 In the manager Visual Studio 2008 Team Explorer or Visual Studio 2008 options configure Altova DiffDog as new user tool 2 Choose Visual Studio Team Foundation Server source as the plug in 3 Configure a new user tool specifying i the extensions of the files you wish to compare with DiffDog and ii the DiffDog full file path Perforce P4V 2008 1 Altova UModel 2013 O 2012 Altova GmbH Source Control SCSs and Altova DiffDog Differencing 343 http www perforce com The following steps will integrate Altova DiffDog
227. eriod Priority Technical Support is provided via a Web based support form only and Altova will make commercially reasonable efforts to respond via e mail to all requests within forty eight 48 hours during Altova s business hours MO FR 8am UTC 10pm UTC Austrian and US holidays excluded and to make reasonable efforts to provide work arounds to errors reported in the Software During the Support Period you may also report any Software problem or error to Altova If Altova determines that a reported reproducible material error in the Software exists and significantly impairs the usability and utility of the Software Altova agrees to use reasonable commercial efforts to correct or provide a usable work around solution in an upcoming maintenance release or update which is made available at certain times at Altova s sole discretion If Altova in its discretion requests written verification of an error or malfunction discovered by you or requests supporting example files that exhibit the Software problem you shall promptly provide such verification or files by email telecopy or overnight mail setting forth in reasonable detail the respects in which the Software fails to perform You shall use reasonable efforts to cooperate in diagnosis or study of errors Altova may include error corrections in maintenance releases updates or new major releases of the Software Altova is not obligated to fix errors that are immaterial Immaterial errors are
228. erms of this Software License Agreement You agree that efforts to circumvent or disable Altova s copyright protection mechanisms or license management mechanism violate Altova s intellectual property rights as well as the terms of this Software License Agreement Altova expressly reserves the rights to seek all O 2012 Altova GmbH Altova UModel 2013 464 Appendices License Information available legal and equitable remedies to prevent such actions and to recover lost profits damages and costs d LiveUpdate Altova provides a new LiveUpdate notification service to you which is free of charge Altova may use your internal network and Internet connection for the purpose of transmitting license related data to an Altova operated LiveUpdate server to validate your license at appropriate intervals and determine if there is any update available for you e Use of Data The terms and conditions of the Privacy Policy are set out in full at http www altova com privacy and are incorporated by reference into this Software License Agreement By your acceptance of the terms of this Software License Agreement and or use of the Software you authorize the collection use and disclosure of information collected by Altova for the purposes provided for in this Software License Agreement and or the Privacy Policy Altova has the right in its sole discretion to amend this provision of the Software License Agreement and or Privacy Policy at any time You are
229. ernal error notify admin State Activities behaviors which are associated to states are longer term processes that may be interrupted by other events E g listen for incoming connections Please note that the State machine diagrams shown in the following section are available in the Bank_MultiLanguage ump sample in the UModelExamples folder supplied with UModel Hot Connected do listen for incoming connections connect SSL available User Connected Logging in User authentication ok authentication tailed loc failure User Authenticated O transact disconnect abort internal error Mmotify admin Suspended Performing Transaction Rz Transacting BankServer ao ma Logging Transaction n 2012 Altova GmbH Altova UModel 2013 202 UML Diagrams Behavioral Diagrams Inserting state machine diagram elements Using the toolbar icons 1 Click the specific state machine diagram icon in the State Machine Diagram toolbar 2 Click in the State Diagram to insert the element Note that holding down CTRL and clicking in the diagram tab allows you to insert multiple elements of the type you selected Dragging existing elements into the state machine diagram Most elements occurring in other state machine diagrams can be inserted into an existing state machine 1 Locate the element you want to insert in the Model Tree tab you can use the search function tex
230. erting sequence diagram elements zs ises dA Rene deer Raat 237 ioni ioni CT o Conai Fandi NEARER gt gt Lama Interaction Us lalla 242 sai CORROTTO OO OTO ee ee A a ate Tivissa i Messina za Generating Sequence Diagrams from source code 248 Generate Sequence diagrams from properties iii 231 Generale code from sequence diagram 253 DES Adding code to sequence diagrams 0000000 ii 256 IGES Timine 1a Or ain ita 260 Inserting Timing Diagram elene ios 2 261 Altova UModel 2013 A o Mevanicadeh ae C eer 261 TACT MOT Tees ie Reactor dd 263 EVO e eras 264 PUVA ONC ON SURG iii 264 TM OLN aia ee oe A TARAN barca 265 Miliani 266 10 2 Strictural Drasta AAA ibi 268 1021 Class Dira a 269 10 22 Composite Structure Dia RL 281 Inserting Composite Structure Diagram elements ii 281 102 3 Component A lei 283 1024 Deployment Aledo 284 10 2 35 Object Dia staf tata iii id 285 10 2 6 Package Doo 286 Inserting Package Diagram elements iii 287 10 2 7 Profile Diagram and Stereotypes cane asa 289 Adding Stereotypes and defining tagged values iii 291 Stereotypes and enumera lons scire daves a SRC NC BARS 295 User defin ed terco DES les ita 297 Custom stereotype ICONS ASSIQNINT ricorrenti 299 103 Additonal Diara MS asin A ES ilaele 303 10S AMES Cc Diana et 304 IMPORTE AML SCM CHAOS oi 305 Insertine XML Schema elements ets 310 Creating an
231. es increase interval 326 transparent color 299 Ball and socket interface notation 269 Bank sample files 101 Base class 34 Base class inserting derived 94 overriding 269 Batch full batch mode 110 new load save 110 processing 106 110 Behavioral diagrams 185 Binary obfuscated support 125 Binary files importing CF and Jave 125 Binding template 157 Bitmap save elements as 392 Borland bsdj project file 395 Branch create in Activity 189 bsdj Borland project 395 C CH code 432 code to model correspondence 138 import binary file 125 import settings 120 C code 432 Call message 243 Call message go to operation 243 CallBehavior insert 187 CallOperation insert 187 Cascading styles 76 Catalog file XMLSpy Catalog file 422 Center elements 89 2012 Altova GmbH Index 469 Change provider source control 366 Check project syntax 395 Check In 354 Check Out 353 Class abstract and concrete 28 add new 28 add operations 28 add properties 28 associations 28 ball and socket interface 269 base 34 base class overriding 269 create in namespace 115 derived 34 diagrams 28 enable autocompletion window 422 expand collapse compartments 269 generate in namespace 115 icons 370 in component diagram 44 inserting derived classes 94 multiple instances on diagram 269 name changes synchronization 134 o
232. es openoffice org en dictionaries Note that OpenOffice uses the zipped oxT format So change the extension to zip and unzip the aff and dic file to the language folders in the Lexicons folder Also note that Hunspell dictionaries are based on Myspell dictionaries So Myspell dictionaries can also be used e By using the Altova dictionary installer which installs a package of multiple language dictionaries by default to the correct location on your machine The installer can be Altova UModel 2013 O 2012 Altova GmbH UModel Reference Tools 409 downloaded by clicking the link in the Dictionary language pane of the Spelling Options dialog see screenshot below Note Itis your choice as to whether you agree to the terms of the license applicable to the dictionary and whether the dictionary is appropriate for your use with the software on your computer Working with the user dictionary Each user has one user dictionary in which user allowed words can be stored During a spellcheck spellings are checked against a word list comprising the words in the language dictionary and the user dictionary You can add words to and delete words from the user dictionary via the User Dictionary dialog screenshot below This dialog is accessed by clicking the User Dictionary button in the Spelling Options dialog see screenshot at top of section 1 User Dictionary Word Altova odd Dictionary 7 Delete To add
233. ess of the feature set at the time of your purchase of the Software In addition Altova will provide free technical support to you for thirty 30 days after the date of your purchase the Support Period for the purposes of this paragraph 6 a and Altova in its sole discretion on a case by case basis may also provide free courtesy technical support during your thirty 30 day evaluation period Technical support is provided via a Web based support form only and there is no guaranteed response time b If you have purchased SMP then solely for the duration of its delineated Support Period you are eligible to receive the version of the Software edition that you have licensed and all maintenance releases and updates for that edition that are released during your Support Period For the duration of your SMP s Support Period you will also be eligible to receive upgrades to the comparable edition of the next version of the Software that succeeds the Software edition that you have licensed for applicable upgrades released during your Support Period The specific upgrade edition that you are eligible to receive based on your Support Period is further detailed in the SMP that you have purchased Software that is introduced as separate product is not included in SMP Maintenance releases updates and upgrades may or may not include additional features In addition Altova will provide Priority Technical Support to you for the duration of the Support P
234. essibility resources from internal 4 8 Click the other tabs to see the class files etc Please note Clicking the link icon of a folder automatically opens the referenced diagram Content of resources Altova UModel 2013 2012 Altova GmbH 130 Projects and code engineering Synchronizing Model and source code 7 4 Synchronizing Model and source code UModel allows you to synchronize model and code from both sides Code model synchronization Code can be merged synchronized at different levels described below When using the context menu e g when right clicking a class the context menu reflects your selection in the menu option Note that the Project menu only allows you to synchronize at the root project level Project Root package level 1 Right click the Root package 2 Select one of the code merging options Merge Program or Merge UModel project Alternatively use the Project menu Package level 1 Use SHIFT or CTRL click to select the package s you want to merge 2 Right click the selection and select one of the code merging options Merge Program or Merge UModel project Class level 1 Use SHIFT or CTRL click to select the classes s you want to merge 2 Right click the selection and select one of the code merging options Merge Program or Merge UModel project Define your synchronization options by selecting Project Synchronization options Each tab allows
235. etinteresthateOnlashAdvance 90000 collect 4ccountinta in Ba Adding a new class 1 Right click the diagram background to the right of CreditAccountClass and select New Class A new class is automatically added to the correct package i e bankview which contains the current class diagram Account Hierarchy 2 Double click the class name and change it to SavingsAccount CreditCardAccount from bankwieww creditLimit float iterestrRateOnBalance float interestrate on lash Advance float CrediCard Account getCreditLimito float qetlnterestrateOnBalance float getinterestrateOncCashAdvance float collectSccountntarin Bank AP boolean 3 Press the F7 key to add a new property 4 Enter interestRate then a colon and press f to select the float datatype from the O 2012 Altova GmbH Altova UModel 2013 36 UModel tutorial Class Diagrams dropdown list and press Enter twice to select and confirm the entry 5 Press F8 and add the operation constructor SavingsAccount 6 Use the same method F8 to add the operation getMinimumBalance float creditLimit float imerestrateOnBalance float interestrateGnCash4 amp dvance float CredtlardAccount getCreditLimito float getinterestRateOnBalancel float getinterestRateOnlashAdvancel float collect 4Accountinforin Bank A amp P boolean Click in the code file name text box in the Properties tab and enter SavingsAccount java to define
236. ettings 2 Activate the Write Documentation as JavaDocs check box to enable documentation output Please note When importing XML schemas only the first annotation of a complex or simple Type is displayed in the Documentation window O 2012 Altova GmbH Altova UModel 2013 84 UModel User Interface Messages 5 9 Messages The Messages window displays warnings hints and error messages when merging code or checking the project syntax Clicking the error message highlights the corresponding element in the Model Tree and also in the owning diagram if that diagram is currently active open Messages N v a lt a OGE x El Starting update code from project Changing file Changing file Changing file Changing file Changing file Changing file Documenta and Settings bity Documenta itovea Model T Documents and Settings biMy Documents AtoyvatModel CiDocumente and Settings biMy Documents AtoyvalModel Documenta and Settings by Documents itovea Model Documenta and Settings by Documents itovea Model CiDocuments and Settings biMy Documents AtoyvatUModel finished update code from project erroria warning Altova UModel 2013 2012 Altova GmbH UModel User Interface Diagram pane 85 5 10 Diagram pane The diagram pane displays all the currently opened UModel diagrams as individual tabs bankname String pies arpa banks IPadress String username String IB
237. f the option is set Error Error Error Error Error Warning Error if the local option Generate missing code file names is not set Warning if the option is set Error Error Error Error Error Warning Warning None 2012 Altova GmbH Altova UModel 2013 396 UModel Reference Project Syntax check for all UML elements involved in code generation class class property class operation class operation parameter interface interface operation interface operation parameter interface properties package with stereotype namespace package without stereotype namespace class Please note Checks name is a valid Java name no forbidden characters name is not a keyword Checks name is a valid Java name no forbidden characters name is not a keyword Checks name is a valid Java name no forbidden characters name is not a keyword Checks for existence of return parameter Checks name is a valid Java name no forbidden characters name is not a keyword Checks type has a valid Java type name Checks name is a valid Java name no forbidden characters name is not a keyword Checks name is a valid Java name no forbidden characters name is not a keyword Checks name is a valid Java name no forbidden characters name is not a keyword Checks name is a valid Java name no forbidden characters name is not a keyword Checks name is a valid Java name no forbidden ch
238. fied i e a b c List If the template has this namespace then UModel automatically creates a Collection Association Exception If the template belongs to the Unknown Externals package and the option Unknown externals resolve unqualified is enabled then only the template name is considered i e List instead of a b c List If the autocompletion window is to be available when editing attributes or operations in the class diagram Local Options When automatically adding items on diagrams When adding items on diagrams Ask before adding more than items Automatically create Associations 7 Also for NET properties F Always show dialog before addin DE ii j i iz Associations to collections _ Show Attributes compartment H E Show Operations compartment V Resolve collections Show nested Classifiers compartment pa Unknown extemals resolve unqualified Show Enumeration Literals compartment C Show ExtensionPoints compartment Show Tagged Values A 7 Use own compartment for NET properties Reset existing Associations C Show NET properties compartment Autocompletion 4 Enable automatic entry helper The File tab allows you to define The actions performed when files are changed If the contents of the Favorites tab are to be loaded and saved with the current project as well as the any currently open diagrams If the previously opened project is to aut
239. finitions e When the stereotype is applied to a model element the property values are called tagged values e When stereotypes containing properties are applied the tagged values are automatically displayed in a comment element shown below Please see Tagged values for more info on how to customize the tagged values view e Stereotypes have their own style family e If the attribute is of type enumeration then an popup menu allows you to select from the predefined values You can also enter select the specific value in the Properties tab e g lt lt GetAccessor gt gt visibility public protected etc Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Structural Diagrams 291 LI Altova UModel C Program Files Altova UModel2006UModelExamples Bank_CSharpuma iol x E File Edit Project Layout View Tools Window Help _ EX MUA E bh Bi 152 281 79 83 8t HTS 215 gly dl ls e ro Jl ed ea ee Model Tree DX LE 7 bank view A BankYiew Main FA Hierarchy of Account men E Sample Accounts E E Agencyb ank E EJ John s 1st E E John s nd E E John s 3rd E H Account aE Bank BankHamet Operation lt lt GetAccessor gt visibility protected IPAddressi Operation lt lt GetAccessor gt visibility Username Operation lt lt GetAccessor gt gt visibility Password Operation lt lt GetAccessor gt visibiliby MA Bank leys gt C Model T EF Diagr
240. from the European Union to a third country if the individual has unambiguously given his consent to the transfer of personal information regardless of the third country s level of protection By agreeing to this Software License Agreement you consent to the transfer of all such information to the United States and the processing of that information as described in this Software License Agreement and the Privacy Policy 8 TERM AND TERMINATION This Software License Agreement may be terminated a by your giving Altova written notice of termination b by Altova at its option giving you written notice of termination if you commit a breach of this Software License Agreement and fail to cure such breach within ten 10 days after notice from Altova or c at the request of an authorized Altova reseller in the event that you fail to make your license payment or other monies due and payable In addition the Software License Agreement governing your use of a previous version that you have upgraded or updated of the Software is terminated upon your acceptance of the terms and conditions of the Software License Agreement accompanying such upgrade or update Upon any termination of the Software License Agreement you must cease all use of the Software that this Software License Agreement governs destroy all copies then in your possession or control and take such other actions as Altova may reasonably request to ensure that no copies of the Software remain i
241. g Account qetBalance float getld i String colectAccountintotin Bank Fh boolean heckingAccount CreditCardAccount SavingsAccount from bankviewy al interestRate float ance float 1 0000 creditLimit float O interestRateonBalance float interestrateOnCazhAdwance float amp gstitinimumBalance flost Bank APT boolean collectAccountinforin CredtlardAccount Savings4 ccount Altova UModel 2013 2012 Altova GmbH UModel tutorial Object Diagrams 39 44 Object Diagrams Altova web site UML Object diagrams The aim of this tutorial section is to e Show how class and object diagrams can be combined in one diagram to give you a snapshot of the objects at a given point of time e Create Objects Instances and define the relationships between them e Format association links Enter real life data into objects instances To open the Object diagram 1 Double click the Sample Accounts diagram icon under the bankview package or under Object Diagrams in the Diagram Tree tab The Bank class and two related objects instances are displayed in the object diagram AltovaBank Bank is the object instance of the Bank class while John s checking CheckingAccount is an instance of the class CheckingAccount Model Tree E Fa altova E h bank lev A Account Hierarchy FA Banker Main Lo Sample Accounts i Supra AltovaB ank AS John s Checking i GE John s Credit I John s Saving DE Account bankname
242. g DA bankview E Account Hierarchy E BankWiew Main 0 Sample Accounts E EQ Altovabank E E John s Checking E EQ John s Credit E E John s Saving E ES Aecoun C Model Tree Diagram Tree Favorites In the Model Tree tab each folder symbol is a UML package Adding a new package or any other modeling element 1 Right click the folder that you want the new package element to appear under 2 Select New Package or respective model Element Copying or moving model elements Use the standard windows Cut Copy or Paste commands or 2 Drag model elements to different packages Dragging an elements moves it Holding down CTRL a and dragging an element creates a copy When dragging elements a message might appear stating that select No sort needs to be activated to allow you to complete the action Please see Cut copy and paste in UModel Diagrams for more information Sorting elements in the Model Tree activating no sort 1 Right click the empty background of the Model Tree tab 2 Select Sort No sort Elements can now be positioned anywhere in the Model Tree Please note The Sort popup menu also allows you to individually define the sort properties of O 2012 Altova GmbH Altova UModel 2013 68 UModel User Interface Model Tree Properties and Operations Renaming an element 1 Double click the element name and edit it The Root and Component View packages are the only two elements that canno
243. generation is integrated into the normal round trip engineering process This means that State Machine code can be automatically updated on every forward engineering process Operating entry OnEntry Operating exit f OnExitOperatingl a entry OnentryHeatert exit OnExtHeater modeSelect modeSelect Cooler standby Button entry OnEntrycooler exit f OnExitCooler H standby entry OnentryStandby PERO ARA III ER EE E IL exit J OnExitstandby Region peed speedSelect powerButtont speedSelect standby Buttoni speedSelect bower Buttont On _Off_Qperating_Effect The screenshot above shows the AirCondition State Machine diagram which is available in the StateMachineCodeGeneration directory under lUModelExamples A separate directory exists for each of the code generation languages supported by UModel i e C Java and VB Each directory contains an AirCondition and Complex folder which contains the respective UModel project programming language project files as well as the generated source files The Complex ump project file contains almost all of the modeling elements and functionality that UModel supports when generating code from State Machine diagrams Each directory also contains a test application e g TestSTMAIirCondition sin for CF allowing you to work with the generated source files immediately O 2012 Altova GmbH Altova UModel 2013
244. ges should not be made manually in the generated code as these changes are not are not reflected in the State Machine diagram during the reverse engineering process Properties name Airlondition tateMachineDiagrarm element kind Automatic Update Code Properties Styles F Hierarchw Clicking the icon of the Automatic Update field opens the Generate State Machine Code dialog box allowing you to change the code generation settings Please note You can perform a syntax check on a State Machine diagram by right clicking the diagram and selecting Check State Machine Syntax Working with State machine code The parent class of the state machine i e the controller class or context class is the one and only interface between the state machine user and the state machine implementation The controller class provides methods which can be used from outside to change the states e g after external events occur The state machine implementation however calls controller class methods callbacks to inform the state machine user about state changes OnEntry OnExit transition effects and the possibility to override and implement methods for conditions guards UModel can automatically create simple operations without any parameter for entry exit do behaviors transition effects when the corresponding option is turned on also see Creating states activities and transitions These methods can be changed t
245. ght at a later time to enforce the same or any other term of this Software License Agreement This Software License Agreement may be amended only by a document in writing signed by both of us In the event of a breach or threatened breach of this Software License Agreement by either party the other shall have all applicable equitable as well as legal remedies Each party is duly authorized and empowered to enter into and perform this Software License Agreement If for any reason any provision of this Software License Agreement is held invalid or otherwise unenforceable such invalidity or unenforceability shall not affect the remainder of this Software License Agreement and this Software License Agreement shall continue in full force and effect to the fullest extent allowed by law The parties knowingly and expressly consent to the foregoing terms and conditions Last updated 2012 09 19 Altova UModel 2013 O 2012 Altova GmbH Index 467 Index NET Framework Include file 142 1 4 Java 59 2 2 way project merge 145 3 3 way project manual merge 148 merge 146 5 5 0 Java 59 A Absolute and relative links 172 Abstract class 28 Activation box Execution Specification 238 Activity Add diagram to transition 202 Add operation 202 Add to state 202 create branch merge 189 diagram elements 191 icons 369 Activity diagram 186 inserting elements 187 Actor customize 20 use
246. ghts The Altova Software and any copies that you are authorized by Altova to make are the intellectual property of and are owned by Altova and its suppliers The structure organization and code of the Software are the valuable trade secrets and confidential information of Altova and its suppliers The Software is protected by copyright including without limitation by United States Copyright Law international treaty provisions and applicable laws in the country in which it is being used Altova retains the ownership of all patents copyrights trade secrets trademarks and other intellectual property rights pertaining to the Software and that Altova s ownership rights extend to any images photographs animations videos audio music text and applets incorporated into the Software and all accompanying printed materials Notifications of claimed copyright infringement should be sent to Altova s copyright agent as further provided on the Altova Web Site Altova software contains certain Third Party Software that is also protected by intellectual property laws including without limitation applicable copyright laws as described in detail at http Awww altova com legal 3rdparty html All other names or trademarks are the property of their respective owners Altova UModel 2013 2012 Altova GmbH Appendices License Information 455 16 1 4 Altova End User License Agreement THIS IS A LEGAL DOCUMENT RETAIN FOR YOUR RECORDS ALTOVA
247. gineering have been made due to the new UML version 2 3 please see Projects and code engineering Java CH VB NET code to from UModel for more information The class modifiers sealed C NotInheritable VB NET and final Java are now mapped to UML isFinalSpecification The Java modifier final for fields and methods are now mapped to UML leaf The 2010 version of UModel includes the following major and minor enhancements Code engineering e Ability to resolve aliases when reverse engineering code e small improvements in sequence diagram generation User Interface e Comments entered in the documentation wndow can now be shown edited in diagrams Tagged values can now be shown in new compartment in classes interfaces etc Hyperlinks can now be defined in the Documentation wndow Hyperlinks to elements in the Model Tree are now possible UML containment lines can now be displayed O 2012 Altova GmbH Altova UModel 2013 10 What s new in UModel Documentation generation e CSS code can be saved in HTML files or externally e Generated image files can be saved in a specified subdirectory File system e Save Copy As is now supported The 2009 version of UModel includes the following major and minor enhancements Support for UML 2 2 Sequence Diagram generation directly from source code Support for Version Control Systems in the standalone version New UML Profile Diagram Det
248. gly the limitations set forth in Section 1 d regarding the number of installations and the requirement that the usage be on the same physical network shall not apply to terminal server application virtualization session or virtual machine environments In a virtual environment you must deploy a reliable and accurate means of preventing users from exceeding the Permitted Number of concurrent users Altova makes no warranties or representations about the performance of Altova software in a terminal server application virtualization session or virtual machine environment and the foregoing are expressly excluded from the limited warranty in Section 5 hereof Technical support is not available with respect to issues arising from use in such environments f Backup and Archival Copies You may make one 1 backup and one 1 archival copy of the Software provided your backup and archival copies are not installed or used on any computer and further provided that all such copies shall bear the original and unmodified copyright patent and other intellectual property markings that appear on or in the Software You may not transfer the rights to a backup or archival copy unless you transfer all rights in the Software as provided under Section 3 g Home Use Personal and Non Commercial In order to further familiarize yourself with the Software and allow you to explore its features and functions you as the primary user of the computer on which the Soft
249. gram as a PNG or EMF enhanced metafile file Very large PNG files in the gigabyte range can now be saved Save all Diagrams as Images Save all diagrams of the currently active project as a PNG or EMF enhanced metafile files Import from XMI file Imports a previously exported XMI file If the file was produced with UModel then all extensions etc will be retained Export to XMI file Export the model as an XMI file You can select the UML version as well as the specific IDs that you want to export please see XMI XML Metadata Interchange for more information AMI Export Encoding is Select MI type General options lt M 2 1 for UML 2 0 Prethy print hl output eM 2 1 for UML 2 1 2 Export UUID lt MI 2 1 for UML 2 2 Export UModel Extensions Ml 2 1 for UML 2 3 Export diagrams MI 24 1 for UML 2 4 1 Cancel Send by Mail Opens your default mail application and inserts the current UModel project as an attachment Print Opens the Print dialog box from where you can print out your modeling project as hardcopy Altova UModel 2013 O 2012 Altova GmbH UModel Reference File 391 What fe whole diagram C Selection Print Preview 00M Print Setup Use current Cancel dida Page split of pictures C Prevent r Allow Use current retains the currently defined zoom factor of the modeling project Selecting this option enables the Page split of pi
250. gt Welcome to XML pageheader gt Welcome lt icurrentsection honmne lt curr lt icurrentsection gt home currentsub zection gt home lt Cc currentsubsection gt content show pageheader content show pagehe malncontent full vidt malncontent fu table width 100 table widt header style header FO gt para XML row gt TOWN gt 4 lla Deleted lines Changed lines Inserted lines Ln 2 Col 1 The differences between the two files are highlighted in both windows this example uses MS SourceSafe Altova UModel 2013 2012 Altova GmbH Source Control Source Control Commands 363 12 4 14Show Properties This command displays the properties of the currently selected file and is dependent on the source control provider you use To display the properties of the currently selected file e Select Project Source Control Properties This command can only be used on single files Bank_CSharp codegen SavingsAccount cs x General check Out Status Links Paths Mame Bank_CSharp codegen SavingsAccount cs Type JanstiMBcs Size O bytes O lines O Store only latest version Latest version 1 Date 9 18 0838 6 52p Comment ro imp O 2012 Altova GmbH Altova UModel 2013 364 Source Control Source Control Commands 12 4 15 Refresh Status This command refreshes the status of all project files independent of their current status
251. h connectable element of the classifier or operation plays which role in the collaboration Altova UModel 2013 2012 Altova GmbH Structural Diagrams 283 UML Diagrams 10 2 3 Component Diagram Please see the Component Diagrams section in the tutorial for more information on how to add component elements to the diagram H 8 Class Diagrams 53 Communication Diagrams E fa Component Diagrams Bank realizations iu ST Overview E Composite Structure Diagrams a Deployment Diagrams cn ga Interaction Overview Diagrams ac Eg Object Diagrams Package Diagrams Ei Sequence Diagrams E fy State Machine Diagrams Eg Timing Diagrams E a UseCase Diagrams C Model T E Diagram de Favorites ax Properties Bank realizations name Component Diagram element kind BankView from bank view s component Bank from bank view BankView from Banker CheckingAccount i from bankview CreditCardAccount from bank view Altova UModel 2013 2012 Altova GmbH 284 UML Diagrams Structural Diagrams 10 2 4 Deployment Diagram Please see the Deployment Diagrams section in the tutorial for more information on how to add nodes and artifacts to the diagram Home PC lt lt artifact gt 4 BankView jar uh i lt lt TCPAPS lt lt artifact gt 4 lt lt anftifact 4 BankAdresses ini BankAPl jar n
252. hat still exist in the second file remain deleted from the merged model Differences to the same modeling elements If a property e g the visibility of a class is changed in either the source or second file the updated value is used in the merged model If a property e g the visibility of a class is changed in both source and second file the value of the second file is used and a warning is shown in the messages window Moved elements If an element is moved in the source or second file then the element is moved in the merged model If an element is moved to different parents in both the source and second file a prompt appears and you have to manually select the parent element in the merged model Diagram differences UModel first checks to see if there are differences between diagrams of the two models If there are then the new different diagram is added to the merged model with a running number suffix activity1 etc and the original diagram is retained Altova UModel 2013 O 2012 Altova GmbH Projects and code engineering Merging UModel projects 147 If there are no differences then identical diagrams s are ignored and nothing is changed You can then decide which of the diagrams you want to keep or delete you can of course keep both of them if you want Source control systems support for 3 way merging When checking in out project files UModel automatically generates Common ancestor or snapsho
253. he Permitted Number is not exceeded Without prejudice or waiver of any potential violations of the Software License Agreement Altova may provide you with additional compliance tools should you be unable to accurately account for license usage within your organization If provided with such a tool by Altova you a are required to use it in order to comply with the terms of this Software License Agreement and b permit Altova to use your internal network for license monitoring and metering and to generate compliance reports that are communicated to Altova from time to time c Software Activation Altova s Software may use your internal network and Internet connection for the purpose of transmitting license related data at the time of installation registration use or update to an Altova operated license server and validating the authenticity of the license related data in order to protect Altova against unlicensed or illegal use of the Software and to improve customer service Activation is based on the exchange of license related data between your computer and the Altova license server You agree that Altova may use these measures and you agree to follow any applicable requirements You further agree that use of license key codes that are not or were not generated by Altova and lawfully obtained from Altova or an authorized reseller as part of an effort to activate or use the Software violates Altova s intellectual property rights as well as the t
254. he respective files CTRL click in Model Tree e Folders click on the folders CTRL click in Model Tree Advanced Allows you to define the Replace writable and Set timestamp options in the respective combo boxes Replace writable Ask Set timestamp Current gt Miemb _ 8 The Make writable check box removes the read only attribute of the retrieved files O 2012 Altova GmbH Altova UModel 2013 356 Source Control Source Control Commands 12 4 9 Add to Source Control Adds the selected files or folders to the source control database and places them under source control If you are adding a new UModel project you will be prompted for the workspace folder and the location at which your project should be stored Having placed the UModel project file ump under source control you can then add the code files produced by the code engineering process to source control as well The working directory used in this section is c temp ssc Bank_CSharp Please note that for this to work the generated code files and the UModel project have to be placed in or under the same SourceSafe working directory E g Bank_CSharp 1 Expand the Component View folder in the Model Tree and Navigate to the BankView component Model Tree Root E Component view a Banking access E Bank view i B Bank view realization E Bank view i E Bank iew GUI C Model Tree E Diagram Tree F Favorites
255. hms of the Software by any means whatsoever directly or indirectly or disclose any of the foregoing except to the extent you may be expressly permitted to decompile under applicable law in the European Union if it is essential to do so in order to achieve operability of the Software with another software program and you have first requested Altova to provide the information necessary to achieve such operability and Altova has not made such information available Altova has the right to impose reasonable conditions and to request a reasonable fee before providing such information Any information supplied by Altova or obtained by you as permitted hereunder may only be used by you for the purpose described herein and may not be disclosed to any third party or used to create any software which is substantially similar to the expression of the Software Requests for information from users in the European Union with respect to the above should be directed to the Altova Customer Support Department k Other Restrictions You may not loan rent lease sublicense distribute or otherwise transfer all or any portion of the Software to third parties except to the limited extent set forth in Section 3 or as otherwise expressly provided You may not copy the Software except as expressly set forth above and any copies that you are permitted to make pursuant to this Software License Agreement must contain the same copyright patent and other intellectual proper
256. hose tagged element values of a class without the owned attributes where a value exists XML Schema annotation When importing XML schemas please note that only the first annotation of a complex or simpleType is displayed in the Documentation window Inserting XML Schema elements Using the toolbar icons 1 Click the specific XML Schema diagram icon in the toolbar 2 Click in the XML Schema diagram to insert the element Note that holding down CTRL and clicking in the diagram tab allows you to insert multiple elements of the type you selected Dragging existing elements into the XML Schema diagram Elements occurring in other diagrams can be inserted into an existing XML Schema diagram 1 Locate the element you want to insert in the Model Tree tab you can use the search function text box or press CTRL F to search for any element 2 Drag the element s into the XML Schema diagram Note you can also use the Copy and Paste in diagram only commands to insert elements Please note Either method described above applies to any of the XML Schema elements that can be inserted onto the diagram XSD Target Namespace Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Additional Diagrams 311 Inserts defines the target namespace for the schema The XSD Target Namespace must belong to an XSD Namespace Root package XSD Schema Inserts defines an XML schema The XSD schema must belong to an XSD Target Namespace pa
257. hy FA BankView Main i POS Sample Accounts E Altowab ank AS John s Checking za Model Tree EH Diagram Tree Favorites The Account Hierarchy tab is now visible in the working area Inserting existing classes into a diagram 1 Click the Account class in the bankview package under com altova bankview and com A a altova ii a ia bankview ae FA Account Hierarchy bo ES Banker Main da EA Sample Accounts E E AltowaB ank TE John s Checking ME Account mA Bank E E Bank iew Ed Drag it into the Account Hierarchy tab Click the CheckingAccount class of the same package and drag it into the tab Place the class below and to the left of the Account class Use the same method to insert the CreditCardAccount class Place it to the right of the CheckingAccount class oe de Altova UModel 2013 2012 Altova GmbH UModel tutorial Class Diagrams 35 Account from bankviewy balance float 0 ld String Account getBalance float getld String collect 4Accountinforin Bank AP boolean CheckingAccount CreditCardAccounti from bankviewy from bankvievy El al minimunBalance float 0000 i al creditLimit float i al iterestrRateOnBalance float I CheckingAccount gt aia cael a interestRateOnCashAdvance float lt gt collect amp ccountinfocin Bank A amp F boolean CredittardAccouni getCreditLimito float getinterestrateOnBalance float g
258. i e model to code alias definitions are retained in the code as is The scope of the alias definitions are the files in which they appear e g using Q System Collections Generic Queue lt String gt O myQueue Any potentially conflicting aliases are added to the Unknow externals if their use is unclear Note The Resolve alias settings can be changed at any time in the Project Settings dialog box Defined symbols CH or Visual Basic code allow you to enter a list of Defined symbols in the field of that name These directives are used to conditionally compile sections of code Enter these directives as a semicolon delimited list UModel takes the defined symbols into account during the code engineering process O 2012 Altova GmbH Altova UModel 2013 124 Projects and code engineering Importing source code into projects UModel outputs all symbols used in the source code in the message window when the reverse engineering process is completed Update UModel Project from Program Code DocComments as Documentation e Resolve aliases Defined symbols DEBUG E g If DEBUG Then Dimi 10 HElse dim a 20 End If Raised exceptions Clicking an operation in one of the classes then clicking the Exception combo box displays the exception information that an operation can throw Properties name gethret element kind Operation visibility public leal static abstract query raised exceptions lt lt
259. iagrams Structural Diagrams Double clicking the ellipsis in the attribute compartment of the left hand class shows that the Show elements radio button is active toa TALE DDE MUR aia aces l i Yisible elements Element Styles Show Attributes I public M private Show Operations MW public M private Show nested Classifier I public I private SavingsAccount a minimumBalance flost 1 0000 O interestRate float minimumBalance float 1 0000 SavingsAccounti getInterestRater float collectAccountintofin bank APLIBank API getMinimumBalance s float Show elements When new elements are added and not hidden by Els C Hide elements except those added to this node Double clicking the ellipsis in the attribute compartment of the right hand class shows that the Hide elements except those added to this node radio button is active Altova UModel 2013 2012 Altova GmbH UML Diagrams Structural Diagrams 273 SavingsAccouni SavingsAccounti ance float 1 0000 al minimumBalance float 1 0000 1 e _ i li i li _ e A A in ounti Visible elements Element Styles Attributes Show Attributes O interestRate float minimumBalance float 1 0000 Operations W private I package O Savings Account M public protected getinterestRate 1 float Show Operations O collectAccountintotin bank AFl Bank AF k i public protected
260. ically hyperlinked in the onscreen output enabling you to navigate from component to component To generate documentation in MS Word format you must have MS Word version 2000 or later installed Having opened a UML project e g Bank_Multilanguage ump 1 Select the menu option Project Generate Documentation This opens the Generate documentation dialog box The screenshot below shows the default dialog box settings Generate Documentation x Main Include Details Fonts Documentation Design 7 Use fixed design for documentation in HTML Word or RTF Format Use user defined design for HTML Word RTF or PDF format Requires StyleVision Select SPS design RARE Edit Output Format Generate links to local files absolute HTML Create diagrams as C Microsoft Word Pr C EME C RTF C Embed diagrams PDF see above C relative to result file create folder For diagrams I Split output to multiple Files Embed C55 in HTML M Show result file after generation Cancel Note that you can also create partial documentation of modeling elements by right clicking an element or multiple elements using CTRL click in the Model Tree and selecting Generate Documentation The element can be a folder class interface etc The documentation options Altova UModel 2013 2012 Altova GmbH Generating UML documentation 173 are the same in both cases Relate
261. icense for use of the Software pursuant to the terms of this Software License Agreement that i the Software will perform substantially in accordance with any accompanying Documentation for a period of ninety 90 days from the date of receipt and ii any support services provided by Altova shall be substantially as described in Section 6 of this agreement Some states and jurisdictions do not allow limitations on duration of an implied warranty so the above limitation may not apply to you To the extent allowed by applicable law implied warranties on the Software if any are limited to ninety 90 days Altova s and its suppliers entire liability and your exclusive remedy shall be at Altova s option either i return of the price paid if any or ii repair or replacement of the Software that does not meet Altova s Limited Warranty and which is returned to Altova with a copy of your receipt This Limited Warranty is void if failure of the Software has resulted from accident abuse misapplication abnormal use Trojan horse virus or any other malicious external code Any replacement Software will be warranted for the remainder of the original warranty period or thirty 30 days whichever is longer This limited warranty does not apply to Evaluation and or Pre release Software b No Other Warranties and Disclaimer THE FOREGOING LIMITED WARRANTY Altova UModel 2013 O 2012 Altova GmbH Appendices License Information 461 AND REME
262. icensed to use this copy of the Software through a valid license from Altova c Named Use If you have licensed the Named User version of the software you may install the Software on up to five 5 compatible personal computers or workstations of which you are the primary user thereby allowing you to switch from one computer to the other as necessary provided that only one 1 instance of the Software will be used by you as the Named User at any given time If you have purchased multiple Named User licenses each individual Named User will receive a separate license key code d Concurrent Use in Same Physical Network or Office Location If you have licensed a Concurrent User version of the Software you may install the Software on any compatible Altova UModel 2013 2012 Altova GmbH Appendices License Information 457 computers in a commercial environment only up to ten 10 times the Permitted Number of users provided that only the Permitted Number of users actually use the Software at the same time and further provided that the computers on which the Software is installed are on the same physical computer network The Permitted Number of concurrent users shall be delineated at such time as you elect to purchase the Software licenses Each separate physical network or office location requires its own set of separate Concurrent User Licenses for those wishing to use the Concurrent User versions of the Software in more than
263. ict behavioral features of a system or business process and include a subset of diagrams which emphasize object interactions Behavioral Diagrams Activity Diagram State Machine Diagram Protocol State Machine Diagram Use Case Diagram A subset of the Behavioral diagrams are those that depict the object interactions namely Communication Diagram Interaction Overview Diagram E Sequence Diagram Timing Diagram 2012 Altova GmbH Altova UModel 2013 186 UML Diagrams Behavioral Diagrams 10 1 1 Activity Diagram Altova web site E UML Activity diagrams Activity diagrams are useful for modeling real world workflows of business processes and display which actions need to take place and what the behavioral dependencies are The Activity diagram describes the specific sequencing of activities and supports both conditional and parallel processing The Activity diagram is a variant of the State diagram with the states being activities Please note that the Activity diagram shown in the following section is available in the Bank_MultiLanguage ump sample in the UModelExamples folder supplied with UModel manual invokation Receive Update Ul Event Validate References 1 sec since last update X reference missing valid C aborted Handle Display Exception collectAccountinfos Bank view result Exception put T om E m 3 SLI E C weight lt datastore gt z Se
264. ies of font software converted into other formats to such person or entity b you retain no copies including backups and copies stored on a computer c the receiving party secures a personalized key code from Altova and d the receiving party accepts the terms and conditions of this Software License Agreement and any other terms and conditions upon which you legally purchased a license to the Software Notwithstanding the foregoing you may not transfer education pre release or not for resale copies of the Software 4 PRE RELEASE AND EVALUATION PRODUCT ADDITIONAL TERMS If the product you have received with this license is pre commercial release or beta Software Pre release Software then this Section applies In addition this section applies to all evaluation and or demonstration copies of Altova software Evaluation Software and continues in effect until you purchase a license To the extent that any provision in this section is in conflict with any other term or condition in this Software License Agreement this section shall 2012 Altova GmbH Altova UModel 2013 460 Appendices License Information supersede such other term s and condition s with respect to the Pre release and or Evaluation Software but only to the extent necessary to resolve the conflict You acknowledge that the Pre release Software is a pre release version does not represent final product from Altova and may contain bugs errors and other
265. iew elements 231 Package diagram elements 287 simple state 202 Timing diagram elements 261 with 94 Installation examples folder 14 2012 Altova GmbH 474 Index Installer multi user 14 Installing version control systems 333 Instance diagram 39 multiple class and display of 269 object 39 Integrating subprojects into main 320 Intelligent autocomplete 28 Interaction operand 239 multi line 239 Interaction operator defining 239 Interaction Overview icons 375 inserting elements 231 Interaction Overview diagram 231 Interaction use 242 Interface ball and socket 269 implementing 269 Introduction 6 J Java code 432 code and class file names 134 code to model correspondence 137 exception 120 import binary file 125 namespace root 135 versions supported 59 JavaDocs 82 K Keyboard shortcut 418 L Label show hide text label 85 165 Layout 404 Legal information 451 License 455 information about 451 License metering in Altova products 453 Lifeline attributes 238 General Value 261 typed property as 238 Lifelline goto 238 Limit constrain elements 67 Line orthogonal 44 weight thickness in diagrams 85 Line break in actor text 20 Line up elements 89 Lines formatting 39 snap lines 422 Link create hyperlink 96 Model Tree element 96 Links relative to documentation 172 List unused elements 67 Lo
266. ific icon in the Package Diagram toolbar Add Elements Package Diagr X a mer mE a 2 Click in the diagram to insert the element Note that holding down CTRL and clicking in the diagram tab allows you to insert multiple elements of the type you selected Dragging existing elements into the Package Diagram Elements occurring in other diagrams e g other packages can be inserted into a Package diagram 1 Locate the element you want to insert in the Model Tree tab you can use the search function text box or press CTRL F to search for any element 2 Drag the element s into the diagram 2012 Altova GmbH Altova UModel 2013 288 UML Diagrams Structural Diagrams E Package Inserts the package element into the diagram Packages are used to group elements and also to provide a namespace for the grouped elements Being a namespace a package can import individual elements of other packages or all elements of other packages Packages can also be merged with other packages Profile Inserts the Profile element which is a specific type of package that can be applied to other packages The Profiles package is used to extend the UML meta model The primary extension construct is the Stereotype which is itself part of the profile Profiles must always be related to a reference meta model such as UML they cannot exist on their own Dependency Inserts the Dependency element which indicates a supplier cli
267. ight click and run cmd exe As administrator 4 Goto the lt installation AccuRev dir gt bin directory 5 Enter the following command at the command prompt Regsvr32 AccuRev dll Regsvr32 SccAcc dll Run the SwitchScc exe program and set AccuRev as the provider Perform a Windows log off and log in again vo Aigenta Unified SCC 1 0 6 http aigenta com products UnifiedScc aspx Requirements source control client Aigenta Unified SCC works with e subversion command line client 1 5 4 at http subversion tigris org e CVSNT 2 5 client at http Avww cvsnt org e Bazaar 1 9 Windows and related pre requisites at http bazaar vcs org http bazaar vcs org Windowslnstall A standard installation will work correctly with Altova products Borland StarTeam Cross Platform Client 2008 R2 http www borland com us products starteam To install the Borland StarTeam Microsoft SCC integration run the setup program and choose to install the SCC API Integration Altova products can now connect to the repository by specifying the server address the end point user and password to log on your project and working path Codice Software Plastic SCM Professional 2 7 127 10 SCC Plugin http www codicesoftware com xpproducts aspx A standard installation will work correctly with Altova products It is sufficient to install the client and the Visual Studio SCC plug in components ComponentSoftware CS RCS PRO 5 1 http
268. in te TA OR 89 5 10 2 Cut copy and paste in UModel Diagrams ii 91 Altova UModel 2013 LL Adding Inserting model clemencia aiii 94 312 dHyperlinkine modeline clemencia 96 5 13 Bank Samples ti dai 101 6 UModel Command line interface 106 6 1 File New Load Save Opn aa 110 7 Projects and code engineering 112 7 1 Minimalist UModel project starting from Scratch oooocnnooococccccconncccnnononnnnnanananano conos 115 EZ Importine source code Mto projects enaere a eA 00 EGEAS REAR 120 To Importing Java CA and VB bmaries s e di 125 7 4 Synchronizing Model and source code ii 130 FAL iSyACHrOMIZACON Ups nia 132 7 4 2 Refactoring code and synchronization i 134 13 Forward eneineetin prerequisites allena 135 TG Java code to from U Model Clements vns 137 RI GH code to irom UModel elements is dd 138 7 9 AML Schema to from UModel elements ci A isa 139 LY NB NET code to tom U Model elements ias GEN 140 iO Database to rom UNodel elements anita a sia 141 PAL Incluidine other Model pro ect 142 42 Moro He UU Model Pro ect ali 144 AER a A lai toatl dea ae 145 T 12 2 o Way Project MESS ati 146 7 12 3 Manual 3 way project merge example i 148 7 13 Sharing Packaces and Diagrams ansi ere 151 TIA SUMEN 154 LIAL Template signal a laicale 156 TAA Template Bindinpaicel lele 157 7 14 3 Template usage in ope
269. ing files with excessively long lines We recommended that you pretty print all files particularly ump files before storing them in the repository This limits the line length avoiding problems with the CVSConflictEditor 2012 Altova GmbH Altova UModel 2013 346 Source Control Source Control Commands 12 4 Source Control Commands The following sections will use Visual SourceSafe to show the source control features of UModel The description of the version control commands that follow only apply to the standalone version of UModel The Visual Studio and Eclipse versions of UModel use the version control functionality and menu items available in those IDES Open from Source Control Enable Source Control Get Latest Version Get Get Folder s Check Out Check In Undo Check Out Add to Source Control Remove from Source Control Share from Source Control Show History Show Differences Show Properties Refresh Status Source Control Manager Change Source Control Altova UModel 2013 2012 Altova GmbH Source Control Source Control Commands 347 12 4 1 Open from Source Control The Open from Source Control command creates a local project from an existing source control database and places it under source control SourceSafe in this case 1 Select Project Source Control Open from Source Control The Login dialog box is opened enter your login details to continue The Create local proje
270. ing the kind combo box entry in the Properties tab Properties name ExitPoint element kind Pseudostate visibility unspecified Point 2012 Altova GmbH Altova UModel 2013 222 UML Diagrams Behavioral Diagrams ConnectionPointReference A connection point reference represents a usage as part of a submachine state of an entry exit point defined in the statemachine reference by the submachine state To add Entry or Exit points to a connection point reference e The state which the point is connected to must itself reference a submachine State Machine visible in the Properties tab e This submachine must contain one or more Entry and Exit points i Transition A direct relationship between two states An object in the first state performs one or more actions and then enters the second state depending on an event and the fulfillment of any guard conditions Transitions have an event trigger guard condition s an action behavior and a target state Supported event subelements are e ReceiveSignalEvent SignalEvent SendSignalEvent ReceiveOperationEvent SendOperationEvent and ChangeEvent fot Toggle automatic creation of operations in target by typing operation names Activating the Toggle automatic creation of operations in target by typing operation names icon automatically creates the corresponding operation in the referenced class when creating a transition and entering a name myOperation N
271. ingle overview diagram and or a diagram for each package The settings shown are the default settings 2012 Altova GmbH Altova UModel 2013 122 Projects and code engineering Importing source code into projects Content Diagram Generation E x Content diagrams Style Generate single diagram Show Attributes compartment M Generate diagram per package Show Operations compartment Open diagram Show nested Classifiers compartment Show nested classifiers separately Show EnumerationLiterals compartment Show Tagged Values Use own compartment for MET properties Show anonymous bound elements w Hyperlink package s to diagramjz Show HET properties compartment Autolayout e Autolapont hierarchic Z lt Back Finish Cancel 6 Click Next to continue This dialog box allows you to define the package dependency generation settings Package Dependency Diagram Generation Package dependency diagram Style Fill color of external packages w Open diagram i 6 Autolayout MW Autolapout hierarchic Ignore external packages not child of import target iW Hyperlink package to diagram ca _ 7 Click Finish to use the default settings The project is parsed and the UModel model is generated Altova UModel 2013 2012 Altova GmbH Projects and code engineering Importing source code into projects 123 Model Tre
272. inputting code into model The screenshot shows a small section of the table Please click HERE to open the HTML version of the table in your browser C lt gt UModel Component di directory Package Namespace name name lt lt namespace gt gt name am internal protected internal modifiers e attri sections lt lt attributes gt gt doc comments Comment gt Documentation Altova UModel 2013 2012 Altova GmbH Projects and code engineering XML Schema to from UModel elements 139 7 8 XML Schema to from UModel elements The table below shows the one to one correspondence between e UModel elements and XML Schema elements when outputting model to code e XML Schema elements and UModel model elements when inputting code into model i scum Element Bee property tagged value The screenshot shows a small section of the table Please click HERE to open the HTML version of the table in your browser XSD lt D UModel file path Component onent Package target namespace lt lt namespace gt gt attributeFormDefault attributeFormDefault blockDefault blockDefault elementFormDefault elementFormDefault finalDefault nalDefault ming bar appinfo we _ ___ annotation lt lt appinfo gt gt documentation Comment lt lt documentation gt gt 2012 Altova GmbH Altova UModel 2013 140 Projects and code engineering VB NET code to fr
273. installation will work correctly with Altova products Seapine Surround SCM Client 2009 0 0 http www seapine com surroundscm html A standard installation will work correctly with Altova products After installation a server connection must be established Serena Dimensions 10 1 3 for Win32 Client http www serena com products dimensions cm index html Supported Versions Dimensions Express CM 10 1 3 for Win32 Client e Perform a Typical installation of the Serena Dimension client e Specify the WEB client hostname and port number as requested Sergey Antonov HgSCC 1 0 1 for Mercurial SCS http www newsupaplex pp ru hgscc_news_eng html A standard installation will work correctly with Altova products Softimage Alienbrain Essentials Advanced Client 8 1 0 7300 http www alienbrain com e Perform a typical installation of the Alienbrain Client Software then install the Alienbrain Microsoft Visual Studio Integration To work with Altova products you do not need to install Microsoft Visual Studio e The first time you try to open a project from VCS or to add a project to VCS you will be asked to enter some user settings e g to specify your server and choose the project database you want to connect to SourceGear Fortress 1 1 4 Client http www sourcegear com fortress A standard installation of SourceGear Fortress client will work with Altova products Altova UModel 2013 2012 Altova GmbH Source Control In
274. into Perforce 2008 1 Click the Advanced button of the Source Control tab 2 Choose the tab Diff in the Preferences panel 3 Check as default differencing application the field Other application and enter the DiffDog full file path PushOK CVS SCC NT 2 1 2 5 PushOK SVN SCC 1 5 1 1 PushOK CVS SCC x64 version 2 2 0 4 PushOK SVN SCC x64 version 1 6 3 1 http www pushok com soft_cvs php The following steps will integrate Altova DiffDog into PushOK CVS NT and PushOK SVN SCC Click the Advanced button of the Source Control tab Choose the CVS Executables tab Select the value External merge compare tool into the Diff Merge field Insert the DiffDog full file path Edit the value first second into the 2 way diff cmd field ae oN gt Warning When using the default differencing editor CvsConflictEditor you might have problems comparing files with excessively long lines We recommended that you pretty print all files particularly ump files before storing them in the repository This limits the line length thus avoiding problems with the CVSConflictEditor QSC Team Coherence Client 7 2 1 35 http www teamcoherence com The following steps will integrate Altova DiffDog into Team Coherence Version Manager 1 Goto Team Coherence client Options Difference Viewer 2 Specify as the Default Difference Viewer application the DiffDog full file path 3 Specify as parameters SLF SRE Warning It is possible that
275. inues the spellchecking process Ignore once This command allows you to continue checking the document while ignoring the first occurrence of the unknown word The same word will be flagged again if it appears in the document Ignore all This command ignores all instances of the unknown word in the whole document Add to dictionary 2012 Altova GmbH Altova UModel 2013 408 UModel Reference Tools This command adds the unknown word to the user dictionary You can access the user dictionary in order to edit it via the Options dialog Change This command replaces the currently highlighted word in the XML document with the edited word in the Not in Dictionary text box Change all This command replaces all occurrences of the currently highlighted word in the XML document with the edited word in the Not in Dictionary text box Recheck Document The Recheck Document button restarts the check from the beginning of the document Adding dictionaries for the spellchecker For each dictionary language there are two Hunspell dictionary files that work together a aff file and dic file All language dictionaries are installed in a Lexicons folder at the following location On Windows 7 Cc ProgramData Altova SpellChecker Lexicons On Windows XP C Documents and Settings All Users Application Data Altova SharedBetweenVersions SpellChecker Lexicons Within the Lexicons folder different language dictionaries are each sto
276. ions UModel supports a special type of viewing Collection Associations Collection associations are special associations for collection templates A class property e g interface can generally be shown as an association to the type of the property UModel also allows an alternalte method of viewing this type of association Click on the lower of the two class handles on the right of the class then drag and drop the connector onto the target class i Classi L I E O I Select the collection type from the popup menu System Collections Generic LinkedListMode System Collections Generici List System Collections Generic Queue System Collections Generic Stack A different type of association arrow is created Altova UModel 2013 O 2012 Altova GmbH Creating model relationships Associations realizations and dependencies 169 Froperty al Property List lt T1 Class2 gt Example If associations are automatically created during reverse engineering you will see them as Collection Associations if the settings in the Diagram Editing tab are set to Resolve collections and are also available in the Collection Templates dialog box lt lt enumeration Color MyColorsContamer RED al mykolors List E Zolor GREEN BLUE The double arrow head shows that the type of myColors is not only Color but a collection of Colors The assocation will not be shown as List lt E gt C
277. ioral Diagrams OnState1State2Effect will be called by the state machine implementation whenever the transition between State1 and State2 is fired To react to this effect OnState1State2Effect should be overwritten in a derived class of CTestStateMachine CTestStateMachine OnState1State2Effect can also be set to abstract and you will get compiler errors until the method is overwritten When OnState1State2Effect is not abstract and the Generate debug messages option is active UModel will generate following debug output Overwrite to handle entry exit do actions transition effects public virtual void OnStatelState2Effect OnDebugMessage ACTION OnStatelState2Effect Example 3 a simple transition with an effect and parameter MyEvent1 OnState1StatezEffect 1 gt 27 The corresponding operation is automatically generated in UModel TestController lt gt MyEventi bool lt gt OnState1State2Effect in text String void Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 217 O 2012 Altova GmbH Altova UModel 2013 218 UML Diagrams Behavioral Diagrams e To effect operations automatically created by UModel parameters can be added manually UModel cannot know the required type e In this sample the parameter text String has been added to the Effect method in TestController A proper argument has to be specified whe
278. iple targets were defined a popup dialog appears allowing you to select one of the available targets 2012 Altova GmbH Altova UModel 2013 100 UModel User Interface Hyperlinking modeling elements Account Hierarchy http faltowa comisupport help html Clicking the first item opens the Hierarchy of Account diagram Navigating hyperlinks e Click the Previous La and Next gt icons in the main icon bar to navigate the source and destination links To edit change a hyperlink target 1 Right click the link icon and select Insert edit or remove hyperlinks item 2 Use the Edit Hyperlinks dialog box in to manage your hyperlinks Altova UModel 2013 2012 Altova GmbH UModel User Interface Bank samples 101 9 13 Bank samples The UModelExamples folder contains sample files which show different aspects of UML modeling in UModel They are designed to show language specific models for Java C and a combination of both languages in one modeling project The Bank_Java ump sample file is shown below e the Java profile has been assigned to the Bankview package e the Java namespace root has been assigned to the Banking access and BankView packages e the Interaction View package contains two interaction elements which each contain a sequence diagram Model Tree 7Root E Component View Deployment View E 7 Design View LL Overview E Banking access E E BankView E FA Apply Java Profile ii
279. irectly within a class O 2012 Altova GmbH Altova UModel 2013 94 UModel User Interface Adding Inserting model elements 9 11 Adding Inserting model elements Model elements can be created and inserted into diagrams using several methods By adding the elements to specific packages in the Model Tree view By dragging existing elements from the Model Tree tab into the diagram tab By clicking a specific UML element icon and inserting it into the diagram By using the context menu to add elements to the diagram and automatically to the Model Tree view Please note that multiple elements can be selected in the Model Tree using either SHIFT click or CTRL click Adding elements in the Model Tree Favorites tab e Right click a package select New and then select the specific element from the submenu This adds the new element to the Model Tree tab in the current project Inserting elements from the Model Tree view into a diagram Model elements can be inserted individually or as a group To mark multiple elements use the CTRL key and click each item There are two different methods of inserting the elements into the diagram drag left and drag right e Drag left normal drag and drop inserts elements immediately at the cursor position any associations dependencies etc that exist between the currently inserted elements and the new one are automatically displayed e Drag right holding down the right mouse button and re
280. is Modeling element icon representation in the Model Tree Package types UML Package Java namespace root package C namespace root package Visual Basic root package sl XML Schema root package En Java C VB code package package declarations are created when code is generated Diagram types Package diagram Profile diagram Sequence diagram State Machine diagram Timing diagram Use Case diagram XML Schema diagram Business Process Modeling Notation Activity diagram Class diagram Communication diagram Component diagram Composite Structure diagram Deployment diagram Interaction Overview diagram Object diagram Hao 1431 Dee 65 50 00 69 02 Element types An element that is currently visible in the active diagram is displayed with a blue dot at its base In this case a class element EY Class Instance Object LI Class instance slot E Class gl Property Operation Parameter Actor visible in active use case diagram gt Use Case Component Node Artifact Interface a 4 Relations package Altova UModel 2013 2012 Altova GmbH UModel tutorial Starting UModel 19 it Constraints 2012 Altova GmbH Altova UModel 2013 20 UModel tutorial Use cases 4 2 Use cases Altova web site UML Use Case diagrams The aim of this tutorial section is to Add a new package to the project Add a new Use Case diagram to the project Add use case elements to
281. ises of the Home PC node 2012 Altova GmbH Altova UModel 2013 50 UModel tutorial Deployment Diagrams Model Tree Foot E Component View E Banking access da 7BankYiew Bank View realization 03 Banker 3 BankWiew GUI El 7 Deployment View cei P Artifacts A Deployment E T Home PC E My Home PC T y BankAdresses ini C Model EXDiagra E Favorites Properties ix hame Deployment element kind DeploymentD agrarn To add a Node to a Deployment diagram Poo Od Home PC 1 Click the Node icon in the icon bar and click right of the Home PC node to insert it 2 Rename the node to Bank and drag on one of its edges to enlarge it Home PC To create a dependency between two nodes 1 Click the dependency icon F ad EN then drag from the Home PC node to the Bank node This creates a dependency between the two nodes 2 Click into the name field of the Properties tab change it to TCP IP and press Enter to confirm The dependency name appears above the dependency line Altova UModel 2013 O 2012 Altova GmbH UModel tutorial Deployment Diagrams 51 EN A E Mod E Diagr Favo LX Properties Iname TCP IP element kind Dependency visibility public Please note Having clicked the dependency arrow or any named elements you can also enter text directly through the keyboard without having to first click into the na
282. iting per default Using Get Folders e Select the folder you want to get in the Model Tree e Select Project Source Control Get Folders Source Control Get Folders Files OK CATEMP ssc CATE MP esc Bank CSharpicodegen Cancel Select All Advanced Recursive get tree MEM HA ae Overwrite changed files Overwrites those files that have been changed locally with those from the source control database Recursive get tree Retrieves all files of the folder tree below the selected folder Advanced Allows you to define the Replace writable and Set timestamp options in the respective combo boxes Replace writable ASK Z Cancel Set timestamp current gt Miemb _ t The Make writable check box removes the read only attribute of the retrieved files Altova UModel 2013 O 2012 Altova GmbH Source Control Source Control Commands 353 12 4 6 Check Out This command checks out the latest version of the selected files and places writable copies in working directory The files are flagged as checked out for all other users To Check Out files e Select the file or folder you want to check out in the Model Tree e Select Project Source Control Check Out Source Control Check Qut E Files OK CATE MP ciBank_ CSharpicodegenV4ccaunt cs CATEMPigec Bank CSharp icodegentBank View cz Cancel COTEMP ssc Bank _Csharplicodegenicheckingccount cs C CATEMPs cBank_CSharproodegentCr
283. ity Diagram Activity Diagram wmmp DO H gt 2b ele c x E E O G G E fi E gt H h A si G os Add Action CallBehaviorAction Action CallOperationAction AcceptEventAction AcceptEventAction TimeEvent SendSignalAction DecisionNode Branch MergeNode InitialNode ActivityFinalNode FlowFinalNode ForkNode vertical ForkNode horizontal JoinNode JoinNode horizontal InputPin OutputPin ValuePin ObjectNode CentralBufferNode DataStoreNode ActivityPartition horizontal ActivityPartition vertical ActivityPartition 2 Dimensional ControlFlow ObjectFlow ExceptionHandler Activity ActivityParameterNode StructuredActivityNode ExpansionRegion ExpansionNode InterruptibleActivityRegion Note Note Link 2012 Altova GmbH Altova UModel 2013 370 UModel Diagram icons Class Diagram 13 2 Class Diagram Relationship Association Aggregation Composition AssociationClass Dependency Usage InterfaceRealization Generalization Add Package Class Interface Enumeration Datatype Primitive Type Profile Stereotype ProfileApplication InstanceSpecification Note Note Link Altova UModel 2013 O 2012 Altova GmbH UModel Diagram icons Communication diagram 371 13 3 Communication diagram Add Lifeline Message Call Message Reply Message Creation Message Destruction Note Note Link O 2012 Altova GmbH Altova UModel 2013 3
284. ividually set to be included in the code engineering process The Java CF or VB namespace root package must be defined To create a component realization 1 Drag the class or interface onto the respective component in the Model Tree view You can also create a realization in a component diagram using the Realization icon To assign a physical location 1 Select the component in the Model Tree or in the diagram 2 Click the Browse button of the directory property and select a directory or enter it directly Model Tree Root Component view sscomponent gt E E Banking access BankWiew GUI 3 E DA BankWiew from Bank ie 3 S Bankview realization AE Bank ie wy USe 3 Bankview GUI A A El Deployment view s lt component zeusess Al F4 Design phase BankView 3 overview l from Bank view C Model Tree EX Diagram T 3 Favorites Properties x fro name Bank ley qualified name Component wiew Bank view element kind Component visibility public at C abstract O indirectlyins tantiatec code language Javal 4 O O gt o o gt gt O O lt gt directory Unicode bank view use for code engine To include components in the code engineering process 1 Select the component in the Model Tree or in the diagram 2 Activate the use for code engineering check box To define the Java namespace root 1 Right clicking a package and selecting Set as Java namespace r
285. l allows you to generate or merge program code directly from the Model Tree please see Synchronizing Model and source code for more information Constraining UML elements Constraints can be defined for most model elements in UModel Please note that they are not checked by the syntax checker as constraints are not part of the Java code generation process To constrain an element Model Tree 1 Right click the element you want to constrain and select New Constraint 2 Enter the name of constraint and press Enter 3 Click in the specification field of the Properties tab and enter the constraint e g name length gt 10 Properties name Constraint element kind Constraint visibility public specification name length gt 10 bankier constrained elements To constrain an element in UML diagrams 1 Double click the specific element to be able to edit it 2 Add the constraint between curly braces e g interestRate float interestRate gt 0 To assign constraints to multiple modeling elements 1 Right click the constrained elements field in the Properties tab 2 Select Add element to constrained elements This opens the Select Elements to be Constrained dialog box 3 Select the specific element you want to assign the current constraint to The constrained element field contains the names of the modeling elements it has been assigned to The image above shows that Constraint1 has been assigned to the
286. l2013 UModellInclude to appear in the Basic tab or e UModel2013 UModellInclude Java1 4 Java5 0 to appear in the Java tab AAA JavaE 0 VBBO vB9 0 OK Basic czo co Javat4 Javas0 Ea BPMN CHA Java UML Standard Profile ump Profile ump Profilesump Frofile ump y E Profile ump A E Profile ump Browse Description The VB Profile contains datatypes and stereotypes for YB and is essential tor YE RoundTrip Engineering Please note An include file which contains all types of the Microsoft NET Framework 2 0 is available in the CF 2 0 tab To view all currently imported projects e Select the menu option Project Open Subproject as project The flyout menu displays the currently included subprojects Open Subproject As Project b Java Lang ump Java Profile ump Clear Messages SI To create a user defined tab folder 1 Navigate to the UModel2013 UModellnclude and create add your folder below UModellnclude i e UModellnclude myfolder Altova UModel 2013 2012 Altova GmbH Projects and code engineering Including other UModel projects 143 To create descriptive text for each UModel project file 1 Create a text file using the same name as the ump file and place in the same folder Eg the MyModel ump file requires a descriptive file called MyModel txt Please make sure that the encoding of this text file is UTF 8 To remove an included project 1 C
287. lass and shows the relevant association 2012 Altova GmbH Altova UModel 2013 88 UModel User Interface Diagram pane E Property2 Class2 Property G myProperty To show source code comments in the model diagram e Right click the class in the diagram pane and select Show Annotating comments This allows you to directly edit source code DocComments also visible in the Documentation window in the modeling diagram BankView banks ordered Blankie 2 bankAPllBank Pl Design view E mi lt MykeyvaluePair gt Property Class public lt constructor gt Bank vievtin bank AFl Ba O colectBankAddres intos boolean C collect4ccountinfos boolean collectDatal boolean getBalanceAtBank in bankname String int 227 getBalanceSumOtAllBanks int lt SUmmary gt strongly yped resource class localization SUMMAary gt lt SUM nary gt strongly typed resource class localization E Properties SCA Styles F Hierarchy To adjust the line thickness weight in a project 1 Click in any diagram then click the Styles tab Making sure that the Project Styles entry in the combo box is active 2 Scroll down to Line thickness and select the value that you want This affects the thickness of all association aggregation generalization etc lines in all diagrams of the current UModel project Altova UModel 2013 2012 Altova GmbH UModel User Interface Diagram pane 89 5 10 1 Diagram proper
288. lass diagram icon in the Model Tree Model Tree E Deployment view E Design View El Account Transfer E 5 Bank Server banks Bank ordered El EJ Banking access bank API lBank2P Hd EJ Bank view iii lt lt constrUctor gt BankYjewvy in banks Ee Apply Java Profile fa com ii a figaltova ad E M bankyiew PS Bank view Main PA Hierarchy of Account collectBank amp Addressinfost boolean collectAaccountintos boolean collectDatatl boolean getBalanceAtBankcin bankname Strin getBalancesumOt AllBanks int 99099 6 00 A ee A T C Model Tree Ef Diagram Tree F Favorites This opens the class diagram and displays the associations between the various classes We now want to add an attribute to the BankView class and assign use the previously defined stereotype 2 Click the BankView class and press F7 to add an attribute 3 Use the scrollbar of the Properties tab to scroll to the bottom of the list Notice that the MyKeyValuePair stereotype is available in the list box O 2012 Altova GmbH Altova UModel 2013 294 UML Diagrams Structural Diagrams Properties derivedUnion C default none n a lt annotationTypeElement C lt sannotation lt lt tinal gt lt lt transient gt lt lt wvOlatile gt cohlyKeyValuePair 4 Click the MyKeyValuePair check box to activate apply it The two tagged values MyKey1 and MyKey2 are now shown under the Stereotype entry 5 Double click
289. leasing it in the diagram tab opens a popup menu from which you can select the specific associations generalizations you want to display Insert Insert with Generalizations general Insert with Generalizations specific Insert with Generalization Hierarchy general Insert with Generalization Hierarchy specific Insert with Full Generalization Hierarchy general and specific Insert with InterfaceRealizations contracts Insert with InterfaceRealizations implementingClassifier Insert with Dependencies Usages Realizations supplier Insert with Dependencies Usages Realizations client Insert with Profile Applications fimportedProfile Insert with Associations Insert with TypedElements Example Altova UModel 2013 2012 Altova GmbH UModel User Interface Adding Inserting model elements 95 You want to replicate the Account Hierarchy diagram in a new class diagram 1 Right click the bankview package and select New Class Diagram 2 Locate the abstract Account class in the model tree and use drag right to place it in the new diagram The context menu shown above is opened 3 Select the Insert with Generalization Hierarchy specific item Styles of new items a Show Operations compartment Cancel dh Show nested Classifiers compartment Show EnumerationLiterals compartment Show Exten
290. lements by substituting binding the formal parameters to actual parameters values Formal template parameter T Template with a single untyped formal parameter stores elements of type T Multiple formal template parameters KeyType Date Type Value Type Parameter substitution T gt aBaseClass The parameter substitution must be of type aBaseClass or derived from it Default values for template parameters T aDefaultValue Substituting classifiers T gt contract aBaseClass allowsSubstitutable is true Parameter must be a classifier that may be substituted for the classifier designated by the classifier name Constraining template parameters T Interface gt anInterface When constraining to anything other than a class interface datatype the constraint is displayed after the colon character E g T is constrained to an interface T Interface which must be of type anInterface gt anInterface Using wildcards in template signatures T gt vector lt T gt lt aBaseClass gt Template parameter T must be of type vector which contains objects which are a supertype of aBaseClass Extending template parameters T gt Comparable lt T gt T gt Altova UModel 2013 2012 Altova GmbH Projects and code engineering UML templates 157 7 14 2 Template binding Template binding involves the substitution of the formal parameters by actual values i e the template is instantiated UModel automatically generates anon
291. lements of the type you selected Dragging existing elements into the sequence diagram Most classifier types as well as elements occurring in other sequence diagrams can be inserted into an existing sequence diagram 1 Locate the element you want to insert in the Model Tree tab you can use the search function text box or press CTRL F to search for any element 2 Drag the element s into the sequence diagram Lifeline Lifeline The lifeline element is an individual participant in an interaction UModel also allows you to insert other elements into the sequence diagram e g classes and actors Each of these elements appear as a new lifeline once they have been dragged into the diagram pane from the Model Tree tab The lifeline label appears in a bar at the top of the sequence diagram Labels can be repositioned and resized in the bar with changes taking immediate effect in the diagram tab You can also redefine the label colors gradient using the Header Gradient combo boxes in the Styles tab To create a multiline lifeline press CTRL Enter to create a new line Most classifier types can be inserted into the sequence diagram The represents field in the Properties tab displays the element type that is acting as the lifeline Dragging typed properties onto a sequence diagram also creates a lifeline Model Tree 7Root t HE DI Component View c iBankAPIC E Deployment View E 7 Design View a Interaction View E
292. ler E E MainRegion Operating i ryQperating Qperatina j entry OnentryHeater i EGA Operating exit OnExitHeater EU Regionode Eg Cooler co eee pp entry OnEntry Cooler es ph exit OnExitCooler El Heater i i E Relations The new element is also visible in the Model Tree Scrolling down the Model Tree you will notice that the OnEntryCooler operation has been added to the parent class AirConditionController Model Tree E E Sirtonditiontcontroller ES AirCondition E AirConditionStateMachineDiagrai E 7 MainRegion E Oe Region JO lState E E CallEventAction E E TStateld E O modeSelect E On_Off_Operating_Effect E lt gt OnDebughiessage E lt gt OnEntryCooler E OnEntryHeater E Model Tree EX Diagram Tree 3 Favorites Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 205 Please note Operations are automatically added for Do Activity Entry Activity Exit Activity as well as guard condition activities and effects on transitions E E TStateld id E gt modeSelect E lt On_Off_Cperating_Effect powserButton On_Off Operating _Effect E gt OnDebughessage m EES ee eee k To create a transition trigger 1 Right click a previously created transition arrow 2 Select New Trigger Qj Activity C Trigger al Activity Diagram An a character appears in the transition label abov
293. lick the Advanced button of the Source Control tab 2 Select differencing tool custom and specify the DiffDog full path SourceGear Fortress 1 1 4 Client http www sourcegear com fortress SourceGear Vault 4 1 4 Client http www sourcegear com vault The following steps will integrate Altova DiffDog into SourceGear Fortress and SourceGear Vault 1 Click the Advanced button of the Source Control tab 2 Set the Diff Merge Vault options by specifying as the differencing program the DiffDog full path and using the Arguments ro1 ro2 ftitle1 LEFT_LABEL title2 RIGHT_LABEL LEFT_PATH RIGHT_PATH SourceGear SourceOffsite Client 4 2 0 Windows http www sourcegear com sos The following steps will integrate DiffDog into SourceGear SourceOffsite 1 Click the Advanced button of the Source Control tab 19 2 Specify as External Programs Application for comparing files the DiffDog full path TamTam CVS SCC 1 2 40 TamTam SVN SCC 1 2 24 http www daveswebsite com software tamtam The following steps will integrate Altova DiffDog into TamTam CVS SCC and TamTam SVN SCC Altova UModel 2013 2012 Altova GmbH Source Control SCSs and Altova DiffDog Differencing 345 1 Click the Advanced button of the Source Control tab 2 Specify the DiffDog full file path as the external tool for Diff Merge and Conflict Warning The default differencing editor CvsConflictEditor has problems compar
294. lick the included package in the Model Tree view and press the Del key 2 Youare prompted if you want to continue the deletion process 3 Click OK to delete the included file from the project Please note e To delete or remove a project from the Include dialog box delete or remove the MyModel ump file from the respective folder O 2012 Altova GmbH Altova UModel 2013 144 Projects and code engineering Merging UModel projects 7 12 Merging UModel projects It is now possible to perform a 2 way or 3 way project merge in UModel Both merge different UModel project files into a common UModel ump model This option is useful if multiple persons are working on the same project at the same time or you just want to consolidate your work into one model Please see 2 way Project merge 3 way Project merge Altova UModel 2013 O 2012 Altova GmbH Projects and code engineering Merging UModel projects 145 7 12 1 2 way Project merge To merge two UML projects 1 Open the UML file that is to be the target of the merge process i e the file into which the second model will be merged the merged project file 2 Select the menu option Project Merge Project 3 Select the second UML project that is to be merged into the first one The message window reports on the merge process and logs the relevant details Messages N 4 v a a ma El x starting merge project Adding packagedElement Activity Lotivit
295. links out of the shared Packagels Parameter bank AFI has links out of the shared Package s Parameter bankAFl has links out of the shared Package s Parameter bank4FI has links out of the shared Package s Hntshed Checking shared packages Clicking an error entry in the Messages pane displays the relevant element in the Model Tree tab E E Bank view cates a hanks ii bankAPI 00 BankYiew oe d bankAPl d lt collecth ankAdressl nos a gd Parameter 2012 Altova GmbH Altova UModel 2013 154 Projects and code engineering UML templates 7 14 UML templates UModel now supports the use of UML templates and their mapping to from Java 5 0 C and Visual Basic generics e Templates are potential model elements with unbound formal parameters e These parameterized model elements describe a group of model elements of a particular type classifiers or operations e Templates cannot be used directly as types the parameters have to be bound e Instantiate means binding the template parameters to actual values e Actual values for parameters are expressions e The binding between a template and model element produces a new model element a bound element based on the template e f multiple constraining classifiers exist in C then the template parameters can be directly edited in the Properties tab when the template parameter is selected Template signature display in UModel e Class te
296. literal square brackets escape them with a backslash and to output a backslash use Comments Comments inside an instruction block always begin with a character and terminate on the next line or at a block close character Altova UModel 2013 2012 Altova GmbH Code Generator The way to SPL Spy Programming Language 435 15 1 2 Variables Any non trivial SPL file will require variables Some variables are predefined by the code generator and new variables may be created simply by assigning values to them The character is used when declaring or using a variable a variable name is always prefixed by Variable names are case sensitive Variables types e integer also used as boolean where 0 is false and everything else is true string e Object provided by UModel e iterator see foreach statement Variable types are declared by first assignment se 0 x is now an integer Sx teststring x is now treated as a string Strings String constants are always enclosed in double quotes like in the example above n and t inside double quotes are interpreted as newline and tab Y is a literal double quote and is a backslash String constants can also span multiple lines String concatenation uses the amp character SBasePath Soutputpath amp amp SJavaPackageDir Objects Objects represent the information contained in the UModelproject Objects have properties which
297. llowing you to enter the parameter correctly 2 1 loging collect ccountintos n api Dank AF boolean collect 4ccountinto alt passwvyordOk Creating operations in referenced classes ct Activating the me Toggle automatic creation of operations in target by typing operation names icon automatically creates the corresponding operation in the referenced class when creating a message and entering a name e g myOperation Note operations can only be created automatically when the lifeline references a class interface Message icons Message Call E Message Reply i Message Creation 2012 Altova GmbH Altova UModel 2013 248 UML Diagrams Behavioral Diagrams 1 Message Destruction r Asynchronous Message Call Asynchronous Message Reply pe Asynchronous Message Destruction ald Toggle dependent message movement EN Toggle automatic creation of replies for messages 13 Toggle automatic creation of operations in target by typing operation names Generating Sequence Diagrams from source code UModel is able to create sequence diagram models directly from code The example below shows how to automatically create a sequence diagram by using an existing method You can of course use the same approach on your own code The method is available in the OrgChart package which was imported using the Project Import Source Directory command in the tutorial Pl
298. lt package gt NamedElement namespacePr namespacePrefix St XSD only namespace efix ring prefix when exists NamedElement parseableNa parseableName Stri CSharp VB only name me escaped keywords Namespace EU elementlimport Elemen timport Operation ownedReturn a ownedReturnParam parameter with direction Parameter eter Parameter return set Operation type 0 1 type type of parameter with direction return set Operation ownedOperati ij ownedOperationPar all parameters excluding onParameter ameter Parameter parameter with direction return set Operation implemented implementedInterfac CSharp only the nterface e Interface pue menea interface Operation ownedOperati onlmplement name of the implemented operation OperationImpleme implemented Stri i OperationPar implemented operation seableName with esacped keywords Package namespace namespace Packag packages with code language lt lt namespace gt gt set PackageableElem owningPacka 0 1 owningPackage set if owner is a ent ge package PackageableElem owningName 0 1 owningNamespace owning package with spacePackag e Package Package code language lt lt namespace gt gt set Parameter direction direction ParameterDir ectionKind 2012 Altova GmbH Altova UModel 2013 438 Code Generator The way to SPL Spy Programming Language COC CN A N CE I C CIO AE N A C CE CN AR N E I CU CI A N CI AN Parameter isVarArgList isV
299. luded packages options for save as new project npad opt adjust relative file paths Yes No MakeAbsolute options for import commands iclg lang C 3 0 C 4 0 code language Javal 4 Java5 0 Java6 0 C 1 2 C 2 0 VBA b VB8 0 VB9 0 process sub directories recursive import relative to UModel project file JavaDocs as Java comments DocComments as C comments C defined symbols DocComments as VB comments VB defined symbols custom constants synchronize merged use directory filter directory filter presets iudf Altova UModel 2013 2012 Altova GmbH UModel Command line interface 107 options for import binary types after iclg Ibet vers runtime version ibpv path override of PATH variable for searching native code libraries ibrol 0 1 use reflection context only ibual 0 1 use add referenced types with package filter ibar f1t add referenced types package filter presets ibua ibot 0 1 import only types ibuv 0 1 use minimum visibility filter ibmv key keyword of required minimum visibility presets ibuv ibsal 0 1 suppress attribute sections annotation modifiers iboa 0 1 create only one attribute per attribute section ibss 0 1 Suppress Attribute suffix on attribute type names options for diagram generation dgen 0 1 generate diagrams dopn 0 1 open generated diagrams dsac 0 1 show attributes compartment
300. luding identification of trademark owners names Trademarks may only be used to identify printed output produced by the Software and such use of any trademark does not give you any right of ownership in that trademark XMLSpy Authentic StyleVision MapForce UModel DatabaseSpy DiffDog SchemaAgent SemanticWorks MissionKit Markup Your Mind Nanonull and Altova are trademarks of Altova GmbH registered in numerous countries Unicode and the Unicode Logo are trademarks of Unicode Inc Windows Windows XP Windows Vista and Windows 7 are trademarks of Microsoft W3C CSS DOM MathML RDF XHTML XML and XSL are trademarks registered in numerous countries of the World Wide Web Consortium W3C marks of the W3C are registered and held by its host institutions MIT INRIA and Keio Except as expressly stated above this Software License Agreement does not grant you any intellectual property rights in the Software Notifications of claimed copyright infringement should be sent to Altova s copyright agent as further provided on the Altova Web Site 3 LIMITED TRANSFER RIGHTS Notwithstanding the foregoing you may transfer all your rights to use the Software to another person or legal entity provided that a you also transfer each of this Software License Agreement the Software and all other software or hardware bundled or pre installed with the Software including all copies updates and prior versions and all cop
301. m Foundation Server 2008 MSSCCI Provider http www microsoft com downloads Requirements Visual Studio 2008 Team Explorer or Visual Studio 2008 with Team Explorer 2008 A standard installation will work correctly with Altova products Perforce P4V 2008 1 O 2012 Altova GmbH Altova UModel 2013 336 Source Control Installing Source Control Systems http www perforce com The Perforce Visual Client P4V offers a choice e To install all client features default behavior e To install only the SCC Plug in P4SCC feature The default installation will work correctly with all Altova products If the SCC Plug in P4SCC feature is chosen e Two SCC functions Show differences and Source control manager will not work e The Show differences functionality and the possibility to launch the source control manager will not work because they rely on the non installed features Visual Merge Tool and Visual Client P4V respectively e The differencing functionality will need 3rd party software while the launch of the source control manager will only be possible after the explicit installation of the Visual Client P4V e After starting your Perforce Visual Client installation specify your own client configuration settings server name Text Editing Application User Name e When the installation is finished do not forget to create a new workspace or to select an existing one PureCM
302. me field Adding artifacts to a node and creating dependencies between them Expand the Deployment View package in the Model Tree to see its contents 1 Click each of the BankAddresses ini BankAPI jar and BankView jar artifacts individually and place them on the diagram background Deployment dependencies are displayed for each artifact Poo d Home PC s TOPAIP adeblloy gt dl defiloy lt lt artifact gt 4 lt lt artifact gt 4 Bank APL jar BankView jar lt lt artifact gt 4 BankAdresses ini 2 Click the BankView jar artifact and drag it onto the Home PC node The node is highlighted when the drop action will be successful 3 Use the same method to drag the other artifacts onto the Home PC node The artifacts are now part of the node and move with it when it is repositioned lt lt degloy 2012 Altova GmbH Altova UModel 2013 52 UModel tutorial Deployment Diagrams Home PC lt lt artifact gt 4 BankView jar s TORAIP lt lt artifact gt 4 lt lt artifact gt 4 BankAdresses ini BankAPIL jar 4 Click the Dependency icon in the icon bar and hold down the CTRL key 5 Drag from the BankView jar artifact to the BankAddresses ini artifact still holding down the CTRL key 6 Drag from the BankView jar artifact to the BankAPI jar artifact Home PC lt lt artifact 4 BankView jar i nl lt lt TCPAPS lt lt artifact gt 4 lt lt arftifact 4
303. ment to a supplier element In this case the IBankInterfaceAPI interface uses the services of components BankView and BankView GUI Altova UModel 2013 O 2012 Altova GmbH UModel tutorial Deployment Diagrams 49 4 6 Deployment Diagrams The aim of this tutorial section is to e Show the artifact manifestation of components e Add anew node and dependency to a Deployment diagram e Add artifacts to a node and create relationships between them To open the Deployment Artifacts diagram 1 Click the Model Tree tab expand the Deployment View diagram package then double click the Artifacts icon Model Tree E H Component View E Banking access sscomponent i i lt lt manifest gt EJ BankView Bank API client lt artitacts Dy ST BankView realization from Banking access BankAPl jar 03 Bank view i EJ Bank view GUI E Deployment View 3 iui P Artifacts y i Deployment E Ol Home PL component E j SPERA hd w Home FC BankView l y Qy BankAdresses ini from Bank view Bank View jar lt lt manifest gt lt lt artifact gt gt This diagram shows the manifestation of the Bank API client and the BankView components to their respective compiled Java jar files To open the Deployment diagram 1 Double click the Deployment icon under the Deployment View package The Deployment diagram is opened and displays the physical architecture of the system which currently only compr
304. ments Le InitialState pseudostate The beginning of the process FinalState The end of the sequence of processes e EntryPoint pseudostate The entry point of a state machine or composite state ExitPoint pseudostate The exit point of a state machine or composite state Lo Choice This represents a dynamic conditional branch where mutually exclusive guard triggers are evaluated OR operation Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 221 Junction pseudostate This represents an end to the OR operation defined by the Choice element x Terminate pseudostate The halting of the execution of the state machine Fork pseudostate Inserts a vertical Fork bar Used to divide sequences into concurrent subsequences Fork horizontal pseudostate Inserts a horizontal Fork bar Used to divide sequences into concurrent subsequences Join pseudostate Joins merges previously defined subsequences All activities have to be completed before progress can continue bt Join horizontal pseudostate Joins merges previously defined subsequences All activities have to be completed before progress can continue HH DeepHistory A pseudostate that restores the previously active state within a composite state ShallowHistory A pseudostate that restores the initial state of a composite state All pseudostate elements can be changed to a different type by chang
305. ments to be automatically created displayed in the current diagram This occurs if the attributes type is set and the referenced type modeling element is in the current diagram Deleting relationships associations 1 Click the relationship in the diagram tab or in the Model Tree 2 Press the Del keyboard key The dependency is deleted from the diagram and project Deleting class associations Deleting a class association does not delete the attribute property that was automatically generated from the class 1 Rightclick the attribute property in the class 2 Select the option Delete PropertyX from ClassX to delete it Creating association qualifiers 1 Having defined an association between two classes 2 Right click the association line and select New Qualifier S Propertyi Class2 al Property 2 Class Property 2 Please note that qualifiers are attributes of an association 2012 Altova GmbH Altova UModel 2013 164 Creating model relationships Creating a containment association The containment association is used to show parent child relationships 1 Click the containment icon in the title bar 2 Drag from the class that is to be contained and drop on the container class pe from Clase ie AS Class2 Note that the contained class Class2 in this case is now visible in a compartment of Class1 This generally places the contained class in the same namespace as the container
306. mplate called MyVector with formal template parameter T visible in the dashed rectangle e Formal parameters without type info T are implicitly classifiers Class Datatype Enumeration Primitive Type Interface All other parameter types must be shown explicitly e g Integer e Property myArray with unbounded number of elements of type T Right clicking the template and selecting Show Bound elements displays the actual bound elements Template binding display intuector MyVector lt T int gt A bound named template intvector Template of type MyVector where Parameter T is substituted replaced by int Substituted by is shown by gt Template use in properties operations a MyPloat ector My rector T 1l03t gt An anonymous template binding e Property MyFloatVector of type MyVector lt T gt float gt Altova UModel 2013 O 2012 Altova GmbH Projects and code engineering UML templates 155 Templates can also be defined when defining properties or operations The autocomplete function helps you with the correct syntax when doing this lt gt Operation O MyYectors7 tloat e Operation returns a vector of floats 2012 Altova GmbH Altova UModel 2013 156 Projects and code engineering UML templates 7 14 1 Template signatures A Template signature is a string that specifies the formal template parameters A template is a parameterized element that is used to generate new model e
307. mplateSignat ment ateSignature ure TemplateSignature TemplateableEle templateBindi il templateBinding Temp ment ng lateBinding Altova UModel 2013 O 2012 Altova GmbH Code Generator The way to SPL Spy Programming Language 439 Type typeName bi typeName Package qualified code type ableElement names TypedElement postTypeMod postTypeModifier St postfix code modifiers ifier ring ValueSpecification value value String string value of the value specification Adding a prefix to attributes of a class during code generation You might need to prefix all new attributes with the m_ characters in your project All new coding elements are written using the SPL templates If you look into UModelSPL C Java Default Attribute spl you can change the way how the name is written e g replace write Property name by write m_ amp Property name It is highly recommended that you immediately update your model from code after code generation to ensure that code and model are synchronized Please note As previously mentioned copy the SPL templates one directory higher i e above the default directory to UModelSPL C before modifying them This ensures that they are not overwritten when you install a new version of UModel Please make sure that the user defined override default check box is activated in the Code from Model tab of the Synchronization Setting dialog box Global objects Options an objec
308. ms XML Schema diagrams Business Process Modeling Notation 1 0 and 2 0 Enterprise Professional Edition only Multiple layers per UML diagram Enterprise Professional Edition only import of Java C and Visual Basic binaries hyperlinking of diagrams and modeling elements syntax coloring in diagrams cascading styles unlimited Undo and Redo sophisticated Java C and Visual Basic code generation from models reverse engineering of existing Java C and Visual Basic source code complete round trip processing allowing code and model merging XMI version 2 4 for UML 2 0 2 1 amp 2 1 2 2 2 2 3 2 4 model import and export generation of UModel project documentation These capabilities allow developers including those new to software modeling to quickly leverage UML to enhance productivity and maximize their results 2012 Altova GmbH Altova UModel 2013 4 UModel ALTOVA umodel 2013 Copyright 1995 2012 Altova GmbH All rights reserved Use of this software is governed by and subject to an Altova software license agreement MLSpw MapForce StyleVision SemanticWorks Schemadgent UModel DatabaseSpy DiffDog Authentic SltovasML Missionkit and ALTOVA as well as their logos are trademarks and or registered trademarks of Altova GmbH KML EL SATMIL and W3C are trademarks registered in numerous countries f the world wide Web Consortium marks of the 335 C are registered and held by itz host institutions WIT
309. n the Handelsgericht Wien Commercial Court Vienna in connection with any such dispute or claim If you are located in the United States or are using the Software in the United States then this Software License Agreement will be governed by and construed in accordance with the laws of the Commonwealth of Massachusetts USA excluding its conflict of laws principles and the U N Convention on Contracts for the International Sale of Goods and you expressly agree that exclusive jurisdiction for any claim or dispute with Altova or relating in any way to your use of the Software resides in the federal or state courts of the Commonwealth of Massachusetts and you further agree and expressly consent to the exercise of personal jurisdiction in the federal or state courts of the Commonwealth of Massachusetts in connection with any such dispute or claim If you are located outside of the European Union or the United States and are not using the Software in the United States then this Software License Agreement will be governed by and construed in accordance with the laws of the Republic of Austria excluding its conflict of laws principles and the U N Convention on Contracts for the International Sale of Goods and you expressly agree that exclusive jurisdiction for any claim or dispute with Altova or relating in any way to your use of the Software resides in the Handelsgericht Wien Commercial Court Vienna and you further agree and expressly consent to th
310. n visibility public classifier ld specification minimumBalance 10 000 00 Properties Styles E Hierarchy While the instance is active all its properties are visible in the Properties tab balance 3 Click the classifier combo box and select the entry CreditCardAccount from the drop down list John s Checking CheckingAccount E EJ Mod E Diagr ae Favo Properties nx balance ld name gt Johns Credit minimumBalance 10 000 00 element kind Instances pecification visibility public classifier CredtCard ccount specification E i i balance iid i dii Properties Styles Hierarchy o lt interestRateOnBalance ere HA interestRateOnCashAdvance e AAA Note that right clicking an instance specification and selecting Show Hide Node Altova UModel 2013 2012 Altova GmbH UModel tutorial Object Diagrams 41 content allows you show hide object content To add a new object in the Model Tree view then insert it into a diagram 1 Right click the bankview package in the Model Tree tab and select New element InstanceSpecification 2 Change the default object name to John s Saving and press Enter to confirm The new object is added to the package and sorted accordingly ii E e com E E n allova iii im a bankwiew j F 7 Account Hierarchy ES Bank wiew Main DM Sample Accounts mA AltovaBank AS John s Checking E F John s Credit E
311. n Is then click in the diagram to insert it 2 Double click the name and change it to Address Properties lt scomplexContent lt lt complex Types icd Block final Address from AsDSchema mixed sselement complexTvype global I I Address i from XSDSchema i I sequence mg_sequence pl I S3PQUente MG Sequence 1 y ARE an 4 Click the _sequence mg_sequence attribute in the attribute compartment and drag it out into the diagram Altova UModel 2013 2012 Altova GmbH UML Diagrams Additional Diagrams 313 ij Info Drop will show Property sequence as Association s complexType global Address from AsDSchema s lt complexType global A AA ye Address ssequence from gt DSchema LI sequence mo Sequence a INN a a gt ala EB lt lt sequence gt mo_sequence i mg _sequence 5 Right click the sequence class and select New XSD Element local This adds a new property element 6 Double click the property enter the element name e g Name add a colon and enter string as the datatype complexType global H E D D S S H k u D D D S S E BR Address 3equence gt gt I I from lt SDSchemal Sequence LI _sequencema sequence A UN U E mg sequence E equence mg _ sequence 7 Dothe same for the two more elements naming them Street and City for example 8 Click the Name
312. n an expression representing the number of clock ticks which may elapse during this duration ControlFlow A Control Flow is an edge i e an arrowed line that connects two behaviours and starts an interaction after the previous one has been completed 2012 Altova GmbH Altova UModel 2013 236 UML Diagrams Behavioral Diagrams 10 1 7 Sequence Diagram Altova web site E UML Sequence diagrams UModel supports the standard Sequence diagram defined by UML and allows easy manipulation of objects and messages to model use case scenarios Please note that the sequence diagrams shown in the following sections are only available in the Bank_Java ump Bank_CSharp ump and Bank_MultiLanguage ump samples in the UModelExamples folder supplied with UModel Note It is now possible to generate a sequence diagram directly from source code please see Sequence Diagram diagram generation a BankView E bankAPLiBankAPIO 1 connecti i connecti Banki SgencyBank ip usr pw bank Bank E 2 1 loging bass wordCk i 211 disconnect assert loging bank Bank 3 collectAccountinfos collectAccountintost 4 bank null Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 237 Inserting sequence diagram elements A sequence diagram models runtime dynamic object interactions using messages Sequence diagrams are generally used to explain individual use case scenarios
313. n calling this method here 4 gt 2 e Another possibility would be e g to call static methods MyStatic OnState1State2Effect 1 gt 2 or methods of singletons getSingleton OnState1State2Effect 1 gt 2 Example 4 entry exit do actions MyEvent2 exit OnExitState3 entry OnEntryStated FOnDoStated The corresponding operations are automatically Generated method in generated in UModel code private class CTestStateMachine Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 219 TestController Overwrite Sst handle entry exit do lt gt MyEvent1 bool io net tien O OnState State 2Effect in text String void e States can have entry exit do behaviors UModel automatically creates the corresponding operations to handle them e When MyEvent2 occurs in the sample above the state machine implementation calls OnExitState3 if MyEvent2 would have an Effect it would be subsequentially called then OnEntryState4 and OnDoState4 would be called e Normally these methods should be overwritten When they are not abstract and the Generate debug messages option is active UModel provides default debug output as described in Example 2 e These methods can also have parameters as shown in Example 3 Example 5 guards Transitions can have guards which determine if the transition really can fire MyEvent2 CanGoStates The corres
314. n of this document the publisher and the author assume no responsibility for errors or omissions or for damages resulting from the use of information contained in this document or from the use of programs and source code that may accompany it In no event shall the publisher and the author be liable for any loss of profit or any other commercial damage caused or alleged to have been caused directly or indirectly by this document Published 2012 O 2012 Altova GmbH UMLO OMG Object Management Group and Unified Modeling Language are either registered trademarks or trademarks of Object Management Group Inc in the United States and or other countries Table of Contents 1 UModel 3 2 Introducing UModel 6 3 What s new in UModel 8 4 UModel tutorial 14 44 bate Me LOC Clic cn caia 16 42 MUSICAS Rie 20 43 SEA A Ra 28 4 34 Create derived class 34 44 O od L Pa S 39 45 Component Diagrams aa 44 4 60 Deployment Dias ranieri 49 4 7 Round trip engineering model code model ee eeeeeeetntteeeeeeeeeeeeeeeeeeeeeees 53 4 8 Round trip engineering code model code 59 5 UModel User Interface 66 Sil Model TGCS esti irene 67 52 A 71 A ARAP eae ania atanncecee ton teaeani Ta f A4 A Tea 2 e eas 73 Sd Properties ep GTGA E 74 gt Pb lella 76 30 Hight sea 79 O avait 82 3 6 e AA A ira 83 5 VISA eS si toa 84 30 Diagram pane IMA A Lei 85 AOT Diagram properties se
315. n your possession or control The terms and conditions set forth in Sections 1 h 1 i 1 j 1 k 2 5 b 5 c 5 d 7 d 7 e 9 10 and 11 survive termination as applicable Altova UModel 2013 O 2012 Altova GmbH Appendices License Information 465 9 RESTRICTED RIGHTS NOTICE AND EXPORT RESTRICTIONS The Software was developed entirely at private expense and is commercial computer software provided with RESTRICTED RIGHTS Use duplication or disclosure by the U S Government or a U S Government contractor or subcontractor is subject to the restrictions set forth in this Agreement and as provided in FAR 12 211 and 12 212 48 C F R 812 211 and 12 212 or DFARS 227 7202 48 C F R 8227 7202 as applicable Consistent with the above as applicable Commercial Computer Software and Commercial Computer Documentation licensed to U S government end users only as commercial items and only with those rights as are granted to all other end users under the terms and conditions set forth in this Software License Agreement Manufacturer is Altova GmbH Rudolfsplatz 13a 9 A 1010 Vienna Austria EU You may not use or otherwise export or re export the Software or Documentation except as authorized by United States law and the laws of the jurisdiction in which the Software was obtained In particular but without limitation the Software or Documentation may not be exported or re exported i into or to a national or resident of any U S embargoed co
316. nce diagram The difference is that the axes are reversed e time increases from left to right and lifelines are shown in separate vertically stacked compartments Timing diagrams are generally used when designing embedded software or real time systems State or Condition DurationConstraint Time constraint 1d 3 Lifeline vaitAccess Cardit ar Idle 0 13 stimulus Message MNolard HasCard 0 2 t tick mark values timing ruler There are two different types of timing diagram one containing the State Condition timeline as shown above and the other the General value lifeline shown below sd UserA idle vvaitCard Idle a y El aiar Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 261 Inserting Timing Diagram elements Using the toolbar icons 1 Click the specific timing icon in the Timing Diagram toolbar Add Elements Timing Diagram Ed rm i a ade 2 Click in the Timing Diagram to insert the element Note that holding down CTRL and clicking in the diagram tab allows you to insert multiple elements of the type you selected Dragging existing elements into the timing machine diagram Elements occurring in other diagrams e g classes can be inserted into an Timing Diagram 1 Locate the element you want to insert in the Model Tree tab you can use the search function text box or press CTRL F to search for any element 2 Drag the element s into the state
317. nchronization Code can be merged synchronized at different levels e Project Root package level menu item e Package level multiple package selection generation is possible e Class level multiple class selection generation is possible e Component level The BankView realization diagram depicts how the BankView component is realized by its six constituent classes This is the component that is produced when the forward engineering section of the tutorial is complete To be able to produce code e The component must be realized by one or more classes The component must have a physical location e directory assigned to it The generated code is then placed in this directory e Components must be individually set to be included in the code engineering process e A Java C or VB namespace root package must be defined Please note The Java namespace root has been set on the Design phase BankView com package in the Model Tree Java C or VB code can be combined in one project and are automatically handled during the round trip engineering process The Bank_MultiLanguage ump file in the UModelExamples folder is an example of a project for Java and C types of code To define a code generation target directory 1 Double click the Overview icon under the Design phase package to switch into the component overview 2 Click the BankView component in the diagram and note the current settings in the Properties
318. nd AfterUpdate Signal UpdateLog O finished Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 187 Inserting Activity Diagram elements Activity Diagram wmmp O Ww Ye e o Ewik w EX O gge f gt H ideas la Using the toolbar icons 1 Click the specific activity diagram icon in the Activity Diagram toolbar 2 Click in the Activity Diagram to insert the element Note that holding down CTRL and clicking in the diagram tab allows you to insert multiple elements of the type you selected Dragging existing elements into the activity diagram Most elements occurring in other activity diagrams can be inserted into an existing activity diagram 1 Locate the element you want to insert in the Model Tree tab you can use the search function text box or press CTRL F to search for any element 2 Drag the element s into the activity diagram Inserting an action CallBehavior 1 Click the Action CallBehavior icon in the icon bar and click in the Activity diagram to insert it 2 Enter the name of the Action e g Validate References and press Enter to confirm Properties Validate References Callbehavior Action unspecified manual invokation O Mida 4 isSynchronous Validate References po Ez behavior Note Use CTRL Enter to create a multi line name Inserting an action CallOperation and selecting a specific operation 1 Click the Action CallOpera
319. nd of the code block Please note Recursive or cascaded subroutine declaration is not permitted i e a subroutine may not contain another subroutine Parameters Parameters can also be passed by procedures using the following syntax All parameters must be variables Variables must be prefixed by the character Local variables are defined in a subroutine Global variables are declared explicitly outside of subroutines Multiple parameters are separated by the comma character within round parentheses e Parameters can pass values Parameters passing values Parameters can be passed in two ways by value and by reference using the keywords ByVal and ByRef respectively Syntax define sub CompleteSub Sub CompleteSub Sparam ByVal SparamByValue ByRef SparamByRef e ByVal specifies that the parameter is passed by value Note that most objects can only be passed by reference e ByRef specifies that the parameter is passed by reference This is the default if neither ByVal nor ByRef is specified O 2012 Altova GmbH Altova UModel 2013 446 Code Generator The way to SPL Spy Programming Language Function return values To return a value from a subroutine use the return statement Such a function can be called from within an expression Example define a function Sub MakeQualifiedName ByVal SnamespacePrefix ByVal SlocalName if SnamespacePrefix return localName else return namespacePrefix
320. ndard installation of PushOK SVN SCC is sufficient for use with Altova products When installing under Vista it is possible that the COM library svncom dll cannot be registered In this case finish the installation and then register the library manually by following these steps 1 Start a command window using the option Run as administrator 2 Enter cd C Program Files PushOK Software SVNSCC svn 3 Type the command gt regsvr32 svncom dll QSC Team Coherence Client 7 2 1 35 http www teamcoherence com A standard installation will work correctly with Altova products e lf the server is installed on the client machine a default connection is created after the client installation e lf the server resides on a different machine you need to change the HOSTNAME property in the Connection Properties dialog of Team Coherence client to point to the relevant machine Qumasoft QVCS Enterprise 2 1 18 http www qumasoft com Requirements J2SE 1 5 or later http www oracle com technetwork java index html To install Qumasoft QVCS Enterprise client run the installer If your operating system is Vista you must modify the installation directory from the default value C Program Files QVCS Enterprise Client to C QVCS Enterprise Client This must be done as Vista does not let applications write to the C Program Files area Edit the setEnv cmd file that resides in the installation directory so that the JAVA _HOME
321. ne the nesting depth up and down in the hierarchy window e Expand each element only once only allows one of the same classifiers to be expanded in the same image diagram e If you want snap lines to help you align elements when dragging in a diagram Local Options x View Editing Diagram Editing File Code Engineering Source Control Scripting Autolayout Hierarchic min distance 40 min Y distance 40 Grow direction Frame title File name only Program logo he Show on print i Show on diagram f Full path name List all elements not used in any diagram f top down v Classifier W Relations bottom up le Package iW InstanceSpecification C left to right C right to left Ignore elements of included files Model Tree Alignment M Automatically select focused diagram item M Enable Snap Lines LF onca stai dag ten Hierarchy Default expanded nesting depth up z dowr 2 M Expand each element only once aia The Editing tab allows you to define e If anew Diagram created in the Model Tree tab is also automatically opened in the Altova UModel 2013 2012 Altova GmbH UModel Reference Tools 423 main area e Default visibility settings when adding new elements Properites or Operations e The default code language when a new component is added e f a newly added constraint is to automatically
322. nerate Documentation dialog accessed via Project Generate Documentation Select the Use User Defined Design radio button The default selection is the UModelDocumentation sps entry Generate Documentation Main Include Details Fonts Documentation Design Use fixed design for documentation in HTML Word or RTF Format Use user defined design for HTML Word RTF or PDF format Requires Stylevision Select SPS design ga roc i The predefined SPS file is located in the Documentation UModel folder Please note To use an SPS to generate documentation you must have StyleVision installed on your machine Creating the SPS A StyleVision Power Stylesheet or SPS is created using Altova s StyleVision product An SPS for generating UModel documentation must be based on the XML Schema that specifies the structure of the XML document that contains the UModel documentation This schema is called UModelDocumentation xsd and is delivered with your UModel installation package It is stored in the My Documents Altova UModel2013 Documentation UModel folder When creating the SPS design in StyleVision nodes from the UModelDocumentation xsd schema are placed in the design and assigned styles and properties Note that the UModelDocumentation xsd includes the Documentation xsd file located in the folder above it Additional components such as links and images can also be added to the SPS design How to create an
323. ng OF Cancel El Starting update code from project Changing file E Documents and Settings billy Documents AltovaiUModel Changing file Documenta and Settings by Documents AitovailModel Changing file C Documents and Settings By Documents AlttovailModel Changing file E Documents and Settings billy Documents AltovaiUModel Changing file E Documents and Settings billy Documents Altova Model Changing file CO Documents and Settings By Documents AitovailModel finished Update code from project erroria warning 4 Navigate to the target directory Six Java files have been created for the project Synchronizing the UModel model having updated Java code externally 1 Open the SavingsAccount java file in the text editor of your choice XML Spy for example 2 Add the new method to the generated code public float getInterestRate and save the file Altova UModel 2013 2012 Altova GmbH UModel tutorial Round trip engineering model code model 57 public class Savings iccount extends hocount protected float interest Rate public Savingsiccount J Ton da Wh R float getMinimumbBalanceli float getInterest Bate boolean collecticcowmtilinfto IlBankiAPT hankAPTi 3 Switch to UModel and right click the SavingsAccount class under the BankView package 4 Select the option Code Engineering Merge UModel Class from Program Code This opens the Synchronization
324. ng the Message Creation icon A 2 Drag the message arrow to the lifeline of an existing object to create that object This type of message ends in the middle of an object rectangle and often repositions the object box vertically Properties z Bank 2gencwBank ip usr pw bank Bank E FERRER ee eee es EE E E name Bank AgencyBank i element kind s visibility messages art Sending messages to specific class methods operations in sequence diagrams Having inserted a class from the Model Tree into a sequence diagram you can then create a message from a lifeline to a specific method of the receiver class lifeline using UModel s syntax help and autocompletion functions 1 Create a message between two lifelines the receiving object being a class lifeline Bank As soon as you drop the message arrow the message name is automatically highlighted 2 Enter a character using the keyboard e g b A pop up window containing a list of the existing class methods is opened Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 247 Bank AgencyBank ip Wer pw bank Bank E 2 1 login Bank colectA4ccountintos gethalanceOtaAccou getBankMame getlP Address 3 Select an operation from the list and press Enter to confirm e g collectAccountinfos 4 Press the spacebar and press Enter to select the parenthesis character that is automatically supplied A syntax helper popup now appears a
325. ngineering Generate missing ComponentRealizations has to Altova UModel 2013 2012 Altova GmbH Projects and code engineering Synchronizing Model and source code 133 be set e Assoon as ONE viable Component is found during one of the above steps this Component is used and the remaining steps are ignored Error Warnings e If no viable Component was found a warning is generated message log e If more than one viable Component was found an error is generated message log O 2012 Altova GmbH Altova UModel 2013 134 Projects and code engineering Synchronizing Model and source code 7 4 2 Refactoring code and synchronization When refactoring code it is often the case that class names are changed updated Previous versions of UModel prior to version 2009 deleted the old classes and inserted new ones during the code model synchronzation process UModel now opens a dialog box if it detects that new types have been added renamed during reverse engineering The new types are listed in the Name in code column while the assumed original type name is listed in the Name in model column UModel tries to make an informed guess as to the original name relying on namespace class content base classes and other data UI Select Renamed Types x UModel has detected new types while reverse engineering f some of these types are not new but have been renamed please select the previous type name Name in cod
326. nk to element in 96 opening packages 67 pane 67 select attribute in 74 Modeling enhance performance 160 Mouse copy paste 91 Move project 112 Moving message arrows 243 MS Visual Source Safe 326 MS Visual Studio Net csproj csdproj project file 395 Multi mode autocompletion 89 Multiline actor text 20 Multi line interactionOperand 239 use case 20 Multiple elements styles display 76 O 2012 Altova GmbH 476 Index Multi user examples folder 14 MyDocuments example files 14 N Name region names hide show 208 Namespace creating a class in 115 Java namespace root 135 use for code generation 53 Navigate hyperlink 96 New classifier 132 New line in Lifeline 228 ineractionOperand 239 Node add 49 add artifact 49 styles 76 Note hyperlink from 96 Numbering messages 243 O Obfuscated binary support 125 Object create message 243 diagram 39 icons 376 links associations 39 Object diagram 285 On demand autocompletion CTRL Space 89 Open diagram 71 packages in tree view 67 URL 387 Open Project source control 347 Operand interaction 239 Operation autocompletion window 422 Automatically add on Activity 202 coloring 275 exception 120 goto from call message 243 ignore when generating sequence diagram 248 overriding 269 reusing 34 show hide 269 template 158 Operations adding 28 Operator interaction
327. nment group Enable Snap lines pkg Use Case View Standard User transfer into an account Aligning and adjusting the size of elements 1 Createa selection marquee by dragging on the diagram background making sure that you encompass all three use cases starting from the top Note that the last use case to be marked is shown in a dashed outline in the diagram as well as in the Overview window Altova UModel 2013 2012 Altova GmbH UModel tutorial Use cases 27 Ya Es n Standard User a lt lt include gt o generate monthly revenue report i nf All use cases are selected with the lowest being the basis for the following adjustments 2 Click the Make same size icon in the title bar 3 Click the Center Horizontally icon to line up all the ovals The use case elements are all centered and of the same size Please note You can also use the CTRL key to select multiple elements Standard User io agin lt incltide gt O 2012 Altova GmbH Altova UModel 2013 28 UModel tutorial Class Diagrams 43 Class Diagrams Altova web site E UML Class diagrams The aim of this tutorial section is to e Add anew abstract class called Account as well as attributes and operations e Create a composite association from Bank to Account To open a different diagram in UModel 1 Click the Diagram Tree tab 2 Expand the Class Diagrams package to see its contents
328. nnounced or made available to anyone in the future that Altova has no express or implied obligation to you to announce or introduce the Pre release Software and that Altova may not introduce a product similar to or compatible with the Pre release Software Accordingly you acknowledge that any research or development that you perform regarding the Pre release Software or any product associated with the Pre release Software is done entirely at your own risk During the term of this Software License Agreement if requested by Altova you will provide feedback to Altova regarding testing and use of the Pre release Software including error or bug reports If you have been provided the Pre release Software pursuant to a separate written agreement your use of the Software is governed by such agreement You may not sublicense lease loan rent distribute or otherwise transfer the Pre release Software Upon receipt of a later unreleased version of the Pre release Software or release by Altova of a publicly released commercial version of the Software whether as a stand alone product or as part of a larger product you agree to return or destroy all earlier Pre release Software received from Altova and to abide by the terms of the license agreement for any such later versions of the Pre release Software 5 LIMITED WARRANTY AND LIMITATION OF LIABILITY a Limited Warranty and Customer Remedies Altova warrants to the person or entity that first purchases a l
329. not child of import target iW Hyperlink package to diagram Autolayout W Autolapout hierarchic lt Back Herts Finish Cancel This dialog box allows you to define the package dependency generation settings 7 Click Finish to use the default settings The data is parsed while being input and a new package called OrgChart is created Altova UModel 2013 O 2012 Altova GmbH UModel tutorial Round trip engineering code model code 61 Model Tree Root E Component view EE OrgChart i fa Java Profile Java Protile ump QI Unknown Externals E Model Tree E Diagram at ES Favorites 8 Expand the new package and keep expanding the sub packages until you get to the OrgChart package com OrgChart Model Tree Root i Component view EE Orgchart i LP Content of OrgChart z ES Content of Orgichar and all subpar Package dependencies of OrgChar Eco Content of com m Lejattova i EL JOrgChar f ii bee A Content of OrgChart E E CompanyLogoType E E E DescType i i imm AhivisionTune C Model Tree EX Diagram F Favorites 9 Double click the Content of OrgChart diagram icon PI The collapsed classes that make up OrgChart are displayed in the main tab The current window view is shown by the red box in the Overview window which occupies an empty area of the diagram Overview dee rE ali gi 7 Ed overview E 10 Click the
330. ns are automatically recognized during code generation e Code generation and reverse engineering currently support Java versions 1 4 x 5 0 and 1 6 CF versions 1 2 2 0 3 0 and 4 0 and Visual Basic versions 7 1 8 0 and 9 0 A single project can support Java C or VB code simultaneously e Support for UML templates and generics e XML Metadata Interchange XMI version 2 4 for UML 2 0 2 1 1 2 1 2 2 2 2 3 2 4 e When adding properties or operations UModel provides in place entry helpers to choose types protection levels and all other manner of properties that are also available in industrial strength IDEs such as XML Spy Visual Studio or Eclipse e Syntax coloring in diagrams makes UML diagrams more attractive and intuitive e Modeling elements and their properties font colors borders etc are completely customizable in an hierarchical fashion at the project node line element family and element level e Customizable actors can be defined in use case diagrams to depict terminals or any other symbols e Modeling elements can be searched for by name in the Diagram tab Model Tree pane Messages and Documentation windows e Class or object associations dependencies generalizations etc can be found highlighted in model diagrams through the context menu e The unlimited levels of Undo Redo track not only content changes but also all style changes made to any model element Please note This document does not a
331. nserted using this method appear in the form shown in the screenshot above i e with ref in the frame s title space cit DecisionNode Inserts a Decision Node which has a single incoming transition and multiple outgoing guarded transitions Please see Creating a branch for more information LH MergeNode Inserts a Merge Node which merges multiple alternate transitions defined by the Decision Node The Merge Node does not synchronize concurrent processes but selects one of the processes Le InitialNode The beginning of the activity process An interaction can have more than one initial node ActivityFinalNode The end of the interaction process An interaction can have more that one final node all flows stop when the first final node is encountered ForkNode Inserts a vertical Fork node Used to divide flows into multiple concurrent flows ForkNode Horizontal Inserts a horizontal Fork node Used to divide flows into multiple concurrent flows JoinNode Inserts a vertical Fork node A Join node synchronizes multiple flows defined by the Fork node Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 235 44 Join Node horizontal Inserts a horizontal Fork node A Join node synchronizes multiple flows defined by the Fork node AddDurationConstraint A Duration defines a ValueSpecification that denotes a duration in time between a start and endpoint A duration is ofte
332. nserts a Decision Node which has a single incoming transition and multiple outgoing guarded transitions Please see Creating a branch for more information Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 193 Validate References reference missing valid collectAccountinfos Bank view LH MergeNode Inserts a Merge Node which merges multiple alternate transitions defined by the Decision Node The Merge Node does not synchronize concurrent processes but selects one of the processes Le InitialNode The beginning of the activity process An activity can have more than one initial node ActivityFinalNode The end of the activity process An activity can have more that one final node all flows in the activity stop when the first final node is encountered FlowFinalNode Inserts the Flow Final Node which terminates a flow The termination does not affect any other flows in the activity ForkNode Inserts a vertical Fork node Used to divide flows into multiple concurrent flows ForkNode Horizontal Inserts a horizontal Fork node Used to divide flows into multiple concurrent flows JoinNode Inserts a vertical Fork node A Join node synchronizes multiple flows defined by the Fork node 44 Join Node horizontal Inserts a horizontal Fork node A Join node synchronizes multiple flows defined by the Fork node InputPin O 2012 Altova Gmb
333. nstitutes final state of the tutorial sample if you have worked through it step by step This project file is the one used when generating code and synchronizing it with UModel e The OrgChart zip file supplied in the folder is used for the round trip engineering process Please unzip it in the UModelExamples folder before starting the section Additional example files for both Java and C programming languages are also available in the same directory i e Bank_Java ump Bank_CSharp ump and Bank_MultiLanguage ump These project files also contain Sequence diagrams which are described later in this Altova UModel 2013 2012 Altova GmbH UModel tutorial 15 documentation A section describing how to start a project from scratch and generate code is included in the Projects and code engineering section O 2012 Altova GmbH Altova UModel 2013 16 UModel tutorial Starting UModel 4 1 Starting UModel Having installed UModel on your computer 1 Start UModel by double clicking the UModel icon on your desktop or use the Start All Programs menu to access the UModel program UModel is started with a default project NewProject1 visible in the interface LI Altova UModel NewProjecti File Edit Project Layout View Tools Window Help Oa be om 4 b X Hj Ea R E d 8 message Model Tree a x Root 3 Component View C Model Tree E Diagram F Favorites Properties x Note the major parts of the
334. nt failure iv your failure to maintain the Software at Altova s specified release level or v use of the Software with other software without Altova s prior written approval It will be your sole responsibility to i comply with all Altova specified operating and troubleshooting procedures and then notify Altova immediately of Software malfunction and provide Altova with complete information thereof ii provide for the security of your confidential information iii establish and maintain backup systems and procedures necessary to reconstruct lost or altered files data or programs 7 SOFTWARE ACTIVATION UPDATES AND LICENSE METERING a License Metering The Software includes a built in license metering module that is designed to assist you with monitoring license compliance in small local networks The metering module attempts to communicate with other machines on your local area network You permit Altova to use your internal network for license monitoring for this purpose This license metering module may be used to assist with your license compliance but should not be the sole method Should your firewall settings block said communications you must deploy an accurate means of monitoring usage by the end user and preventing users from using the Software more than the Permitted Number b License Compliance Monitoring You are required to utilize a process or tool to ensure compliance with this Software License Agreement to ensure that t
335. nter the condition constraint you want to apply e g accountAmount gt 0 and press Enter to confirm Properties name Statelnvariant element kind Statelnvariant visibility Unspecified Messages Messages are sent between sender and receiver lifelines and are shown as labeled arrows Messages can have a sequence number and various other optional attributes argument list etc Messages are displayed from top to bottom i e the vertical axis is the time component of the sequence diagram e A call is asynchronous or asynchronous communication which invokes an operation that allows control to return to the sender object A call arrow points to the top of the activation that the call initiates e Recursion or calls to another operation of the same object are shown by the stacking of activation boxes Execution Specifications To insert a message 1 Click the specific message icon in the Sequence Diagram toolbar 2 Click the lifeline or activation box of the sender object 3 Drag and drop the message line onto the receiver objects lifeline or activation box Object lifelines are highlighted when the message can be dropped e The direction in which you drag the arrow defines the message direction Reply O 2012 Altova GmbH Altova UModel 2013 244 UML Diagrams Behavioral Diagrams messages can point in either direction e Activation box es are automatically created or adjusted in size on the sender receiver object
336. nts of your UModel project Elements can be directly manipulated in this tab using the standard editing keys as well as drag and drop e The Diagram Tree tab allows you quick access to the modeling diagrams of you project wherever they may be in the project structure Diagrams are grouped according to their diagram type e The Favorites tab is a user definable repository of modeling elements Any type of modeling element can be placed in this tab using the Add to Favorites command of the context menu The Properties pane supplies you with two views of specific model properties e The Properties tab displays the properties of the currently selected element in the Model Tree pane or in the Diagram tab Element properties can defined or updated in this tab e The Styles tab displays attributes of diagrams or elements that are displayed in the Diagram view These style attributes fall into two general groups Formatting and display settings e The Hierarchy tab displays all relations of the currently selected modeling item in two 2012 Altova GmbH Altova UModel 2013 18 UModel tutorial Starting UModel different views The modeling element can be selected in a modeling diagram the Model Tree or in the Favorites tab The Overview pane displays various tabs e The Overview tab which displays an outline view of the currently active diagram e The Documentation tab which allows you to document your classes on a per class bas
337. o load the file through the local cache or a proxy server which considerably speeds up the process if the file has been loaded before Alternatively you may want to reload the file if you are working say with an electronic publishing or database system select the Reload option in this case Microsoft SharePoint Server Notes Note the following points about files on Microsoft SharePoint Servers e Inthe directory structure that appears in the Available Files pane file icons have symbols that indicate the check in check out status of files Altova UModel 2013 O 2012 Altova GmbH UModel Reference File 389 File URL http vietspstest Docs Documents tle Bank_Java ump File load r Use cache proxp C Reload Identification l mm gt Remember password User alp Password MIN n between application starts Available files Server URL http wietspstest Browse IM This iz a Microsoft SharePoint Server a Documents E che ME F a Foldertestmip Check Qui F a Forms Check In m f Marketing Undo Check Out E Hew Folder Delete Switch to File Dialog Open Cancel L Right clicking a file pops up a context menu containing commands available for that file AutoCalc sps e The various file icons are shown below Checked in Available for check out Checked out by another user Not available for check out Checked out locally Can be edited and checked in
338. o whatever you want in UModel add parameters set them as abstract etc A state machine i e its controller class can be instantiated several times All instances work independently of each other e The UML State machine execution is designed for the Run to completion execution model e UML state machines assume that processing of each event is completed before the next event is processed e This also means no entry exit do action or transition effect may directly trigger a new transition state change Initialization e Every region of a state machine has to have an initial state e The code generated by UModel automatically initializes all regions of the state machine O 2012 Altova GmbH Altova UModel 2013 214 UML Diagrams Behavioral Diagrams or when the Initialize method of the controller class is called e If OnEntry events are not wanted during initialization you can call the Initialize method manually and ignore OnEntry events during the startup Getting the current state s UModel supports composite states as well as orthogonal states so there is not just one current state every region in any hierarchy level can have one current state The AirCondition example shows how to walk through the regions to the current state s TreeNode rootNode m_CurrentStateTree Nodes Add m_STM getRootState getName UpGateCurrentotaetelrec m SIM g tRootState rootNode private void UpdateCur
339. odel Reference Help 429 14 8 Help Allows access to the Table of Contents and Index of the UModel documentation as well as Altova web site links The Registration option opens the Altova Licensing Manager which contains the licensing information for all of Altova products O 2012 Altova GmbH Altova UModel 2013 Chapter 15 Code Generator 432 Code Generator 15 Code Generator UModel includes a built in code generator which can automatically generate Java CF Visual Basic or XML Schema files from UML models Note on alias usage When reverese engineering code which contains namespace or class aliases you can now choose if the alias is to be resolved Check box Resolve aliases in Import Source Project Directory dialog box When updating code i e model to code alias definitions are retained in the code as is The scope of the alias definitions are the files in which they appear e g using Q System Collections Generic Queue lt String gt Q myQueue Any potentially conflicting aliases are added to the Unknow Externals if their use is unclear Note The Resolve alias settings can be changed at any time in the Project Settings dialog box Altova UModel 2013 2012 Altova GmbH Code Generator The way to SPL Spy Programming Language 433 15 1 The way to SPL Spy Programming Language This section gives an overview of Spy Programming Language the code generator s template language It is as
340. of the actor A tooltip containing Association appears t Standard User 3 Click the handle drag the Association line to the right and drop it on the get account balance use case An association has now been created between the actor and the use case The Altova UModel 2013 O 2012 Altova GmbH UModel tutorial Use cases 23 association properties are also visible in the Properties tab The new association has been added to Model Tree under the Relations item of the Use Case View package Model Tree E Deployment View y Design phase qc En Java Lang Java Lang ump E Py Unknown Externals E Use Case View E FS Overview Account Balance i tr gt get account balance E Standard User q Relations C Model Tree EH Diagram Favorites Properties x dle name element kind Association Overview Account Balance visibility public 4 Click the use case and drag it to the right to reposition it The association properties are visible on the association object 5 Click the use case to select it then click the collapse icon on the left hand edge of the use case ellipse Please note q Standard U A blue dot next to an element icon Lal Standard User in the Model Tree tab signifies that the element is visible in the current diagram tab Resizing the actor adjusts the text field which can be multi line A line break can be inserted into the text using CTRL Enter
341. of the system CollaborationUse Inserts a Collaboration use element which represents one specific use of a collaboration involving specific classes or instances playing the role of the collaboration A collaboration use is shown as a dashed ellipse containing the name of the occurrence a colon and the name of the collaboration type Ji Me ine la ae Properties aa me Bank Account Transfer name element kind CollaborationUse visibility unspecified type Account Transfer F When creating dependencies between collaboration use elements the type field must be filled to be able to create the role binding and the target collaboration must have at least one part role a Part Property Inserts a part element which represents a set of one or more instances that a containing classifier owns A Part can be added to collaborations and classes LA por Inserts a port element which defines the interaction point between a classifier and its environment and can be added on parts with a defined type Class Inserts a Class element which is the actual classifier that occurs in that particular use of the collaboration Connector Inserts a Connector element which can be used to connect two or more instances of a part ora port The connector defines the relationship between the objects and identifies the communication between the roles Dependency Role Binding Inserts the Dependency element which indicates whic
342. ogical conjunction with short circuit evaluation Logical disjunction with short circuit evaluation Assignment 2012 Altova GmbH Altova UModel 2013 442 Code Generator The way to SPL Spy Programming Language 15 1 4 Conditions SPL allows you to use standard if statements The syntax is as follows 1 condition statements else statements endi f or without else if condition statements endif Please note that there are no round brackets enclosing the condition As in any other programming language conditions are constructed with logical and comparison operators Example if Snamespace ContainsPublicClasses and Snamespace Prefix lt gt whatever you want inserts whatever you want in the resulting file end1f Switch SPL also contains a multiple choice statement Syntax switch Svariable case X statements case Y case Z statements default statements endswitch The case labels must be constants or variables The switch statement in SPL does not fall through the cases as in C so there is no need for a break statement Altova UModel 2013 2012 Altova GmbH Code Generator The way to SPL Spy Programming Language 443 15 1 5 Collections and foreach Collections and iterators A collection contains multiple objects like a ordinary array Iterators solve the problem of storing and incrementing array indexes when accessing objects Syntax foreach it
343. oint To delete an activity 1 Click the respective activity in the state element and press the Del key To create a transition between two states 1 Click the Transition handle of the source state on the right of the element 2 Drag and drop the transition arrow onto the target state The Transition properties are now visible in the Properties tab Clicking the kind combo box allows you to define the transition type external internal or local Properties name unspecified 1 external SSL available Logging in User Properties Styles Transitions can have an event trigger a guard condition and an action in the form eventTrigger guard condition activity O 2012 Altova GmbH Altova UModel 2013 204 UML Diagrams Behavioral Diagrams To automatically create operations from transitions Activating the Toggle automatic creation of operations in target by typing operation names fot icon L automatically creates the corresponding operation in the referenced class when creating a transition and entering a name e g myOperation Note operations can only be created automatically when the state machine is inside a class or interface To automatically create operations from Activities 1 Right click the State and select the specific action activity e g New Entry Activity 2 Enter the name of the activity making sure to finish with the open close brackets e g entry OnEntryCoo
344. olor gt but directly to the enumeration Color thus hiding the information that Color is used in a template binding em Colora The concrete collection type of myColors can still be seen in the myColorsContainer but not in the association MyColorsContainer lt lt interface gt List lt E gt Color gt a myColors List E Color amy Olor s The Diagram Editing tab of the Tools Options dialog box allows you to specify the templates where you want this behavior and whether you want the collections to be resolved 2012 Altova GmbH Altova UModel 2013 Chapter 9 Generating UML documentation 172 Generating UML documentation 9 Generating UML documentation Altova web site E UML project documentation The Generate Documentation command generates detailed documentation about your UML project in HTML MS Word RTF or PDF The documentation generated by this command can be freely altered and used permission from Altova to do so is not required Documentation is generated for the modeling elements you select in the Generate Documentation dialog box You can either use the fixed design or use a StyleVision SPS for the design Using a StyleVision SPS enables you to customize the output of the generated documentation How to do this is explained in the section User Defined Stylesheets Note To use an SPS to generate documentation you must have StyleVision installed on your machine Related elements are typ
345. om UModel elements 7 9 VB NET code to from UModel elements The table below shows the one to one correspondence between e UModel elements and VB NET code elements when outputting model to code e VB NET code elements and UModel model elements when inputting code into model The screenshot shows a small section of the table Please click HERE to open the HTML version of the table in your browser VB NET lt I gt UModel Project Component directo director Package Namespace name name lt lt namespace gt gt name 1 modifiers code file name associated rojectfile directo attibute sections doc comments Altova UModel 2013 2012 Altova GmbH Projects and code engineering Database to from UModel elements 141 7 10 Database to from UModel elements The table below shows the one to one correspondence between e UModel elements and database elements when outputting model to code e Database elements and UModel model elements when inputting code into model Database connection Table Foreign Column Dame I an table Property ame mame o O ii lt V Database Umodel Database connection Data Type Column Precision Scal Default Autoincrement art of Primary Ke art of Foreign Ke art of Unique Ke Primary Key Multiplicity opaty efault lt lt autoincrement gt gt ique gt gt Class lt lt Table gt gt Dojo g E w D ATA TA a ATA ALATA
346. omatically be opened when starting the application If you want to structure the project file with CR LF and tab indents in a pretty print Altova UModel 2013 2012 Altova GmbH UModel Reference Tools 425 format Local Options 3 l x View Editing Diagram Editing File Code Engineering Source Control Automatic reload of changed files Load and save with project file lv Favorites w Open diagrams Project M Open last project on program start Pretty pririt if Pretty print file content when saving The Code Engineering tab allows you to define The circumstances under which the Message window will open If all coding elements i e those contained in a Java C VB namespace root as well as those assigned to a Java C VB component are to be checked or only elements used for code engineering i e where use for code engineering check box is active are to be checked When updating program code if If a syntax check is to be performed If missing ComponentRealizations are to be automatically generated If missing code file names in the merged code are to be generated If namespaces are to be used in the code file path The Indentation method used in the code i e tabs or any number of spaces The directories to be ignored when updating a UModel project from code or directory Separate the respective directories with a semicolon Child directories of the same name are
347. on Select in Model Tree or press F4 The Operation1 item is now highlighted under Account in the Model Tree tab O 2012 Altova GmbH Altova UModel 2013 86 UModel User Interface Diagram pane Model Tree bee 3 E EQ Altovabank E Eq John s Checking as Accaw 1 balance mndm ii balance float 0 gt gelBalance d String El lt getld E collect ccountin epa i i gt Operation E E Bank B yo getdi String OD Mad Diagr l ae Favo collect amp ccountinforin Il Properties nd Xx 3 Press the Del key to delete the operation from the class and project Note that almost any modeling element can be found in the Model Tree when pressing F4 Please note It is also possible to navigate from the Properties pane to the Model Tree when viewing an attributes properties please see the Properties in the User Interface section Deleting elements from a diagram Delete element from the diagram and project e Select the element you want to delete and press the Del keyboard key Delete element from diagram only not from the project 1 Select the element you want to delete 2 Hold down the CTRL key and press Del An auto layout function allows you to define how you would like your diagram to be visually structured Right click the diagram background and select either e Autolayout All Force directed or e Autolayout All Hierarchic e Autolayout All Block Showing relationship
348. one location or on more than one network all subject to the above Permitted Number limitations and based on the number of users using the Software lf a computer is not on the same physical network then a locally installed user license or a license dedicated to concurrent use in a virtual environment is required Home User restrictions and limitations with respect to the Concurrent User licenses used on home computers are set forth in Section 1 g e Concurrent Use in Virtual Environment lf you have purchased Concurrent User Licenses you may install a copy of the Software on a terminal server Microsoft Terminal Server or Citrix Metaframe application virtualization server Microsoft App V Citrix XenApp or VMWare ThinApp or virtual machine environment within your internal network for the sole and exclusive purpose of permitting individual users within your organization to access and use the Software through a terminal server application virtualization session or virtual machine environment from another computer provided that the total number of users that access or use the Software concurrently at any given point in time on such network virtual machine or terminal server does not exceed the Permitted Number and provided that the total number of users authorized to use the Software through the terminal server application virtualization session or virtual machine environment does not exceed six 6 times the Permitted Number of users Accordin
349. onnection and set a working folder IBM Rational ClearCase 7 0 1 LT http www 01 ibm com software awdtools clearcase To install IBM Rational ClearCase LT run the setup e You will be asked to update the version of the InstallShield scripting engine if it is older than version 10 5 choose Update it if necessary The update runs prior to the installation starting e Choose the default option Enterprise deployment create a network release area and customize it using Siteprep To integrate with Altova products it is sufficient to install only the client Check only the client check box e Provide a server name and the license server element s following the examples provided by the installer port server name e Provide a configuration description name by editing a name you like and insert the path to a Release area This path must specify a shared folder e You can create a new folder on your machine share it and use it as a Release Area In Vista you must set the Network discovery to on in Network and Sharing Center to set this path The Release Area is now created some files are copied into it and a shortcut is created with the name sitedefs Ink e When all files are copied continue by clicking the shortcut from Windows Explorer A Altova UModel 2013 2012 Altova GmbH Source Control Installing Source Control Systems 335 new setup will start to install the client e When setup starts choose the option
350. onships Showing model relationships 2 Select the menu option Show PropertyXX as Association This inserts opens the referenced class and shows the relevant association E Property2 Class2 Property2 gl myProperty Altova UModel 2013 2012 Altova GmbH Creating model relationships Associations realizations and dependencies 167 8 2 Associations realizations and dependencies Creating relationships using connection handles 1 Given two classes in the class diagram 2 Click the first class to make it the active class Connection handles appear on three sides 3 Move the mouse pointer over the top handle on the right side of the class Association i ln T I l H AAA _ s E pa A Tooltip appears informing you of the type of relationship that this handle creates Association in this case 4 Drag to create a connector and drop it on the second class The target class is highlighted if this type of association is possible i Class Cel E _ nih An association has now been created between these two classes Class al Property Class o i Note that the lower handle of the class element creates a Collection Association Elements in the various model diagrams supply you with different connection handles E g aclass in a class diagram supplies the following relationship handles in clockwise fashion e InterfaceRealization e Generalization e Association An Artifac
351. oot sets the Java namespace root This means that this package and all sub packages are enabled during the code 2012 Altova GmbH Altova UModel 2013 136 Projects and code engineering Forward engineering prerequisites engineering process The Java namespace root is denoted with a icon in the Model Tree pane e Selecting the command again removes the Java namespace for this package Altova UModel 2013 O 2012 Altova GmbH Projects and code engineering Java code to from UModel elements 137 7 6 Java code to from UModel elements The table below shows the one to one correspondence between e UModel elements and Java code elements when outputting model to code e Java code elements and UModel model elements when inputting code into model The screenshot shows a small section of the table Please click HERE to open the HTML version of the table in your browser Java JP UModel Java UModel Package Package n name l lt lt namespace gt gt nan as rol ComponentRealization extends clause Generalization implements clause nterfaceRealizationis lava docs Commenti Documentation 2012 Altova GmbH Altova UModel 2013 138 Projects and code engineering C code to from UModel elements 7 7 C code to from UModel elements The table below shows the one to one correspondence between e UModel elements and C code elements when outputting model to code e C code elements and UModel model elements when
352. or Artifact Collaboration Component Enumeration InstanceSpeciticatian Interaction collectData Draft Apply Java Profile Bank realizations Account Transfer Deployment sample Accounts Collect Account Information Bank API Draft Overview Account Balance BankView Bank BankAddresses ini Account CheckingAccount Account Transfer Bank API client Account Type Agen ank Collect Account Information Bank Server Overview Connect to BankAPI Query BankServer Draft Standard User BankAPl jar Bank CreditCardAccount Bank Account Transfer BankServer John s ist Connect to BankAPI BankView Main BankServer BankServer savings ccount BankView John s 2nd The screenshot above shows the generated documentation with the diagram and element index links at the top of the HTML file 2012 Altova GmbH Altova UModel 2013 178 Generating UML documentation The screenshot below shows the specifics of the Account class and its relation to other classes Note that the individual attributes and properties in the class diagrams are also hyperlinked to their definitions Clicking a property takes you to its definition The individual hierarchy classes as well as all underlined text are hyperlinked Class Account diagram hierarchy Over properties owned wWember specific associations from target of relation balance float 0 id String
353. ormation e Electronic software distribution e Copyrights e End User License Agreement Altova UModel 2013 O 2012 Altova GmbH Appendices License Information 451 16 1 License Information This section contains e Information about the distribution of this software product e Information about the intellectual property rights related to this software product e The End User License Agreement governing the use of this software product Please read this information carefully lt is binding upon you since you agreed to these terms when you installed this software product O 2012 Altova GmbH Altova UModel 2013 452 Appendices License Information 16 1 1 Electronic Software Distribution This product is available through electronic software distribution a distribution method that provides the following unique benefits e You can evaluate the software free of charge before making a purchasing decision e Once you decide to buy the software you can place your order online at the Altova website and immediately get a fully licensed product within minutes e When you place an online order you always get the latest version of our software e The product package includes a comprehensive integrated onscreen help system The latest version of the user manual is available at www altova com i in HTML format for online browsing and ii in PDF format for download and to print if you prefer to have the documentation on paper 30
354. ort source code and create new project file O 2012 Altova GmbH Altova UModel 2013 108 UModel Command line interface C Program Files Altova UModel2013 UModelBatch exe new C Program Files Altova UModel2013 UModelBatchOut Fred ump isd X TestCases UModel Fred set gui iclg Java5 0 ipsd 1 ijdc 1 dgen 1 dopn 1 dmax 5 chk Inew Specifies that the newly created project file should be called Fred ump in C Program Files Altova r j CE OVNRUModelBatchOut isd Specifies that the root directory to import into should be X TestCases UModel Fred set Specifies that any options used in the command line tool will be saved in the registry When subsequently starting UModel these settings become the default settings display the UModel GUI during batch processing UModel will import the code as Java5 0 ipsd recursively process all subdirectories of the root directory specified in the isd parameter Example 2 Imports source code from X TestCases UModel and saves the resulting project file in C Program C Program Files Altova UModel2013 UModelBatch exe new C Program Files Altova UModel2013 UModelBatchOut finalclass ump isd X TestCases UModel iclg Java5 0 ipsd 1 ijdc 1 dgen 1 dopn 1 dmax 5 dsat 1 dsnc 1 chk dsat 1 suppresses attributes in the generated diagrams dsnc 1 suppresses nested classifiers in the generated diagrams Example 3 Synchronize code using
355. osite states regions 208 diagram elements 220 icons 381 insert elements 202 states activities transitions 202 State Machine Diagram 201 Status background updates 340 Stereotype and enumeration 295 assigning 291 attributes defining 291 custom icon 299 default tagged value 295 member end 291 profiles 291 user defined styles 297 Stereotypes add to Profile diagram 291 definition of 289 Structural diagrams 268 Style user defined stereotype 297 Styles cascading precedence 76 multiple selections 76 Styles tab 76 Sub class inserting into diagram 94 Submachine state add entry exit point 208 Subproject and source control 318 creating 320 opening editing 320 saving subproject files 320 teamwork support 318 Symbols defined importing code 120 visibillity icons 269 Synchronization class and code file name 134 class name changes 134 settings 130 Synchronize merge code from model 53 merge model from code 59 root package class 130 to new location 112 Syntax batch file 106 check messages 84 check project syntax 395 checking 53 errors warnings 53 Syntax coloring 275 y Tagged definitions values 289 value default 295 value hide show attributes 291 values 291 Tagged values displaying 305 show 308 Teamwork support subprojects 318 Template binding 157 operation parameter 158 signature 154 15
356. ote operations can only be created automatically when the state machine is inside a class or interface Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 223 10 1 3 Protocol State Machine Altova web site E UML Protocol State Machine diagrams Protocol State Machines are used to show a sequence of events that an object responds to without having to show the specific behavior The required sequence of events and the resulting changes in the state of the object are modeled in this diagram Protocol State Machines are most often used to describe complex protocols e g database access through a specific interface or communication protocols such as TCP IP Protocol State Machines are created in the same way as State Machine diagrams but have fewer modeling elements Protocol Transitions between states can have pre or post conditions which define what must be true for a transition to another state to occur or what the resulting state must be once the transition has taken place stm ProtocolStateMachine protocol create CreateDB open good login com rea cleared close lt Inserting Protocol State Machine elements 2012 Altova GmbH Altova UModel 2013 224 UML Diagrams Behavioral Diagrams Using the toolbar icons 1 Click the Protocol State Machine icon in the toolbar 2 Click in the Protocol State Machine Diagram to insert the element Note that holding down CTRL
357. ouse cursor Is directly over the item and the status bar shows a more detailed description of the command You can drag the toolbars from their standard position to any location on the screen where they appear as a floating window Alternatively you can also dock them to the left or right edge of the 2012 Altova GmbH Altova UModel 2013 416 UModel Reference Tools main window To activate or deactivate a toolbar 1 Click the check box to activate or deactivate the specific toolbar To create a new toolbar 1 Click the New button and give the toolbar a name in the Toolbar name dialog box 2 Add commands to the toolbar using the Commands tab of the Customize dialog box To reset the Menu Bar e Click the Menu Bar entry and e Click the Reset button to reset the menu commands to the state they were when installed To reset all toolbar and menu commands e Click the Reset All button to reset all the toolbar commands to the state they were when the program was installed A prompt appears stating that all toolbars and menus will be reset e Click Yes to confirm the reset Show text labels This option places explanatory text below toolbar icons when activated Tools The Tools tab allows you to create your own menu entries and associated arguments to start external tools from within UModel via the Tools menu Click the folder icon in the Menu contents bar to add a new menu entry and use the Command field to
358. p Association AssociationClass Dependency Usage InterfaceRealization Generalization Add Package Class Interface Enumeration Datatype Primitive Type InstanceSpecification Note Note Link Altova UModel 2013 O 2012 Altova GmbH UModel Diagram icons Package diagram 377 13 9 Package diagram Add Elements Package Diagr X D NT ua MA INE L HR A Add Package Profile Relationship Dependency Packagelmport PackageMerge ProfileApplication Note Note Link 2012 Altova GmbH Altova UModel 2013 378 UModel Diagram icons Profile Diagram 13 10 Profile Diagram Add Profile Stereotype Relationship Generalization ProfileApplication Packagelmport Elementimport Note NoteLink Altova UModel 2013 O 2012 Altova GmbH UModel Diagram icons Protocol State Machine 379 Add Simple state Composite state Orthogonal state Submachine state FinalState InitialState EntryPoint ExitPoint Choice Junction Terminate Fork Fork horizontal Join Join horizontal ConnectionPointReference Relationship Protocol Transition Note Note link 2012 Altova GmbH Altova UModel 2013 380 UModel Diagram icons Sequence Diagram 13 12 Sequence Diagram Add Lifeline CombinedFragment CombinedFragment Alternatives CombinedFragment Loop InteractionUse Gate Statelnvariant DurationConstraint TimeConstraint Message Call Message Re
359. package The packages source project is displayed in parenthesis BankView start ump Shared folders that have been included by reference can be changed to Include by copy at any time by right clicking the folder and selecting Subproject Include as a Copy Please note All included projects of the source project have also been included Java Lang Unknown Externals and Java Profile Shared packages links to external elements Altova UModel 2013 2012 Altova GmbH Projects and code engineering Sharing Packages and Diagrams 153 Model Tree Root E Uy Component View El Deployment View E Design phase E Overview a Es Banking access Bank view ci ES Apply Java Profile com E Relations F Model Tree EF Diagram Tree F Favorites Attempting to share a package which has links to external elements causes a prompt to appear E g trying to share the BankView package These errors must be solved before the UModel projectfile can be saved D The shared Package s have links to external elements Do vou still wank to change the shared status of this Package Clicking Yes forces you to resolve the external links before you can save The Messages pane provides information on each of the external links Messages NW 4 gt 4 aj A Al Gal x E Starting Checking shared packages Property bank4Fl has links out of the shared Package s Parameter bank API has
360. package class and all sub elements Press the key to open the current package class To collapse the packages classes press the keyboard key Note that you can use the standard keyboard keys or the numeric keypad keys to achieve this Changing the visibility type icons Clicking the visibility icon to the left of an operation S or property pl opens a drop down list enabling you to change the visibility status You can also change the type of visibility symbols that you want to see e Click a class in the diagram window click the Styles tab and scroll down the list until you find the Show Visibility entry O 2012 Altova GmbH Altova UModel 2013 270 UML Diagrams Structural Diagrams Project Styles Show Mested Classifier true Show Visibilit Model Style Show Stereotypes Show Constraints Show Default value true show Parameter true al m E Properties You can choose between the UModel type shown above or the UML conformant symbols shown below con tructor Accounti gelBlalance J float qetld r String collectAaccountintacin bank AFI Showing Hiding node content class attributes operations slots UModel now allows you to individually display the attributes or operations of a class as well as define which should be shown when adding them as new elements Note that this it now possible to show hide object slots i e InstanceSpecifications using the same method Right click a class
361. parated list of sequence numbers followed by a colon and the message name Generating Sequence diagrams from Communication diagrams UModel allows you to generate Communication diagrams from Sequence diagrams and vice versa in one simple action e Right click anywhere in a Communication diagram and select Generate Sequence Diagram from the context menu Lifeline Lifeline Lifeline 1 Messagqe1 1 1 Message Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 231 10 1 6 Interaction Overview Diagram Altova web site E UML Interaction Overview diagrams Interaction Overview Diagrams are a variant of Activity diagrams and give an overview of the interaction between other interaction diagrams such as Sequence Activity Communication or Timing diagrams The method of constructing a diagram is similar to that of Activity diagram and uses the same modeling elements start end points forks joins etc EstablishAccess llegal PIN Cardit Please enter Two types of interaction elements are used instead of activity elements Interaction elements and Interaction use elements Interaction elements are displayed as iconized versions of a Sequence Communication Timing or Interaction Overview diagram enclosed in a frame with the SD keyword displayed in the top left frame title space Interaction occurrence elements are references to existing Interaction diagrams with Ref enclosed in the fr
362. peration overriding 269 synchronization 130 syntax coloring 275 Class diagram 269 Class name changing effect on code file name 134 Classifier constraining 154 new 132 renaming 132 Close all but active diagram 85 Code adding code to sequence diagram 256 default 422 generate from sequence diagram 253 generate multiple sequence diagrams from 251 generate sequence diagram from 248 generation min conditions 135 Java code and class file names 134 prerequisites 53 refactoring 134 round trip engineering 53 SPL 433 synchronization 130 target directory 53 Code C to UModel elements 138 Code Java to UModel elements 137 Code VB NET to UModel elements 140 Code XML Schema to UModel elements 139 Code engineering 53 generate ComponentRealizations 132 import directory 59 minimalist project 115 move project file to new location 112 showing associations 59 Code generation use namespace as directory 53 Code Generator 432 Collaboration Composite Structre diagram 281 Collapse class compartments 269 Color syntax coloring enable disable 275 transparent background 299 Combined fragment 239 Command add to toolbar menu 415 context menu 419 delete from menu 419 line new load save 110 line processing 106 110 reset menu 419 Comments documentation 82 show source code comments in diagram 85 Communication icons 371 Communication diag
363. ply Message Creation Message Destruction Asynchronous Message Call Asynchronous Message Reply Asynchronous Message Destruction Note Note Link No message numbering Simple message numbering Nested message numbering Toggle dependent message movement Toggle automatic creation of replies for messages Toggle automatic creation of operations in target by typing operation names Altova UModel 2013 O 2012 Altova GmbH UModel Diagram icons State Machine Diagram 381 Add Simple state Composite state Orthogonal state Submachine state FinalState InitialState EntryPoint ExitPoint Choice Junction Terminate Fork Fork horizontal Join Join horizontal DeepHistory ShallowHistory ConnectionPointReference Relationship Transition Note Note link Toggle automatic creation of operations in target by typing operation names 2012 Altova GmbH Altova UModel 2013 382 UModel Diagram icons Timing Diagram 13 14 Timing Diagram Add Elements Timing Diagram Era tf H e Add Lifeline State Condition Lifeline General value TickMark Event Stimulus DurationConstraint TimeConstraint Message Call Message Reply Asynchronous Message Call Note Note Link Altova UModel 2013 2012 Altova GmbH UModel Diagram icons Use Case diagram 383 13 15 Use Case diagram Add Package Actor UseCase Relationship Association Generalization Include Extend
364. ponding operation is Generated automatically generated in method in code e UModel private class pete auies CTestStateMachi ne IState TestController NN lt gt MyEvent2 ybool gt CanGosState6 bool e lf Stateb is the active state and MyEvent2 occurs the state machine implementation will call CanGoState6 and depending on its result the transition will fire or not e Normally these methods should be overwritten When they are not abstract and the O 2012 Altova GmbH Altova UModel 2013 220 UML Diagrams Behavioral Diagrams Generate debug messages option is active UModel provides default debug output as described in Example 2 e These methods also can have parameters as shown in Example 3 e Multiple transitions with the same event but having different guards are possible The order in which the different guards are polled is undefined If a transition does not have a guard or the guard is else it will be considered as the last i e only when all other transition guards return false will this one will fire Example If CanGoState6 or CanGoState7 is called first is undefined but for sure the third transition only fires if CanGoState6 and CanGoState return false MyEvent2 CanGoState6 HyEwent2 CanGosState State MyEvent2 else Additional constructs and functionality can be found in the AirCondition ump and Complex ump samples State Machine Diagram ele
365. preview window Showing Hiding class attributes or operations Element styles UModel allows you to insert multiple instances of the same class on a single diagram or even different diagrams The visibility settings can be individually defined for each of these views to the class The screenshot below shows two views to the same class i e SavingsAccount SavingsAccount minimumbalance float 1 0000 SavingsAccount minimumbalance flost 1 0000 savings Account getinterestRate float collect amp ccountinfofin bank API Bank AP boolean getWinimumbalanceC float savings Account getinterestate float collect ccountintocin bank P IB getMinimumbalance float The When new elements are added and not hidden by Element Styles option allows you to define what will be made visible when new elements are added to the class Elements can be added manually in the model diagram and in the Model Tree or automatically during the code engineering process When new elements are added and not hidden by Element Styles Show elements Hide elements except those added to this node Show elements displays all new elements that are added to any view of the class E g The interestRate float attribute has been hidden in both views of SavingsAccount leaving the minimumBalance attribute visible The Show elements radio button is active for the left hand class 2012 Altova GmbH Altova UModel 2013 272 UML D
366. problems that could cause system or other failures and data loss CONSEQUENTLY THE PRE RELEASE AND OR EVALUATION SOFTWARE IS PROVIDED TO YOU AS IS WITH NO WARRANTIES FOR USE OR PERFORMANCE AND ALTOVA DISCLAIMS ANY WARRANTY OR LIABILITY OBLIGATIONS TO YOU OF ANY KIND WHETHER EXPRESS OR IMPLIED WHERE LEGALLY LIABILITY CANNOT BE EXCLUDED FOR PRE RELEASE AND OR EVALUATION SOFTWARE BUT IT MAY BE LIMITED ALTOVA S LIABILITY AND THAT OF ITS SUPPLIERS SHALL BE LIMITED TO THE SUM OF FIFTY DOLLARS USD 50 IN TOTAL If the Evaluation Software has a time out feature then the software will cease operation after the conclusion of the designated evaluation period Upon such expiration date your license will expire unless otherwise extended Your license to use any output created with the Evaluation Software that contains generated program code including Unrestricted Source Code such as Java C C VB NET or XSLT and associated project files and build scripts as well as generated XML XML Schemas documentation UML diagrams and database structures terminates automatically upon the expiration of the designated evaluation period but the license to use such output is revived upon your purchase of a license for the Software that you evaluated and used to create such output Access to any files created with the Evaluation Software is entirely at your risk You acknowledge that Altova has not promised or guaranteed to you that Pre release Software will be a
367. property and drag it into the diagram secomplex Type global SSS EQUENCES gt ssglobal simpleType Address mg_ sequence lt lt dataType gt from xSDSchema from Address string sequence _ from SDDatatypes _sequence mg_sequence i pl element Name string UR j re ee a Mian idee al lt element gt City string HBH sequence mo sequence 2012 Altova GmbH Altova UModel 2013 314 UML Diagrams Additional Diagrams Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Additional Diagrams 315 Creating and generating an XML Schema You would generally import a schema edit it in UModel and output the changes It is however possible to generate a schema from scratch This will only be described in broad detail however Creating a new schema in UModel 1 Create a new package in the Model Tree e g MY Schemas Root HE Component view E Use Case View E Design View Interaction View ac Deployment view m ool MY Schemas 2 Right click the new package and select the menu option Code Engineering Set as XSD namespace root You are asked if you want to assign the XSD profile if this is the first XSD Namespace root in the project 3 Click OK to assign the profile 4 Right click the new package and select New Element Package 5 Double click in the package name field and change it to the namespace you want to use e g http www my ns com 6 Click the lt lt
368. r defined 20 Add diagram to package 20 insert delete from Model Tree 67 Model link 96 move delete diagram 85 new project 112 package to project 20 project to source control 356 to Favorites 73 to source control 356 Align elements when dragging 20 snap lines when dragging 422 Aligning elements 89 All expand collapse 269 Annotation documenation 82 XML schema 305 Appendices 450 Application external arguments 416 Arguments external tools 416 Artifact add to node 49 manifest 49 Assign shortcut to a command 418 stereotype 291 Association aggregate composite 28 automatic display of 162 between classes 28 class memberEnd 162 O 2012 Altova GmbH 468 Index Association create by drag and drop 167 defining the type 162 display during code engineering 59 line thickness 85 object links 39 qualifier 162 role 162 Show property as 85 Show relationships 85 165 show typed property 158 use case 20 Attribut select in Model Tree 74 Attribute autocompletion window 422 coloring 275 show hide 269 show hide tagged values 291 stereotype 291 Autocomplete function 28 Autocompletion single multi mode 89 window types 89 window on class editing 422 Autogenerate reply message 243 Automatially add operation 202 Automatic display of associations 162 hyperlink 96 B Background status updates 340 status updat
369. r version define your own toolbars keyboard shortcuts menus and macros e Restore Toolbars and Windows to their default state e Define the global program settings options Spelling Spelling Options Scripting Editor Macros User defined tools Customize Restore Toolbars and Windows Options Altova UModel 2013 2012 Altova GmbH UModel Reference Tools 407 14 6 1 Spelling Select Tools Spelling to start the spell check process The standard spell checker options are available in this dialog box To define the specific spell checker options click the Options button or select the menu option Tools Spelling Options Please note You can spell check entries in the Model Tree as well as in UML diagrams Right clicking in the Model Tree and selecting Documentation Spelling spell checks the comments and notes of the Model Tree Spelling English US Mot in Dictionary ankname Ignore Once Suggestions Ignore All bank name TS iosa Add to Dictionary banknote Change Change All Recheck Document Uptions Not in Dictionary This text box contains the word that cannot be found in either the selected language dictionary or user dictionary Suggestions This list box displays words resembling the unknown word supplied from the language and user dictionaries Double clicking a word in this list automatically inserts it in the document and cont
370. ram 228 generate from Sequence diagram 228 Compact mode toggle 305 Compare source files 362 Compartment expand single multiple 269 2012 Altova GmbH 470 Index Compatibility updating projects 130 Component diagram 44 icons 373 insert class 44 realization 44 Component diagram 283 ComponentRealizations autogeneration 132 Composite state 208 add region 208 Composite Structure icons 372 insert elements 281 Composite Structure diagram 281 Composition association create 28 Concrete class 28 Constrain element 67 Constraining classifiers 154 Constraint add in diagram 67 assign to multiple element 67 syntax check 395 Content model of XML Schema 310 Context menu commands 419 Copy paste in Diagram Model Tree 91 Copyright information 451 CPU load increase background status updates 326 CR LF for ump file on save 112 Create getter setter methods 269 XML schema 315 csproj csdproj MS Visual Studio Net 395 CTRI Space on demand autocompletion 89 Custom stereotype icon 299 Customize 415 actor 20 context menu 419 menu 419 toolbar menu commands 415 CVS 326 D Datatype defining in Schema 310 Datatypes adding autocompletion 89 Default menu 419 path examples folder 14 project code 422 SPL templates 130 tagged value 291 Defined symbols importing code 120 Delete class relationships
371. ram is automatically inserted if you are using the Bank_Multilanguage ump example file from the UModelExamples folder The first sequence diagram found in the model tree is selected per default 2 To change the default interaction element Click the behavior diagram combo box in the Properties tab A list of all the possible elements that can be inserted is presented Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 233 Properties name CallBeharior Action Interaction qualified name Design View Activity CallBeh Callbehavior Action unspecified x isSynchronous behavior diagram lt ref gt wrie empty result log error lt ref gt Bank ler Behavior ew lt ref gt FilterDisplayData Root Behavior View Bank view lt ref gt HandleDisplayException Root Behavior View Bank view Asref listen for incoming connections Properties 4 lt ref gt Bank AFI Root Behavior wiew Overview lt ref gt Collect Account Information Root Interaction view Collect Account Information Root Interaction Views Collect Al lt ref gt Connect to Bank 4 1 Root Interaction Wie Connect ta BankAPl Root Interaction view Connect t Callbehavior Action Inte Design View Activity CallBehavior Action unspecified L behawvior diagram Connect to Bank amp Pl honk PE B ere PE corr COPPIE A ie e ie e de e de e de e e e de e de e de e de e de e e e e e e e de e e e e e e e
372. rations and properties 158 LAS Project Settimo creati 159 16 Enhancing performante santi 160 8 Creating model relationships 162 SA Shown model Eanos hips sennae A eT 165 8 2 Associations realizations and dependencies iii 167 Altova UModel 2013 9 Generating UML documentation 172 91 Supplied SPS Sly ESN taria A A AA NS 179 972 WUscr detincd Styles Sierra ea aria 181 10 UML Diagrams 184 IEE Behavioral A 185 IOLA ACUM ty Didra OOO E a ea 186 Inserting Activity Diagram elements iii 187 Crealo branches and ME SES is A 189 ACTVIEV Diagram E MEMES id 191 10 12 State Machine Diagrami sali eo 201 Inserting state machine diagram elements iii 202 Creating states activities and LV ANSILIONS vid lia 202 COMPONEN IES a NE 208 Code generation from State Machine diagrams ooommmomnnmmnmmmmniinnnmmmiiinnnn 210 Working with State machine Code viii aE EAN 213 State Machine Dia srameleneni aos 220 101 3 Protocol State Machines rara 223 Inserting Protocol State Machine elements ii 223 Protocol State Machine Diagram elements iii 223 OLA UE A e o ed ro 227 POLS Communica DIA TA ia 228 Inserting Communication Diagam elements iii 228 10 1 6 Interaction Overview Diagram ri 231 Inserting Interaction Overview elements iii 231 IO Seguen Diatriba eddie acaricia 236 Ins
373. rce control 358 save pretty print 112 save open diagrams 422 send by mail 387 styles 76 syntax checking 395 workflow 112 Project files Borland MS Visual Studio Net 395 Project open source control 347 Properties 74 adding 28 source control 363 Property coloring 275 reusing 34 show as association 85 165 typed show 158 typed as lifeline 238 Provider select 347 source control 326 PVCS Version Manager 326 Q Qualifier association 162 R Raised exception 120 Adding 269 Realization component 44 generate ComponentRealizations 132 O 2012 Altova GmbH 478 Index Refactoring code class names synchronization 134 Reference 386 show referenced class 85 Refresh status source control 364 Region add to composite state 208 Region name show hide 208 Reject source edits 355 Relation show all hierarchy tab 79 Relationship Show model relationships 85 165 Relationships create using handles 167 element 162 Relative documentation links 172 importing saving of files 120 Remove from Favorites 73 from source control 358 Rename classifier 132 Reply message autogenerate 243 Repositories 326 Reset menu commands 419 shortcut 418 toolbar amp menu commands 415 Resources increase background status updates 326 Restore toolbars and windows 406 Reuse of subprojects 320 Right dragging 94 Rol
374. rd expression can be entered immediately upon insertion will appear between the two square brackets E E CombinedFragmenti E E InteractionOperand fi ii ben lpasswsordOk i E E InteractionOperand E Diagra d Favorites hx qualified name element kind InteractionConstraint Visibility public guard password k Collect Account Infor The InteractionConstraint is actually the guard expression between the square brackets Option opt Option represents a choice where either the sole operand is executed or nothing happens Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 241 Break break The break operator is chosen when the guard is true the rest of the enclosing fragment is ignored Parallel par Indicates that the combined fragment represents a parallel merge of operands Strict sequencing strict The combined fragment represents a strict sequencing between the behaviours of the operands LOOF Loop loop The loop operand will be repeated by the number of times defined in the guard expression loop 0 n Having selected this operand you can directly edit the expression in the loop pentagon by double clicking Critical Region critical The combined fragment represents a critical region The sequence s may not be interrupted interleaved by any other processes Negative neg Defines that the fragment is invalid and all others are considered to be valid
375. reate get set methods for existing attributes UModel supplies you with two separate methods to achieve this e Drag and drop an attribute into the operation compartment e Use the context menu to open a dialog box allowing you to manage get set methods To create getter setter methods using drag and drop 1 Drag an attribute from the Attribute compartment and drop it in the Operations compartment Altova UModel 2013 2012 Altova GmbH UML Diagrams Structural Diagrams 277 i Info Drop will create getter setter i collect Accountinforin kank2 PFI Dank AP boolean 1 getMinimumbalance float A popup appears at this point allowing you to decide what type of get set method you want to create Create getter amp setter default Create getter default Create setter default Choose getter setter Selecting the first item creates a get and set method for interestRate float SavingsAccounti interestRiate float minimumbalance float 1 0000 savings Account getinterestRate float collect ccountintocin bank A amp P Bank AFN boolean getWinimumBalance float mu m qetlnterestRatel float To create getter setter methods using the context menu 1 Rightclick the class title e g SavingsAccount and select the context menu option Create Getter Setter Operations 2012 Altova GmbH Altova UModel 2013 278 UML Diagrams Structural Diagrams Create Get
376. red in different folder lt language name gt lt dictionary files gt For example on a Windows 7 machine files for the two English language dictionaries English British and English us will be stored as below C ProgramData Altova SpellChecker Lexicons English C ProgramData Altova SpellChecker Lexicons English C ProgramData Altova SpellChecker Lexicons English C ProgramData Altova SpellChecker Lexicons English British en GB aff British yen GB dis OS en US que US en US die In the Spelling Options dialog the dropdown list of the Dictionary Language combo box displays the language dictionaries These dictionaries are those available in the Lexicons folder and have the same names as the language subfolders in the Lexicons folder For example in the case of the English language dictionaries shown above the dictionaries would appear in the Dictionary Language combo box as English British and English US All installed dictionaries are shared by the different users of the machine and the different major versions of Altova products whether 32 bit or 64 bit You can add dictionaries for the spellchecker in two ways neither of which require that the files be registered with the system e By adding Hunspell dictionaries into a new subfolder of the Lexicons folder Hunspell dictionaries can be downloaded for example from http wiki services openoffice org wiki Dictionaries or http extensions servic
377. rentStateTree AirCondition AirConditionController IState state TreeNode node foreach AirCondition AirConditionController IRegion r in state getRegions TreeNode childNode node Nodes Add r getName r getCurrentState getName UpdateCurrentStateTree r getCurrentState childNode Example 1 a simple transition Generated method in code private class automatically generated C TestStateMachine IState public bool MyEventl1 SSS gt MyEvent1 bool e The state machine user should call the generated method MyEvent1 when the corresponding event occurs outside the state machine e The return parameter of these event methods provide information if the event caused a state change i e if it had any effect on the state machine or not E g being in State1 and event MyEvent1 occurs the current state changes to State2 and MyEvent1 returns true If State2 is active and MyEvent1 occurs nothing will change in the state machine and MyEvent1 will return false Example 2 a simple transition with an effect MyEwent1 OnState1State2Effect The corresponding operation is automatically generated in UModel Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 215 TestController lt gt MyEventi bool lt gt OnState1State2Effect in text String void 2012 Altova GmbH Altova UModel 2013 216 UML Diagrams Behav
378. responds to organizational units in a business model Properties name Manager element kind Activity Partition visibility unspecified isDimenzion L isExternal C ActivityPartition 2 Dimensional Inserts a two dimensional Activity Partition which is a type of activity group used to identify actions that have some characteristic in common Both axes have editable labels 2012 Altova GmbH Altova UModel 2013 196 UML Diagrams Behavioral Diagrams Dim To remove the Dim1 Dim2 dimension labels 1 Click the dimension label you want to remove e g Dim1 2 Double click in the Dim1 entry in the Properties tab delete the Dim1 entry and press Enter to confirm Properties ActivityPartition visibility unspecified isbimenzion Ed iseExternal Properties Styles Overview Note that Activity Partitions can be nested 1 Right click the label where you want to insert a new partition 2 Select New ActivityPartition Dim ControlFlow A Control Flow is an edge i e an arrowed line that connects two activities behaviours and starts an activity after the previous one has been completed Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 197 Properties lame ControlF low unspecified Send AfterUpdate Signal ObjectFlow A Object Flow is an edge e an arrowed line that connects two actions object nodes and starts an activity af
379. rges Creating a branch alternate flow A branch has a single incoming flow and multiple outgoing guarded flows Only one of the outgoing flows can be traversed so the guards should be mutually exclusive In this example the BankView references are to be validated e branch has the guard reference missing which transitions to the abort activity e branch2 has the guard valid which transitions to the collectAccountInfos activity cit 1 Click the DecisionNode icon in the title bar and insert it in the Activity diagram Validate References collectAccountinfos Bank Wie 2 Click the ActivityFinalNode icon which represents the abort activity and insert it into the Activity diagram 3 Click the Validate References activity to select it then click the right hand handle ControlFlow and drag the resulting connector onto the DecisionNode element 4 The element is highlighted when you can drop the connector 4 Click the DecisionNode element click the right hand connector ControlFlow and drop it on the collectAccountlnfos action Please see Inserting an Action CallOperation for more information 2012 Altova GmbH Altova UModel 2013 190 UML Diagrams Behavioral Diagrams Validate References collectAccountintos Bank view 5 Enter the guard condition valid in the guard field of the Properties tab Properties Validate References ContralF low unspecified isMultticast C isMul
380. rites tab is a view of an existing element i e it is nota copy or clone To add a NEW element to the Favorites tab 1 Right click a previously added package to which you want to add the element 2 Select New modeling element from the context menu where modeling element is a class component or any other modeling element available in the context menu New elements are added to the same element package in the project and are therefore also visible in the Model Tree tab To REMOVE an element from the Favorites tab 1 Right click the same element package that you added to Favorites 2 Select Remove from Favorites Please note You can add and remove elements added to the Favorites tab from the Favorites tab as well as the Model Tree tab Deleting elements from the Favorites tab 1 Right click the element you want to delete and press the Del key A message box appears informing you that the element will be deleted from the project 2 Click OK if you want to delete it from the project 3 Click Cancel to retain it and use the Remove method described above to delete it from the Favorites tab O 2012 Altova GmbH Altova UModel 2013 74 UModel User Interface Properties 5 4 Properties Properties tab The Properties tab displays the UML properties of the currently active element Properties name Bank gt Account element kind Association visibility public LI abstract L derived C A name accounts A aggr
381. riting of Unicode characters into new source code files e Ability to create associations from NET properties To create a new project 1 Click the New icon in the icon bar or select the menu item File New The Root and Component packages are automatically inserted when a new project is created and are visible in the Model Tree tab A new project with the default name NewProject1 is created Note that starting UModel opens a new project automatically LI Altova UModel NewProjecti File Edit Project Layout View Tools Window Help Otek om 4 Db X Hj Ea RB E A H message Model Tree ax Root Component View C Model Tree E Diagram sil Favorites Properties x A newly created UModel project consists of the following packages e Root package and e Component View package These two packages are the only ones that cannot be renamed or deleted All project relevant data is stored in the UModel project file which has an ump extension Each folder symbol in the Model Tree tab represents a UML package UModel Project workflow UModel does not force you to follow any predetermined modeling sequence You can add any type of model element UML diagram package actor etc to the project in any Altova UModel 2013 O 2012 Altova GmbH Projects and code engineering 113 sequence and in any position that you want Note that all model elements can be inserted renamed and deleted in the Model Tree t
382. rofile profile MyProfile from Foot mese sstereotvpe Stereotypel While the stereotype element is active make the following changes in the Properties tab 4 Change the name of the element from Stereotype to node 5 Change the metaclass property value from Element to Node 6 Enter a path for the image that you want to use as the stereotype icon in the icon file name field or click the Browse button to select a path e g c Documents and Settings Me My Documents Altova UModel2011 UModelExamples Bank PC bmp Properties name node qualified name iyProfile node element kind Stereotype profile visibility public MyProfile abstract from Root isFinalSpecialization metaclass icon file name 4 Al DeploymentDiagrami PclassDiagrami 2012 Altova GmbH Altova UModel 2013 302 UML Diagrams Structural Diagrams Switch back to the Deployment diagram by clicking the DeploymentDiagram1 tab Click the Node1 element in the diagram Using the Properties window activate lt node gt checkbox SER Properties pkg MyPackage DeploymentDiagrami Deployment Diagram Hodei The representation of the stereotype icon has now changed to that of the selected bitmap Please note When displaying the custom icons the RGB color 82 82 82 is the backgrougd transparent color Altova UModel 2013 2012 Altova GmbH UML Diagrams Additional Diagrams 303 10 3 Additional Diagram
383. rom Project code please see Round trip engineering code model code for more information Please note SPL templates are only used accessed when new code is generated i e new classes operations etc have been added to the model Existing code does not access use the SPL templates 2012 Altova GmbH Altova UModel 2013 132 Projects and code engineering Synchronizing Model and source code 7 4 1 Synchronization tips Renaming of classifiers and reverse engineering The process described below applies to the stand alone application as well as to the plug in versions Visual Studio or Eclipse when reverse engineering or autosynchronization takes place Renaming a classifier in the code window of your programming application causes it to be deleted and re inserted as new classifier in the Model Tree The new classifier is only re inserted in those modeling diagrams that are automatically created during the reverse engineering process or when generating a diagram using the Show in new Diagram Content option The new classifier is inserted at a default position on the diagram that probably differs from the previous location UModel now has the ability to help you when refactoring classes please see Refactoring code and synchronization To enable automatic generation of ComponentRealizations e Open the menu item Tool Options Click the Code Engineering tab and activate the Generate missing ComponentRealiz
384. rue Altova UModel 2013 2012 Altova GmbH UML Diagrams Additional Diagrams 309 a s lt complexType global EU Address from addres 3chemal LUI _sequencemg sequence 7 attribute export code positivelnteger 1 e 2equence gt Ma_sequence Show tagged values element Displays the tagged values of the class but not those of the owned attributes operations etc complex Type gt gt lid 123 i block l P j final Show tagged values element hide empty Displays only those tagged element values of a class without the owned attributes where a value exists e g id 123 lt MykKeyvaluePair lt lt MyKeyValuePair gt gt BankView Mykeyl 20 MyKey 30 Finished Yes s lt constructor BankWiew in bank AFI Rank 2 PT collectHank4ddressinfos boolean collect4ccountinfos boolean collectCatal boolean getBalanceAtBanktin bankname String int getBalancesumOtAllBanks int A p 2012 Altova GmbH Altova UModel 2013 310 UML Diagrams Additional Diagrams Displays the tagged values in a separate class compartment csohlyKeyaluePair gt BankView oy hey lade Care gt vKewl 20 vKewy2 50 inished Yes bank Bank ordered bank SP Bank AFl lt constructor gt BankWiew in bank AP Bank API colectBank A ddres lntos01 boolean collect amp Accountinfo 0 boolean Show tagged values in compartment hide empty Displays only t
385. s UModel now supports the import and generation of W3C XML Schemas as well as their forward and reverse engineering in the code engineering process XML Schema O 2012 Altova GmbH Altova UModel 2013 304 UML Diagrams Additional Diagrams 10 3 1 XML Schema Diagrams Altova web site E XML Schemas in UML XML Schema diagrams display schema components in UML notation Global elements i e elements simple Types complexTypes are shown as classes or datatypes with attributes in the attributes compartment There are no operations in the Operation compartment The Tagged Value note modeling element is used to display the schema details To see how the UML elements and XML schema elements attributes are mapped navigate to XML Schema to from UModel elements Ed complexType global Address LI _sequencemg_ sequence EQ lt lt sequence gt gt ma_sedquence A scextension El lt complexType global EU Address lt Z2egqUuence mg sequence I sequence mg_sequence from EU Address sequence J attribute gt export code positivelnteger 1 7 element postcode EU Postco A EB equence gt Mo_sequence postcode Property lt celement gt gt form qualified Y r export code Property lt lt attribute gt gt fixed true form unqualified Please note Invalid XML Schemas cannot be imported into UModel XML Schemas are not validated when importing or creating them in U
386. s ReceiveSignalEvent SignalEvent SendSignalEvent ReceiveOperationEvent SendOperationEvent and ChangeEvent e New go to operation option for call messages on Sequence and Communication Diagrams e Signals can now have generalizations and own attributes e Enhanced tagged value support e Ability to Find amp Replace modeling elements Sequence diagrams e Automatic generation of syntactically correct replies when adding messages to sequence diagrams e Static operation names are underlined in Sequence diagrams Ehanced Override Implement Operations dialog e Operations from bound templates can be made visible and also be overridden e Show which operations are abstract or undefined 2012 Altova GmbH Altova UModel 2013 Chapter 4 UModel tutorial 14 UModel tutorial UModel tutorial This tutorial describes and follows the general sequence used when creating a modeling project in UModel The major portion of the tutorial deals with the forward engineering process e using UModel to create UML diagrams and generate code as the precursor to the round trip engineering sections that follow The round trip engineering sections describe the process from both code and model vantage points The tutorial describes the following UML diagrams and how to manipulate the various modeling elements within them The following diagrams and follow on tasks are discussed Forward engineering process e Use cases
387. s You can also manually size them by dragging the sizing handles e Depending on the message numbering settings you have enabled the numbering sequence is updated e Having clicked a message icon and holding down CTRL allows you to insert multiple messages by repeatedly clicking and dragging in the diagram tab To delete a message 1 Click the specific message to select it 2 Press the Del key to delete it from the model or right click it and select Delete from diagram The message numbering and activation boxes of the remaining objects are updated Go to operation for call messages The operations referenced by call messages can be found in sequence and communication diagrams 1 Right click a call message and select Go to Operation f Relations EE O Hide all Text Labels a connect Select in Model Tree Bank Agency Bank ip usr p z gt Go to Operation El Diagra 3 Favorites Add to Favorites hx Hyperlinks qualified name Bank AgencyBank ip usr pur element kind Message isibilit unspecified nessagesort reply operation connect in Pa The display changes and the connect operation is displayed in the Model Tree tab Model Tree E EJ Bank view E E Banking access E A BankAPl MEC BankAFl E lt gt connect E login E disconnect E O gethrOft Accounts E lt gt getAccountlD i ada acenutaeres calli F Model EH Diagra 4 Favorites Pl
388. s FIRST FILES SSECOND FILES Warning DiffDog will only work with ump files if the Type is set to Mergeable in Properties It is possible to set this property In UModel by executing the command Show Properties and setting it in the General section But this must be repeated for every ump file It is better to define this in the Dynamsoft SourceAnywhere Standalone Server Manager Select your repository then Mergeable File Types and add ump The new setting is now applied to all ump files 2012 Altova GmbH Altova UModel 2013 342 Source Control SCSs and Altova DiffDog Differencing Jalindi Igloo 1 0 3 http www jalindi com igloo The following steps will integrate Altova DiffDog into Jalindi Igloo 1 Start the Show differences command in UModel 2 Open the Show Differences or Merge Files panel 3 Setthe External Diff Command by entering the DiffDog full file path as the External Diff EXE path Warning When using the default diff editor CvsConflictEditor you might have problems comparing files with excessively long lines We recommended that you pretty print all files particularly ump files before storing them in the repository This limits the line length thus avoiding problems with the CVSConflictEditor March Hare CVS Suite Client 2008 3321 http www march hare com cvsnt en asp The following steps will integrate Altova DiffDog into Marc Hare CVS Suite 2008 1 Gotothe TortoiseCVS Pref
389. s between modeling elements 1 Right click the specific element and select Show The popup menu shown below is context specific meaning that only those options are available that are relevant to the specific element Altova UModel 2013 O 2012 Altova GmbH UModel User Interface Diagram pane 87 Generalizations general Generalizations specific Generalization Hierarchy general Generalization Hierarchy specific Full Generalization Hierarchy general and specific InterfaceRealizations contracts InterfaceRealizations implementingClassifier Dependencies Usages Abstractions client Dependencies Usages 4bstractions supplier ProfileApplications appliedProfile ProfileApplications applyingPackage Associations All Properties as Associations Propertw1 as Association ElementImports timportingNamespace ElementImports fimportedElementi Packagelmports importingNamespace Packagelmports importedPackage PackageMerges receivingPackage PackageMerges mergedPackage Templates Bound elements TvpedElements To show hide text labels e Right click a class or association arrow and select Text labels Show Hide all Text labels To show a class attribute property as an association 1 Right click the property in the class I _ _Q _ xxEEOqC CA A AAA AAA Class 2 Select the menu option Show PropertyXX as Association This inserts opens the referenced c
390. s generate an XML Schema diagram with the diagrams under the respective namespace packages Altova UModel 2013 2012 Altova GmbH UML Diagrams Additional Diagrams 307 Model Tree Root E 100 AI Schemas anne Package dependencies of All Schemas VE Cal http fan altova comAPo SE address Schema H nfl Address complexType Eso EU Address complex Type ESE fen US Address complex Type ME Address iii E B EU Address i EUS Address i H E US Stete i EEL Postcode E Relations E HT http www amispy comischemas orachart E E Grachar Schema on i bold element Reg Department element E Model Tree EH Diagram Tree d Favorites To import multiple XML Schemas 1 Select the menu option Project Import XML Schema directory Import XML Schema Directory i x Language 501 0 Directory W Process all subdirectories Synchronization f Merge Code into Model C Overwrite Model according to Code Diagram generation M Enable diagram generation aer eds ENE Cancel 2 Activate the Process all subdirectories if you want to import Schemas from all subdirectories The rest of the import process follows the sequence of importing a single XML schema described above Please note If an XML schema includes or imports other schemas then these schemas will be O 2012 Altova GmbH Altova UModel 2013 308 UML Diagrams Additional Diagrams
391. s is due to the fact that UML is not able to display all the language features of VB NET Java and C on the sequence diagram and those code sections are therefore shown as code notes To add plain text as code when creating a sequence diagram 1 Attach a note to a sequence diagram lifeline 2 Type in the code which should be written into the final source code Click the Is Code check box in the Properties pane for that note to make it accessible Please see Adding code to sequence diagrams for an example 2012 Altova GmbH Altova UModel 2013 254 UML Diagrams Behavioral Diagrams If a Sequence Diagram is to be used for code engineering automatically every time code engineering is started e Activate the Use for forward engineering check box in the property pane when the sequence diagram is selected Old code will always be lost when forward engineering code from a sequence diagram because It will be overwritten with the new code Project menu 1 Select the menu option Project Generate Code from Sequence Diagrams You are now prompted to select the specific Sequence Diagram s Select one or more sequence diagrams Please select one or more sequence diamagras linked to an operation where code should be generated from Select All Root E Behavior View ac Component view E Deployment View Design view E Interaction views El Em JDK5 0 Java types onl ump E ida Unknown Extern
392. s with numbers Activating this option causes all words containing numbers to be ignored Split CamelCase words CamelCase words are words that have capitalization within the word For example the word CamelCase has the C of Case capitalized and is therefore said to be CamelCased Since CamelCased words are rarely found in dictionaries the spellchecker would flag them as errors To avoid this the Split CamelCase words option splits CamelCased words into their capitalized components and checks each component individually This option is checked by default Dictionary Language Use this combo box to select the dictionary language for the spellchecker The default selection is US English Other language dictionaries are available for download free of charge from the Altova website 2012 Altova GmbH Altova UModel 2013 412 UModel Reference Tools 14 6 3 Scripting Editor The Scripting Editor command opens the Scripting Editor wndow How to work with the Scripting Editor is described in the Scripting section of this documentation Note The NET Framework version 2 0 or higher will have to be installed on your machine in order for the Scripting Editor to run Altova UModel 2013 O 2012 Altova GmbH UModel Reference Tools 413 14 6 4 Macros Placing the mouse cursor over the Macros entry opens a flyout menu containing a list of the currently defined macros in the Scripting Project The active Scripting Project is define
393. se The InteractionUse element is a reference to an interaction element This element allows you to share portions of an interaction between several other interactions H Use Case View E kaava Profile Jawa Profile ump F Model EH Diagra Favorites Properties x hame Interaction se visibility Unspecified refers T o Collect Account Information Properties Stwles Clicking the refers To combo box allows you to select the interaction that you want to refer to The name of the interaction use you select appears in the element Please note You can also drag an existing Interaction Use element from the Model Tree into the diagram tab Gate Gate A gate is a connection point which allows messages to be transmitted into and out of interaction fragments Gates are connected using messages 1 Insert the gate element into the diagram 2 Create a new message and drag from the gate to a lifeline or drag from a lifeline and drop onto a gate This connects the two elements The square representing the gate is now smaller Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 243 State Invariant Statelnvariant A Statelnvariant is a condition or constraint applied to a lifeline The condition must be fulfilled for the lifeline to exist To define a Statelnvariant 1 Click the State invariant icon then click a lifeline or an object activation to insert it 2 E
394. se of the Software and subject to the limitations set forth in Section 5 of this Agreement except as otherwise expressly provided You must notify Altova in writing of any Claim within ten 10 business days after you first receive notice of the Claim and you shall provide to Altova at no cost such assistance and cooperation as Altova may reasonably request from time to time in connection with the defense of the Claim Altova shall have sole control over any Claim including without limitation the selection of counsel and the right to settle on your behalf on any terms Altova deems desirable in the sole exercise of its discretion You may at your sole cost retain separate counsel and participate in the defense or settlement negotiations Altova shall pay actual damages costs and attorney fees awarded against you or payable by you pursuant to a settlement agreement in connection with a Claim to the extent such direct damages and costs are not reimbursed to you by insurance or a third party to an aggregate maximum equal to the purchase price of the Software If the Software or its use becomes the subject of a Claim or its use is enjoined or if in the opinion of Altova s legal counsel the Software is likely to become the subject of a Claim Altova shall attempt to resolve the Claim by using commercially reasonable efforts to modify the Software or obtain a license to continue using the Software If in the opinion of Altova s legal counsel the Claim
395. sequence diagram below 2012 Altova GmbH Altova UModel 2013 250 UML Diagrams Behavioral Diagrams sd main in args string kvoid a OrgChartTest E Swstem out printin QrqChart Test Application Li 1 exampler catch Exception e 4 e printStackTrace 1 System exit 1 Ls You can assign a special color to the non displayable invocations The maximum invocation depth defines the recursion depth to be used in the diagram The Type names to ignore option allows you to define a comma delimited list of types that should not appear in the sequence diagram when it is generated The Operation names to ignore option allows you define a comma delimited list of operations that should not appear in the generated sequence diagram initComponents are automatically added as a default Adding the operation names to the list e g InitComponents causes the complete operation to be ignored Prepending a character to the operation in the list e g InitComponent causes the the operation calls to be shown in the diagram but without their content The Split into smaller diagrams where appropriate option automatically splits sequence diagrams into smaller sub diagrams and automatically generates hyperlinks between them for easy navigation Sequence diagrams are automatically updated when you update the complete UModel project Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 2
396. sibility of the same class As snapshot files are created for each user the snapshot editing history allows the individual changes to be merged into the project Both the name and visibility changes are merged into the project file during the 3 way merge process 2012 Altova GmbH Altova UModel 2013 148 Projects and code engineering Merging UModel projects 7 12 3 Manual 3 way project merge example This simple example uses the Bank_CSharp ump file available in the UModelExamples folder Two other instances of the same project are copied to child folders below the UmodelExamples folder i e C _1 and C 2 User1 opens the Bank_CSharp ump project file in folder C _1 and makes changes to the BankView class BankView I I I a banks Bank ordered i 19 bank4PLIBankAPI constructors Bankwievy in bank AFl Dank AFI g i Lo I CollectBankAddressintos boo I I III III LILLO H gt gt Caresme E lt gt CollectData bool lt gt iRetBalanceAtBankr in bankname string int 2 lt gt GeiBalancesumoO tAllBanksCr int A pfu Changes made to the BankView class 1 Operation CollectAccountinfos bool is deleted from the BankView class 2 The visibility of the CollectBankAddressiInfos bool operation is changed from protected to public OE ee a Bank View I I o hanks Bank ordered I 19 bank4PLIBankAPI ET O lt b constructors BankWiewein bank4Pl Bank APT i C
397. sion Points compartment Show Tagged Values M Use own compartment for NET properties Show NET properties compartment IW Always show this dialog before adding 4 Deselect the check boxes for specific items you want to appear in the elements Properties and Operations in this case 5 Click OK The Account class and its three subclasses are all inserted into the diagram tab The Generalization arrows are automatically displayed Adding elements to a diagram using the icons in the icon bar 1 Select the specific element you want to insert by clicking the associated icon in the icon bar 2 Click in the diagram tab to insert the element Please note Holding down the CTRL key before clicking in the diagram tab allows you to insert multiple elements of the same type with each individual click in the diagram Adding elements to a diagram using the context menu e Right click the diagram background and select New element name Please note Adding new elements directly to the diagram tab automatically adds the same element to the Model Tree tab The element is added to the package containing the UML diagram in the Model Tree view e Right click an element and select Show xx E g Right clicking the Account class and selecting Show Generalization hierarchy This then inserts the derived classes into the diagram as well 2012 Altova GmbH Altova UModel 2013 96 UModel User Interface Hyperlinking modeling elemen
398. source control 352 Get latest version 350 Getter Setter generate sequence diagram from 251 Goto lifeline 238 Graph view single set of relations 79 Grid show snap to 85 snap lines 422 H Handle create relationship 167 Heading show UML diagram heading 89 Help 429 Hide show slot 269 tagged values attributes 291 text labels 85 165 Hierarchy show all relations 79 Hierarchy diagram levels shown in documentation 172 History show 360 Hotkey 418 Hyperlink 96 automatic 96 Icon Activity 369 add to toolbar menu 415 class 370 Communication 371 component 373 Composite Stucture 372 custom stereotype icon 299 deployment 374 Interaction Overview 375 object 376 Package 377 Sequence 380 show large 420 State machine 381 Timing 382 use case 383 XML Schema 384 Icons visibility 269 Ignore directories 422 elements in list 422 operation names 248 Import association of elements 59 binary files 125 CF project 120 directory 59 project 120 relative to UMP file 120 source code 120 source project 59 XML Schema 305 Include NET Framework 142 dependency 20 share package and diagram 151 status changing 151 UModel project 142 Including subprojects back into main 320 Insert action CallBehavior 187 action CallOperation 187 Composite Stucture elements 281 elements 94 Interaction Overv
399. spective diagram 2 Select the Project Styles entry in the combo box and scroll to the bottom of the tab 3 Select one of the Diag yyy options e g Diag Background color This then changes the background color of all diagrams in the current project Styles display when multiple elements are selected If multiple elements are selected in the diagram pane then all different style values are displayed in the respective field In the screenshot below Class1 and Class2 have been selected The fill Color field displays the values for each of the elements i e aqua and silver Styles Me i sn Fill Color Class Pen Color Font Color Font Size Font yveight Displaying cascading styles If a style is overridden at a more specific level a small red triangle appears in the respective field in the styles tab Placing the mouse pointer over the field displays a popup which indicates the style precedence 2012 Altova GmbH Altova UModel 2013 78 UModel User Interface Styles E Model i Info Styles Element Styles override this setting Project Styles Fill Color Pen Color 452525000 e Font Color black MN Font Arial Font Size 11 Font Vyieighit normal IA x Ue ee oe lise C 4 7 f CENE l Properties Styles Hierarchy ackage dependencies q E g The Enumeration Package and Profile elements all have default fill color settings defined in the Element Family Styles settings To chang
400. ss instance slot E Class gl Property Operation Altova UModel 2013 2012 Altova GmbH UModel User Interface Model Tree 69 5 Parameter Actor visible in active use case diagram gt Use Case Component O Node Artifact Interface Relations package it Constraints Opening expanding packages in the Model Tree view There are two methods available to open packages in the tree view one opens all packages and sub packages the other opens the current package Click the package you want to open and e Press the key to open the current package and all sub packages e Press the key to open the current package To collapse the packages press the keyboard key To collapse all packages click the Root package and press Note that you can use the standard keyboard keys or the numeric keypad keys to achieve this To find modeling elements in Diagram tab s While navigating the elements in the Model Tree you might want to see where or if the element is actually present in a model diagram There are two methods to find elements 1 Right click the element you want to see in the Model Tree tab and select e Show element in active diagram to find it in the same type of diagram tab e Show element in all diagrams if currently active diagram differs from selected model element To generate a list of elements not used in any diagram 1 Right click the package you would like to inspect 2
401. st n characters converted to lower case string Mid n Returns a string starting with the zero based index position n string Mid n m Returns a string starting with the zero based index position n and the length m string RemoveLeft s Returns a string excluding the substring s if Left s Length is equal to substring s string RemoveLeftNoCasg s Returns a string excluding the substring s if Left s Length is equal to substring s case insensitive string RemoveRight s Returns a string excluding the substring s if Right s Length is equal to substring s string RemoveRightNoCase s Returns a string excluding the substring s if Right s Length is equal to substring s case insensitive string Repeat s n Returns a string containing substring s repeated n times string Right n Returns the last n characters of the string Altova UModel 2013 2012 Altova GmbH Code Generator The way to SPL Spy Programming Language 441 15 1 3 Operators Operators in SPL work like in most other programming languages List of SPL operators in descending precedence order true false and Or Access object property Expression grouping boolean constant true boolean constant false String concatenation Sign for negative number Logical negation Multiply Divide Modulo Add Subtract Less than or equal Less than Greater than or equal Greater than Equal Not equal L
402. stalling Source Control Systems 339 SourceGear SourceOffsite Client 4 2 0 Windows http www sourcegear com sos A standard installation of SourceOffsite client will work with Altova products SourceGear Vault 4 1 4 Client http www sourcegear com vault A standard installation of SourceGear Vault client will work correctly with Altova products TamTam CVS SCC 1 2 40 http www daveswebsite com software tamtam Requirements CVSNT 2 5 client at http www cvsnt org A standard installation will work correctly with Altova products e Toconnect to the CVS repository you need to install CVSNT e Inthe Altova product open the Source control Advanced options and enter the path to the cvs exe executable TamTam SVN SCC 1 2 24 http www daveswebsite com software tamtamsvn Requirements subversion command line client 1 5 4 at http subversion tigris org A standard installation will work correctly with Altova products e To connect to the SVN repository you need to install the subversion command line client and specify the path to the executable svn exe in the Altova product Source control options e After starting UModel you must register the SCC provider On a Vista machine the SCC registration could fail e lf this is the case use Windows explorer and browse to the directory that contains the Altova application executable e Right click and run the Altova executable As Administrator The SCC registration will now b
403. state The halting of the execution of the state machine Fork pseudostate Inserts a vertical Fork bar Used to divide sequences into concurrent subsequences 2012 Altova GmbH Altova UModel 2013 226 UML Diagrams Behavioral Diagrams Fork horizontal pseudostate Inserts a horizontal Fork bar Used to divide sequences into concurrent subsequences Join pseudostate Joins merges previously defined subsequences All activities have to be completed before progress can continue bk Join horizontal pseudostate Joins merges previously defined subsequences All activities have to be completed before progress can continue ConnectionPointReference A connection point reference represents a usage as part of a submachine state of an entry exit point defined in the statemachine reference by the submachine state To add Entry or Exit points to a connection point reference e The state which the point is connected to must itself reference a submachine State Machine visible in the Properties tab e This submachine must contain one or more Entry and Exit points Protocol Transition A direct relationship between two states An object in the first state performs one or more operations and then enters the second state depending on an event and the fulfillment of any pre or post conditions Please see Inserting Protocol State Machine elements for more information Altova UModel 2013 2012 Altova GmbH
404. structured classifier or collaboration rn ccount Transfer pa IN a pl i secure connection h i x a a pe le il a _ inl n 77 Bank Account Transfer ui n p m m m H M M M M M M a a a ee a a a a a ee a A A a A 7 a al A 1 7 e S e nn Mo A F i Account Transfer h i a _ eni stan d Tee j Source Bank A F Provider I i i 4 1 i F i F la i l Receiver e ha lu el Su Target Bank a all Ta Min fa AE e Ca ln Using the toolbar icons 1 Click the specific Composite Structure diagram icon in the toolbar 2 Click in the Composite Structure diagram to insert the element Note that holding down CTRL and clicking in the diagram tab allows you to insert multiple elements of the type you selected Dragging existing elements into the Composite Structure diagram Most elements occurring in other Composite Structure diagrams can be inserted into an existing Composite Structure diagram 1 Locate the element you want to insert in the Model Tree tab you can use the search function text box or press CTRL F to search for any element 2 Drag the element s into the Composite Structure diagram 2012 Altova GmbH Altova UModel 2013 282 UML Diagrams Structural Diagrams ts Collaboration Inserts a collaboration element which is a kind of classifier instance that communicates with other instances to produce the behavior
405. sumed that you have prior programming experience and are familiar with operators functions variables and classes as well as the basics of object oriented programming which is used heavily in SPL The templates used by UModel are supplied in the UModelspl folder You can use these files as an aid to help you in developing your own templates How code generator works Inputs to the code generator are the template files spl and the object model provided by UModel The template files contain SPL instructions for creating files reading information from the object model and performing calculations interspersed with literal code fragments in the target programming language The template file is interpreted by the code generator and outputs java cs source code files or any other type of file depending on the template O 2012 Altova GmbH Altova UModel 2013 434 Code Generator The way to SPL Spy Programming Language 15 1 1 Basic SPL structure An SPL file contains literal text to output interspersed with code generator instructions Code generator instructions are enclosed in square brackets and T Multiple statements can be included in a bracket pair Additional statements have to be separated by a new line or a colon Valid examples are x 42 Sx x 1 or se gt 423 Sx Sse I Adding text to files Text not enclosed by and is written directly to the current output file To output
406. synchronizing code under source control please see Add to Source Control Source control symbols 87 The lock symbol denotes that the file or folder is under source control but is currently not checked out e The red check mark denotes checked out e the UModel project file or code file has been checked out for editing The asterisk in the Application title bar denotes that changes have been made to the file and you will be prompted to save it when you exit m t The arrow symbol shows that the file s have been checked out by someone else in the network or by you into a different working directory Altova UModel 2013 2012 Altova GmbH Source Control Source Control Commands 349 12 4 2 Enable Source Control This command allows you to enable or disable source control for a UModel project and is available through the Project menu item i e Project Source Control Enable Source Control Selecting this option on any file or folder enables disables source control for the whole UModel project To enable Source Control for a project 1 Select the menu option Project Source Control and activate check the Enable source control check box of the fly out menu The previous check in out status of the various files are retrieved and displayed in the Model Tree window To disable Source Control for a project 1 Select the menu option Project Source Control and uncheck the Enable source control check box
407. t Balance and press Enter to confirm 7Root Component View El Deployment View i 7Design phase E Eq Java Lang Jawa Lang ump E Py Unknown Esternals E Use Case View Overview Account Balance E Es Java Profile Jawa Profile ump Please see Diagrams for more information on diagrams and their properties Adding Use case elements to the Use Case diagram 1 Right click in the newly created diagram and select New Actor The actor element is inserted at the click position 2 Click the Use Case icon E in the icon bar and click in the diagram tab to insert the element A UseCase1 element is inserted Note that the element and its name are currently selected and that its properties are visible in the Properties tab 2012 Altova GmbH Altova UModel 2013 22 UModel tutorial Use cases UseCase 4 Overview Account Balance 3 Change the title to get account balance press Enter to confirm Double click the title if it is deselected Note that the use case is automatically resized to adjust to the text length Actor Model elements have various connection handles and other items used to manipulate them Note Use CTRL Enter to create a multi line use case name Manipulating UModel elements handles and compartments 1 Double click the Actor1 text of the Actor element change the name to Standard User and press Enter to confirm 2 Place the mouse cursor over the handle to the right
408. t files which are then used for the 3 way merge process This enables a much finer merge result than the normal 2 way merge The specific source control system you use determines if the automatic snapshot 3 way merge process is supported by UModel A manual 3 way merge is however always possible e Source control systems that perform automatic file merging without user intervention will probably not support an automatic 3 way merge e Source control systems that prompt you to choose between Replace or Merge when a project file has been changed will generally support a 3 way merge After the source control plugin has replaced the file selecting the Replace command activates the UModel file alert which then allows you to do a 3 way merge UModel must be used for the check in out process e Main projects as well as subprojects can be placed under source control Changing data in a subproject automatically prompts you if the subproject s should be checked out e Each check in out action creates a Common ancestor or a snapshot file which is then used during the 3 way project merge process Please note Snapshot files are only automatically created and used with the standalone versions of UModel i e these functions are not available in the Eclipse or Visual Studio plugin versions E g User A edits a UModel project file and changes the name of a class in the BankView Main diagram User B opens the same project file and changes the vi
409. t be renamed Deleting an element 1 Click the element you want to delete use CTRL click to mark multiple elements 2 Press the Del keyboard key The modeling element is deleted from the Model Tree This means that it is also deleted from the Diagram tab if present there as well as from the project Elements can be deleted from a diagram without deleting them from the project using CTRL Del Please see deleting elements To open a diagram in the Diagram tab 1 Double click the diagram icon FF of the diagram you want to view in the diagram tab Modeling element icon representation in the Model Tree Package types UML Package Java namespace root package FE C namespace root package Visual Basic root package XML Schema root package En Java C or VB code package package declarations are created when code is generated Diagram types fl Activity diagram Profile diagram F7 Class diagram F Sequence diagram Communication diagram E State Machine diagram Component diagram Tai SysML diagrams 9 diagram types Composite Structure diagram Timing diagram l Deployment diagram Use Case diagram E Interaction Overview diagram fs XML Schema diagram L Object diagram Business Process Modeling Notation DT Package diagram Element types An element that is currently visible in the active diagram is displayed with a blue dot at its base In this case a class element EY Class Instance Object LI Cla
410. t box or press CTRL F to search for any element 2 Drag the element s into the state diagram Creating states activities and transitions To insert a simple state 1 Click the state icon E in the icon bar and click in the State diagram to insert it 2 Enter the name of the state and press Enter to confirm Simple states do not have any regions or any other type of substructure UModel allows you to add activities as well as regions to a simple state through the context menu To add an activity to a state 1 Right click the state element select New and then one of the entries from the context menu Constraimt Do Activity Do Interaction Do StateMachine Entry Activity Entry Interaction Entry StateMachine Exit Activity Exit Interaction Exit StateMachine Internal Transition Region You can select one action from the Do Entry and Exit action categories Activities are placed in their own compartment in the state element though not in a separate region The type of activity that you select is used as a prefix for the activity e g entry store Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 203 current time Properties command sent name store current time ame Wating for result element kind Activity TI a gt entry store current time visibility public i i O exit free allocated memory leaf abstract O L L result accepted store result ExitP
411. t holding global options generateComments bool generate doc comments true false Indent a string used to indent generated code and represent the current nesting level IndentStep a string used to indent generated code and represent one nesting level NamespacePrefix XSD only the target namespace prefix if present String manipulation routines integer Compare s The return value indicates the lexicographic relation of the string to s case sensitive lt 0 the string is less than s O the string is identical to s gt 0 the string is greater than s integer CompareNoCase s The return value indicates the lexicographic relation of the string to s case insensitive 2012 Altova GmbH Altova UModel 2013 440 Code Generator The way to SPL Spy Programming Language lt 0 the string is less than s O the string is identical to s gt 0 the string is greater than s integer Find s Searches the string for the first match of a substring s Returns the zero based index of the first character of s or 1 if s is not found string Left n Returns the first n characters of the string integer Length Returns the length of the string string MakeUpper Returns a string converted to upper case string MakeUpper n Returns a string with the first n characters converted to upper case string MakeLower Returns a string converted to lower case string MakeLower n Returns a string with the fir
412. t in the Deployment view supplies the following handles e Manifestation e Association e Deployment Creating relationships using icons in the icon bar Given two elements in a modeling diagram 1 Click the icon that represents the relationship you want to create e g association aggregation or composition 2 Drag from the one object to the other and drop when the target element is highlighted When creating a new association a new attribute is automatically inserted in the originating A name class Property1 Class2 in the example below 2012 Altova GmbH Altova UModel 2013 168 Creating model relationships Associations realizations and dependencies al Property1 Clazs 2 Property UModel always shows all attributes of a class Please note The screenshots in this manual do not show the Association Ownership dot E Property Property2 a Property Class To enable it set the Show Assoc Ownership in the Styles tab to true Deleting relationships associations 1 Click the relationship in the diagram tab or in the Model Tree 2 Press the Del keyboard key The dependency is deleted from the diagram and project Deleting class associations Deleting a class association does not delete the attribute property that was automatically generated from the class 1 Right click the attribute property in the class 2 Select the option Delete PropertyX from ClassX to delete it Collection Associat
413. t jar PA com suUn accessibility internal resources accessibility com sun accessibility internal resources accessibility ce comun accessibility internal resources accessibility er com sun accessibility internal resources accessibility 6 Remove All com sun accessibility internal resources accessibility fr com sun accessibility internal resources accessibility _it com sun accessibility internal resources accessibility ja com sun accessibility internal resources accessibility ke Remove This opens the Import Binary Options dialog box Altova UModel 2013 2012 Altova GmbH Projects and code engineering Importing Java C and VB binaries 127 Import Binary Options Automatic Type Inclusion Content Hestriction TT import only types no fields operations etc import only elements with visibility greater public suppress annotation modifiers Nest gt Finish Cancel 4 Select the specific options you need and click Next to continue Import Target Root E 7 Component view Use Case View Design view 3 Interaction View o Deployment view E Unknown Externals Behavior view E En Java Lang Java Lang ump i E OrgChart lt Back Finish 5 Define the Import Target or click the Import in new Package check box then click Next 2012 Altova GmbH Altova UModel 2013 128 Projects and code engineering Importing Java C and VB binaries Content Diagram Genera
414. t labels 85 165 Show differences 362 Show history 360 Show hide attributes operations 269 Signature template 154 156 Single mode autocompletion 89 Size diagram pane 85 Slot show hide 269 Snap line when dragging 422 to grid show grid 85 Snap lines 20 Socket Ball and socket 269 Software product license 455 Sort diagram 71 elements in Model Tree 67 Source code comments show on diagram 85 Source code importing 120 Source control 326 add to source control 356 change provider 366 Check In 354 Check Out 353 commands 346 enable disable 349 get file 351 get latest version 350 open project 347 options settings 422 properties 363 refresh status 364 remove from 358 run native interface 365 show differences 362 show history 360 subprojects teamwork 318 Undo Check out 355 Space across 89 Specialize generalize 34 Speed enhancememt 160 Speed up increase background status updates 326 SPL 433 code blocks 434 conditions 442 foreach 443 subroutines 445 templates user defined 130 Split prevent split over pages 387 Start UModel 16 with previous project 422 StarTeam 326 State add activity 202 composite 208 define transition between 202 insert simple 202 orthogonal 208 submachine state 208 State changes defining on a timeline 261 State invariant 243 O 2012 Altova GmbH 480 Index State machine comp
415. t to define the Package dependency diagram O 2012 Altova GmbH Altova UModel 2013 306 UML Diagrams Additional Diagrams Package Dependency Diagram Generation i x Package dependency diagram Style Fill color of external packages L IS i Open diagram T Ignore external packages not child of import target Aubolayout M Autolayout hierarchic IY Hyperlink package to diagram lt Back Herts Frish Cancel 6 Click Finish to start the XML Schema import The schema s are imported into UModel and all diagrams are available as tabs The screenshot below shows the content of the EU Address complexType diagram Model Tree s lt complexType global mu Address E ho All Schemas rra E Package dependencies of LE Call http Awe altova comiPO a E address Schema smin Es Address complexType ee Es EU Address complex su an 5 Us Address complex ssextersion gt E Address AE EU Address an s lt complexType global b EU Address 4 LU _sequence mg_sequence 7 attribute gt export code positivelnteger 1 Seen name Address cri o 4 00 qualified name All schemas Http S equence gt mg sequence Class public 1 export code Property lt lt attribute gt fixed true form unqualified Please note A new package called All Schemas was created and set as the XSD Namespace Root All XSD global
416. tab 3 Click the browse button E to the right of the directory field 4 Enter select the target directory in the dialog box the supplied example is defined as InstallationDir UModelExamples Tutorial umlcode bankview or click the Make New Folder button to create a new folder The path now appears in the directory field O 2012 Altova GmbH Altova UModel 2013 54 UModel tutorial Round trip engineering model code model Model Tree Root El Component View E Banking access E Bankview i S Bankview realization 03 Bank ies Bankview GUI E Deployment view E O Design phase i E lt n Overview C Model Tree EH Diagram T qe Favorites Properties x Bank ley Component view Banker Component public L abstract L indirectlyinstantiatec Jawal 4 umicode bankviev code language directory use for code engine Please note s lt component Lai component gt l from Bank view BankView GUI from Bank ie Use fro m m m 4 u u m E i 1 lt lt USe BankView Y YODO O OSO UModel Java usually follows the convention of creating code in directories according to their namespace e g code namespace1 C1 java If you want to use this directory naming convention for C and VB NET select the menu option Tools Options Code Engineering and select the relevant option in the Use namespace for code file path group To includ
417. tation settings Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 253 Sequence Diagram Generation 4 General Diagram owner M Automatically update diagram when model is updated from code Presentation Show code in notes Also show code of messages displayed directly below w Add notes on separate layer M Use special color for non displavable invocations L M Show empty Combined Fragments M Show unknown invocations M Split into smaller diagrams where appropriate 3 Click OK to generate the Sequence Diagram Generate code from sequence diagram UModel can create code from a sequence diagram which is linked to at least one operation Code generation from sequence diagrams is available for e VB NET C and Java e UModel standalone Eclipse and Visual Studio editions e All three UModel editions Creating code from Sequence diagrams is possible by either e Starting from a reverse engineered operation see Generating Sequence Diagrams from source code e By creating a new sequence diagram from scratch which is linked to an operation by right clicking the operation in the Model Tree and selecting Create sequence diagram for code Notes When using a reverse engineered sequence diagram as basis ensure that the option Show code in notes is selected when reverse engineering the code so you do not lose any code when you start the forward engineering process again Thi
418. tems TO Don t show Check In dialog box when checking in items Keep items checked out when checking in or adding items f dialogs were hidden using Dont show this again click Reset to view them again caca tn O 2012 Altova GmbH Altova UModel 2013 428 UModel Reference Window 14 7 Window Cascade This command rearranges all open document windows so that they are all cascaded i e staggered on top of each other Tile horizontally This command rearranges all open document windows as horizontal tiles making them all visible at the same time Tile vertically This command rearranges all open document windows as vertical tiles making them all visible at the same time Arrange icons Arranges haphazardly positioned iconized diagrams along the base of the diagram viewing area Close Closes the currently active diagram tab Close All Closes all currently open diagram tabs Close All but Active Closes all diagram tabs except for the currently active one Next Switches to the next modeling diagram in the tab sequence or the next hyperlinked element Previous Switches to the previous modeling diagram in the tab sequence or the previous hyperlinked element Window list This list shows all currently open windows and lets you quickly switch between them You can also use the CTRL TAB or CTRL F6 keyboard shortcuts to cycle through the open windows Altova UModel 2013 2012 Altova GmbH UM
419. ter the previous one has been completed Objects or data can be passed along an Object Flow Properties ccountinfos name kien element kind ObjectFlow visibility unspecified weight isMuttiCast O isMulttiReceive L ordering ordered selection transformation Properties Styles ExceptionHandler An Exception Handler is an element that specifies what action is to be executed if a specified exception occurs during the execution of the protected node Properties element kind ExceptionHandler lil lle Lio i e ii raised exception Exception HH Exception An Exception Handler can only be dropped on an Input Pin of an Action Activity 2012 Altova GmbH Altova UModel 2013 198 UML Diagrams Behavioral Diagrams Inserts an Activity into the activity diagram Properties name Payment element kind Activity visibility public leat LI abstract O reentrant L isFeadOniy C isSingleExecution _ ee N gt gt e gt e gt o x uxYv e lt xn P _ e _ HMm EA A JI JI JI SI LL zx ARA Properties El ActivityParameterNode Inserts an Activity Parameter node onto an activity Clicking anywhere in the activity places the parameter node on the activity boundary Properties Requested order Process Order order rejected ActivityParameterMode unspecified i Requested order O j lt a I E type modifier ordering Order accepted s
420. terestrRate float collect amp Accountinforin bank APII collect4ccountintotin bank AP Dank Fh boolean gethtinimumBalancer i float getMinimumbBalancel float The Property2 attribute is also visible in the left hand class because the setting there is Show elements Please note Tagged values of hidden elements are also hidden when you select the hide option Showing Hiding VS NET compartments UModel can now display NET properties in their own compartment by selecting the Show NET properties in own compartment option in the Styles tab creditLimit float iterestRateOnBalance float interestRateGnCashAdvance float Show Par direction Show Property Type Showe ExtensionPoints CE Properties show Tagged Values Get Acceszor propertys CreditLimitc float Sno EXECUNOn Specuiceions Get4ccessor property InterestRateOnBalancer fl Show Message Numbers Gata ives InterestRateoncastid ccessor prope ere eOnCas van show Message Parameters eli Show Assoc Ownership Dot Methods Namespace Display Mode constructor Credittard4ccount show region names on states CollectAccountinfocin bankAPLlBankAPI bool Draw Mirrored Diag Background Color E Properties Styles A Hierarchy Showing VS NET properties as associations UModel can now display NET properties as associations Right click a C property as shown below and select Show All NET Properties as Associations drag and drop the operation onto th
421. ters Setters interestRate Select Getters setter setinterestRate in InterestRate float void getter getinterestRatel float Select Setters minimumbBalance setter sethinimumBalancetin MinimumBalance floaty void getter getMinimumBalance i float Select All Select None Cancel The Create Getters Setters dialog box opens displaying all attributes available in the currently active class 2 Use the buttons to select the items as a group or click the getter setter check boxes individually Please note You can also right click a single attribute and use the same method to create an operation for it Ball and socket notation UModel supports the ball and socket notation of UML Classes that require an interface display a socket and the interface name while classes that implement an interface display the ball Lo seusess TA ti A PA E Mon ol 7 ssinterface 1 Class1 lt use gt I Class i H L lt lt U56rr m E e a ya i In the shots shown above Class2 realizes Interface1 which is used by classes 1 3 and 4 The usage icons were used to create the usage relationship between the classes and the interface a To switch between the standard and ball and socket view e Click the Toggle Interface notation icon at the base of the interface element Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Structural Diagrams 279 Ie L
422. the cursor over a valid position to drop the command 5 Release the mouse button at the position you want to insert the command e A small button appears at the tip of mouse pointer when you drag a command The check mark below the pointer means that the command cannot be dropped at the current cursor position e The check mark disappears whenever you can drop the command over a tool bar or menu e Placing the cursor over a menu when dragging opens it allowing you to insert the command anywhere in the menu e Commands can be placed in menus or tool bars If you created you own toolbar you can populate it with your own commands icons Please note You can also edit the commands in the context menus right click anywhere opens the context menu using the same method Click the Menu tab and then select the specific context menu available in the Context Menus combo box To delete a command or menu 1 Open this dialog box using Tools Customize 2 Click on the menu entry or icon you want to delete and drag with the mouse 3 Release the mouse button whenever the check mark icon appears below the mouse pointer The command or menu item is deleted from the menu or tool bar Toolbars The Toolbars tab allows you to activate or deactivate specific toolbars as well as create your own specialized ones Toolbars contain symbols for the most frequently used menu commands For each symbol you get a brief tool tip explanation when the m
423. the diagram and define the dependencies amongst them Align and size elements in the diagram tab To add a new package to a project 1 Rightclick the Root package in the Model Tree tab and select New Element Package 2 Enter the name of the new package e g Use Case View and press Enter Model Tree Foot E Component View E M3 Deployment view E Design phase E En Java Lang Jawa Lang ump E Py Unknown Externals wow Use Case View E kaava Profile Java Profile ump C Model Tree EF Diagram m 3 Favorites Please see Packages for more information on packages and their properties Adding a diagram to a package 1 Right click the previously created Use Case View package 2 Select New Diagram UseCase Diagram Altova UModel 2013 O 2012 Altova GmbH UModel tutorial Use cases 21 Model Tree Root E 7 Component View E 7 Deployment View E 7 Design phase E EA Java Lang Jawa Lang ump E Pq Unknown Externals E Use Case View ii UseCaseDiagrami E Ex Java Profile Java Profile ump C Model Tree E Diagram sil 3 Favorites Properties hame UseLazeDlagrarn element kind UseCaseDiagram FjuseCaseDiagrami Messages y y ja v aj v a bt x A Use Case diagram has now been added to the package in the Model Tree view and a diagram tab has been created in the diagram pane A default name has been provided automatically 3 Double click the supplied name in the Model Tree tab change it to Overview Accoun
424. the following major and minor enhancements Altova UModel 2013 2012 Altova GmbH What s new in UModel Teamwork support ability to split up projects into several sections allowing concurrent project editing Ability to create a 3 way project merge State Machine diagrams automatic creation of operations when creating transitions Sequence diagrams automatic creation of operations incl parameters by typed calls in messages The 2010 Release 3 version of UModel includes the following major and minor enhancements Support for Visual Studio 2010 Supports new solution and project files predefined include files supplied for NET framework 4 0 Support for C 4 0 New C 4 0 features are supported by round trip engineering binary import and sequence diagram generation Ability to create Protocol State Machines New autolayout output option Block Ability to ignore operation names when generating Sequence diagrams Ability to define Argument variables for external tools The 2010 Release 2 version of UModel includes the following major and minor enhancements e 64 bit support e Support for UML 2 3 e Ability to automatically split generated sequence diagrams into smaller sub diagrams e HTML Documentation generation includes manually defined hyperlinks between elements e Creation of separate sequence diagrams for the getter or setter part of a property CF or VB NET Please note The following modifications in code en
425. the injunction 2012 Altova GmbH Altova UModel 2013 462 Appendices License Information or potential Claim cannot be resolved through reasonable modification or licensing Altova at its own election may terminate this Software License Agreement without penalty and will refund to you on a pro rata basis any fees paid in advance by you to Altova THE FOREGOING CONSTITUTES ALTOVA S SOLE AND EXCLUSIVE LIABILITY FOR INTELLECTUAL PROPERTY INFRINGEMENT This indemnity does not apply to infringements that would not be such except for customer supplied elements 6 SUPPORT AND MAINTENANCE Altova offers multiple optional Support amp Maintenance Package s SMP for the version of Software product edition that you have licensed which you may elect to purchase in addition to your Software license The Support Period hereinafter defined covered by such SMP shall be delineated at such time as you elect to purchase a SMP Your rights with respect to support and maintenance as well as your upgrade eligibility depend on your decision to purchase SMP and the level of SMP that you have purchased a If you have not purchased SMP you will receive the Software AS IS and will not receive any maintenance releases or updates However Altova at its option and in its sole discretion on a case by case basis may decide to offer maintenance releases to you as a courtesy but these maintenance releases will not include any new features in exc
426. the new settings will only be applied after a Windows log off Qumasoft QVCS Enterprise 2 1 18 http www qumasoft com The following steps will integrate Altova DiffDog into Qumasoft QVCS Enterprise 1 Add the Qumasoft QVCS Enterprise installation directory to the Path environment variable Use the QVCS Enterprise User Preferences In Utilities enable the checkbox Use External Visual Compare Tool Specify as Visual Compare Command Line lt DiffDog full path gt filelName file2Name SEEN Qumasoft QVCS Pro 3 10 18 http www qumasoft com O 2012 Altova GmbH Altova UModel 2013 344 Source Control SCSs and Altova DiffDog Differencing The following steps will integrate Altova DiffDog into Qumasoft QVCS Pro 1 Use the QVCS 3 10 client preferences 2 In Utilities specify the DiffDog full path as the visual compare utility with parameters Ms Ms Seapine Surround SCM Client 2009 0 0 http www seapine com surroundscm html The following steps will integrate Altova DiffDog into Seapine Surround SCM 1 Go to the Surround SCM client user options Diff Merge section 2 Edit the Diff Merge settings to compare with a selected application 3 Enter the DiffDog full path with the parameters 1 2 4 Restart the Surround SCM client and the Altova products Sergey Antonov HgSCC 1 0 1 http www newsupaplex pp ru hgscc_news_eng html The following steps will integrate Altova DiffDog into Mercurial 1 C
427. those that do not significantly impact use of the Software as determined by Altova in its sole discretion Whether or not you have purchased the Support amp Maintenance Package technical support only covers issues or questions resulting Altova UModel 2013 O 2012 Altova GmbH Appendices License Information 463 directly out of the operation of the Software and Altova will not provide you with generic consultation assistance or advice under any circumstances Updating Software may require the updating of software not covered by this Software License Agreement before installation Updates of the operating system and application software not specifically covered by this Software License Agreement are your responsibility and will not be provided by Altova under this Software License Agreement Altova s obligations under this Section 6 are contingent upon your proper use of the Software and your compliance with the terms and conditions of this Software License Agreement at all times Altova shall be under no obligation to provide the above technical support if in Altova s opinion the Software has failed due to the following conditions i damage caused by the relocation of the software to another location or CPU ii alterations modifications or attempts to change the Software without Altova s written approval iii causes external to the Software such as natural disasters the failure or fluctuation of electrical power or computer equipme
428. ties Configuring diagram properties Click on the diagram background and then select one of the styles from the Styles combo box Please see Styles pane for more information To enlarge the Diagram size The size of the diagram tab is defined by the elements and their placement e Dragan element to one of the diagram tab edges to automatically scroll the diagram tab and enlarge it Positioning modeling elements the grid Modeling elements can be positioned manually or made to snap to a visible invisible grid in a diagram toggles between showing hiding the grid E toggles between snapping elements to the visible invisible grid Displaying the UML diagram heading toggles between displaying the UML diagram heading e the frame around a diagram with its name tag in the top left corner pkg bankview Sc Ro BankView 19 banks Bank ordered 19 bankaPtiBankapl i gt BankYiewfin bankAPEIBank API Aligning modeling elements Modeling elements can be aligned and resized in relation to other elements e g all centered left or right aligned etc Please note When marking several objects the action that you apply uses the element that was selected last as the template you apply E g if you mark three class elements and click the Make same Width icon then all three will be made as wide as the last class you selected This also applies when marking several objects using the marquee the element last selecte
429. tion Content diagrams Style Show Attributes compartment Y Generate diagram per package TO Show Operations compartment Open diagrams 7 Show nested Classifiers compartment Show nested classifiers separately een Show EnumerationLiteral compartment Show Tagged Values Use own compartment for NET properties Show anonymous bound elements M Hyperlink package s to diagrams Show NET properties compartment Autolayout M Autolayout hierarchic 6 Selectthe Content Diagram Generation properties from the dialog box and click Next to continue Note that you can generate a single diagram for each package as well a single overview diagram Package Dependency Diagram Generation Package dependency diagram Style Fill color of external packages M Open diagram C Jg L JE Ignore external packages not child of import target 4 Hyperlink package to diagram Autolayout e Autolavout hierarchic 7 Select the Package Dependency options that you would like to include and click Finish to complete the import procedure The screenshot below shows the diagram containing the package dependencies of the Java binaries Altova UModel 2013 O 2012 Altova GmbH Importing Java C and VB binaries 129 Projects and code engineering lt lt profile gt Java Profile from Root po o I I I r I lt namespace gt internal lt namespace gt from acc
430. tion CallOperation Inserts the Call Operation Action which indirectly invokes a specific behavior as a method Please see Inserting an action CallOperation for more information Properties collect ccountintos CallOperation Action visibility unspecified leat C Synchronous operation collect ccountinfostiboolean Action OpaqueAction A type of action used to specify implementation information Can be used as a placeholder until you decide which specific action type you want to use 2012 Altova GmbH Altova UModel 2013 192 UML Diagrams Behavioral Diagrams Action ValueSpecificationAction A type of action that evaluates generates a specific value at the output pin Defined by the specific properties e g upperBound La AcceptEventAction Inserts the Accept Event action which waits for the occurrence of an event which meets specific conditions AcceptEventAction TimeEvent Inserts a AcceptEvent action triggered by a time event which specifies an instant of time by an expression e g 1 sec since last update Receive Update Ul Event 1 sec since last update Ei SendSignalAction Inserts the Send Signal action which creates a signal from its inputs and transmits the signal to the target object where it may cause the execution of an activity Froperties name Send SfferUpdate Signal element kind SendSignalAction visibility unspecified citta CA E En DecisionNode I
431. tion icon in the icon bar and click in the Activity diagram to insert it 2 Enter the name of the Action e g collectAccountinfo and press Enter to confirm 3 Click the Browse button to the right of the operation field in the Properties tab 2012 Altova GmbH Altova UModel 2013 188 UML Diagrams Behavioral Diagrams Properties name element kind visibility leaf isSynchronous operation r T Mag F HH collectAccountinfos Lo collect amp ccountInfos b r H CalOperation Action unspecified E MM Select operation C Foot h HE Behavior view E Component view 4 E Deployment Wie rh collectDat E Design View HE Interaction View 1x This opens the Select Operation dialog box in which you can select the specific operation 4 Navigate to the specific operation that you want to insert and click OK to confirm H Select operation i me xj Al wjaltova ii E Li bankview d id al hanks E O Bank view He collectBankAddressinfos Hg collectAccountintos E collectData EA Bank view Main F Hierarchy of Account EA Sample Accounts E Agency Bank E John s 1st EY John s 2nd BA John s Srd H Account E Bank E Bank ler o a bank AP colect ccountinto CalOperation Action unspecified L colect4ccountintos boolean Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 189 Creating branches and me
432. tly active tab or diagram Replace Allows you to search and replace any modelling elements in the project When the element is found it is highlighted in the diagram as well as in the Model Tree Search and replace works in e All diagrams e Any of the three Model Tree panes Model Tree Diagram Tree and Favorites tab e The Documentation tab of the Overview pane TOMO TANTA E g hyComponent AE MyPackage EA classDiagrami EE MyFirstClass O GetUserMame E GetPassword i E SEINA E GetUserhame String gl di GetPasswvyord i Stringy MiyFirstClass from Root hyPackage UserName String Password Error Al Find amp Replace Find what myenum i Replace with Replace qualified n planc esa Replace All element kir sibili TO Match whole word only Up Close rare ai Match case f Down dered Replace in selection only nigue Copy as bitmap Copies the currently active diagram into the clipboard from where you can paste it into the application of your choice Please note Diagrams are copied into the system clipboard you have to insert them into another application to see or get access to them 2012 Altova GmbH Altova UModel 2013 394 UModel Reference Edit Copy selection as bitmap Copies the currently selected diagram elements into the clipboard from where you can paste them into the application of your choice Altova UModel 2013 O 2012 Alto
433. to perform status updates every xx ms For 64 bit versions using 32 bit source control plugins this option has no effect In the Source Control tab select the required Source Control System and then click the Advanced button The dialog box that opens will be different for each Source Control System For the setup process note the following e If you have performed a standard installation of Altova DiffDog the file path to the Altova DiffDog executable is c program files altova diffdog2013 DiffDog exe If Altova DiffDog is installed elsewhere on your system insert the appropriate value when the filepath is required e Do not use DiffDog to merge UModel project files ump Aigenta Unified SCC 1 0 6 http aigenta com products UnifiedScc aspx The following steps will integrate Altova DiffDog into Aigenta Unified SCC 1 Click the Advanced button of the Source Control tab 2 Select the Comparison and merging tab and specify the full DiffDog filepath as Altova UModel 2013 2012 Altova GmbH Source Control SCSs and Altova DiffDog Differencing 341 comparison tool Borland StarTeam Cross Platform Client 2008 R2 http www borland com us products starteam The following steps integrate Altova DiffDog into Borland Star Team 1 Use the StarTeam client personal options Tools Personal options File Alternate applications 2 Compare utility Enter the DiffDog full path 3 Compare utility options filel file2
434. together with UModel The examples in this section use the Bank_CSharp ump UModel project and associated code files available in the C Documents and Settings lt username gt My Documents Altova UModel2013 UModelExamples folder Source Control commands can be accessed in several ways e Using the menu command Project Source Control e Using the context menu in the Model Tree e Clicking the source control icons in the Source Control icon bar Use Tools Customize Toolbars to activate the toolbar A Source Control project is however not the same as a UModel project Source Control projects are directory dependent whereas UModel projects are logical constructions without direct directory dependence Altova UModel 2013 O 2012 Altova GmbH Source Control Installing Source Control Systems 333 12 2 Installing Source Control Systems This section gives information on how to install and set up the various supported Source Control Systems AccuBridge for Microsoft SCC 2008 2 http www accurev com 1 Install AccuRev client software run the installer and specify the server you want to connect to hostname and port then create a workspace 2 Install the AccuBridge SCC provider Extract the ZIP archive into the lt AccuRev installation dir gt bin directory Register the AccuRev dll and SccAcc dll as follows 3 Open a command prompt window if you work with Vista start Windows Explorer go to C Windows System32 r
435. ts 9 12 Hyperlinking modeling elements UModel now supports automatic and manual hyperlinking of modeling elements Automatic hyperlinking occurs when selecting the specific setting when importing source code or binary files into a model Manual hyperlinks are created between most modeling elements except for lines and any diagram in the current UMP project any element on a diagram any element in the Model Tree external documents e g PDF Excel or Word documents web pages Note All manually created hyperlinks are also available in the HTML project documentation when generating UML documentation Opening the Bank Server diagram under the Bank Server package displays the IBankAPI interface as well as the BankServer class An enumeration element containing the names of the EnumerationLiterals is also visible What we want to do is create a hyperlink from the Enumeration to the Account Hierarchy class diagram Model Tree e E Overview EE Bankview E Banking access E ca Bank Cepver EEC H ge aout E Agency i CreditCard amp ccaunt r F Bank Server 3 3 i DE BankServer Scha AccountT ype fi i i iL EE CheckingAccount EE CreditCardAccount E EE Savings Account E Relations To create a diagram hyperlink 1 Rightclick the element and select Hyperlinks Insert Edit hyperlinks Edit Hyperlinks User defined name Address File Link Web Link Bpen Link Diagram Link tose
436. ttempt to describe or explain the Unified Modeling Language UML it describes how to use the UModel modeling application to model code and achieve round trip engineering results Altova UModel 2013 2012 Altova GmbH Chapter 3 What s new in UModel 8 What s new in UModel 3 What s new in UModel The 2013 Release version of UModel includes the following major and minor enhancements e Support for UML 2 4 Support for SysML 1 2 Spellchecker with extended spell checking features Abiltity to show NET Properties as associations Ability to ignore getters setters when generating Sequence Diagrams for a project Support for UML exception pins The Eclipse plugins now run under Eclipse 4 2 A new Umodel edition has been introduced for the 2012 Release namely the Basic edition The Basic edition has all the functionality of the previous Professional edition The Professional edition has all the functionality of the previous Enterprise edition i e support for SQL databases SysML and BPMN diagrams diagram layers Automation support COM API as well as Visual Studio and Eclipse integration The Enterprise editon has all the above plus support for Model Driven Architecture which allows transformation of UML elements between different programming languages The new functionality of each of the specific versions is listed below The 2012 Release R2 version of UModel includes the following major and minor enhancements
437. ttiReceiwve C selection transformation collect ccountinfos Bank Wie valid 6 Click the DecisionNode element and drag from the right hand handle ControlFlow and drop it on the ActivityFinalNode element The guard condition on this transition is automatically defined as else Double click the guard condition in the diagram to change it e g reference missing Validate References reference missing valid collectAccountinfos Bank view Please note that UModel does not validate or check the number of Control Object Flows in a diagram Creating a merge Altova UModel 2013 2012 Altova GmbH UML Diagrams Behavioral Diagrams 191 LH 1 Click the MergeNode icon in the icon bar then click in the Activity diagram to insert it Properties Mergeblode Merge ode unspecified Properties Styles 2 Click the ControlFlow ObjectFlow handles of the actions that are to be merged and drop the arrow s on the MergeNode symbol Activity Diagram elements Action CallBehavior Inserts the Call Behavior Action element which directly invokes a specific behavior Selecting an existing behavior using the behavior combo box e g HandleDisplayException and displays a rake symbol within the element Handle Display Exception iii i bi hy Callbehavior Action Handle Display Exception unspecified im a C k is5ynchronous behavior HandleDisplayException ED Ac
438. ty markings that appear on or in the Software You may not modify adapt or translate the Software You may not directly or indirectly encumber or suffer to exist any lien or security interest on the Software knowingly take any action that would cause the Software to be placed in the public domain or use the Software in any computer environment not specified in this software License Agreement You will comply with applicable law and Altova s instructions regarding the use of the Software You agree to notify your employees and agents who may have access to the Software of the restrictions contained in this Software License Agreement and to ensure their compliance with these restrictions I THE SOFTWARE IS NEITHER GUARANTEED NOR WARRANTED TO BE ERROR FREE NOR SHALL ANY LIABILITY BE ASSUMED BY ALTOVA IN THIS RESPECT NOTWITHSTANDING ANY SUPPORT FOR ANY TECHNICAL STANDARD THE SOFTWARE IS NOT INTENDED FOR USE IN OR IN CONNECTION WITH WITHOUT LIMITATION THE OPERATION OF NUCLEAR FACILITIES AIRCRAFT NAVIGATION COMMUNICATION SYSTEMS AIR TRAFFIC CONTROL EQUIPMENT MEDICAL DEVICES OR LIFE SUPPORT SYSTEMS MEDICAL OR HEALTH CARE APPLICATIONS OR OTHER Altova UModel 2013 2012 Altova GmbH Appendices License Information 459 APPLICATIONS WHERE THE FAILURE OF THE SOFTWARE OR ERRORS IN DATA PROCESSING COULD LEAD TO DEATH PERSONAL INJURY OR SEVERE PHYSICAL OR ENVIRONMENTAL DAMAGE YOU AGREE THAT YOU ARE SOLELY RESPONSIBLE FOR THE ACCURACY
439. uence Diagram from Code Show in new diagram Open diagram Show element in active diagram Show element in all diagrams a Relations List elements not used in any diagram E Relations dh Cut Strg Copy Model Tree i E SERE sd Bank in name String in IP String in user String in pw String a collectAccountintos 3 E getBalanceOfAccou HY Ei i gt getBankMame i EH getiPAddress El getPassword A O getUsername E E Bank view Ne E Checking 4ccount E E CredittardAccount E A Savings4ccount i im Relations The result is a new Sequence Diagram containing the lifeline of that class Adding code to sequence diagrams Program code can be generated from new and reverse engineered sequence diagrams but only for a sequence diagram linked to the main operation When reverse engineering code standard sequence diagram elements e g CombinedFragments are mapped assigned to coding elements e g if statements loops etc For those programming statements that have no corresponding sequence diagram elements e g i i 1 UModel makes use of code notes to add code to diagrams These notes must then be linked to the lifeline Note that UModel does not check or parse these code fragments It is up to you to make sure that the code fragments are correct and will compile To add code to a sequence diagram 1 Click the Note icon a then click the model element where you want to insert it e g
440. unspecified I kind external close lt post condition com rea cleared To create and insert composite state elements and submachine states e Please see Composite states Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavioral Diagrams 225 Protocol State Machine Diagram elements E State A simple state element with one compartment Composite state This type of state contains a second compartment comprised of a single region Any number of states may be placed within this region Orthogonal state This type of state contains a second compartment comprised of two or more regions where the separate regions indicate concurrency Right clicking a state and selecting New Region allows you add new regions Submachine state This state is used to hide details of a state machine This state does not have any regions but is associated to a separate state machine InitialState pseudostate The beginning of the process FinalState The end of the sequence of processes O EntryPoint pseudostate The entry point of a state machine or composite state ExitPoint pseudostate The exit point of a state machine or composite state Le Choice This represents a dynamic conditional branch where mutually exclusive guard triggers are evaluated OR operation Junction pseudostate This represents an end to the OR operation defined by the Choice element x Terminate pseudo
441. untry or ii to anyone on the U S Treasury Department s list of Specially Designated Nationals or the U S Department of Commerce s Table of Denial Orders By using the Software you represent and warrant that you are not located in under control of or a national or resident of any such country or on any such list 10 THIRD PARTY SOFTWARE The Software may contain third party software which requires notices and or additional terms and conditions Such required third party software notices and or additional terms and conditions are located at our Website at http www altova com legal 3rdparty html and are made a part of and incorporated by reference into this Agreement By accepting this Agreement you are also accepting the additional terms and conditions if any set forth therein 11 GENERAL PROVISIONS If you are located in the European Union and are using the Software in the European Union and not in the United States then this Software License Agreement will be governed by and construed in accordance with the laws of the Republic of Austria excluding its conflict of laws principles and the U N Convention on Contracts for the International Sale of Goods and you expressly agree that exclusive jurisdiction for any claim or dispute with Altova or relating in any way to your use of the Software resides in the Handelsgericht Wien Commercial Court Vienna and you further agree and expressly consent to the exercise of personal jurisdiction i
442. urationConstraint 1 Click the Flip icon to orient the constraint vertically Fl I d t I aly o oo TimeConstraint TimeConstraint A TimeConstraint is generally shown as graphical association between a Timelnterval and the construct that it constrains Typically this graphical association between an EventOccurrence and a Timelnterval To insert a TimeConstraint 1 Click the TimeConstraint icon then click the specific position on the lifeline where the constraint is to be displayed 2012 Altova GmbH Altova UModel 2013 266 UML Diagrams Behavioral Diagrams Timeconstraint qualified name Design View Interaction element kind TimeConstraint CardOut public t OK it t 3 E 3 The default minimum and maximum values are automatically supplied d t respectively These values can be edited by double clicking the time constraint or by editing the values in the Properties window Message Message Call Message Reply Async message Call A Message is a modeling element that defines a specific kind of communication in an Interaction A communication can be e g raising a signal invoking an Operation creating or destroying an Instance The Message specifies the type of communication defined by the dispatching ExecutionSpecification as well as the sender and the receiver Messages are sent between sender and receiver timelines and are shown as labeled arrows To insert a message
443. va GmbH UModel Reference Project 395 14 3 Project Check Project Syntax Checks the UModel project syntax The project file is checked on multiple levels detailed in the tables below Level Project level Checks if at least one Java Namespace Root exists Components Project file Directory is set Class Interface Enumeration If Realization exists Use for code engineering check box unchecked no check is performed and syntax check is disabled Code file name is set If class is nested then no check performed If contained in a code language namespace Type for operation parameter is set Type for properties is set Operation return type is set Duplicate operations names parameter types If classes are involved in Realization only if the class IS not nested Code file name is set Contained in a code language namespace Type for properties are set Type for operation param are set Operation return type is set Duplicate operations names parameter types If interfaces are involved in a ComponentRealization Belongs to Java Namespace Root gives a warning to say that no code will be generated Does not belong to Java Namespace Root no check is performed and syntax check is disabled for the enumeration No check is performed on contained package Message Error Error Error None Error if the local option Generate missing code file names is not set Warning i
444. values in a separate class compartment Please note When hiding attributes or operations using the Show Hide node content context menu option tagged values are also shown hidden together with the modeling element Association member ends can display stereotypes by setting the Show MemberEnd stereotypes option to true in the Styles tab For more information on displaying tagged values see Displaying tagged values Stereotypes and enumerations UModel has an efficient method of selecting enumerated values of stereotypes Click the diagram tab containing the stereotype definition i e the previously added Profile diagram 1 Click the Enumeration icon in the icon bar to insert an enumeration into the diagram containing the previously defined stereotype e g ProfileDiagram1 2 Add EnumerationLiterals to the enumeration by pressing SHIFT F7 or use the context menu e g the EnumerationLiterals Yes and No O 2012 Altova GmbH Altova UModel 2013 296 UML Diagrams Structural Diagrams Mii IA ata lt lt stereotypes gt y ssenumeration 1 I MyKeyValuePair MyEnum Me M I Ei i I I i lo I AAA AO al 3 Click the stereotype class and press F7 to add a new attribute property e g Finished 4 Select the MyEnum type from the Properties tab Properties Finished 1 lt lt stereotwpe gt MyProfile MyKey aluel MyKeyWaluePair Property er protected y veri 5 Switch back to the
445. verwrite UModel Class from Program Code This updates the selected class interface of your project Since missing classes cannot be selected nothing will be added to the project Right click a Component in the Model Rree normally within the Component View package and Code Engineering Overwrite UModel Component from Program Code This updates the corresponding directory or project file only New files in the directory project file are identified and added to the project An entry Collecting source files in C UMT est appears in your message window SPL Templates SPL templates are used during the generation of Java C and VB code To modify the provided SPL templates 1 2 3 Locate the provided SPL templates in the default directory UModel2013 UModelISPL Java Default or C Default VB Default Copy the SPL files you want to edit modify into the parent directory i e UModel2013 UModelSPL Javal Make your changes and save them there To use the user defined SPL templates 1 2 Select the menu option Project Synchronization settings Activate the User defined override default checkbox in the SPL templates group Then select one of the menu options shown below to initiate the synchronization process Project Merge Program Code from UModel project please see Round trip engineering model code model for more information or Project Merge UModel Project f
446. views Banki Component public LI abstract LJ indirectlyInstantiated code language Java 4 directory umicode bankvievy use for code engineering C 6 Check the project syntax again using Project Check project syntax Messages lt v aj 7 aj w a x E Starting Syntax Check Bank API client code project file or directory not set IB ank4FT code file name not set default name will be generated finished Syntax Check 1 error s 1 warnina E Starting Syntax Check finished Syntax Check error s warring s 2012 Altova GmbH Altova UModel 2013 56 UModel tutorial Round trip engineering model code model No errors are reported this time around We can now generate program code for this project Please see Check Project syntax for more information To generate project code 1 Click the BankView package to select it 2 Select the menu option Project Merge Program Code from UModel project 3 Select your synchronization options from the dialog box and press OK to proceed no changes needed for the tutorial see Merge Program Code from UModel project for more information Synchronization Settings l x Code from Model Model from Code SPL templates W User defined override default When deleting Code f Comment out Delete Synchronization f Merge Model into Code C Overwrite Code according to Model M Always show dialog when synchronizi
447. vity 2012 Altova GmbH Altova UModel 2013 208 UML Diagrams Behavioral Diagrams command sent effect Wating for result entry store current time exit free allocated memory Composite states Composite state This type of state contains a second compartment comprised of a single region Any number of states may be placed within this region To add a region to a composite state 1 Right click the composite state and select New Region from the context menu A new region is added to the state Regions are divided by dashed lines To delete a region 1 Click the region you want to delete in the composite state and press the Del key Deleting a region of an orthogonal state reverts it back to a composite state deleting the last region of a composite state changes it back to a simple state To place a state within a composite state 1 Click the state element you want to insert e g Logging in User and drop it into the region compartment of the composite state The region compartment is highlighted when you can drop the element The inserted element is now part of the region and appears as a child element of the region in the Model Tree pane Model Tree ag User Connected 21 Regioni O Co Connecting to Bank erwer C Logging in User A Performing Transaction Moving the composite state moves all contained states along with it Altova UModel 2013 O 2012 Altova GmbH UML Diagrams Behavior
448. ware is installed for commercial purposes may also install one copy of the Software on only one 1 home personal computer such as your laptop or desktop solely for your personal and non commercial HPNC use This HPNC copy may not be used in any commercial or revenue generating business activities including without limitation work from home teleworking telecommuting or other work related use of the Software The HPNC copy of the Software may not be used at the same time on a home personal computer as the Software is being used on the primary computer h Key Codes Upgrades and Updates Prior to your purchase and as part of the registration for the thirty 30 day evaluation period as applicable you will receive an evaluation key code You will receive a purchase key code when you elect to purchase the Software from either Altova GmbH or an authorized reseller The purchase key code will enable you to activate the Software beyond the initial evaluation period You may not re license reproduce or distribute any key code except with the express written permission of Altova If the Software that O 2012 Altova GmbH Altova UModel 2013 458 Appendices License Information you have licensed is an upgrade or an update then the latest update or upgrade that you download and install replaces all or part of the Software previously licensed The update or upgrade and the associated license keys does not constitute the granting of a second
449. www componentsoftware com Products RCS 2012 Altova GmbH Altova UModel 2013 334 Source Control Installing Source Control Systems 1 To install ComponentSoftware CS RCS PRO start the setup and choose the option Workstation Setup 2 Specify your repository tree root and when the installation is finished restart your machine as requested 3 Use the ComponentSoftware RCS Properties to choose or create a project and to specify a work folder Dynamsoft SourceAnywhere for VSS 5 3 2 Client http www dynamsoft com Products SAW_Overview aspx A standard installation will work correctly with Altova products To integrate with Altova products you do not need to install the plug in for Adobe DreamWeaver CS3 After the installation establish a server connection and set a working folder Dynamsoft SourceAnywhere Hosted Client 22252 http www dynamsoft com Products SourceAnywhere Hosting Version Control Sourc e Control aspx A standard installation will work correctly with Altova products To integrate with the Altova products you do not need to install the plug in for Adobe DreamWeaver CS3 Dynamsoft SourceAnywhere Standalone 2 2 Client http www dynamsoft com Products SourceAnywhere SourceSafe VSS aspx A standard installation will work correctly with Altova products To integrate with the Altova products you do not need to install the plug in for Adobe DreamWeaver CS3 After the installation establish a server c
450. xclusive non transferable limited license to compile the complete generated code comprised of the combination of the Restricted Source Code and the Unrestricted Source Code into executable object code form and to use copy distribute or license that executable You may not distribute or redistribute sublicense sell or transfer the Restricted Source Code to a third party unless said third party already has a license to the Restricted Source Code through their separate agreement with Altova Notwithstanding anything to the contrary herein you may not distribute incorporate or combine with other software or otherwise use the Altova Library modules or Restricted Source Code or any Altova intellectual property embodied in or associated with the Altova Library modules or Restricted Source Code in any manner that would subject the Restricted Source Code to the terms of a copyleft free software or open source license that would require the Restricted Source Code or Altova Library modules source code to be disclosed in source code form Notwithstanding anything to the contrary herein you may not use the Software to develop and distribute other software programs that directly compete with any Altova software or service without prior written permission Altova reserves all other rights in and to the Software With respect to the feature s of UModel that permit reverse engineering of your own source code or other source code that you have lawfully obtaine
451. ya to Package Foot Adding ActivityDiagram Installation Activity gt to Activity Aotivityd Package Roct finizhed merge project error s warning s Please note Clicking on one of the entries in the message window displays that modeling element in the Model Tree Merging results e New modeling elements i e those that do not exist in the source are added to the merged model e Differences in the same modeling elements the elements from the second model take precedence e g there can only be one default value of an attribute the default value of the second file is used e Diagram differences UModel first checks to see if there are differences between diagrams of the two models If there are then the new different diagram is added to the merged model with a running number suffix activity1 etc and the original diagram is retained If there are no differences then identical diagrams s are ignored and nothing is changed You can then decide which of the diagrams you want to keep or delete you can of course keep both of them if you want e The whole merge process can be undone step by step by clicking the Undo icon in the icon bar or pressing CTRL Z e Clicking an entry in the message window displays that element in the Model Tree e The file name of the merged file the first file you opened is retained 2012 Altova GmbH Altova UModel 2013 146 Projects and code engineering Merging UMo
452. yment diagram in MyPackage 4 Right click in MyPackage and select New Node pkg MyPackage T Mode ly n This adds the node object to the diagram 5 In the Model Tree right click the Root package and select New element Profile 6 Name the profile MyProfile 2012 Altova GmbH Altova UModel 2013 300 UML Diagrams Structural Diagrams Model Tree pkg MyPackage Root Component view El MyPackage ql DeploymentDiagrami Node 7 My Profile na X MyProfile My Profile Profile public 7 Right click the MyProfile package and select New Diagram Class diagram Selecting the stereotype icon 1 Drag the MyPackage and MyProfile folders from the Model Tree into the Class diagram Model Tree pkg MyProfile Root i Component View EI MyPackage ea profile E P DeploymentDiagrami MyPackage MyProfile i P Mode from Root Ton Foot E gt MyProfile i P Y ClassDiagrami E Diagr A Favori nd x ClassDiagramt Class Diagram Al DeploymentDiagrami ClassDiagraml A Et Pe 2 Click the Profile Application icon in the tool bar and drag the connector from MyPackage to MyProfile Altova UModel 2013 2012 Altova GmbH UML Diagrams Structural Diagrams 301 pkg MyProfile apply profile MyPackage 8 MyProfile from Foot from Foot 3 Click the stereotype icon in the toolbar and click in the MyProfile package to insert it pkg MyP
453. ymously bound classes when this binding occurs Bindings can be defined in the class name field as shown below intuector MyVector lt T int gt Substituting binding formal parameters vector lt T gt int gt Create bindings using the class name a_float_vector vector lt T gt float gt Binding multiple templates simultaneously Class5 vector lt T gt int map lt KeyType gt int Value Type lt T gt int gt Using wildcards as parameters Java 5 0 vector lt T gt gt Constraining wildcards upper bounds UModel extension vector lt T gt gt aBaseClass gt Constraining wildcards lower bounds UModel extension vector lt T gt lt aDerivedClass gt 2012 Altova GmbH Altova UModel 2013 158 Projects and code engineering UML templates 7 14 3 Template usage in operations and properties Operation returning a bound template Class1 Operation vector lt T gt int gt Parameter T is bound to int Operation returns a vector of ints Class containing a template operation Class1 Operation1 lt T gt in T T Using wildcards Class1 Property1 vector lt T gt gt This class contains a generic vector of unspecified type is the wildcard Typed properties can be displayed as associations e Right click a property and select Show PropertyX as Association or e Drag a property onto the diagram background Altova UModel 2013 O 2012 Altova GmbH Projects and code engineering Project Settings 159
454. zes the selected elements to their respective optimal size s Autolayout all This command allows you to choose the type of presentation of the modeling elements in the UML diagram tab Force directed displays the modeling elements from a centric viewpoint Hierarchic displays elements according to their relationships superclass derived class etc Block displays elements grouped by element size in rectangular fashion Reposition text labels Repositions modeling element names of the selected elements to their default positions Altova UModel 2013 2012 Altova GmbH UModel Reference View 405 14 5 View The commands available in this menu allow you to e Switch activate tabs of the various panes Define the grouping criteria of the diagrams in the Diagram Tree tab Define the zoom factor of the current diagram status bar Model Tree lt Diagram Tree Favorites Properties Styles Documentation Messages Overview Hierarchy Layer All on i off Favorites amp Model Tree Diagram Tree ZOOM Zoom in Strg Limschalt 1 Zoom out Strg Unmschalt 0 Zoom to Selection Strg Umschalt 5 Fit to Window Define the modeling element sort criteria of the Model Tree and Favorites tab Show or hide specific UML elements in the Favorites and Model Tree tab 2012 Altova GmbH Altova UModel 2013 406 UModel Reference Tools 14 6 Tools The tools menu allows you to e Customize you

Download Pdf Manuals

image

Related Search

Related Contents

Operating Instructions EPM__HMI EPM-H410  418  Samsung Gear 2 คู่มือการใช้งาน  C Vu Volume 1 Issue 2 PDF  Cnet CWP-905  NORK DURAPISO F  MOVIDRIVE® B – 3 Day Operation Start Up and Troubleshooting  Bedienungsanleitung  LP-OLAT & LP_OLAR Manual  FL300 user manual  

Copyright © All rights reserved.
Failed to retrieve file