Sybase®
PowerDesigner®
Business Process Model
User’s Guide
Version 9.538088-01-0950-01
Last modified: July 2002
Copyright © 2002 Sybase, Inc. All rights reserved.Information in this manual may change without notice and does not represent a commitment on the part ofSybase, Inc. and its subsidiaries.Sybase, Inc. provides the software described in this manual under a Sybase License Agreement. The software maybe used only in accordance with the terms of the agreement.No part of this publication may be reproduced, transmitted, or translated in any form or by any means, electronic,mechanical, manual, optical, or otherwise, without the prior written permission of Sybase, Inc.Use, duplication, or disclosure by the government is subject to the restrictions set forth in subparagraph (c)(1)(ii) ofDFARS 52.227-7013 for the DOD and as set forth in FAR 52.227-19(a)-(d) for civilian agencies.
Sybase, SYBASE (logo), AccelaTrade, ADA Workbench, Adaptable Windowing Environment, Adaptive ComponentArchitecture, Adaptive Server, Adaptive Server Anywhere, Adaptive Server Enterprise, Adaptive Server EnterpriseMonitor, Adaptive Server Enterprise Replication, Adaptive Server Everywhere, Adaptive Server IQ, AdaptiveWarehouse, AnswerBase, Anywhere Studio, Application Manager, AppModeler, APT Workbench, APT-Build, APT-Edit, APT-Execute, APT-Translator, APT-Library, ASEP, Backup Server, BayCam, Bit-Wise, BizTracker, CertifiedPowerBuilder Developer, Certified SYBASE Professional, Certified SYBASE Professional Logo, ClearConnect,Client-Library, Client Services, CodeBank, Column Design, ComponentPack, Connection Manager, Convoy/DM,Copernicus, CSP, Data Pipeline, Data Workbench, DataArchitect, Database Analyzer, DataExpress, DataServer,DataWindow, DB-Library, dbQueue, Developers Workbench, Direct Connect Anywhere, DirectConnect,Distribution Director, e-ADK, E-Anywhere, e-Biz Integrator, E-Whatever, EC-GATEWAY, ECMAP, ECRTP,eFulfillment Accelerator, Electronic Case Management, Embedded SQL, EMS, Enterprise Application Studio,Enterprise Client/Server, Enterprise Connect, Enterprise Data Studio, Enterprise Manager, Enterprise SQL ServerManager, Enterprise Work Architecture, Enterprise Work Designer, Enterprise Work Modeler, eProcurementAccelerator, eremote, Everything Works Better When Everything Works Together, EWA, Financial Fusion, FinancialFusion Server, Formula One, Gateway Manager, GeoPoint, iAnywhere, iAnywhere Solutions, ImpactNow, IndustryWarehouse Studio, InfoMaker, Information Anywhere, Information Everywhere, InformationConnect, InstaHelp,InternetBuilder, iremote, iScript, Jaguar CTS, jConnect for JDBC, KnowledgeBase, Logical Memory Manager,MainframeConnect, Maintenance Express, Manage Anywhere Studio, MAP, MDI Access Server, MDI DatabaseGateway, media.splash, MetaWorks, MethodSet, ML Query, MobiCATS, MySupport, Net-Gateway, Net-Library,New Era of Networks, Next Generation Learning, Next Generation Learning Studio, O DEVICE, OASiS, OASiSlogo, ObjectConnect, ObjectCycle, OmniConnect, OmniSQL Access Module, OmniSQL Toolkit, Open Biz, OpenBusiness Interchange, Open Client, Open ClientConnect, Open Client/Server, Open Client/Server Interfaces, OpenGateway, Open Server, Open ServerConnect, Open Solutions, Optima++, Partnerships that Work, PB-Gen, PC APTExecute, PC DB-Net, PC Net Library, PhysicalArchitect, Pocket PowerBuilder, PocketBuilder, Power++, PowerThrough Knowledge, power.stop, PowerAMC, PowerBuilder, PowerBuilder Foundation Class Library,PowerDesigner, PowerDimensions, PowerDynamo, Powering the New Economy, PowerJ, PowerScript, PowerSite,PowerSocket, Powersoft, PowerStage, PowerStudio, PowerTips, Powersoft Portfolio, Powersoft Professional,PowerWare Desktop, PowerWare Enterprise, ProcessAnalyst, Rapport, Relational Beans, Report Workbench,Report-Execute, Replication Agent, Replication Driver, Replication Server, Replication Server Manager, ReplicationToolkit, Resource Manager, RW-DisplayLib, RW-Library, SAFE, SAFE/PRO, SDF, Secure SQL Server, SecureSQL Toolset, Security Guardian, SKILS, smart.partners, smart.parts, smart.script, SQL Advantage, SQL Anywhere,SQL Anywhere Studio, SQL Code Checker, SQL Debug, SQL Edit, SQL Edit/TPU, SQL Everywhere, SQL Modeler,SQL Remote, SQL Server, SQL Server Manager, SQL SMART, SQL Toolset, SQL Server/CFT, SQL Server/DBM,SQL Server SNMP SubAgent, SQL Station, SQLJ, Stage III Engineering, Startup.Com, STEP, SupportNow,S.W.I.F.T. Message Format Libraries, Sybase Central, Sybase Client/Server Interfaces, Sybase DevelopmentFramework, Sybase Financial Server, Sybase Gateways, Sybase Learning Connection, Sybase MPP, Sybase SQLDesktop, Sybase SQL Lifecycle, Sybase SQL Workgroup, Sybase Synergy Program, Sybase Virtual ServerArchitecture, Sybase User Workbench, SybaseWare, Syber Financial, SyberAssist, SybMD, SyBooks, System 10,System 11, System XI (logo), SystemTools, Tabular Data Stream, The Enterprise Client/Server Company, TheExtensible Software Platform, The Future Is Wide Open, The Learning Connection, The Model For Client/ServerSolutions, The Online Information Center, The Power of One, TradeForce, Transact-SQL, Translation Toolkit,Turning Imagination Into Reality, UltraLite, UNIBOM, Unilib, Uninull, Unisep, Unistring, URK Runtime Kit forUniCode, Versacore, Viewer, VisualWriter, VQL, WarehouseArchitect, Warehouse Control Center, WarehouseStudio, Warehouse WORKS, Watcom, Watcom SQL, Watcom SQL Server, Web Deployment Kit, Web.PB,Web.SQL, WebSights, WebViewer, WorkGroup SQL Server, XA-Library, XA-Server and XP Server are trademarksof Sybase, Inc. or its subsidiaries.
All other trademarks are property of their respective owners.
���
��������
����� �������������������������������������������������������������������������
� ��������������������������������������������������������������������Functional overview .................................................................. 2What is a BPM? ........................................................................ 3Objects in a BPM ...................................................................... 5Defining a BPM ......................................................................... 6
Creating a BPM .................................................................. 6Opening an existing BPM................................................... 7Detaching a BPM from the Workspace.............................. 8Saving and closing a BPM.................................................. 8Defining BPM options ......................................................... 8Modifying BPM properties ................................................ 10Extended model definitions in a BPM............................... 12Extended dependencies in a BPM ................................... 12
Defining packages in a BPM................................................... 13Package properties in a BPM........................................... 13Creating a package in a BPM........................................... 14Modifying the package display preference in a BPM........ 14
� �������������������������������������������������������������������What is a business rule in a BPM? ......................................... 16Defining business rules in a BPM ........................................... 17
Business rule properties in a BPM ................................... 17Types of business rules in a BPM .................................... 18Creating a business rule in a BPM ................................... 18
Applying business rules to BPM objects ................................. 20Applying a business rule to a BPM object ........................ 20Attaching an expression to a BPM business rule ............. 21
� ������������������������������� ���������������������������������Defining a business process diagram..................................... 24
��
Business process diagrams vs. sub-process diagrams... 24Converting a business process diagram to a compositeprocess............................................................................. 25
Defining starts in a BPM ......................................................... 27Start properties in a BPM ................................................. 27Creating a start in a BPM ................................................. 27Modifying start properties in a BPM.................................. 28Modifying the start display preferences in a BPM ............ 29
Defining processes ................................................................. 30Process properties ........................................................... 31Defining composite processes ......................................... 33Creating a process ........................................................... 35Creating a composite process.......................................... 36Opening a composite process.......................................... 38Closing a composite process ........................................... 38Modifying process properties ........................................... 38Modifying the process display preferences ...................... 39
Defining organization units in a BPM ...................................... 40Organization unit properties in a BPM.............................. 41Creating an organization unit in a BPM............................ 43Attaching a process to an organization unit ..................... 47Modifying organization unit properties in a BPM .............. 48Managing swimlanes in a BPM ........................................ 49Modifying the organization unit display preferences in aBPM.................................................................................. 52
Defining flows.......................................................................... 53Flow properties................................................................. 54Creating a flow ................................................................. 57Modifying flow properties.................................................. 59Modifying the flow display preferences............................. 59
Defining message formats...................................................... 60Message format properties .............................................. 61Creating a message format.............................................. 63Modifying message format properties .............................. 64
Defining data........................................................................... 65Data properties................................................................. 66Creating a data................................................................. 67Modifying data properties ................................................. 68Linking a data to an object ............................................... 68Selecting data for a flow or a message format................. 70Exchanging data............................................................... 72
Defining resources.................................................................. 77Resource properties ......................................................... 77Creating a resource.......................................................... 78Modifying resource properties .......................................... 79Modifying the resource display preference....................... 79
�
Defining resource flows........................................................... 80Resource flow properties.................................................. 81Creating a resource flow .................................................. 84Modifying resource flow properties................................... 86Modifying the resource flow display preferences.............. 86
Defining decisions in a BPM ................................................... 87Decision properties in a BPM ........................................... 88Creating a decision in a BPM ........................................... 89Modifying decision properties in a BPM ........................... 90Modifying the decision display preference in a BPM ........ 90
Defining synchronizations in a BPM........................................ 91Synchronization properties in a BPM................................ 91Creating a synchronization in a BPM................................ 92Modifying synchronization properties in a BPM................ 93Drawing the synchronization symbol in a BPM................. 93
Defining ends in a BPM .......................................................... 95End properties in a BPM................................................... 95Creating an end in a BPM ................................................ 96Modifying end properties in a BPM................................... 97Modifying the end display preferences in a BPM ............. 97
������� �����!�"����#����������������������������������������������������$$Defining the CRUD matrix..................................................... 100Displaying a CRUD matrix .................................................... 101Manipulating the CRUD matrix ............................................. 103
Consulting object properties from the CRUD matrix ...... 103Copying a CRUD matrix into another application ........... 105Finding object symbol in the diagram from the CRUD ........matrix.............................................................................. 105Adding and removing objects from the CRUD matrix .... 106Hiding empty rows and columns .................................... 107Modifying CRUD values ................................................. 108
� %�������&�� ������������������������������������������������Checking a BPM ................................................................... 112
BPM check options......................................................... 112BPM object selection in the Check Model ...................... 113Checking a global BPM .................................................. 114Displaying previously applied check options in a BPM... 116Making corrections based on BPM check results .......... 116
BPM object parameters verified by Check Model ................. 119Replication check ........................................................... 119Package check ............................................................... 119Process check ................................................................ 120Decision check ............................................................... 121
��
Synchronization check.................................................... 121Flow check ..................................................................... 122File check ....................................................................... 123Resource check ............................................................. 123Resource flow check ...................................................... 124Organization unit check.................................................. 125Start check ..................................................................... 125End check....................................................................... 126Message format check ................................................... 127Data................................................................................ 127
Comparing and merging BPM models.................................. 128Opening ProcessAnalyst models .......................................... 129
Converting PAM objects into BPM objects..................... 129Opening a PAM into a BPM............................................ 130
' (����������)��"������������������������ ������������������Generation basics ................................................................. 134
Target models parameters ............................................. 134Object selection parameters .......................................... 136
Generating a Business Process Model from aBusiness Process Model ...................................................... 137
Generating and updating a BPM .................................... 137
����(������*������������������������������������������������������������������ �
+���# �������������������������������������������������������������������������������� �
���
����� �������
This book describes the PowerDesigner Business Process Modelenvironment. It shows you how to do the following:
♦ Build a Business Process Model (BPM)
♦ Create and use business rules and other model objects
♦ Verify the model, merge and compare models
♦ Open V6 PAM models
♦ Generate a Business Process Model from the BPM
This book is for anyone who will be designing or building a BPM withPowerDesigner. It requires an understanding of object modeling. Someexperience with programming languages might also be helpful but notrequired. For more information, see the Bibliography section at the end ofthis chapter.
The PowerDesigner modeling environment supports several types of models:
♦ ������������ ������� � to model the overall logical structureof a data application, independent from any software or data storagestructure considerations
♦ ���������� ������� � to model the overall physical structure ofa database, taking into account DBMS software or data storage structureconsiderations
♦ ���������������� ������� � to model a software system using anobject-oriented approach for Java or other object languages
♦ ����������������� ������� � to model the means by which one ormore processes are accomplished in operating business practices
♦ ����� ������� � to create any kind of chart diagram, in a context-free environment
,-���
�������
!��"��������.��"��
�������������
����
The Business Process Model also allows you to generate and reverse ebXMLBusiness Process Specification Schema (BPSS) XML file. These features arenot documented in this book but in the ������������ ��������.
This book only explains how to use the BPM. For information on othermodels or aspects of PowerDesigner, consult the following books:
(�������/�������(��� To get familiar with the PowerDesignerinterface before learning how to use any of the models.
�����.����!����������(�������,������ To learn the basics of theCDM.
�����.����!��������������0��(��� To work with the CDM.
� *������!����������(�������,������ To learn the basics of the PDM.
� *������!��������������0��(��� To work with the PDM.
1-����1��������������(�������,������ To learn the basics of theOOM.
1-����1������������������2��(��� To work with the OOM.
����������������������(�������,������ To learn the basics of theBPM.
��.���������0��(��� To create reports for any or all models.
��.������*�(�������,������ To learn the basics of the Repository.
��.������*�����0��(��� To work in a multi-user environment using acentral repository.
PowerDesigner documentation uses specific typefaces to help you readilyidentify specific items:
♦ monospace text (normal and ����)Used for: Code samples, commands, compiled functions and files,references to variables.Example: declare user_defined…, the���������� ������ template.
♦ UPPER CASEObject codes, reversed objects, file names + extension.Example: The AUTHOR table appears in the Browser. Open the fileOOMAFTER.OOM.
�*.����. �������������
�����������������
�#
♦ ��������Any new term.Example: A �������� has a target object.
♦ SMALL CAPS
Any key name.Example: Press the ENTER key.
The Workflow reference Model - http://www.wfmc.org.
Business Process Model Language Specification - http://www.bpmi.org/.
Document: Business Process Specification Schema - http://www.ebxml.org/.
Alan Kotok, David R. Webber, David RR Webber - ebXML: The NewGlobal Standard for Doing Business on the Internet - New Riders Publishing,2001.
��������. *
�������������
#
�
C H A P T E R 1
����������������������������
This chapter presents the PowerDesigner Business Process Model. Itprovides you with an introduction to the basic notions of business processmodeling.
��.�� ����
Functional overview 2
What is a BPM? 3
Objects in a BPM 5
Defining a BPM 6
Defining packages in a BPM 13
About this chapter
Contents
����������������
�
/����������������&PowerDesigner Business Process Model is a powerful and easy to use designtool for identifying the business needs from a business process or functionalstandpoint.
The business process model describes the various internal tasks and internalprocesses of a business and how the partners interact with these tasks andprocesses.
With this product, you can:
♦ Build a ����������������� ��� (BPM)
♦ Open a V6 Process Analyst Model (PAM)
♦ Customize the BPM to suit physical and performance considerations
♦ Generate and reverse ebXML Business Process Specification Schema(BPSS) XML files
♦ Generate a Business Process Model from the BPM
♦ Create and print reports
� For more information on ebXML generation and reverse, see sectionsHow to generate an ebXML BPSS file and How to reverse engineering anebXML BPSS file in the ������������ ��������.
���������������������������������
�
% �����������3A ����������������� ��� (BPM) is a conceptual model, which provides aclose description of the business logic and rules from a business partner’spoint of view. A BPM uses a diagram that shows interactions betweenprocesses, flows, messages and collaboration protocols from one or severalstart points to several potential end points.
A BPM can be compared to a market place where data or services areexchanged. It usually arises from a compelling business need or opportunity.
The Business Process model is a simplified UML activity diagram withBusiness Process extensions. It does not include any implementation details.It can be readily used as an input document to do object-oriented analysis. Ata conceptual level, it is particularly suitable for analyzing, designing ordocumenting Business-to-Business exchange (B2B).
Example
������������
This is how the BPM is integrated into the PowerDesigner global softwaresolution:
You use a BPM to:
♦ Describe the behavior and requirements of a system
♦ Represent the conceptual organization of objects in a graphic format
♦ Open PAM models
♦ Generate a BPM
♦ Design or document ebXML BPSS
� For more information on how to open PAM models, see sectionOpening ProcessAnalyst models in chapter Working with Business ProcessModels.
� For more information on how to generate a BPM, see chapterGenerating from a Business Process Model.
� For more information on ebXML BPSS design, see section DesigningebXML BPSS in a Business Process Model in the ������������ �������.
BPM roles
���������������������������������
�
1-�������������The BPM includes the following objects:
1-��� ���� !�����.����
Package Used to organize elements into groups. Not availablefor sub-process diagrams as you cannot createpackages within sub-process diagrams
Organizationunit
Element that hosts or implements processes andresources. It can be a company, a system, a service,an organization, a user or a role
Message format — Definition of data exchanged between processes
Process Invocation of an action
Compositeprocess
— Complex process decomposed to be further detailed
Start Starting point of the processes described in theprocess diagram
End Termination point of the processes described in theprocess diagram
Decision Decision the flow has to take when several flowpaths are possible
Synchronization Enables synchronization of flows between two ormore concurrent actions
Flow Path the flow transits on to join processes, starts,ends or synchronizations
Resource Storage unit of abstract data circulating within themodel, which is accessed by a process to performactions
Resource flow Access of a process to a resource
Data — Defines the type of information exchanged betweenbusiness processes
����� ������
'
!�)�����������You can create a new BPM, or open an existing one. You can set options todefine how your model is created or modified, and the type of informationthat it displays.
��������������
There are several ways to create a BPM:
♦ Create a new BPM
♦ Open a V6 Process Analyst Model (.PAM)
♦ Generate a new BPM
♦ Reverse an ebXML BPSS XML file
� For more information on reversing an ebXML BPSS XML file, seesection How to reverse engineering an ebXML BPSS file in the ����������� ��������.
� ��������������&����4
1 Select File→New to display a selection box listing the availablePowerDesigner modules.
2 Select Business Process Model and click OK.
A new BPM opens in the current Workspace. An empty diagram windowappears containing a palette of design tools. The new BPM node appearsunder the Workspace node in the Browser.
3 Select Model➤ Model Properties.��Right-click any empty space in the diagram window and selectProperties from the contextual menu.
The model property sheet appears.
���������������������������������
5
4 Type a model name and model code.
5 Click OK.
!�"���#�".��An example of a BPM is available in the Examples directory.
1.����������#����������
A Business Process Model has the file extension .BPM.
� ����.�������#����������4
1 Select File→Open to display a standard open file dialog box.
2 Select a file with the .BPM extension.
3 Click Open.
The model appears in the Browser and a diagram opens in the diagramwindow.
����� ������
6
!���� ����������)��"�� ��%����.���
You can detach a BPM from a workspace. When a BPM is detached from aworkspace, its node is removed from the Browser and it is no longer definedin the workspace, but the file is not deleted from your operating environment.
� �������� �������)��"�� ��%����.���4
1 Right-click the BPM node in the Browser and select Detach FromWorkspace from the contextual menu.
A confirmation box asks if you want to save the BPM.
2 Click Yes if you want to save modifications to the BPM.Select or browse to a directory.Type a name for the file and click the Save button.��Click No if you do not want to save modifications to the file.
The BPM is removed from the Workspace.
,�����������������������
You save a BPM by selecting File→Save.
You close a BPM by selecting File→Close.
!�)�����������.�����
You can set the following BPM options:
♦ All Objects
♦ Default message format
From the All Objects groupbox, you can define the case sensitivity of namesand codes in the current model. Unlike other model options, you can modifythe name and code case sensitivity during the design process. However, ifyou do so, make sure you run the check model feature to verify if the modeldoes not contain any duplicate object.
All objects
���������������������������������
$
Message Format is a property for both flows and resource flows that givesinformation on the type of data exchanged between objects. Undefined is thedefault value when you create a flow, but you can modify it to set it to None.
1.���� �����
None When selected, it indicates that you do not want any defaultmessage format for your flows, as the event is of minor importance.You usually use this option when you do not want to specify dataflows in your BPM
Undefined When selected, it indicates that all your message formats will bedefined later
You can modify any of these options individually directly from the propertysheet of the flow or resource flow.
� For more information on the flow or resource flow properties, seecorresponding sections in chapter Building a Business Process Model.
� �����)���������.�����4
1 Select Tools→Model Options.��Right-click any empty space in the diagram and select Model Optionsfrom the contextual menu.
Default messageformat
����� ������
�7
The Model Options dialog box opens to the Model page.
2 Select model options in the different groupboxes.
3 Click OK.
����)*��������.��.������
The Model property sheet displays the definition of the current model.
A BPM has the following model properties:
���.���* !�����.���� 8����
Name Name for the model 254
Code Code for the model 254
Comment Descriptive label for the model __
Filename Location of the model file. This box is empty if themodel has never been saved
—
���������������������������������
��
���.���* !�����.���� 8����
Author Author of the model. You can insert a name, a space, ornothing.
If you insert a space, the Author field in the title boxremains empty.
If you intentionally leave the box empty, the Authorfield in the title box displays the user name from theVersion Info page of the model property sheet
254
Version Version of the model. You can use this box to displaythe repository version or a user defined version of themodel. This parameter is defined in the displaypreferences of the Title node
__
Defaultdiagram
Diagram displayed by default when you open the model __
� ���"���)*�� ��.��.��������)������4
1 Select Model→Model Properties.��Right-click the diagram background and select Properties from thecontextual menu.
The model property sheet appears.
2 Type changes to model properties.
3 Click OK.
����� ������
��
9#�������"�������)�����������������
An extended model definition allows you to expand object definitions andcomplement the generation targets and commands . Extended modeldefinitions are created and saved in files with the XEM extension. You cancreate or attach one or several extended model definitions to a model.
Extended model definitions may contain:
♦ Extended attributes for applicable objects in order to further define theirproperties
♦ Stereotypes to define extended dependencies established between modelobjects
� For more information on extended dependencies, see Extendeddependencies in a BPM.
♦ Generation targets and commands to complement the generation of anobject model, or to perform an extended generation
� For more information on extended model definitions, see chapterExtended Model Definitions Reference Guide in the ������������������������
9#���������.������������������
Extended dependencies are links between BPM objects. These links help tomake object relationships clearer but are not interpreted and checked byPowerDesigner as they are meant to be used for documentation purposesonly.
You can complement these links by applying stereotypes. Stereotypes areused to define extended dependencies between objects in the BPM.
You can type stereotypes directly in the Stereotype column of the objectproperty sheet or select a value from the dropdown listbox if you havepreviously defined stereotypes in an embedded or imported extended modeldefinition (.XEM).
� For more information on extended dependencies, see section UsingExtended Dependencies in the ����� ����������������
���������������������������������
��
!�)������.����������������A ����� is a general-purpose mechanism for organizing elements intogroups. It contains model objects.
When you work with large models, you can split them into smallersubdivisions to avoid manipulating the entire set of data of the model.Packages can be useful to assign portions of a model, representing differenttasks and subject areas to different development teams.
You can create several packages at the same hierarchical level within a modelor decompose a package into other packages and continue this processwithout limitation in decomposition depth. Each package appears with adefault diagram window. At each level of decomposition you can createseveral diagrams.
� For more information on packages, see section Defining a package inchapter Managing models in the ����� ���������������.
���������������".������.������You cannot create a package in a composite process since this onebehaves like a package.
��������.��.���������������
Packages have properties displayed on property sheets. All packages sharethe following common properties:
���.���* !�����.���� 8����
Name Name that clearly identifies the package 254
Code Codes are references for packages 254
Comment Optional label that describes a package and providesadditional information
—
Package hierarchy
����� ������ ���������
�
���.���* !�����.���� 8����
Stereotype Sub-classification derived from an existing package 254
Use parentnamespace
Defines the package as being the area in which thename of an object must be unique in order to be used
—
Defaultdiagram
Diagram displayed by default when opening thepackage
—
The Stereotype dropdown listbox is empty by default. However, it is possibleto define stereotypes of your own using the extended model definitions.
� For more information on extended model definitions, see the ����� ��������������.
�����������.���������������
A package always belongs to a model. You create a package like any othermodel objects.
The name of each package must be unique in the model.
There are several ways to create a package:
♦ From a diagram
♦ From the Browser
♦ From the list of packages
At creation, a package has a default name including a number, this number isassigned in the order of creation.
� For more information on the different ways to create a package, seesection Creating an object in chapter Managing Objects in the ����� ��������������.
����)*����� ��.����������.��*�.��)���������������
You can modify the following display preference for a package using theTools→Display Preferences command:
���)������ !�����.����
Show stereotype Displays the stereotype of the package
Stereotype
��
C H A P T E R 2
���������������������������
This chapter describes how business rules help you model information.
��.�� ����
What is a business rule in a BPM? 16
Defining business rules in a BPM 17
Applying business rules to BPM objects 20
About this chapter
Contents
��������������������������
�'
% ���������������������������3A business rule is a written statement specifying what the information systemmust do or how it must be structured to support business needs.
A business rule is a rule that your business follows. A business rule could bea government-imposed law, a customer requirement, or an internal guideline.
Business rules often start as simple observations, for example "customers calltoll-free numbers to place orders." During the design process they developinto more detailed expressions, for example what information a customersupplies when placing an order or how much a customer can spend based ona credit limit.
Business rules complement model graphics with information that is not easilyrepresented graphically. For example, some rules specify physical concernsin the form of formulas and validation rules. These technical expressions donot have a graphical representation.
Starts as anobservation
Complementsgraphics
��������!����"� ������#�����������
�5
!�)��������������������������You can define a business rule, which can be attached to an object in theBPM.
������������.��.���������������
A business rule definition includes the following properties:
���.���* !�����.������#�""�����
Name Name for the rule 254
Code Reference name for the rule 254
Comment Descriptive label for the rule __
Type It can be a definition, fact, formula, requirement,validation, or constraint
—
A business rule definition also includes the following properties, each withtheir respective page:
���.���* !�����.����
Expression Presence of associated expression
Notes Presence of associated notes
����� ������������������
�6
�*.����)���������������������
You can define several different types of business rules:
�����*.� !������� 9#�".��
Definition Object properties in theinformation system
A customer is a person identifiedby a name and an address
Fact Certainty, existence in theinformation system
A client may place one or moreorders
Formula Calculation used in theinformation system
The total order is the sum of allthe order line costs
Requirement Functional specification in theinformation system
The model is designed so thattotal losses do not exceed 10%of total sales
Validation Constraint on a value in theinformation system
The sum of all orders for a clientmust not be greater than thatclient’s allowance
Constraint Additional check constrainton a value. Constraintbusiness rules are used in thePDM, they are generated inthe database
The start date should be inferiorto the end date of a project
� For more information on constraint, see section Using constraintbusiness rules in a PDM in chapter Using Business Rules in a PDM in the������ ���������� �������������.
������������������������������
Before you create business rules, formulate your rules by asking yourself thefollowing questions:
♦ What business problems do I want to address?
♦ Are there any procedures that my system must respect?
♦ Do any specifications dictate the scope of my project?
♦ Do any constraints limit my options?
♦ How do I describe each of these procedures, specifications, andconstraints?
♦ How do I classify these descriptions: as definitions, facts, formulas, orvalidation rules?
��������!����"� ������#�����������
�$
� �������������������������������4
1 Select Model→Business Rules to display the List of Business Rulesshowing any business rules currently defined for the model.
2 Click a blank line in the list.��Click the Add a Row tool.
An arrow appears at the beginning of the line.
3 Type a name and a code for the business rule.
4 Click Apply.
The creation of the new business rule is committed.
5 Click the new business rule line.
An arrow appears at the beginning of the line.
6 Click the Properties tool.��Double click the arrow at the beginning of the line.
The property sheet for the new business rule appears.
7 Click the General tab and select a business rule type from the Typedropdown listbox.
8 Click OK in each of the dialog boxes.
����$� ��������������������%���
�7
�..�*������������������������-����From the list of business rules, you can apply a business rule to existing BPMobjects. You can also apply a business rule to objects from their respectiveproperty sheets or lists.
�..�*���������������������������-���
You can apply a business rule to a BPM object from its property sheet.
� ����..�*������������������������-���4
1 Double-click an object in the model to display the object property sheet.
2 Click the Rules tab to display the Rules page.
3 Click the Add Objects tool.
The Selection window appears. It contains a list of all the business rulesof the model, except the rules that already belong to the object.
4 Select the business rules you want to add to the object.
5 Click OK.
The business rules are added to the object and appear in the list ofbusiness rules for the object.
6 Click OK.
��������!����"� ������#�����������
��
����� ��������#.���������������������������
A business rule typically starts out as a description. As you develop yourmodel and analyze your business problem, you can complete a rule by addinga technical expression.
Each business rule can include two types of expression:
♦ Server that can be generated to a database
♦ Client that is used mainly for documentation purposes
Expressions are used essentially in a CDM or a PDM.
� For more information on expressions, see chapter Using Business Rulesin the ���� ��� ���������� ����������������������� ���������� ������������.
����$� ��������������������%���
��
��
C H A P T E R 3
�������������������������������
This chapter describes how to build a Business Process Model (BPM). Itexplains the role of each object in a BPM diagram and how to create andmodify them.
��.�� ����
Defining a business process diagram 24
Defining starts in a BPM 27
Defining processes 30
Defining organization units in a BPM 40
Defining flows 53
Defining message formats 60
Defining data 65
Defining resources 77
Defining resource flows 80
Defining decisions in a BPM 87
Defining synchronizations in a BPM 91
Defining ends in a BPM 95
About this chapter
Contents
����� ���������������� ��&
�
!�)���������������.�������������"A ��������������������� shows interactions between business processes.It focuses on flows that vehicle data among processes.
It can be created in a model, or a package or within a composite process.
��������.�������������"�������:.�������������"�
There is a difference between the top business process diagram createdwithin a model or a package, and the sub-process diagram created within acomposite process.
You can create several business process diagrams within a package or amodel. Each of those diagrams is independent and designs a businessprocess. A business process diagram defines an isolated context in which theintegrity of elements can be checked.
In a business process diagram, you can:
♦ Create packages
♦ Convert the business process diagram to a package
� For more information on converting a diagram to a package, seethe corresponding section in the ����� ���������������.
♦ Convert the business process diagram to a composite process
� For more information on converting a business process diagram toa composite process, see section Converting a business process diagramto a composite process.
A sub-process diagram designs a process decomposition. It details theimplementation of a parent process, called �� ��������������. It describesthe context of a complex process. All integrity checks are performed on allelements defined in the composite process.
In a sub-process diagram, it is ��� possible to create packages. You can onlyuse shortcuts of packages.
You can create several sub-process diagrams within a composite process butit is not advised though to decompose a process into too many sub-processdiagrams.
� For more information on sub-process diagrams, see section Convertinga business process diagram to a composite process.
Business processdiagrams
Sub-processdiagrams
��������'������� �������������������
��
��������������������.�������������"��������".������.������
PowerDesigner lets you convert a diagram to a composite process using theConvert Diagram to Process Wizard from the Tools menu. When you converta business process diagram to a composite process, you create sub-businessprocess diagrams within a composite process. You do so, when you want todescribe the context of a complex process. The diagram must contain objectsto proceed to the conversion in the wizard.
� ��������������������.�������������"��������".������.������4
1 Right-click the diagram node in the Browser and select Convert toComposite Process from the contextual menu.��Right-click the diagram background window and selectDiagram→Convert to Composite Process from the contextual menu.��Select Tools→Convert to Composite Process.
The Convert Diagram to Process page appears.
2 Type a name and a code for the composite process.
3 Click Next.
����� ���������������� ��&
�'
The Selecting objects to move page appears. It displays only relevanttabbed pages. By default, all objects are selected.
4 Click Finish if you want all the selected objects to be moved into thecomposite process.��Deselect the objects you do not want to be moved into the compositeProcess and click Finish.
� For more information on how to select items in a selection list, seesection Adding an item from a selection list in chapter Using thePowerDesigner interface in the ����� �!�������������.
The selected objects are moved into the composite process. From theBrowser, you can see that sub-objects appear directly under thecomposite process node at the same level as the sub-process diagram.
��������'������� �������������������
�5
!�)���������������������A �����is a starting point of the whole process represented in the businessprocess diagram. It represents an external entry point between a process andthe outside.
You can create several starts within a package or a model since you can useseveral business process diagrams in the same model or package
However, you cannot create shortcuts for a start.
,�����.��.���������������
You can double-click any start symbol in a diagram to display its properties.
A start has the following properties:
���.���* !�����.������#�""�����
Name Name of the start 254
Code Reference name of the start 254
Comment Descriptive comment for the start —
Stereotype Sub-classification derived from an existing start 254
�������������������������
There are several ways to create a start:
♦ From a diagram
♦ From the Browser
♦ From the list of starts
At creation, a start has a default name including a number, this number isassigned in the order of creation.
� For more information on the different ways to create a start, see sectionCreating an object in chapter Managing Objects in the ����� ��������������.
����� �������������
�6
� ������������������)��"���������"4
1 Click the Start tool.
2 Click anywhere in the diagram.
The following symbol appears at the click position:
3 Click the Pointer tool.��Click the right mouse button.
You release the Start tool.
4 Double-click the start symbol to display the start property sheet.
5 Type a name and a code.
6 Click OK.
����)*����������.��.���������������
You can modify the start properties using the following methods:
♦ From the start property sheet
♦ From the list of starts
��������'������� �������������������
�$
� For more information on the different ways to modify the startproperties, see section Modifying object properties in chapter ManagingObjects in the ����� ���������������.
����)*����� �����������.��*�.��)����������������
You can modify the following display preferences for a start using theTools→Display Preferences command:
���)������ !�����.����
Show name Displays the name of the start
Show stereotype Displays the stereotype of the start
When you define display preferences for a start, you automatically definethem for an end also.
� For more information on defining display preferences for an end, seesection Modifying the end display preferences in a BPM.
����� �������
�7
!�)������.��������A ������� can be the design of a service (implementation process) or theinvocation of a manual or automated action, like "getting money from anincoming order", or "building a software system according to thespecifications" for example. When the process gains the control, it performsthe action, then, depending on the result of the action, the flow is passed toanother process. A process can be viewed as an action to reach a goal.
A process must have one input flow and one output flow at least.
A process can be atomic or composite:
♦ An �� ���������� does not contain any sub-processes. It is calledprocess in a BPM
♦ A �� �������������� uses sub-processes to describe its actions. It iscalled composite process in a BPM
� For more information on composite processes, see section Definingcomposite processes.
You can use internal and external shortcuts of processes to reference yourmodel.
� For more information on shortcuts, see chapter Managing shortcuts inthe ����� ���������������.
You can also use implementation processes that semantically behave asshortcuts, however you can redefine some properties such as name, code,timeout or duration.
� For more information on implementation processes, see section Processproperties.
Reusing existingprocesses
��������'������� �������������������
��
��������.��.������
You can double-click any process symbol in a diagram to display itsproperties.
���.���* !�����.������#�""�����
Name Name of the process 254
Code Reference name of the process 254
Comment Descriptive comment for the process —
Stereotype Extends the semantics of a process derived fromexisting processes but specific to your needs
254
Organizationunit
Displays the organization units defined in themodel. You can click the Properties tool beside thisbox to display the property sheet of the selectedorganization unit
254
Composite If selected, implies that the process becomes acomposite process
—
Implementedby
Displays the available implementation processes inthe model. You can click the Properties tool besidethis box to display the property sheet of theselected implementation process
254
You can type stereotypes directly in the Stereotype column of the objectproperty sheet or select a value from the dropdown listbox if you havepreviously defined stereotypes in an embedded or imported extended modeldefinition (.XEM).
� For more information on extended model definitions, see sectionWorking with extended model definitions in chapter Managing Objects in the����� ���������������.
1�����;���������
An organization unit is an optional element that allows you to define whichorganization is responsible for which process. It can represent a company, asystem, a service, an organization, a user or a role. The Organization Unitbox lists the organization units defined in the model. It is used to specifywhich organization unit is linked to a process. You can click the Ellipsis toolbeside the Organization unit box to create a new organization unit in the Listof Organization Units.
Stereotype
����� �������
��
� For more information on organization units, see section Definingorganization units in a BPM.
��".�����
The Composite check box allows you to create or delete a composite process.It is not selected by default.
♦ If you select the Composite check box, a sub-process diagram is createdwithin the process. This specifies the decomposition of a process. Youcan then create the same objects as in a business process diagram
♦ If you deselect the Composite check box, or select Change to atomicfrom the contextual menu of a composite process, a confirmation dialogbox asks you to confirm the objects deletion. The existing sub-processdiagram and all its objects are then deleted. There is no confirmationdialog box if no objects have been defined in the sub-process diagram
+".��"������*
The Implemented By box lists available implementation processes of themodel. It is used to share the implementation details of an existing processand overload other properties like name, code, timeout or duration. Theprocess selected in the Implemented By box can be considered as a call forthe implementation process. The implemented process semantically behavesas a shortcut.
The implemented by process symbol appears with the following icon in theright-hand corner:
�*.���)�.������ !�����.����
Implemented by process Process which is implemented by another process
Implementation process Process that implements another process
You can click the Select Process tool beside the Implemented By box toselect an implementation process in another opened diagram.
The Implemented By box is grayed out in a composite process propertysheet, as a process cannot define its implementation in a sub-diagram andreference its implementation process at the same time.
A process cannot be implemented by an implemented process.
Implemented byprocess vs.implementationprocess
��������'������� �������������������
��
You can directly create an implemented process by pressing the ALT keywhile dragging the implementation process and dropping it into anotherpackage or composite process within the same model or into another model.
A new process is created that bears the same name as its implementationprocess. You can change the name in the process property sheet and see itsimplementation process in the Implemented By box.
������
An action is a parameter that applies to a process. The Action page definesthe nature, the type and the duration of an action that a process executes.
It contains the following parameters:
����"���� !�����.����
Action type Specifies the way the action should be executed. It can be amanual, automated or an undefined type
Editor Details how the action is executed. Example: you can writepseudo code or an information on the program to execute, as wellas open, insert and save any text files containing valuableinformation
Timeout Zero is the default value. If the value is not set to zero, it meansthat a timeout exception occurs if the execution of the activationtakes more than the specified timeout limit. You can type anyalphanumeric value in the Timeout box (Example: 20 seconds)
Duration Specifies estimated or statistic duration to execute the action.This information is for documentation purposes only; estimate onthe global duration is not computed
1.������� ���������.���You can open the Action page by right-clicking the process symbol in thediagram, and selecting Action from the contextual menu.
!�)��������".������.��������
A �� ������ ������� is a child process used to describe the actions of aparent process.
Drag & Drop + ALT
����� �������
�
There is no limitation on the number of decompositions. Each process can bedecomposed into a composite process, except the lowest level processes.Those ones do not need to be further decomposed because they intrinsicallycontain enough detail, or because they represent an atomic process.
The composite process symbol appears with the following icon in the right-hand corner:
A composite process always contains a default sub-process diagram. You cancreate several sub-process diagrams within a composite process, but it is notrecommended, as when you are in a sub-process diagram it means that youare within the context of a process. Unless you want to design someexception cases like error management for example, it would not beconsistent to create too many sub-process diagrams within a compositeprocess.
The composite process behaves like a ������!�� package or container thatcontains a sub-process diagram, for this reason, it is not possible to create apackage in a composite process.
!���������������.�������������"��-��������������".�����.������You can drag any business process diagram objects from the Browser anddrop them into a sub-process diagram. These objects are automaticallyinserted into the target sub-process diagram.
All sub-processes defined within a composite process share the samenamespace as the parent process.
When you work within a composite process, the associated objects appearunder the Processes node in the Browser. The Processes node can beexpanded to display its children nodes, this allows you to see the processdecomposition in a quick and convenient way.
/����������&���You can locate any object or any diagram in the Browser tree view fromthe current diagram window by right-clicking the object symbol or thediagram background, and select Edit→Find in Browser.
��������'������� �������������������
��
�����������.������
There are several ways to create a process:
♦ From a diagram
♦ From the Browser
♦ From the list of processes
At creation, a process has a default name including a number, this number isassigned in the order of creation.
� For more information on the different ways to create a process, seesection Creating an object in chapter Managing Objects in the ����� ��������������.
� ������������.�������)��"���������"4
1 Click the Process tool.
2 Click anywhere in the diagram.
The following symbol appears at the click position:
3 Click the Pointer tool.��Click the right mouse button.
You release the Process tool.
4 Double-click the process symbol to display the process property sheet.
����� �������
�'
5 Type a name and a code.
6 Click OK.
�������������".������.������
You create a composite process from the symbol of the parent process:
♦ From a diagram
♦ From the contextual menu
When you create a composite process, a default sub-process diagram isautomatically created.
A composite process must always have one start and one end at least.
�������������".������.�������)��"���������"
� ��������������".������.�������)��"�� ��������"4
♦ Press CTRL + double-click the parent process symbol to create thecomposite process.
��������'������� �������������������
�5
A default sub-process diagram opens in the diagram window. Thecomposite process node is visible in the Processes category of theBrowser marked with a + sign.
If you expand the composite process node, you see that a default sub-process diagram node is automatically created:
�������������".������.�������)��"�� �������#����"��
You can create a composite process from the process contextual menu, it isequivalent to selecting the Composite box in the process property sheet.
� ��������������".������.�������)��"�� �������#����"��4
♦ Right-click the parent process symbol in the diagram window and selectChange to Composite from the contextual menu.
The process symbol changes to the following symbol:
����� �������
�6
1.����������".������.������
You can open a composite process using the following methods:
♦ Press CTRL + double-click the composite process symbol in the diagram.��Select Open Diagram from the contextual menu of the composite processsymbol in the diagram.The default sub-process diagram opens in the diagram window.
������������".������.������
You can close a composite process using the following methods:
♦ Press CTRL + U in the sub-process diagram to go up to the defaultdiagram.��Select Diagram→Go Up One Level from the contextual menu and selectthe parent business process diagram.If several diagrams are opened in the workspace, you are requested toselect the parent process diagram.
,���������������"������)����������"You can set a diagram to be the default diagram by selecting theDefault Diagram check box in the diagram property sheet.
����)*����.�������.��.������
You can modify the process properties using the following methods:
♦ From the process property sheet
♦ From the list of processes
� For more information on the different ways to modify the processproperties, see section Modifying object properties in chapter ManagingObjects in the ����� ���������������.
��������'������� �������������������
�$
����)*����� ��.����������.��*�.��)�������
You can modify the following display preferences for a process using theTools→Display Preferences command:
���)������ !�����.����
Show stereotype Displays the stereotype of the process
Show "Implemented by" icon Displays the "Implemented by" icon on thesymbol process
Show "Composite" icon Displays the "Composite" icon on the symbolprocess
����� ��� ��(����������������
7
!�)������������;�������������������An �����!��������� is an optional element that allows you to define whichorganization is responsible for which process. It can represent a company, asystem, a service, an organization, a user or a role. It can also be consideredas a business partner who uses high level processes.
An organization unit is assigned to a process.
You can use internal and external shortcuts of organization units.
The organization unit is equivalent to the �"� �� in UML. It allows you tohave an organizational view of your processes and displays as follows:
A swimlane can contain all the symbols of a process diagram: processes,flows, decisions, etc.
A general option allows you to switch to the icon representation of theorganization unit to express the relationship that exists between a process andthe user of that process. You must use extended dependencies between bothobjects to materialize that relationship.
If you want to switch to the icon representation, you have to select theTools→Display Preferences→General command and deselect theOrganization Unit Swimlane check box. You can also select the DisableSwimlane Mode from the Diagram or swimlane contextual menu.
An organization unit with an icon representation displays as follows andbehaves like any other PowerDesigner objects:
Swimlanerepresentation
Icon representation
��������'������� �������������������
�
In the following example, the organization unit (Buyer) uses the process(Order):
������"������)��"���������$For models that have been created in version 9, organization units arerepresented with an icon. If you want to switch to the swimlanerepresentation, you have to select the Tools→DisplayPreferences→General command and select the Organization UnitSwimlane check box.
When you switch from one representation to another, the following occurs inthe diagram:
/��" % ��� �..������
Swimlane to icon The swimlane symbol is deleted, but the correspondingorganization unit still exists in the Browser. To view thecorresponding icon symbol, right-click the diagrambackground, select Show Symbols from the contextual menu,and select the check box for the corresponding organizationunit. If processes are attached to the swimlane, theirattachment still appears in the property sheet of the processes.For more information on how to attach a process to anorganization unit, see section Attaching a process to anorganization unit
Icon to swimlane The icon symbol for the organization unit is deleted andautomatically replaced with a swimlane if the iconorganization unit had a process attached to it, otherwise youmust display the swimlane symbol using the Show Symbolsfeature
1�����;����������.��.���������������
When the organization unit is a swimlane, you do not open its property sheetby double-clicking the object as you do for any other PowerDesigner objects.
Switching from onerepresentation toanother
����� ��� ��(����������������
�
You must:
♦ Position the cursor above the organization unit symbol until you see avertical arrow pointing to the frame
♦ Click with the left mouse button to display a selection frame around thesymbol.
♦ Double-click the zone between the selection frame and the swimlane toopen the property sheet of the organization unit.
The organization unit property sheet displays the following properties:
���.���* !�����.������#�""�����
Name Name of the organization unit 254
Code Reference name of the organization unit 254
Comment Descriptive comment for the organization unit —
Stereotype Extends the semantics of an organization unitderived from existing organization units butspecific to your needs
254
Parentorganization
Displays the parent organization unit 254
��������'������� �������������������
�
You can select a predefined stereotype from the dropdown listbox. You canalso type stereotypes directly in the Stereotype column of the object propertysheet or select a value from the dropdown listbox if you have previouslydefined stereotypes in an embedded or imported extended model definition(.XEM).
� For more information on extended model definitions, see sectionWorking with extended model definitions in chapter Managing Objects in the����� ���������������.
An organization unit has the following predefined stereotypes:
,������*.� !�����.����
Role Defines a role a user plays
User Defines a user
Group Defines a group of users
Company Defines a company
Organization Defines an organization as a whole
Division Defines a division in a global structure
Service Defines a service in a global structure
The Parent dropdown listbox lists all organization units in the model.
Each time an organization unit is selected, it becomes the parent of anotherorganization unit, the latter becoming the child. This relationship is alsodisplayed in the Organization Units tabbed page of the Dependencies page inthe property sheet of the child organization unit.
������������������;������������������
There are several ways to create an organization unit:
♦ From a diagram
♦ From the Browser
♦ From the list of organization units
At creation, an organization unit has a default name including a number, thisnumber is assigned in the order of creation.
Stereotype
Parent organization
����� ��� ��(����������������
� For more information on the different ways to create an organizationunit, see section Creating an object in chapter Managing Objects in the����� ���������������.
You can choose to create an organization unit as a swimlane or as an icon.
������������������;����������������&�"�����)��"���������"
Before you create an organization unit from a diagram with the swimlanerepresentation, you must select the Organization Unit Swimlane check box inthe Display Preferences dialog box or right-click the diagram backgroundand select the Enable Swimlane Mode command from the contextual menu.
� �������������������;����������������&�"�����)��"���������"4
1 Click the Organization Unit tool.
2 Click anywhere in the diagram.
The following symbol appears at the click position:
3 Click the right mouse button to release the Organization Unit tool.
4 Position the cursor above the organization unit symbol until you see avertical arrow pointing to the frame.
5 Click with the left mouse button to display a selection frame around thesymbol.
��������'������� �������������������
�
6 Double-click the zone between the selection frame and the swimlane toopen the property sheet of the organization unit.
7 Type a name and a code.
8 <Optional> Type or select a stereotype in the Stereotype dropdownlistbox.
9 <Optional> Type or select a parent organization in the ParentOrganization dropdown listbox.
10 Click OK.
(��.�,*"����������������You cannot use the Symbol→Group Symbols feature to grouporganization units/swimlanes in the business process diagram.
����� ��� ��(����������������
'
������������������;���������������������)��"���������"
Before you create an organization unit from a diagram with the iconrepresentation, you must deselect the Organization Unit Swimlane check boxin the Display Preferences dialog box or right-click the diagram backgroundand select the Disable Swimlane Mode command from the contextual menu.
� �������������������;���������������������)��"���������"4
1 Click the Organization Unit tool.
2 Click anywhere in the diagram.
The following symbol appears at the click position:
3 Click the Pointer tool.��Click the right mouse button.
You release the Organization Unit tool.
4 Double-click the organization unit symbol to display the organizationunit property sheet.
5 Type a name and a code.
��������'������� �������������������
5
6 <Optional> Type or select a stereotype in the Stereotype dropdownlistbox.
7 <Optional> Type or select a parent organization in the ParentOrganization dropdown listbox.
8 Click OK.
����� ������.�������������������;���������
When a process is attached to an organization unit, the organization unitname appears in the Organization Unit dropdown listbox of the processproperty sheet.
+)�� ��������;������������&�"���� This attachment is graphicallymaterialized by displaying the process within the swimlane in the processdiagram
+)�� ��������;�������������������� This attachment is not graphicallymaterialized. You can only see it by opening the process property sheet
� �������� ���.�������������������;���������4
♦ Double-click the process in the diagram to open the process propertysheet. Select an organization unit from the Organization Unit dropdownlistbox and click OK.��(For swimlane organization units only) Click the Process tool in thepalette and click in the required swimlane.
The organization unit name automatically appears in the OrganizationUnit dropdown listbox.
���������� ���8����*You can easily attach an existing process to a swimlane by selecting theprocess symbol in the diagram, pressing the ALT key and dragging theprocess to the swimlane.
����� ��� ��(����������������
6
!���� ������.�������)��"����������;���������
� �������� ���.�������)��"����������;���������4
♦ Select <None> in the Organization Unit dropdown listbox in the processproperty sheet.��(For swimlane organization units only) Press the ALT key while clickingthe process symbol in the diagram, and drag the process outside theswimlane.
����)*����������;����������.��.���������������
You can modify the organization unit properties using the following methods:
♦ From the organization unit property sheet
♦ From the list of organization units
� For more information on the different ways to modify the organizationunit properties, see section Modifying object properties in chapter ManagingObjects in the ����� ���������������.
If the organization unit is a swimlane, you open its property sheet by double-clicking the zone between the selection frame and the swimlane:
� For more information on how to open the property sheet of a swimlane,see section Creating an organization unit as a swimlane from a diagram.
��������'������� �������������������
$
����������&�"��������������
All symbols displayed in the diagram and associated with an organizationunit must be drawn in the corresponding swimlane. Process symbols areslightly different because you can attach processes to a swimlane, thus if youchange the attachment of a process, its symbol moves to the appropriateswimlane.
� For more information on attaching a process to a swimlane, see sectionAttaching a process to an organization unit.
You can move, copy and paste, resize, or delete a swimlane. You can alsomodify its format preferences.
���������������.�������������"�When you use the Merge Models feature to merge business processdiagrams, the symbols of all elements in swimlanes are merged withoutcomparison. You can either accept all modifications on all symbols or nomodification at all.
,����������&�"��������������
To select a swimlane, position the cursor above the organization unit symboluntil you see a vertical arrow pointing to the frame, then click the left mousebutton.
Selecting a singleswimlane
����� ��� ��(����������������
�7
All swimlanes within a diagram are called a �����#��"� ���. There can onlybe one set of swimlanes per diagram. To select the entire set of swimlanes,click in the header of one of the swimlanes.
������<���.*��������.��������&�"��������������
You can move an individual swimlane to another location. You can alsomove the ������ set of swimlane to another location but it is not possible tomove several swimlanes simultaneously.
Your can move or copy a swimlane and paste it to the following locations:
!�����" % ��� �..������
Different When you move or copy the swimlane as an individual symbol toanother folder or diagram, the symbols that exist inside theswimlane are not copied
Same When you move a swimlane within the same diagram, you changethe order of swimlanes inside the set of swimlanes. In this case,all symbols inside the swimlane are moved at the same time (evenif some elements are not attached to the swimlane). This is topreserve the layout of the diagram
If you move attached processes inside a swimlane, the width or height of theswimlane varies to include all attached processes.
When you move or copy an entire set of swimlanes and paste it into adifferent diagram, the symbols that exist inside the swimlanes are not copied.
Selecting allswimlanes
��������'������� �������������������
��
����;�����&�"��������������
You resize a swimlane by selecting one of the two sidelines of the swimlane.Depending if you use vertical or horizontal swimlanes, you can drag thecursor to change the size of the swimlane as shown below:
When you change the width or height of an individual swimlane, all processsymbols attached to the swimlane keep their position.
You can also resize the entire set of swimlanes by selecting one of thehandles around the set of swimlanes and drag it to any direction.
� For more information on the selection of swimlanes and set ofswimlanes, see section Selecting swimlanes in a BPM.
� For more information on how to select swimlane orientation, see sectionModifying the organization unit display preferences in a BPM.
� �������� ���*"���)��"����)����&�"�������������
You can change the format of a swimlane individually or the format of theentire set of swimlanes from the Symbol Format dialog box.
� ���� ������ ���*"���)��"����)����&�"����4
1 Position the cursor above the swimlane until you see a vertical arrowpointing to the frame, click the right mouse button and select Formatfrom the contextual menu to display the Symbol Format dialog box.
2 Type or select changes in the different tabbed pages.
3 Click OK.
����� ��� ��(����������������
��
!���������&�"��������������
You can delete a swimlane by selecting it and pressing the DELETE key.When you delete a swimlane, the symbols that exist inside are not deleted.
����)*����� ��������;�������������.��*�.��)����������������
You can define the following display preferences for an organization unitusing the Tools→Display Preferences→General command:
���)������ !�����.����
Organization unitswimlane
Displays the organization unit as a swimlane. If the check boxis deselected, the organization unit displays as an icon
Vertical When the Organization unit swimlane check box is selected,displays swimlane horizontally in the diagram
Horizontal When the Organization unit swimlane check box is selected,displays swimlane vertically in the diagram
Another display preference is available for an organization unit using theTools→Display Preferences→Object View command:
���)������ !�����.����
Show stereotype Displays the stereotype of the organization unit
��������'������� �������������������
��
!�)������)��&�A #�" describes an interaction between two objects with potential exchangeof data. It is represented as a line going from one object to another. It is aroute the flow transits on to link objects. The routing of the flow is madeusing guard conditions defined on the flow. If the condition is true, the flowis passed to the next object in the sequence.
Two flows can be defined between the same source and destination objects(����#�"�).
The flow link is represented as a simple line with a direction (arrow):
You can draw a flow from and to the following business process diagramobjects:
/��"=�� ,���� !������� ,*�� ����;����� ������� 9��
Start — á á á —
Synchronization — á á á á
Decision — á á á á
Process — á á á á
End — — — — —
á = allowed
— = not allowed
!����������)��&��������))�������-���You change the object at either end of a flow by clicking the flow to selectit, holding the CTRL key down, and dragging one of the attach points to adifferent object.
You can associate a message format to a flow in case of data exchangebetween objects, in order to define the type of the accessed data. With theCheck Model feature you can verify the coherence between the messageformat defined in the flow and the message format accepted by the object.
� For more information on message formats, see section Definingmessage formats.
� For more information on the Check Model feature, see chapter Workingwith Business Process Models.
Message format
����� �����
�
A flow can link shortcuts. As process shortcuts in a diagram designate theinvocation of external processes, a flow between two process shortcutsdesignate a transition between two processes invocation.
$�#���%��#�"� only exist on processes (same source and destinationprocess)
/��&�.��.������
You can double-click any flow symbol in a diagram to display its properties.
���.���* !�����.������#�""�����
Name Name of the flow 254
Code Reference name of the flow 254
Comment Descriptive comment for the flow —
Source Where the flow starts from. You can click theProperties tool beside this box to display the sourceobject property sheet
254
Destination Where the flow ends on. You can click theProperties tool beside this box to display thedestination object property sheet
254
Stereotype Sub-classification derived from an existing flow 254
Transport Definition of the way data flow is vehicled 254
Flow type Definition of the type of the flow 254
Messageformat
Definition of data exchanged between processes 254
�����.���
Transport is meant to be used for documentation purposes only. It givesinformation on the way the data flow is vehicled.
You can create your own type of transport in the Transport dropdown listbox,or you can choose one of the following values:
♦ Fax delivery
♦ Telephone
Linking shortcuts
Constraints onflows
��������'������� �������������������
��
/��&��*.�
You can create your own type of flow in the Flow Type dropdown listbox, oryou can choose one of the following values:
/��&��*.� !�����.����
Success Defines a successful flow
Timeout Defines a timeout limit
Technical error Represents a technical error
Business error Represents a business error
��������)��"����)���)��&
You can choose one of the following values:
��������)��"�� !�����.����
None When selected, it indicates that no data are exchanged
Undefined Default value. When selected, it indicates that messageformats will be defined later
You can click the Create tool beside the Message Format dropdown listboxto create a message format for your flow.
� For more information on message format, see section Defining messageformats.
���������������)��&
A condition is a parameter that applies to a flow. When there are severalflows, each condition is evaluated in order to choose the one the flow willtransit on. The Condition page defines the nature of the condition attached toa flow.
����� �����
�'
The Condition page contains the following parameters:
����"���� !�����.����
Alias Summarizes the condition attached to a flow. It isrecommended to write an alias (short editor) when using a longcondition in order to display the alias instead of the conditionin the diagram
Editor Details the condition. For example, you can write informationon the condition to execute, as well as open, insert and save anytext files containing valuable information
The Alias (or Editor, if the Alias box is empty) is displayed near the sourcesymbol as shown below:
If you do not type any alias or editor in the corresponding boxes and if theflow type is not the default value (Success), then the displayed condition willbe the flow type.
1.������� ������������.���You can open the Condition page by right-clicking the flow symbol in thediagram, and selecting Condition from the contextual menu.
!����>)��&?
A data defines the type of information exchanged between business processesand transported by a flow.
The Data page allows you to select data that will be transported by the flowfrom a selection list.
You can view in the diagram the list of data transported by a flow byselecting Tools→Display Preferences→Flow and select the Show Data Listcheck box. The list of data appears on the flow in the diagram.
� For more information on how to select data for a flow, see sectionSelecting data for a flow or a message format.
��������'������� �������������������
�5
�����������)��&
There are several ways to create a flow:
♦ From a diagram
♦ From the Browser
♦ From the list of flows
At creation, a flow has a default name including a number, this number isassigned in the order of creation.
When you create a flow from the Browser or from the list of flows, you mustpreviously define source and destination objects for the flow.
� For more information on the different ways to create a flow, see sectionCreating an object in chapter Managing Objects in the ����� ��������������.
� ������������)��&�)��"���������"4
1 Click the Flow/Resource Flow tool.
2 Click inside the first process and while continuing to hold down themouse button, drag the cursor to the second process. Release the mousebutton inside the second process.
The flow link appears between the two processes.
!����������)��&��������))������.������You change the process at either end of a flow by clicking the flow toselect it, holding the CTRL key down, and dragging one of the attachpoints to a different process.
3 Click the Pointer tool.��Click the right mouse button.
You release the Flow/Resource Flow tool.
����� �����
�6
4 Double-click the flow in the diagram to display its property sheet.
1.������� ��.��.���*�� �����)��-������������You can open the property sheet of the source and destination objectsby clicking the Source and Destination buttons located in the upperpart of the flow property sheet.
5 Type or select flow properties as required in the tabbed pages.
6 Click OK.
!��.��*����)��&��)��"�� ��.�������.��.���*�� ���Flows coming in and out the process are also displayed in the processproperty sheet. You can display those flows from the Input Flows orOutput Flows tabbed page of the Dependencies page.
��������'������� �������������������
�$
����)*����)��&�.��.������
You can modify the flow properties using the following methods:
♦ From the flow property sheet
♦ From the list of flows
� For more information on the different ways to modify the flowproperties, see section Modifying object properties in chapter ManagingObjects in the ����� ���������������.
����)*����� ��)��&����.��*�.��)�������
You can modify the following display preferences for a flow using theTools→Display Preferences command:
���)������ !�����.����
Show stereotype Displays the stereotype of the flow
Show messageformat symbol
Displays the symbol of the message format for the flow
Show data list Displays the list of data for the flow
The Show Message Format symbol and the Show Data List preferences aremutually exclusive.
� For more information on message formats, see section Definingmessage formats.
� For more information on data, see section Defining data.
����� �&�� �����&��
'7
!�)������"�������)��"���A ������#�� � defines the format of a piece of information exchangedbetween business processes. The format depends on the nature of theexchanged piece of information and allows objects to find an agreement tocommunicate. Business processes exchange information using resource flowsand process flows. You can have a flow without any message format if noinformation is exchanged.
� For more information on resource flows, see section Defining resourceflows.
A message format can be an XML document, for which you will have tospecify the DTD (Document Type Definition) or the XML schema, orparameters of a procedure call, for which you will have to specify the list ofexchanged parameters with their data types, the parameter names and thein/out information. An administrative form can also represent a messageformat.
The message format is displayed in the diagram only in association with theflow that uses it. As you create a message format from the flow propertysheet, its symbol is linked to the flow symbol, and appears centered on theflow line as shown below:
If you move the flow, the message format moves accordingly.
You cannot copy a message format symbol, and if you delete its symbol inthe diagram, the message format value is set to None in the Message Formatbox of the flow property sheet.
� For more information on message format options, see section DefiningBPM options in chapter Business Process Model Basics.
��������'������� �������������������
'�
��������)��"���.��.������
You can double-click any message format symbol in a diagram to display itsproperties:
���.���* !�����.������#�""�����
Name Name of the message format 254
Code Reference name of the message format 254
Comment Descriptive comment for the message format —
Stereotype Sub-classification derived from an existing messageformat
254
Messageformat type
Definition of the type of the message format 254
��������)��"����*.�
You can type your own type of message format or you can choose one of thefollowing values in the Message Format Type dropdown listbox:
��������)��"����*.� !�����.����
Undefined When selected, it indicates that you do not need tospecify a type for your message format for data to beproperly processed
XML schema When selected, it indicates that your message formatneeds an XML schema for data to be properlyprocessed
DTD When selected, it indicates that your message formatneeds a DTD for data to be properly processed
!�)��������>"�������)��"��?
A Definition is a parameter that applies to a message format. The Definitionpage specifies the definition of the message format attached to the flow.
����� �&�� �����&��
'�
It contains the following parameters:
����"���� !�����.����
Definition type Indicates whether the message format definition is stored withinthe object (Embedded), or externally (MS Word file, URL,etc.):
♦ Embedded file: Indicates that the message formatdefinition is stored within the object. You can directly typethe definition in the Editor box
♦ External file and URL: Indicates that the message formatdefinition is specified outside the model. It can be a filethat you access on your disk or via a given drive or a Webaddress
Externaldefinition
Allows you to define the location path of an external file or anURL. This box is grayed out when you select Embedded file inthe Definition Type zone
Editor Allows you to detail the definition. For example, you can writeinformation about the DTD or the list of parameters, as well asopen, insert and save any text files containing valuableinformation. This box is grayed out when you did not selectEmbedded for the definition type of your message format
1.������� ��!�)��������.���You can open the Definition page by right-clicking the message formatsymbol in the diagram, and selecting Definition from the contextual menu.
!����>"�������)��"��?
A data defines the type of information exchanged between business processesand transported by a message format.
The Data page allows you to select data that will be transported by themessage format from a selection list.
You can display in the diagram the list of data transported by a messageformat by selecting Tools→Display Preferences→Flow (or Resource Flow)and select the Show Data List check box. The list of data appears on the flowin the diagram instead of the message format symbol.
� For more information on how to select data for a flow, see sectionSelecting data for a flow or a message format.
��������'������� �������������������
'�
�����������"�������)��"��
There are several ways to create a message format:
♦ From a flow property sheet
♦ From the Browser
♦ From the list of message formats
At creation, a message format has a default name including a number, thisnumber is assigned in the order of creation.
� For more information on the different ways to create a message format,see section Creating an object in chapter Managing Objects in the ����� ��������������.
� ������������"�������)��"���)��"���)��&�.��.���*�� ���4
1 Double-click a flow symbol in the diagram to display its property sheet.
2 Click the Create tool beside the Message Format dropdown listboxlocated in the lower part of the flow property sheet.
A confirmation box asks you to commit the object creation.
3 Click Yes.
The message format property sheet appears.
����� �&�� �����&��
'
4 Type or select message format properties as required in the tabbedpages.
5 Click OK.
����)*����"�������)��"���.��.������
You can modify the message format properties using the following methods:
♦ From the message format property sheet
♦ From the list of message formats
� For more information on the different ways to modify the messageformat properties, see section Modifying object properties in chapterManaging Objects in the ����� ���������������.
��������'������� �������������������
'�
!�)����������A �� allows you to identify the type of information exchanged betweenbusiness processes at a high conceptual level, focusing more on the semanticof the information than on technical aspects, such as physical data type,check parameters, etc. Business processes exchange information usingresource flows and process flows.
� For more information on process flows and resource flows, see sectionsDefining flows and Defining resource flows.
You can specify a type to a data and link the data to an object in order tospecify the nature of the piece of information exchanged between businessprocesses.
Business data can be considered as the entry point for specifying structuralelements that you can analyze afterwards in Conceptual Data Models orUML Class Diagrams.
A data belongs to a package and can be referenced in other packages.
A data has no graphical symbol. You can nevertheless display a list of dataon the flow symbol, instead of the message format.
� For more information on how to display a list of data on a process flowsymbol or resource flow symbol, see section Modifying the flow displaypreferences or section Modifying the resource flow display preferences.
A data can be used by several flows and message formats, but a flow or amessage format cannot use the same data twice.
����� �����
''
!����.��.������
You access the data property sheet by double-clicking a data in the List ofData. You can display the following properties:
���.���* !�����.������#�""�����
Name Name of the data 254
Code Reference name of the data 254
Comment Descriptive comment for the data —
Type Type of the data —
Stereotype Sub-classification derived from an existing data 254
Definition Object represented by the data. It can be OOM orCDM objects
—
�*.�
The following types can be used for a data to specify the kind of informationexchanged between objects:
♦ Undefined. When you simply manipulate a data and do not yet know itsnature
♦ Structured data. When the data contains a set of elementary data
♦ Elementary data. When the data cannot be decomposed
!�)��������>����?
You can link a data to an object in another model according to the type youselected in the Type dropdown listbox.
The Definition box is filled when you select an object to link to the data inthe Select an Object dialog box.
��������'������� �������������������
'5
The Select Object Definition button located beside the Definition box allowsyou to open that dialog box and select either a CDM entity, a CDM data item,or an OOM class depending on the selected type of data in the Type box andon the opened models in the workspace. If there is no adequate CDM orOOM objects available in the workspace, the Select Object Definition buttonis grayed out:
!�����*.� 1-�������������
Undefined CDM entity, CDM data item, and OOM class
Elementary CDM data item
Structured CDM entity, and OOM class
The <Undefined> type automatically changes in the Type box according tothe object you define in the Definition box. However, if you explicitly definea type before you select an object, you can only access objects related to theselected type. In addition, if you change the type of the data so that it is nolonger coherent with the object defined in the Definition box, a message boxasks you to confirm the change, and the link between the data and the objectis removed.
After you have selected an object to be linked to the data, the text (Shortcut)appears after its name in the Definition box. When you click the Propertiesbutton beside the Definition box, you can open the shortcut property sheetand access the target object.
� For more information on how to link a data to an object, see sectionLinking a data to an object.
���������������
You create a data from the List of Data.
At creation, a data has a default name including a number, this number isassigned in the order of creation.
� �����������������)��"�� ��������)�����4
1 Select Model→List of Data.
The list of data appears.
2 Click the Add a Row tool.
A new data is added to the list, with a default name you can modify.
3 Type a name and a code for the data.
����� �����
'6
4 Click OK.
����)*���������.��.������
You can modify the data properties using the following methods:
♦ From the data property sheet
♦ From the list of data
� For more information on the different ways to modify the dataproperties, see section Modifying object properties in chapter ManagingObjects in the ����� ���������������.
8���������������������-���
After you have identified the type of information exchanged betweenbusiness processes, you can specify the nature of the transported data bylinking the data to a CDM or OOM object.
The object you can select for linking depends on the type you defined for thedata.
� For more information on the different types a data can have, see sectionDefinition (data).
Only objects contained in models opened in the workspace can be selected.
When you link a data to an object, the object name appears in the Definitionbox of the data property sheet.
� For more information on the Definition box, see section Definition(data).
� ����������������������-���4
1 Open the data property sheet.
��������'������� �������������������
'$
2 Select a type from the Type dropdown listbox.
3 Click the Select Definition Object beside the Definition box.
The Select an Object dialog box appears. It allows you to select anobject from a model opened in the workspace corresponding to the typeof data you selected.
4 Select an object in the tree view and click OK.
The object name followed by (Shortcut) appears in the Definition box ofthe data property sheet. You can double-click the Properties tool besidethe Definition box to open the shortcut property sheet and access thetarget object.
����� �����
57
!��������� �������&�� �����-����)��"�� �������.��.���*�� ���You can click the Remove Link tool beside the Definition button to breakthe link between the data and the object.
����)*����� ���*.���)��������)��"�� �������.��.���*�� ���When you change the type of the data so that it no longer corresponds tothe object defined in the Definition box, a message box asks you toconfirm the change, and the link between the data and the object is broken.
,��������������)�����)��&������"�������)��"��
You can select data transported by process flows, resource flows andmessage formats from the Data page of their respective property sheet.
Each time you select a data from the list, it is added to the Data page of theflow or message format property sheet and no longer appears in the list ofavailable data.
� ���������������)�����)��&������"�������)��"��4
1 Double-click a process flow, a resource flow or a message formatsymbol in the diagram to open its property sheet.
2 Click the Data tab to open the corresponding page.
3 Click the Add Data tool to open a data selection list.
4 Click the down arrowhead in the upper part of the list to select a modelor package from the dropdown list.
��������'������� �������������������
5�
5 Select the data you want.
6 Click OK.
The selected data are added to the Data page of the flow, resource flowor message format property sheet and no longer appears in the availabledata selection list.
����� �����
5�
@��&����� ��������)�����������.������*���)��&������"�������)��"��You can view in the diagram the list of data transported by a flow byselecting Tools→Display Preferences→Flow (or Resource Flow) andselect the Show Data List check box. The list of data appears on the flowin the diagram or instead the message format symbol.
9#� �����������
You can export and import data using the Tools menu.
Business data are conceptual piece of information that can be specified withmore details in a Conceptual Data Model (CDM) or a class diagram of anObject Oriented Model (OOM).
You export data from the current business process model to:
♦ A Conceptual Data Model (CDM)
♦ An Object-Oriented Model (OOM)
When you export data, you create objects in the CDM or OOM from theexported data. Exported data are automatically linked to the created objectsin the BPM.
You import data to create or enrich a reference database that you will use toidentify information exchanged between processes.
You import data in a business process model from:
♦ A Conceptual Data Model (CDM)
♦ An Object-Oriented Model (OOM)
When you import data, you create data in the current BPM from objectsselected in a CDM or OOM. Imported data are automatically linked to theselected objects in the source model.
9#.�����������
You export data to a CDM and an OOM using the Tools menu.
You select data to export from the Data Export Wizard.
Only elementary and structured data that are not already linked to an objectcan be exported. Also, the model in which you want to export data must beopened in the workspace, otherwise the Data Export Wizard command isgrayed out.
Data export
Data import
��������'������� �������������������
5�
The export process converts data to CDM and OOM objects as follows:
!�����*.� �!� 11�
Elementary Data item —
Structured Entity Class
When you export a data that has the same name and code as an objectcontained in the CDM or OOM, no object will be created for that data. Thedata will be automatically linked to the existing object.
� ����#.��������4
1 Select Tools→Data Export Wizard.
The Data Export Wizard opens. It contains all models and packagesopened in the workspace to which you can export data.
2 Select the CDM or OOM model or package to which you want to exportdata and click the Next button.
A data selection page appears. It contains a list of all the data you canexport according to the type of model.
3 Click the down arrowhead in the upper part of the list to select a modelor package from the dropdown list.
����� �����
5
4 Select data to export.
5 Click the Finish button.
The result of the export is displayed in the Output window. You canview in the Browser tree view the creation of objects that correspond tothe data you exported to the CDM or OOM:
!������:�#.���As the link with the business data is saved in the exported CDM or OOM,you cannot re-export data already exported. If you want to re-export all thedata of your BPM, you have to select Model→Target Models and deletethe target model created during the export in order to delete all theshortcuts that reference it in the current BPM and be able to export thedata again.If you wan to re-export a data individually, you can also remove the link tothe object for the data you want to re-export.
��������'������� �������������������
5�
+".�����������
You import CDM and OOM objects as data into a BPM using the Toolsmenu.
You select objects to import from the Data Import Wizard.
If there is no CDM or OOM opened in the workspace, the Data ImportWizard command is grayed out.
The import process converts CDM and OOM objects to data as follows:
����� 1-��� !�����*.�
CDM Data itemEntity
ElementaryStructured
OOM Class Structured
When you import an object that has the same type, name and code as anexisting data in the BPM, the new data is automatically renamed and linkedto the selected object in the OOM or CDM.
� ����".��������4
1 Select Tools→Data Import Wizard.
The Data Import Wizard opens. It contains all models or packagesopened in the workspace from which you can import data.
2 Select the CDM or OOM model or package from which you want toimport data and click the Next button.
����� �����
5'
An object selection page appears. It contains a list of all the objects youcan import according to the type of model.
3 Click the down arrowhead in the upper part of the list to select a modelor package from the dropdown list.
4 Select objects to import.
5 Click the Finish button.
The result of the import is displayed in the Output window. You canview in the Browser tree view the creation of data that correspond to theobjects you imported in the current model:
��������'������� �������������������
55
!�)��������������A �������� is similar to a data store. It can be a data, a document, a database,a component, or an executable. It is a special asset that a process can use.
You access data stored in the resource using the resource flow object.
� For more information on the resource flow, see section Definingresource flows.
You are not allowed to create shortcuts of a resource.
��������.��.������
You can double-click any resource symbol in a diagram to display itsproperties.
���.���* !�����.������#�""�����
Name Name of the resource 254
Code Reference name of the resource 254
Comment Descriptive comment for the resource —
Stereotype Extends the semantics of a resource derived fromexisting resources but specific to your needs
254
You can select a predefined stereotype from the dropdown listbox. You canalso type stereotypes directly in the Stereotype column of the object propertysheet or select a value from the dropdown listbox if you have previouslydefined stereotypes in an embedded or imported extended model definition(.XEM).
� For more information on extended model definitions, see sectionWorking with extended model definitions in chapter Managing Objects in the����� ���������������.
Stereotype
����� ��������
56
������������������
There are several ways to create a resource:
♦ From a diagram
♦ From the Browser
♦ From the list of resources
At creation, a resource has a default name including a number, this number isassigned in the order of creation.
� For more information on the different ways to create a resource, seesection Creating an object in chapter Managing Objects in �������� ��������������.
� ��������������������)��"���������"4
1 Click the Resource tool.
2 Click anywhere in the diagram.
The following symbol appears at the click position:
3 Click the Pointer tool.��Click the right mouse button.
You release the Resource tool.
4 Double-click the resource symbol to display the resource property sheet.
��������'������� �������������������
5$
5 Type a name and a code.
6 Click OK.
����)*������������.��.������
You can modify the resource properties using the following methods:
♦ From the resource property sheet
♦ From the list of resources
� For more information on the different ways to modify the resourceproperties, see section Modifying object properties in chapter ManagingObjects in the ����� ���������������.
����)*����� �������������.��*�.��)������
You can modify the following display preference for a resource using theTools→Display Preferences command:
���)������ !�����.����
Show stereotype Displays the stereotype of the resource
����� �������������
67
!�)��������������)��&�A ���������#�" allows a process to access a resource. The resource flowlink is represented as a dashed line with a direction (arrow):
The access mode to a resource determines the resource flow direction.
When the resource flow comes from the process, the access to a resource canbe of the following types: Create, Update, or Delete.
The following schema illustrates a resource flow coming from a processindicating that the process creates, updates or deletes data contained in theresource depending on the access modes selected:
When the resource flow comes from the resource, the access to a resource isalways Read.
The following schema illustrates a resource flow coming from a resourceindicating that the data contained in the resource are read by the process:
If you select several access modes on a resource flow ; Read access togetherwith one or several other access modes (Create, Update, Delete), the flowlooks as follows:
Access modes
��������'������� �������������������
6�
Two resource flows can be defined between the same process and resource(�������������#�"�).
You can associate a message format to the resource flow in case of dataexchange between a process and a resource, in order to define the type of theaccessed data. With the Check Model feature you can verify the coherencebetween the message format defined in the resource flow and the messageformat accepted by the process.
� For more information on message formats, see section Definingmessage formats
� For more information on the Check Model feature, see chapter Workingwith Business Process Models.
!������������������)��&��������))�������-���You change the object at either end of a resource flow by clicking theresource flow to select it, holding the CTRL key down, and dragging one ofthe attach points to a different object.
The following constraints apply to resource flows:
♦ $�#���%��#�"� only exist on processes (same source and destinationprocess)
♦ A resource flow cannot link shortcuts
��������)��&�.��.������
You can double-click any resource flow symbol in a diagram to display itsproperties.
���.���* !�����.������#�""�����
Name Name of the resource flow 254
Code Reference name of the resource flow 254
Comment Descriptive comment for the resource flow —
Message format
Constraints onresource flows
����� �������������
6�
���.���* !�����.������#�""�����
Process One extremity of the resource flow (process). Youcan click the Properties tool beside this box todisplay the process property sheet
254
Resource Other extremity of the resource flow (resource). Youcan click the Properties tool beside this box todisplay the resource property sheet
254
Stereotype Sub-classification derived from an existing resourceflow
254
Messageformat
Abstract definition of data exchanged between aresource and a process
254
Accessmode
Way to access data. Defines the resource flowdirection
—
��������)��"����)�����������)��&
You can choose one of the following values:
��������)��"�� !�����.����
None When selected, it indicates that you do not want anymessage format for your flow as the event is of minorimportance
Undefined When selected, it indicates that message formats will bedefined later
You can click the Create tool beside the Message Format dropdown listboxto create a message format for your flow.
�������"���
Access modes determine the direction of the resource flow. You can chooseone of the following access modes to access data in a resource:
!�������� �����������
Resource to process Read
Process to resource Create, Update, Delete
��������'������� �������������������
6�
�����������������������)��&
A condition is a parameter that applies to a resource flow. When there areseveral flows, each condition is evaluated in order to choose the one theresource flow will transit on. The Condition page defines the nature of thecondition attached to a resource flow.
The Condition page contains the following parameters:
����"���� !�����.����
Alias Summarizes the condition attached to a resource flow. It isrecommended to write an alias (short editor) when using a longcondition in order to display the alias instead of the conditionin the diagram
Editor Details the condition. For example, you can write informationon the condition to execute, as well as open, insert and save anytext files containing valuable information
Whatever the direction of the resource flow, the condition is displayed nearthe process symbol as shown below:
1.������� ������������.���You can open the Condition page by right-clicking the resource flowsymbol in the diagram, and selecting Condition from the contextual menu.
!����>)��&?
A data defines the type of information exchanged between business processesand transported by a flow.
The Data page allows you to select data that will be transported by theresource flow from a selection list.
You can view in the diagram the list of data transported by a resource flow byselecting Tools→Display Preferences→Resource Flow and select the ShowData List check box. The list of data appears on the flow in the diagram.
� For more information on how to select data for a resource flow, seesection Selecting data for a flow or a message format.
����� �������������
6
�������������������)��&
There are several ways to create a resource flow:
♦ From a diagram
♦ From the Browser
♦ From the list of resource flows
At creation, a resource flow has a default name including a number, thisnumber is assigned in the order of creation.
When you create a resource flow from the Browser or from the list ofresource flows, you must previously define a process object and a resourceobject for the resource flow.
� For more information on the different ways to create a resource flow,see section Creating an object in chapter Managing Objects in �������� ��������������.
� ��������������������)��&�)��"���������"4
1 Click the Flow/Resource Flow tool.
2 Click inside the process and while continuing to hold down the mousebutton, drag the cursor to the resource. Release the mouse button insidethe resource. The access mode will is Update by default.��Click inside the resource and while continuing to hold down the mousebutton, drag the cursor to the process. Release the mouse button insidethe process. The access mode is Read by default.
The resource flow link appears between the process and the resource.
!������������������)��&��������))������.�����������������You change the process or resource at either end of a resource flowby clicking the resource flow to select it, holding the CTRL key down,and dragging one of the attach points to a different process orresource.
3 Click the Pointer tool.��Click the right mouse button.
��������'������� �������������������
6�
You release the Flow/Resource Flow tool.
4 Double-click the resource flow in the diagram to display its propertysheet.
1.������� ��.��.���*�� �����)��-������������You can open the property sheet of the process and resource objectsby clicking the Process and Resource buttons located in the upper partof the resource flow property sheet.
5 Type or select resource flow properties as required in the tabbed pages.
6 Click OK.
!��.��*������������)��&��)��"�� ��.������������������.��.���*� ����Resource flows linked to a resource or a process are also displayed in theprocess or resource property sheet. You can display those resource flowsfrom the Resource Flows tabbed page of their Dependencies page.
����� �������������
6'
����)*������������)��&�.��.������
You can modify the resource flow properties using the following methods:
♦ From the resource flow property sheet
♦ From the list of resource flows
� For more information on the different ways to modify the resource flowproperties, see section Modifying object properties in chapter ManagingObjects in the ����� ���������������.
����)*����� ����������)��&����.��*�.��)�������
You can modify the following display preferences for a resource flow theTools→Display Preferences command:
���)������ !�����.����
Show stereotype Displays the stereotype of the resource flow
Show messageformat symbol
Displays the symbol of the message format for the resourceflow
Show data list Displays the list of data for the resource flow
The Show Message Format symbol and the Show Data List preferences aremutually exclusive.
� For more information on message formats, see section Definingmessage formats.
� For more information on data, see section Defining data.
��������'������� �������������������
65
!�)������������������������A �������� specifies which alternate path has to be taken when several flowpaths are possible. It must have ��� incoming flow and more than oneoutgoing flow, each labeled with a distinct guard condition. The globalprocess of a decision is based on some defined editors that direct the controlflow towards the valid flow by dynamically evaluating guard conditions.
A �������������� is a condition that must be satisfied for an associatedflow to execute some action. Across all these flows, guard conditions shouldnot overlap to avoid ambiguity but they should cover all possibilities to avoidglobal process freeze.
A decision allows you to create complex flows like:
♦ if … then … else …
♦ switch … case …
♦ do … while …
♦ loop
♦ for … next …
A���������*"�������� ��������"It is not possible to attach two flows of opposite directions to the samecorner on a decision symbol.
/������;��������������
If you are working with a decision, it is useful to write a condition on thedecision in order to factorize the conditions attached to the flows, it allowsyou to simplify the global process whenever you are using long and complexconditions.
Applicability
Symbol
Example
����� ��������������
66
Use the Condition page in the decision property sheet to write the followingcondition: Total * NB + VAT > 10.000. Then use the Condition page in bothflows property sheet: enter True in one and False in the other.
!��������.��.���������������
You can double-click any decision symbol in a diagram to display itsproperties.
���.���* !�����.������#�""�����
Name Name of the decision 254
Code Reference name of the decision 254
Comment Descriptive comment for the decision —
Stereotype Extends the semantics of a decision derived fromexisting decisions but specific to your needs
254
You can select a predefined stereotype from the dropdown listbox. You canalso type stereotypes directly in the Stereotype column of the object propertysheet or select a value from the dropdown listbox if you have previouslydefined stereotypes in an embedded or imported extended model definition(.XEM).
� For more information on extended model definitions, see sectionWorking with extended model definitions in chapter Managing Objects in the����� ���������������.
���������������������������
A condition is a parameter that applies to a decision.
It contains the following parameters:
����"���� !�����.����
Alias Summarizes the condition attached to a decision. It isrecommended to write an alias (short editor) when using a longcondition in order to display the alias instead of the conditionin the diagram
Editor Details the condition. For example, you can write informationon the condition to execute, as well as open, insert and save anytext files containing valuable information
Stereotype
��������'������� �������������������
6$
1.������� ������������.���You can open the Condition page by right-clicking the decision symbol inthe diagram, and selecting Condition from the contextual menu.
����������������������������
There are several ways to create a decision:
♦ From a diagram
♦ From the Browser
♦ From the list of decisions
At creation, a decision has a default name including a number, this number isassigned in the order of creation.
� For more information on the different ways to create a decision, seesection Creating an object in chapter Managing Objects in the ����� ��������������.
� ���������������������)��"���������"4
1 Click the Decision tool.
2 Click anywhere in the diagram.
The following symbol appears at the click position:
3 Click the Pointer tool.��Click the right mouse button.
You release the Decision tool.
4 Double-click the decision symbol to display the decision property sheet.
����� ��������������
$7
5 Type a name and a code.
6 Click OK.
����)*�������������.��.���������������
You can modify the decision properties using the following methods:
♦ From the decision property sheet
♦ From the list of decisions
����)*����� ��������������.��*�.��)���������������
You can modify the following display preference of a decision using theTools→Display Preferences command:
���)������ !�����.����
Show stereotype Displays the stereotype of the decision
��������'������� �������������������
$�
!�)�������*�� ����;���������������A ���������!���� is used to define a synchronization point between parallelexecutions: several input flows, one or several output flows waiting for theend of all input executions.
,*�� ����;������.��.���������������
You can double-click any synchronization symbol in a diagram to display itsproperties.
���.���* !�����.������#�""�����
Name Name of the synchronization 254
Code Reference name of the synchronization 254
Comment Descriptive comment for the synchronization —
Stereotype Sub-classification derived from an existingsynchronization
254
An action is a parameter that applies to a synchronization. The Action pagedefines the nature, the type and the duration of an action that asynchronization executes.
It contains the following parameters:
����"���� !�����.����
Editor Details how the action is executed. Example: you can write apseudo code or an information on the program to execute, as wellas open, insert and save any text files containing valuableinformation
Timeout If the value is not set to zero, it means that a timeout exceptionoccurs if the execution of the activation takes more than thespecified timeout limit. You can type any alphanumeric value inthe Timeout box (Example: 20 seconds)
Action
����� �$������(������������
$�
������������*�� ����;��������������
There are several ways to create a synchronization:
♦ From a diagram
♦ From the Browser
♦ From the list of synchronizations
At creation, a synchronization has a default name including a number, thisnumber is assigned in the order of creation.
� For more information on the different ways to create a synchronization,see section Creating an object in chapter Managing Objects in the ����� ��������������.
� �������������*�� ����;������)��"���������"4
1 Click the Synchronization tool.
2 Click anywhere in the diagram.
The following symbol appears at the click position:
3 Click the Pointer tool.��Click the right mouse button.
You release the Synchronization tool.
4 Double-click the synchronization symbol to display the synchronizationproperty sheet.
��������'������� �������������������
$�
5 Type a name and a code.
6 Click OK.
����)*�����*�� ����;������.��.���������������
You can modify the synchronization properties using the following methods:
♦ From the synchronization property sheet
♦ From the list of synchronizations
� For more information on the different ways to modify thesynchronization properties, see section Modifying object properties inchapter Managing Objects in the ����� ���������������.
!��&����� ���*�� ����;�������*"�����������
The synchronization symbol is by default created horizontally with adownward curve. However, you can change the symbol from an horizontal toa vertical position, and conversely. You can also change the curve positionfrom left to right or from downwards to upwards depending on thesynchronization symbol position.
����� �$������(������������
$
!��&����������������*�� ����;�������*"��
� ������&�������������*�� ����;�������*"��4
1 Right-click the synchronization symbol you want to modify.
2 Select Change to Vertical from the contextual menu.
!��&������� ���;�������*�� ����;�������*"��
� ������&���� ���;�������*�� ����;�������*"��4
1 Right-click the synchronization symbol you want to modify.
2 Select Change to Horizontal from the contextual menu.
����)*����� �������.���������)����*�� ����;�������*"��
� ���"���)*�� �������.���������)����*�� ����;�������*"��4
1 Right-click the synchronization symbol you want to modify.
2 Select Display Inverse from the contextual menu.
��������'������� �������������������
$�
!�)�������������������An ��� is a termination point of the processes described in the businessprocess diagram. It represents an interface with the outside world.
You can create several ends within a package or a model since you may useseveral business process diagrams in the same model or package. You canalso create several ends within the same business process diagram if you wantto show divergent end cases, like errors scenarios, for example:
There can also be no end at all if you want to show an endless process. But acomposite process must always contain one end at least.
Besides you cannot create shortcuts for an end.
9���.��.���������������
You can double-click any end symbol in a diagram to display its properties.
An end includes the following properties:
���.���* !�����.������#�""�����
Name Name of the end 254
Code Reference name of the end 254
Comment Descriptive comment for the end —
Stereotype Sub-classification derived from an existing end 254
Type Type of the end 254
����� ������������
$'
Type property is used for document purposes. You can create your own typeof end in the Type dropdown listbox, or you can choose one of the followingvalues:
♦ Success
♦ Timeout
♦ Business error
♦ Technical error
������������������������
There are several ways to create an end:
♦ From a diagram
♦ From the Browser
♦ From the list of ends
At creation, an end has a default name including a number, this number isassigned in the order of creation.
� For more information on the different ways to create an end, see sectionCreating an object in chapter Managing Objects in the ����� ��������������.
� �����������������)��"���������"4
1 Click the End tool.
2 Click anywhere in the diagram.
The following symbol appears at the click position:
3 Click the Pointer tool.��Click the right mouse button.
You release the End tool.
4 Double-click the end symbol to display the end property sheet.
Type
��������'������� �������������������
$5
5 Type a name and a code.
6 Click OK.
����)*��������.��.���������������
You can modify the end properties using the following methods:
♦ From the end property sheet
♦ From the list of ends
� For more information on the different ways to modify the endproperties, see section Modifying object properties in chapter ManagingObjects in the ����� ���������������.
����)*����� ���������.��*�.��)����������������
You can modify the following display preferences for an end using theTools→Display Preferences command:
���)������ !�����.����
Show name Displays the name of the end
Show stereotype Displays the stereotype of the end
����� ������������
$6
When you define display preferences for a end, you automatically definethem for a start also.
� For more information on defining display preferences for a start, seesection Modifying the start display preferences in a BPM.
$$
C H A P I T R E 4
������� �����!�"����#
This chapter describes a CRUD matrix and how to use it.
��.�� ����
Defining the CRUD matrix 100
Displaying a CRUD matrix 101
Manipulating the CRUD matrix 103
About this chapter
Contents
����� ������#"��&���)
�77
!�)������� �����!�"����#A �$&�� �����������'�$��'�&����'��������is a table that shows thelinks between processes and resources. When a link exists, it shows whetherthe process performs a Create, Read, Update, or Delete operation on theresource.
The process/resource CRUD matrix is available from the CRUD matrixcommand in the Tools menu. It shows the links between a process and aresource using resource flows, and the type of operation the process performson the resource.
You can use a CRUD matrix in the BPM to observe how a process handlesresources, and what type of action it performs on it. This can help youperform a reality check on the model.
A CRUD matrix is made up of headers and cells.
The ����� appears along the top and down the left side of the CRUDmatrix, and contains the names or codes (depending on the model optionsyou have defined) of the processes and resources displayed in the CRUDmatrix.
� For more information on model options, see section Definingname/code format in chapter Managing Models in the ����� ��������������.
Processes display in rows and resources display in columns.
The ��� are the boxes inside the CRUD matrix that contain the CRUDvalues (Create, Read, Update, Delete). The cell is empty when there is nolink between objects.
In a CRUD matrix, CRUD values come from the Access Mode defined in theresource flow property sheet, which determines its direction.
� For more information on CRUD values, see section Modifying CRUDvalues.
� For more information on the Access Mode of a resource flow, seesection Defining resource flows in chapter Building a Business ProcessModel.
When to use aCRUD matrix ?
CRUD matrixstructure
��������*����"� ������#"��&���)
�7�
!��.��*���������!�"����#You can display a CRUD matrix from the model or from a package.
The CRUD matrix shows the links between all processes and resources of thecurrent package, in alphabetical order. You can nevertheless show the linksbetween objects located in other packages by clicking the Include Sub-Packages tool in the Add Objects dialog box. You can also hide rows andcolumns that correspond to objects that are not linked.
� For more information on how to show the links between objects locatedin other packages, see section Adding and removing objects from the CRUDmatrix.
� For more information on how to hide rows and columns in a CRUDmatrix, see section Hiding empty rows and columns.
To display a CRUD matrix, the current package or sub-package must containat least a process and a resource, otherwise the CRUD matrix is grayed out.
To display CRUD values in the matrix, you must have previously selecteddata for resource flows from the Data page of their respective property sheet.
� For more information on how to select data for a resource flow, seesection Selecting data for a flow or a message format in chapter Building aBusiness Process Model.
What you need
����$� ����#"��&���)
�7�
� ������.��*������!�"����#4
♦ Select Tools➤ CRUD matrix.
The CRUD matrix appears. It shows the links that exist betweenprocesses and resources and allows you to modify CRUD values. Emptycells correspond to objects that are not linked with each other. Thus, thecorresponding check boxes are grayed in the Current Cell Valuegroupbox in the lower part of the CRUD Matrix dialog box.
� For more information on how to modify CRUD values, see sectionModifying CRUD values.
�������)��"�������������You can move from a resource flow to another using the Arrow keys.
��������*����"� ������#"��&���)
�7�
����.�������� �����!�"����#You can perform the following actions from the CRUD matrix toolbar:
���� ������ !�����.����
Properties Open the property sheet of the objectselected in the CRUD matrix: Processproperty sheet, if you select a rowheader, flow property sheet, if youselect a column header, or resource flowproperty sheet, if you select a cell
Copy Copy a CRUD matrix to paste it intoanother application like Excel
Find Symbol in Diagram Find in the diagram the symbol of theobject selected in the CRUD matrix:Process property sheet, if you select arow header, flow property sheet, if youselect a column header, or resource flowproperty sheet, if you select a cell
Add Objects Add objects located in other packages tolet you change the list of rows andcolumns in the CRUD matrix
Hide Empty Row/Column Hide or Show empty rows and columns
In addition, you can modify existing CRUD values in the CRUD matrix.
� For more information on how to find an object symbol in the diagram,see section Finding an object symbol in the diagram in chapter Managingmodels in the ����� ���������������.
�����������-����.��.�������)��"�� �����!�"����#
You can consult process, resource and resource flow properties from theCRUD matrix.
� ����������� ��.��.��������)�����-����)��"�� �����!�"����#4
1 Open a CRUD matrix.
��������� ������#"��&���)
�7
2 Click a process, a resource, or a resource flow in the matrix and click theProperties tool in the toolbar.��(Resource and process only) Double-click a process or a resource in thematrix.
The object property sheet appears.
2 Navigate through the different object properties.
3 Click Close.
When you click a cell that has several associated resource flows, the SelectResource Flow dialog box opens to let you choose the resource flow, whoseproperties you want to consult.
Resource flowproperties
��������*����"� ������#"��&���)
�7�
��.*���������!�"����#���������� ����..��������
In a CRUD matrix, information displays in table format. You can copy theinformation in Excel in CSV (Comma Separated Value) format and in Wordin text format. The textual information is separated by tabs that let youquickly convert it into a table.
� ���.����������!�"����#���������� ����..��������4
1 Open a CRUD matrix.
2 Click the Copy tool in the toolbar.
The CRUD matrix is placed in the Clipboard.
3 Open the desired application and paste the CRUD matrix.
/��������-�����*"������� ��������"�)��"�� �����!�"����#
You can find in the diagram the symbol of a process, a resource and aresource flow from the CRUD matrix.
� ���)��������-�����*"������� ��������"�)��"�� �����!�"����#4
1 Open a CRUD matrix.
2 Click a process, a resource, or a resource flow in the matrix and click theFind Symbol in Diagram tool in the toolbar.
The object symbol is selected and centered in the diagram. You have tomove the CRUD matrix dialog box to view the symbol.
��������� ������#"��&���)
�7'
When you click a cell that has several associated resource flows, the SelectResource Flow dialog box opens to let you choose the resource flow, whosesymbol you want to find in the diagram.
�������������"�������-�����)��"�� �����!�"����#
You can choose the objects you want to display in the CRUD matrix byadding and removing processes and resources.
� ������������"�����-�����)��"�� �����!�"����#4
1 Open a CRUD matrix.
2 Click the Add Objects tool in the toolbar.
Resource flowproperties
��������*����"� ������#"��&���)
�75
The Add Objects dialog box appears. It displays the list of all theprocesses and resources in the current package in tabbed pages. You canclick the Include Sub-packages tool to displays objects contained inother packages.
3 Select a package.
4 Click a tab in the lower part of the dialog box.
5 Select or deselect objects you want to add or remove from the CRUDmatrix and click OK.
������������!�����������������You can click the Add All or Deselect All tools to select or deselectall objects at once.
The CRUD matrix is automatically updated according to the selectionsyou have made.
A�������".�*���&���������"��
Empty rows and columns in a CRUD matrix indicate the following:
9".�* % ��
Row A resource is used by no process
Column A process does not use any resource
You can hide all empty rows and columns in the CRUD matrix at once.
��������� ������#"��&���)
�76
Hiding of empty rows and columns only applies to the current session.
� ��� ���������".�*���&���������"��4
1 Open a CRUD matrix.
2 Click the Hide Empty Row/Column tool in the toolbar.
All empty rows and columns are hidden.
3 Click Close.
����)*�������!������
You can modify the CRUD values of a CRUD matrix.
The link between a process and a resource in a CRUD matrix is establishedby a resource flow. When you modify CRUD values in a CRUD matrix, youmodify the CRUD values of the resource flow between the process and theresource.
CRUD values are displayed in the cells of the matrix, but are only modifiablefrom the Current Cell Value groupbox located in the lower part of the CRUDMatrix dialog box.
You cannot multi-select cells to modify their CRUD values.
The following CRUD values are available in a CRUD matrix:
♦ Create
♦ Read
♦ Update
♦ Delete
� ���"���)*����!������4
1 Open a CRUD matrix.
2 Click the cell that corresponds to the resource flow whose CRUD valuesyou want to modify.
The corresponding CRUD values in the Current Cell Value groupboxappear.
3 Select or deselect check boxes according to your needs.
The CRUD values automatically reflect the changes in the correspondingcell in the matrix.
��������*����"� ������#"��&���)
�7$
4 Click OK to close the matrix.
Changes automatically appear graphically in the diagram when requiredand in the Access Mode groupbox of the resource flow property sheet.
��������� ������#"��&���)
��7
���
C H A P T E R 5
%�������&�� �����������������������
This chapter describes how to check the validity of a Business Process Model(BPM), and how to merge and compare Business Process Models.
The Check Model feature verifies the validity of BPM objects within a modelat any time.
The Merge Model feature allows you to unify models, it combines twodifferent models into a single one.
It also describes how to open a ProcessAnalyst Model (PAM) into a BPM.
��.�� ����
Checking a BPM 112
BPM object parameters verified by Check Model 119
Comparing and merging BPM models 128
Opening ProcessAnalyst models 129
About this chapter
Contents
������ ������
���
� ������������The Business Process Model is a very flexible tool. It should allow you tobuild your model without any controls or constraints on data exchange andcoherence of the system.
However, you can use the Check Model feature at any time to control thecoherence and correctness of the model you are building.
You can:
♦ Define check options, such as level of problem severity and automaticcorrection
♦ Select objects to be verified
♦ Check a global BPM
♦ Reuse check options previously defined
♦ Make corrections based on BPM check results
����� �����.�����
When you check a BPM, if a parameter is found to be invalid, it will bedisplayed as an error or a warning in the Check Model window.
You can define levels of severity for problems that Check Model finds andyou can have certain problems automatically corrected.
8�������)�.����"��������*
You can identify the level of problem severity with the following tool:
���� +�������� !�����.����
Error Major problem that produces an invalid BPM
Warning Minor problem or recommendation
To display the severity level options, select Tools→Check Model, thenexpand the nodes of the tree view in the options tab.
��������+��������� ���������������������
���
These messages represent two different levels of problem severity. You canmodify the level of problem severity for each object parameter verified by theCheck model. This severity level can depend on the degree of normalizationyou want to achieve in your model.
���"���������������
You can specify if you want PowerDesigner to automatically correct an errorusing the Automatic Correction feature.
���� +�������� !�����.����
Automaticcorrection
PowerDesigner will correct the problem automatically
However, before using automatic correction, make sure you understand howit will affect your model.
Automatic correction is not available for all object parameters. Problems thatcannot be corrected automatically must be corrected manually.
� For more information on objects available for automatic correction, seesection BPM object parameters verified by Check Model.
�����-������������������ ��� ���������
You select objects to be checked from the Selection page of the Check ModelParameters dialog box (Tools→Check Model).
You can list all objects, including composite objects created in the currentmodel, current package, or sub-packages by selecting the Include Sub-Objects tool.
You have the following selection options:
�������-���
+������,:1-������������
+������,:1-����������������
Model All objects (composite or not)created in model including thosein packages and sub-packages
All objects (composite or not)created in model except those inpackages and sub-packages
Package All objects (composite or not)created in package includingthose in sub-packages
All objects (composite or not)created in package except those insub-packages
������ ������
��
,����������-��������� ��������"If you graphically select objects in your diagram before starting the CheckModel, they can be automatically selected for verification by the CheckModel by clicking the Use Graphical Selection tool in the Selection pagetoolbar.
� ������������������
You can check the validity of a BPM at any time.
� ���� ���������������4
1 Select Tools→Check Model.��Right-click the diagram background and select Check Model from thecontextual menu.
The Check Model Parameters dialog box opens to the Options page.
2 Expand an object parameter node.
The object parameters verified by the Check Model are displayed withthe symbols indicating a degree of problem severity.
3 If you want to change a degree of problem severity, select the objectparameter and then select either the Error or Warning tool.
The symbol changes to the appropriate severity level.
��������+��������� ���������������������
���
4 If you want PowerDesigner to automatically correct a problem, select theobject parameter and then select the Automatic Correction tool.
The Automatic Correction symbol appears superimposed on the Error orWarning symbol for that object parameter.
5 Click the Selection tab to display the Selection page.
6 Select a model from the dropdown listbox at the top of the dialog box.
7 Click an object tab at the bottom of the Selection page.
The corresponding object page displays all the objects in the currentBPM.
8 Select check boxes only for objects you want to be checked.
9 Clear check boxes for objects that you do not want to be checked.
,������������������������������ �����#��You can select all object check boxes by clicking the Select All tool.You can clear all object check boxes by clicking the Deselect Alltool.
10 Click OK.
������ ������
��'
The Check Model Result List displays errors and warnings based on thecheck options you have defined.
!�������������&����&When you right-click an object parameter in the Result List, acontextual menu appears listing correction options. Among these, youcan also select options to clear, dock or hide the result window.
!��.��*����.�������*��..������ �����.��������������
If you click the Apply button in the Check Model Parameters dialog box, allerror and warning selections are stored in memory.
� ������.��*������������&��������������������� �������� ���4
♦ Select Tools→Check Model.
The Check Model Parameters dialog box opens to the Options page. Theobject parameters are displayed with the Error or Warning icons selectedin the last check.
�������������������������������� ����������
You use the Check Model feature to locate and correct problems in the BPM.
��������+��������� ���������������������
��5
Using the Check toolbar generally located in the upper part of thePowerDesigner main window, you have access to the following correctionoptions when you select an error in the Result List:
,*"�� 1.���� !�����.����
Correct error Displays property sheet of the problem object
Display details Displays description of the error and suggestion forcorrection
Recheckmodel
Checks selected object parameter, normally after acorrection has been done
Automaticcorrection
PowerDesigner automatically corrects non-uniquenames and codes
!��.��*�� ��� ����������If the Check toolbar is not displayed, select Tools→Customize Toolbarsand select the Check check box.
The Check toolbar contains navigation tools to move to the first, previous,next, or last error listed. You can also navigate in the Result list by right-clicking an object parameter and selecting Go To First error, Previous error,Next error, or Last error from the contextual menu.
�����#����"��When you right click an object parameter, a menu appears listing thecorrection options Manual Correction, Help, Recheck, and AutomaticCorrection. You can also select options to clear, dock and hide the resultwindow.
�������"�������������������������
Some errors cannot be corrected automatically, they have to be correctedmanually.
� ���"����"�������������������������4
1 Select an object parameter from the Result List.
2 Right-click the object parameter and select Correct from the contextualmenu to display the object property sheet.
3 Select the appropriate tab and make the necessary correction.
Navigating in theerror list
������ ������
��6
4 Close the property sheet.
5 Right-click the object parameter and select Recheck from the contextualmenu.
Verify that the problem has been corrected by running Check Modelagain.
����������"�������������������������
PowerDesigner can perform automatic corrections on non-unique names andcodes.
� ���"�������"�������������������������4
1 Select an object parameter from the Result List.
2 Right-click the object parameter and select Automatic Correction fromthe contextual menu.
3 Right-click the object parameter and select Re-check from the contextualmenu.
Verify that the problem has been corrected by running Check Modelagain.
��������+��������� ���������������������
��$
�����-����.���"����������)����*�� ���������The Check Model verifies the validity of the BPM objects.
When errors are encountered during a check model, corrections can be mademanually or automatically. Manual corrections depend on how you are usingyour model.
����� ��A��.���""���������������-�������������.�����When you right click a BPM object control in the Check ModelParameters page, a menu appears listing several options. The Helpcommand opens a contextual help page explaining the checks performedfor the selected object type.
��.���������� ���
During a replication check, the following object controls are made.
����������.��������
A replica object is partially synchronized with its replicated object.
���������������� ���"���������������
Modify the list of replicatedattributes from the replicationproperty sheet
Enforces the replication of desynchronizedattributes of the replica object in thereplication property sheet
��������� ���
During a package check, the following object controls are made.
9#���������)��������������&�� ���"����)���������-���
Several data should not be linked to the same definition object within thesame namespace.
���������������� ���"���������������
Link the data to different definitionobject from the data property sheet
—
������%��������&�������������$������������
��7
��������� ���
During a process check, the following object controls are made.
����������"�������������B�����
Process names and codes must be unique in the namespace.
���������������� ���"���������������
Modify the duplicate processname/code
Modifies the process name or code of aselected object by appending a numberto its current name or code
+�.�����1�.��)��&�"������
Each process must have at least one input flow and at least one output flow.
���������������� ���"���������������
Add any missing flows to the process —
��".������.�������&�� ���������������
A composite process must contain at least one start and at least one end.
���������������� ���"���������������
Add a start and an end in the sub-process diagram
—
���������".��"��������
A process cannot be implemented by an implemented process.
���������������� ���"���������������
Select a process which is not animplemented process
—
��������+��������� ���������������������
���
9#���������)��������������&�� �� ����"����)���������-���
Several data should not be linked to the same definition object within thesame namespace, as data can be created in a composite process.
���������������� ���"���������������
Link the data to different definitionobject from the data property sheet
—
!��������� ���
During a decision check, the following object controls are made.
!����������"�������������B�����
Decision names and codes must be unique in the namespace.
���������������� ���"���������������
Modify the duplicate decisionname/code
Modifies the decision name or code byappending a number to its currentname or code
+���������������
A decision must have only one input flow and more than one output flow.
���������������� ���"���������������
Add any missing flows to the decision —
,*�� ����;������� ���
During a synchronization check, the following object controls are made.
������%��������&�������������$������������
���
,*�� ����;��������"�������������B�����
Synchronization names and codes must be unique in the namespace.
���������������� ���"���������������
Modify the duplicate synchronizationname/code
Modifies the synchronization name orcode by appending a number to itscurrent name or code
+���".������*�� ����;�����
A synchronization must have at least two input flows and one output flow.
���������������� ���"���������������
Add any missing flows to thesynchronization
—
/��&�� ���
During a flow check, the following object controls are made.
/��&�&�� �����������������������
A flow must have a source and a destination object.
���������������� ���"���������������
Assign a source or a destination to theflow
—
/��&����)�����"�������)��"��
A flow should have a defined message format or the message format set to<None>.
���������������� ���"���������������
Define the message format for the flowor delete it
—
��������+��������� ���������������������
���
/��&����� ������"�������)��"��
The message format of a flow coming out of a composite process (childprocess) must also exist on the flow going to the end inside the child process.The message format of a flow coming in a composite process must also existon the flow going out from the start inside the child process.
���������������� ���"���������������
Add any missing message formats to theappropriate flows of the decomposedprocesses
—
/����� ���
During a file check, the following object controls are made.
9"������)������"����B�����
Embedded file object names must be unique in the model.
���������������� ���"���������������
Modify the duplicate file object name Modifies the file object name byappending a number to its current name
9#���������)��#�������)������������
External file objects should have a valid path location.
���������������� ���"���������������
Define a valid path location —
��������� ���
During a resource check, the following object controls are made.
������%��������&�������������$������������
��
����������"�������������B�����
Resource names and codes must be unique in the model.
���������������� ���"���������������
Modify the duplicate resourcename/code
Modifies the resource name or code byappending a number to its currentname or code
+���������������
A resource must be linked to at least one process.
���������������� ���"���������������
Link the resource to a process —
��������)��&�� ���
During a resource flow check, the following object controls are made.
��������)��&���"�������������B�����
Resource flow names and codes must be unique in the namespace.
���������������� ���"���������������
Modify the duplicate resource flowname/code
Modifies the resource flow name orcode by appending a number to itscurrent name or code
��������)��&��#���"�����
A resource flow must always link a process to a resource or a resource to aprocess.
���������������� ���"���������������
Assign a process and a resource to theresource flow extremities
—
��������+��������� ���������������������
���
��������)��&����)������������"���
A resource flow must have a defined access mode (Read, Create, Update orDelete).
���������������� ���"���������������
Assign an access mode to the resourceflow
—
1�����;����������� ���
During an organization unit check, the following object controls are made.
1�����;������������"�������������B�����
Organization unit names and codes must be unique in the model.
���������������� ���"���������������
Modify the duplicate organization unitname/code
Modifies the organization unit name orcode by appending a number to itscurrent name or code
����������.������*�� ��� �.������.��.���*
An organization unit cannot be the parent of itself or cannot have for parentone of its children.
���������������� ���"���������������
Change the organization unit in theParent box in the organization unitproperty sheet
—
,������ ���
During a start check, the following object controls are made.
������%��������&�������������$������������
��'
,�������"�������������B�����
Start names and codes must be unique in the namespace.
���������������� ���"���������������
Modify the duplicate start name/code Modifies the start name or code byappending a number to its currentname or code
9#���������)���.��)��&
Each start object must have at least one output flow.
���������������� ���"���������������
Create a flow from the start —
9���� ���
During an end check, the following object controls are made.
9�����"�������������B�����
End names and codes must be unique in the namespace.
���������������� ���"���������������
Modify the duplicate end name/code Modifies the end name or code byappending a number to its currentname or code
9#���������)���.��)��&
Each end object must have at least one input flow.
���������������� ���"���������������
Create a flow to the end —
��������+��������� ���������������������
��5
��������)��"���� ���
During a message format check, the following object controls are made.
��������)��"�����"�������������B�����
Message format names and codes must be unique in the model.
���������������� ���"���������������
Modify the duplicate message formatname/code
Modifies the message format name orcode by appending a number to itscurrent name or code
��������)��"�����)����������B�����
Message format definitions must be unique in the model.
���������������� ���"���������������
Delete the duplicate message formatdefinition
—
!���
During a data check, the following object controls are made.
!������"�������������B�����
Data names and codes must be unique in the namespace.
���������������� ���"���������������
Modify the duplicate data name/code Modifies the data name or code of aselected object by appending a numberto its current name or code
��&���� �����&�� � �����&����
��6
��".����������"�����������"�����You can compare and merge two Business Process Models.
The comparison process allows you to highlight the differences between twoBPM.
The merge process allows you to form a single model that combines designefforts performed independently by several team members.
Merge is performed from left to right, the model in the right pane iscompared to the model in the left pane, differences are highlighted and mergeactions are proposed in the model to be merged.
� For more information on comparing and merging models, see chapterComparing and Merging Models in the ����� ���������������.
���������������.�������������"��������������&�"�����When you use the Merge Models feature to merge business processdiagrams, the symbols of all elements in swimlanes are merged withoutcomparison. You can either accept all modifications on all symbols or nomodification at all.
��������+��������� ���������������������
��$
1.�����������������*���"�����The PowerDesigner V6 ProcessAnalyst Model allows you to design dataflow diagrams.
You can recover V6 ProcessAnalyst Model information into a BusinessProcess Model by opening a PAM into a BPM.
You will then retrieve PAM objects into your BPM as a new BPM is createdfor the PAM model, and the objects of the PAM model are translated intoBPM objects.
You can still open a PAM into a CDM (Conceptual Data Model), knowingthat the PAM objects recovery is restricted to data items and domains. Whenopening a PAM, you are asked to choose between opening into a BPM, oropening into a CDM.
����������������-���������������-����
The open process converts PAM objects into BPM objects as follows:
1-������������� +".�������-������������
Process Process
Split/Merge Process or synchronization
External entity Start & End
Off page connector Start & End
Data flow Flow or Resource flow
Data store Resource
Data item on Data flow Data (elementary)
Domain —
Business rule Business rule
A split is imported as a synchronization and the following message appears inthe Action page of the synchronization property sheet after the import: "Thisprocess splits data".
A merge is imported as a process and the following message appears in theAction page of the process property sheet after the import: "This processmerges data".
An external entity with outgoing data flows is imported as a start.
Split/Merge
External entity
,���� ����������$��&����
��7
An external entity with incoming data flows is imported as an end.
An external entity with both outgoing and incoming data flows is imported asa start and an end. Outgoing data flows are associated to the start andincoming data flows to the end.
An Off page connector with outgoing data flows is imported as a start.
An Off page connector with incoming data flows is imported as an end.
A data flow between a data store and a process is imported as a resourceflow. Any other data flow is imported as a flow.
A data flow with a double direction is imported as two distinct flows, exceptfor the resource flow.
The data flow type is imported as a flow type property for process flows andis lost for resource flows.
The Number property is not imported and the Is Entity property is importedas an <Entity> stereotype on the resource.
The list of data items is imported as a unique concatenated string in theComment box of the resource property sheet.
Data items are imported as elementary data. Attachment of a data item to aflow must be preserved by attaching the corresponding data to the importedflow.
Check parameters are not imported.
Domains are not imported.
Business rules are imported.
Attachment of a business rule to a domain or a data item is not imported.
1.����������������������
� ����.�������������������4
1 Select File→Open to display the Open file dialog box.
2 Select or browse to the directory that contains the .PAM file.
3 Select ProcessAnalyst Model (*.pam) file from the Files of Typedropdown listbox to display only PAM files.
The available PAM files are listed.
Off page connector
Data flow
Data store
Data item on dataflow
Domain
Business rule
��������+��������� ���������������������
���
4 Select a file.
5 Click Open.
The Formats for ProcessAnalyst Model window appears.
6 Select PowerDesigner Business Process Model and click OK.
The Output window displays a message following the successful importand the default diagram of the model appears.
Each imported object type can be viewed from its respective list.
,���� ����������$��&����
���
���
C H A P T E R 6
(����������)��"������������������������
This chapter describes how to generate a BPM from a Business ProcessModel.
��.�� ����
Generation basics 134
Generating a Business Process Model from a Business Process Model 137
About this chapter
Contents
-������������
��
(���������������When you generate from an Business Process Model you can generate aBPM. You can generate a model from a global BPM or from a packagewithin the model. Limiting model generation to a single package is usefulwhen different designers own packages of the same BPM. Designers cangenerate their packages independently from others. Generating a packageresults in an independent model.
You can generate from a BPM in two ways:
(������� !�����.����
New model Creates a new model containing the objects translated from theBPM
Updated model Creates a default model with the objects translated from theBPM that is merged with an existing model. You can update,delete, or add objects in the existing model (model to bemerged in the right pane) based on modifications made in thedefault model (in the left pane)
� For more information on merging two models, see chapter Comparingand Merging Models in the ����� ���������������.
�������"������.���"�����
An external shortcut depends on a target object in a different model. Externalshortcuts allow you to share objects between different models.
When you generate models into other models, you can preserve the linkbetween an external shortcut and its target model through generation.
You can use the Target Models tab to select generated models to retrieve thecorresponding target objects of external shortcuts. External shortcuts can thenbe correctly linked to target objects in the correct target model.
The Target Models page displays the following columns:
���"� !�����.����
Target Models Original target model of the shortcut (not editable)
Generated Models Lets you select the model that will be used as the target forthe generated shortcut
��������.����-������� ����&�������������������
���
The model generation process allows you to define the target object of ashortcut in a generated model.
For example, here is the proper sequence of events for external shortcutsgeneration:
♦ Model 1 is the target model of a shortcut in Model 2
♦ Model 1 is generated to Model 1.1
♦ Model 2 is prepared for generation to Model 2.2 by associatingappropriate parameters in the Target Models page:
+)�������������������.��������� ��&����.��� The Target Modelcolumn displays the original target model (Model 1), and its path. TheGenerated Models column displays the last generated model the first timeyou generate Model 1; the next time you generate Model 1, the GeneratedModels column displays the last model selected. You can click the arrowin the Generated Models column to modify the model selection in order toallow the creation of a correctly linked shortcut.
+)����������������������� ��&����.��� The Target Model columndisplays the original target model (Model 1), and its path. The GeneratedModels column displays <none>. When you click into the GeneratedModels column, the original target model Model 1 is automaticallyopened in the workspace in order to find the models generated fromModel 1. You can use the arrow to select Model 1.1, the new target thatwill allow the creation of a correctly linked shortcut in Model 2.2.
♦ The external shortcut in Model 2.2 is correctly generated with a link toits target object in Model 1.1.
� For more information on shortcuts, see chapter Managing Shortcuts inthe ����� ���������������.
-������������
��'
1-��������������.���"�����
You select objects for model generation from the Selection page.
You can display in the list, objects in the current model, or objects inindividual packages contained in the model. If you select the Include Sub-Objects tool, you can display either all objects in the current model, or allobjects in a package.
You have the following selection options:
�������-��� +������,:1-�������������
+������,:1-����������������
Model All objects in the model includingall objects in packages and sub-objects
All objects in the model exceptobjects in packages and sub-sub-objects
Package All objects in the package includingall sub-objects
All objects in the packageexcept sub-objects
1-������������������ ��"����Objects selected in the model can be automatically selected for generationby clicking the Use Graphical Selection tool in the Selection page toolbar.
Listing objectscontained in amodel or package
��������.����-������� ����&�������������������
��5
(����������������������������������)��"�����������������������
This section explains how to generate a Business Process Model from aBusiness Process Model.
(��������������.������������
To generate a BPM, you must choose between one of the following methods:
♦ Generate new Business Process Model
♦ Update existing Business Process Model
You must indicate the following parameters when you generate a new BPM:
����"���� !�����.����
Name File name for the resulting BPM
Code Reference code for the resulting BPM
ConfigureModel Options
Lets you define the model options for the new BPM
� For more information on model options when generating a BPM from aBPM, see section Defining BPM options in chapter Business Process ModelBasics.
You can generate a BPM into an existing BPM.
If you choose to update an existing BPM when the current BPM has neverbeen generated, the Select Model dropdown listbox is empty by default. Youhave to click the Ellipsis button to display a Select Model dialog box inwhich you can select a model. The Workspace Location and Physical Pathcolumns provide more information about the model location in the workspaceand the file path to help you choose the BPM. You can also use the tooltip inthe dropdown listbox to verify the location and path of the model.
Generate newBusiness ProcessModel
Update existingBusiness ProcessModel
-������� �����������������������&�������������������
��6
To update an existing BPM, you must indicate the following parameters:
����"���� !�����.����
Select Model Existing BPM. The BPM is generated into a BPM. This BPM ismerged with the existing BPM to create an updated BPM. Thedropdown listbox displays already generated models. TheEllipsis button lets you select models opened in the workspace
PreserveModifications
Allows a comparison and merge of the newly generated BPM(default BPM) with the currently selected BPM
���������� ���������������)���������� �����#If the Preserve Modifications check box is not selected, PowerDesignerautomatically replaces the existing BPM with the newly generated BPM.If you want to choose which objects to add or delete from the existingBPM, you must select the Preserve Modifications check box to compareand merge the two BPM.
!�)����������������������.�����
You can set the following general generation options from the Detail page:
1.���� !�����.����
Check Model When selected, verifies the model before generating the BPM,and stops generation if an error is found
Save GenerationDependencies
When selected, PowerDesigner keeps track of the identity ofeach generated object. It is useful when merging two BPMwhich have been generated from the same BPM. Objects canbe compared and recognized as the same object, even if theobject has been modified in the merged BPM
� ����"������)��������������If you select the Check Model option, the procedure to generate a BPMstarts by checking the validity of the BPM . A BPM results when no errorsare found. You can set check options by selecting Tools→Check Model.
��������.����-������� ����&�������������������
��$
(��������������&�����)��"������
You can generate a BPM from a BPM or from a package in a BPM.PowerDesigner creates a new BPM containing all the objects that youselected to generate in the BPM. The newly created BPM appears in thebrowser and the corresponding diagram opens in the work area.
You can only generate a BPM from the active BPM diagram.
� ����������������&�����)��"������4
1 Select Tools→Generate Business Process Model to display the GenerateBusiness Process Model dialog box.
2 Select the Generate New Business Process Model radio button.
3 Type a new name and code, otherwise the BPM will have the same nameand code as the source BPM.
4 <optional> Click the Configure Model Options button to define theoptions of the generated PDM.
5 Click the Detail tab to define options and generation parameters.
6 Click the Target Models tab to select the target models of shortcuts inthe current model.
7 Click the Selection tab to display the Selection page.
8 Select the name of a BPM from the Select Location dropdown listbox.
-������� �����������������������&�������������������
� 7
(����������������)��"���.������To generate a BPM from a package, select the package name from thedropdown listbox in the upper left corner of the dialog box. Togenerate a BPM from a sub-package, select a sub-package from thedropdown listbox in the upper left corner of the dialog box, or select apackage name and click the Include Sub-Packages tool next to thisdropdown listbox.
9 Select the check boxes for the objects you want to generate, and clear thecheck boxes for the objects you do not want to generate.
10 Click OK.
The Output window shows the progress of the generation process. Thediagram of the new BPM appears in the work area.
�.�����������#����������
There are two ways to update an existing BPM depending on whether thePreserve Modifications option is selected or not:
������������)�������� �����
Selected You can manually compare and merge an existing BPM(right pane) with the newly generated BPM (left pane)
Not selected The existing BPM is automatically replaced by the newlygenerated BPM
You can only generate a BPM from the active BPM diagram window.
� ���.���������#�����������*������������)��"������4
1 Select Tools→Generate Business Process Model to display the GenerateBusiness Process Model dialog box.
2 Select the Update Existing Business Process Model radio button.
��������.����-������� ����&�������������������
� �
3 Select a model from the Select Model dropdown listbox if the currentmodel has already been generated.��Click the Ellipsis button beside the Select Model dropdown listbox andselect an existing model in the Select a Model dialog box.
���������"���)��������If you want to preserve objects in the BPM, then the PreserveModification check box must be selected. If you clear this check box,all existing objects in the BPM will be removed from the model,leaving only the objects generated from the BPM.
4 Click the Detail tab to define options and generation parameters.
5 Click the Target Models tab to select the target models of shortcuts inthe current model.
6 Click the Selection tab to display the Selection page.
7 Select the name of a BPM from the Select Location dropdown listbox.The default BPM is generated from this BPM.
-������� �����������������������&�������������������
� �
(����������������)��"���.������To generate a BPM from a package, select the package name from thedropdown listbox in the upper left corner of the dialog box. Togenerate a BPM from a sub-package, select a sub-package from thedropdown listbox in the upper left corner of the dialog box, or select apackage name and click the Include Sub-Packages tool next to thisdropdown listbox.
8 Select the check boxes for the objects you want to generate, and clear thecheck boxes for the objects you do not want to generate.
9 Click OK.
If you selected the Preserve Modifications check box, the Merge Modelswindow appears.
If you cleared the Preserve Modifications check box, the updated BPMdiagram appears in the work area.
��������"�����The Merge Models dialog box shows the newly generated BPM in theleft pane, and the existing BPM in the right pane. You can select orclear object check boxes in the right pane for BPM objects that youwant to include or delete in the model to be merged.
� For more information on merging models, see chapter Comparingand Merging Models in the ����� ���������������.
� �
����(������*
Defines the nature, the type and the duration of an action that a processexecutes
Conceptual model which provides a close description of the business logicand rules from a business partner’s point of view using a diagram that showsinteractions between processes, flows, messages and collaboration protocolsfrom one or several start points to several potential end points
Activity that a business can engage in and for which it would generally wantone or more partners
Written statement specifying what the information system must do or how itmust be structured to support business needs. It guides and documents thecreation of a model (example: a government-imposed law)
Child process used to describe the actions of the parent process
A condition that must be satisfied for an associated flow to execute someaction
Table that shows the links between processes and resources. When a linkexists, it shows whether the process performs a Create, Read, Update, orDelete operation on the resource
Defines the type of information exchanged between business processes
Specifies which alternate path has to be taken when several flow paths arepossible
Semantic relationship between two modeling elements, in which a change toone modeling element (the influent element) may affect the semantics of theother modeling element (the dependent element)
Graphical view of a model or package, which displays object, symbols
Set of specifications for standardizing XML globally in order to facilitatebusiness over the Internet between companies of any size.
Represents a termination point of the processes described in the businessprocess diagram
action
BPM (BusinessProcess Model)
business process
business rule
composite process
condition
CRUD matrix
data
decision
dependency
diagram
ebXML
end
-����$
�
Interaction between two objects with potential exchange of data
Property of a process that uses another process to share its implementationdetails
Set of data sent and received with a beginning and an end
Data format that depends on the nature of the exchanged data and on whichtwo objects agree to communicate
Symbol for displaying a comment or textual information (ex: a method bodyor constraint)
Element that allows you to define which organization is responsible for whichprocess. It can represent a company, a system, a service, an organization, auser or a role. It is equivalent to the swimlane in UML
General purpose mechanism for organizing elements into groups. It containsmodel objects
Set of rules that govern the transmission and reception of data
Invocation of a manual or automated action
Similar to a data store, it can be a data, a document, a database, a component,or an executable
Allows a process to access a resource. Information within the resource can becreated, updated, deleted or read by the process
Object representing and referencing an object in the same model, or acrossdifferent models
Extension of the vocabulary of the UML, it allows you to create new kinds ofbuilding blocks that are derived from existing ones but that are specific toyour problem
Starting point of the whole process represented in the business processdiagram
UML representation of the organization unit
Synchronization point between parallel executions (several input flows, oneor several output flows waiting for the end of all input executions)
flow
implemented by
message
message format
note
organization unit
package
protocol
process
resource
resource flow
shortcut
stereotype
start
swimlane
synchronization
�����
���
access mode
resource flow 81, 82, 125action
process 33synchronization (BPM) 91
aliasdecision (BPM) 88flow 55resource flow 83
all objectsmodel option 8
applybusiness rule (BPM) 20
authorBPM 10
automatic correction 118check option 116
bibliography ixBPM 3
author 10business process diagram 24business rule (BPM) 16, 17check 112, 116, 118close 8code 10comment 10compare 128correction 116, 118create 6default diagram 10define 6detach from workspace 8diagram 3error 112, 116, 118extended dependencies 12extended model definitions 12
BPM ���������filename 10generate 134, 137generate from BPM 139generation option 137, 138merge 128model 3name 10new 6objects 5open 7open a PAM 129, 130options 8organization unit (BPM) 40overview 2properties 10save 8select generation objects 136swimlane 40tools 5update 140validate 112version 10warning 112, 116, 118
business processdiagram 24
business rule (BPM) 130apply 20BPM 16, 17BPM object 20constraint 16, 18create 18definition type 18expression 21fact 18formula 18properties 17requirement 18type 18validation 18
���
�check
automatic correction 113, 116BPM 112, 114, 116, 118correction 116, 117, 118data 127decision (BPM) 121end (BPM) 126error 114error list 117file object 123flow 122level of severity 112manual correction 116message format 127model 114object 119option 112, 114organization unit 125package (BPM) check 119process 120replication check 119resource 123resource flow 124selection 114start (BPM) 125synchonization 121warning 114
check optionautomatic correction 116help 116manual correction 116recheck 116
circular dependencyparent 125
closeBPM 8composite process 38
codeBPM 10data 66decision (BPM) 88end (BPM) 95flow 54message format 61package (BPM) 13process 31resource 77resource flow 81
code ���������start (BPM) 27synchronization (BPM) 91
code uniquenessdata 127decision (BPM) 121end (BPM) 126message format 127organization unit 125process 120resource 124resource flow 124start (BPM) 126synchronization (BPM) 122
columnhide in CRUD matrix 103
commentBPM 10data 66end (BPM) 95flow 54message format 61package (BPM) 13process 31resource flow 81start (BPM) 27
compareBPM 128
composite process 31, 32, 33close 38create from contextual menu 36, 37create from diagram 36end (BPM) 120go to parent 38object 5open 38start (BPM) 120
conditiondecision (BPM) 88flow 55, 87, 122resource flow 83
constraintbusiness rule (BPM) 16
correctionautomatic 118BPM 116, 118check 116, 117, 118
CRUD matrix 100add object 103, 106add process 106
��
CRUD matrix ���������add resource 106cell 100consult process properties 103consult resource flow properties 103consult resource properties 103copy 103display 101find process symbol 105find resource flow symbol 105find resource symbol 105find symbol in diagram 103header 100hide columns 103, 107hide rows 103, 107modify CRUD values 108paste in application 105process/resource 101properties 103remove objects 106
CRUD valuemodify 108
ctrl+double-clickopen composite process 38
ctrl+ugo to parent 38
�data
check 127code 66code uniqueness 127comment 66create from the list 67define 65definition property 66elementary 66export in CDM 72export in OOM 72flow 56import in CDM 72, 75import in OOM 72, 75link to object 68list 68message format 62modify from the list 68modify from the property sheet 68name 66
data ���������name uniqueness 127object 5properties 66, 68resource flow 83same definition object within a package 119same definition object within a process 121select for a flow 70select for a message format 70select for a resource flow 70stereotype 66structured 66type 66undefined 66
data definitionclass 66data item 66entity 66
data flow 130data item 130data store 130decision (BPM)
alias 88check 121code 88code uniqueness 121condition 88create from Browser 89create from diagram 89create from list 89define 87display preferences 90flow 121guard condition 87list 90modify from the list 90modify from the property sheet 90name 88name uniqueness 121properties 88, 90stereotype 88tool 5
default diagramBPM 10
definitiondata 66data property 66message format 61message format type 61uniqueness 127
���
destinationflow 54
detachBPM from workspace 8
diagramBPM 3, 24business process 24sub-process 24
Disable Swimlane Modeswitch to icon representation 40, 41
displayerror message 116warning message 116
display preferencedecision (BPM) 90end (BPM) 97flow 59organization unit (BPM) 40, 52package (BPM) 14process 39resource 79resource flow 86start (BPM) 29swimlane (BPM) 40, 52
domain 130drag & drop + alt
create implemented process 33drag and drop
into composite process 33
�ebXML
reverse 6editor
flow 55message format 61resource flow 83
elementary (data)type 66
Enable Swimlane Modeswitch to swimlane representation 41, 44
end (BPM)check 126code 95code uniqueness 126comment 95composite process 120create from Browser 96
end (BPM) ���������create from diagram 96create from list 96define 95display preferences 97input flow 126list 97modify from the list 97modify from the property sheet 97name 95name uniqueness 126properties 95, 96, 97stereotype 95tool 5type 96
errorBPM 112, 116, 118display message 116severity 112
error listcheck 117navigate 117
exportdata in CDM 72data in OOM 72
expressionbusiness rule (BPM) 21
extended dependencyBPM 12
extended model definitionBPM 12
external definitionmessage format 61
external entity 129
�file
open 7file object
check 123external 123name uniqueness 123
filenameBPM 10
flowalias 55check 122code 54
���
flow ���������comment 54condition 55, 87, 122create from Browser 57create from diagram 57create from list 57create message format 63data 56decision (BPM) 121define 53destination 54display preferences 59editor 55flow type 54, 55message format 54, 55, 122, 123modify from the list 59modify from the property sheet 59name 54properties 54, 55, 59select data 70source 54stereotype 54synchronization (BPM) 122tool 5transport 54
functionBPM 2
�generate
BPM 134, 138BPM from BPM 139BPM to BPM 137external shortcut 134new BPM 137new model 134select BPM objects 136target model 134update existing BPM 137update model 134
guard conditiondecision (BPM) 87
�hide
columns in CRUD matrix 107
hide ���������rows in CRUD matrix 107
hierarchypackage (BPM) 13
horizontalswimlane (BPM) 52
�implementation
process 120implemented by
process 31, 32implemented process
create with drag & drop + alt 33import
data in CDM 72, 75data in OOM 72, 75
includesub-object 113
input flowend (BPM) 126process 120
�link
data to object 68location
file object 123
�manual correction
BPM 117check 116
merge 129BPM 128swimlane 49
message formatcheck 127code 61code uniqueness 127comment 61create from Browser 63create from diagram 63create from flow property sheet 63
���
message format ���������data 62define 60definition type 61definition uniqueness 127editor 61external definition 61flow 54, 55, 122, 123message format type 61model option 8modify from the list 64modify from the property sheet 64name 61name uniqueness 127object 5properties 61, 64resource flow 81, 82select data 70stereotype 61type 61
modelBPM 3check 114create 6new 6object selection 113open 7options 8properties 10sub-object 113
model optionall objects 8default message format 9
�name
BPM 10data 66decision (BPM) 88end (BPM) 95file object 123flow 54message format 61package (BPM) 13process 31resource 77resource flow 81start (BPM) 27
name ���������synchronization (BPM) 91
name uniquenessdata 127decision (BPM) 121end (BPM) 126message format 127organization unit (BPM) 125process 120resource 124resource flow 124start (BPM) 126synchronization (BPM) 122
name/code case sensitivemodel option 8
namespacepackage (BPM) 13
newBPM 6model 6
�object
add in CRUD matrix 103BPM 5check 119
object selectioncheck 113model 113package (BPM) 113
off page connector 130open
BPM 7composite process 38file 7model 7PAM 129
optionBPM 8check 112message format 8model 8
organization unit (BPM)attach process 47check 125code uniqueness 125create as icon 46create as swimlane 44
���
organization unit (BPM) ���������create from Browser 43create from diagram 43, 44, 46create from list 43define 40detach process 48display preferences 40, 52modify from the list 48modify from the property sheet 48name uniqueness 125parent organization 41, 43process 31properties 41, 43, 48stereotype 43swimlane 40swimlane (BPM) 49switch to swimlane (BPM) 41tool 5
output flowprocess 120start (BPM) 126
overviewBPM 2
�package (BPM) 13
check model 119code 13comment 13create 14display preferences 14hierarchy 13name 13namespace 13object selection 113properties 13stereotype 14sub-package (BPM) 13tool 5
PAMBPM objects 129objects imported 129open 129open into a BPM 130ProcessAnalyst Model 129
parentcircular dependency 125organization unit (BPM) 41, 43
parent organization (BPM)properties 43
preserve modifications 140process
action 33add in CRUD matrix 106atomic 30attached to organization unit 47check 120code 31code uniqueness 120comment 31composite 30, 31, 32, 33create from Browser 35create from diagram 35create from list 35CRUD matrix 101define 30detach from organization unit (BPM) 48detach from swimlane (BPM) 48display preferences 39implementation 120implemented by 31, 32input flow 120modify from the list 38modify from the property sheet 38modify properties 38name 31name uniqueness 120organization unit (BPM) 31output flow 120properties 31, 32, 33resource 124resource flow 81, 124stereotype 31tool 5
ProcessAnalyst modelPAM 129
propertyBPM 10business rule (BPM) 17model 10package (BPM) 13
�recheck
check option 116
���
re-exportdata in CDM 72data in OOM 72
replicationcheck model 119partial 119
resourceadd in CRUD matrix 106check 123code 77code uniqueness 124create from Browser 78create from diagram 78create from list 78CRUD matrix 101define 77display preferences 79list 79modify from the list 79modify from the property sheet 79name 77name uniqueness 124process 124properties 77, 79resource flow 81, 124stereotype 77tool 5
resource flowaccess mode 81, 82, 125alias 83check 124code 81code uniqueness 124comment 81condition 83create from Browser 84create from diagram 84create from list 84data 83define 80display preferences 86editor 83list 86message format 81, 82modify from the list 86modify from the property sheet 86name 81name uniqueness 124process 81, 124properties 81, 82, 83, 86
resource flow ���������resource 81, 124select data 70stereotype 81tool 5
rowhide in CRUD matrix 103
�save
BPM 8set of swimlanes (BPM)
copy and paste 50move 50resize 51select symbol 49
severityerror 112warning 112
sourceflow 54
split 129start (BPM)
check 125code 27code uniqueness 126comment 27composite process 120create from Browser 27create from diagram 27create from list 27define 27display preferences 29modify from the list 28modify from the property sheet 28name 27name uniqueness 126output flow 126properties 27, 28property sheet 28stereotype 27tool 5
stereotypedata 66decision (BPM) 88end (BPM) 95flow 54message format 61
���
stereotype ���������organization unit (BPM) 43package (BPM) 14process 31resource 77resource flow 81start (BPM) 27
structured (data)type 66
sub-objectinclude 113
sub-package (BPM)hierarchy 13
sub-processdiagram 24
swimlane (BPM)attach process 47BPM 40change format 51copy and paste 50create from Browser 43create from diagram 43, 44create from list 43delete 52detach process 48display horizontal 52display preferences 40display vertical 52merge 128merge models 49move 50organization unit (BPM) 40, 49resize 51select symbol 49set of swimlanes (BPM) 49switch to icon 41UML 40
switchfrom icon to swimlane 41
synchronization (BPM)action 91change to horizontal 93, 94change to vertical 93, 94check 121code 91code uniqueness 122create from Browser 92create from diagram 92create from list 92define 91
synchronization ���������display inverse 93, 94flow 122modify from the list 93modify from the property sheet 93name 91name uniqueness 122properties 91, 93timeout 91tool 5
�target model 134timeout
synchronization (BPM) 91tool
BPM 5functions 2
transportflow 54properties 54
typebusiness rule (BPM) 18data 66end (BPM) 96
typographic convention viii
UML
swimlane (BPM) 40undefined (data)
type 66update
BPM 140
!validate
BPM 112version
BPM 10vertical
swimlane (BPM) 52
���
"warning
BPM 112, 116, 118severity 112
warning messagedisplay 116
Top Related