Top Banner
i Q-flow 3.0: Q-flow Tutorial Manual code: Qf304006ENG Version: 1.0 Applies to: Q-flow 3.04 Latest revision: 26/3/2009
43

Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Apr 20, 2018

Download

Documents

lynguyet
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

i

Q-flow 3.0: Q-flow Tutorial

Manual code: Qf304006ENG Version: 1.0 Applies to: Q-flow 3.04 Latest revision: 26/3/2009

Page 2: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G v 1 . 0

ii

Q - f l o w 3 . 0

Q-flow Tutorial

© Urudata Software Canelones 1370 • Piso 2 CP11200

Montevideo, Uruguay Teléfono: (598 2) 900 76 68 • Fax: 900 78 56

Page 3: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

3

Table of contents Purpose ........................................................................................................................ 5 

Process description ..................................................................................................... 5 

Process design ............................................................................................................ 5 

Opening the Business Process Modeler ................................................................................................ 6 

First steps in the modeler: solutions and packages ............................................................................. 7 

Creating the template ............................................................................................................................... 8 

Process steps ......................................................................................................................................... 10 Start step ............................................................................................................................................... 12 End step ................................................................................................................................................ 12 Evaluation step ...................................................................................................................................... 13 Question with evaluation step ............................................................................................................... 13 Notification step ..................................................................................................................................... 13 Web service step ................................................................................................................................... 13 

Drawing the process .............................................................................................................................. 13 

Application data ...................................................................................................................................... 17 

Template roles ........................................................................................................................................ 19 

Detailing the process ............................................................................................................................. 21 Request input ........................................................................................................................................ 21 Purchases Manager approves? ............................................................................................................ 23 amount >= 500? .................................................................................................................................... 27 General Manager approves? ................................................................................................................ 28 Save in ERP .......................................................................................................................................... 28 Notify rejection ...................................................................................................................................... 29 Notify rejection ...................................................................................................................................... 30 End (rejected) ........................................................................................................................................ 30 End (approved) ..................................................................................................................................... 31 

Decorating the process .......................................................................................................................... 31 

Setting as production version ............................................................................................................... 34 

Executing the process ............................................................................................... 35 

Page 4: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

4

Entering the web site ............................................................................................................................. 35 

Starting a workflow................................................................................................................................. 36 

Answering questions ............................................................................................................................. 37 

Viewing notifications .............................................................................................................................. 39 

Views ........................................................................................................................................................ 39 

Web Parts ................................................................................................................................................ 41 

Page 5: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

5

Purpose This document has the purpose of introducing the user to Q-flow by means of a practical example. Those Q-flow features which are necessary to design and run the sample process are explained. If you wish more detailed explanations pertaining the subjects covered in this manual, or other subjects, please refer to the user manuals of Q-flow 3.0.

Process description The process we are going to implement with Q-flow is an expense authorization process. The process has the following actors:

• Requester: This is the person who requests the expense authorization, and therefore, the person who starts the business process.

• Purchases Manager: This is the first person in charge of approving or rejecting the expense requested by the requester, and the only one if the expense is less than 500 dollars.

• General Manager: This is the second person in charge of approving or rejecting the expense requested by the requester in cases in which the amount is 500 dollars or more.

The process is started by the requester, who enters the expense authorization request. When entering this request, the requester specifies the amount of money he intends to spend. The expense request must be approved by different people, depending on the amount of the expense. If the amount is less than 500 dollars, then only the Purchases Manager’s approval is necessary. If the amount is 500 dollars or more, then the General Manager’s approval is required too. If the expense request is approved, its data must be sent to the ERP system, which can be accessed through a web service. If the response time of any of the approval tasks is greater than 24 hours, the request is assumed to have been rejected. In any case, the requester must be sent an e-mail notifying him what the result of his request was.

Process design We are going to use the Business Process Modeler in order to design the process. You can open this tool by double-clicking on the shortcut icon in the desktop, or by opening the “Q-flow 3.0” group in the start menu.

Page 6: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

6

Opening the Business Process Modeler When you try to open the Business Process Modeler for the first time, a window like the one shown in Figure appears. The window shows several properties, some of which you may have to modify:

• Server name: The name of the server where the Q-flow backend servers are installed. The default value is “localhost”.

• Use my network credentials: If the current Windows user has permissions to use the Business Process Modeler, leave this option checked. If you are using the same user you used during installation, leave this option checked.

• Use the following Credentials: Allows you to specify a user name and password for the user that will be used to open the tool. This option is convenient if the current Windows user does not possess permissions to use the Business Process Modeler.

• Automatically connect to this server: It is advisable to leave this option checked so that in the furure this window will not appear again when you try to open the tool.

After performing the necessary changes to the server connection properties, click on “Connect” to enter the designer.

Figure Connect to server

Page 7: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

7

First steps in the modeler: solutions and packages The business process modeler provides all features pertaining process modeling. A busiess process relates to what is known as “template” in the modeler. A template has at least one version. Versions are used to handle several process versions so that they can coexist without trouble. For the purposes of this example, we are going to create a template with one version. Ir order to create a template, one must first create a solution. The elements of a solution are accessed from the solution explorer, which is the window that appears at the upper right corner of the modeler. At the beginning, the window is empty because no solution has been opened yet. To create a solution, do the following:

1. Open the “File” menu. 2. Select the “New” option. 3. Click on “Blank solution”. 4. Enter a name and a path for the solution file, and click on “OK”.

Optionally, if you already have a solution, you may open it by dragging its file into the modeler. Now we have an open solution, even though it does not contain anything. In order to be able to work, we need to add an existing package to the solution. It could be said that a package is a folder that may contain other packages and templates in a hierarchic structure which is called “tree”. A solution is a “view” over this package tree, and in order to see the packages one must add them to the view. In order to do this:

1. Open the “File menu. 2. Click on “Add”. 3. Click on the “Existing package…” option. 4. Choose the package you wish to add (if you have just installed Q-flow, the only package

available is the Root package). After that, one is able to view the chosen package and its subpackages in the solution explorer, as shown in Figure .

Page 8: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

8

Figure Solution explorer

Creating the template In order to create a template, do the following:

1. In the solution explorer, right-click on the package. 2. Q-flow shows a context menu. Select the “Add” option. 3. Select the “Process template” option. 4. Q-flow shows a form like the one shown in Figure . Enter a name and a brief description for the

template. 5. Click on “OK”.

Page 9: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

9

Figure Create new template

After creating the template, you will see that a template with the name you entered has appeared in the solution explorer, under the package you right-clicked. Under this template there is a template version called “1.0”, which has been automatically created when the template was created. Figure shows the solution exolorer after the template has been created.

Page 10: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

10

Figure A new template has just been created

Process steps Our objective, now that we have created a template with a version, is to edit the version to create the process we defned before. To edit a template version, one must first check it out. When a user checks out a version, he ensures that he will be the only one making changes to it. To check out the template version, do the following:

1. Right-click on the template version. 2. Select “Check Out”.

The template version’s icon will change to show that the template version has been checked out, as shown in Figure .

Page 11: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

11

Figure A checked out template version

The process design is the graph that represents the business process. This graph is composed of steps and connections between these steps which determine the order in which the latter should be executed in the process. To see the process design, do the following:

1. Right-click on the template version. 2. Select the “View items” option. 3. Select “Process design”.

This causes Q-flow to open a blank document with the name of the template and of the version. In addition, a window appears in the location of the solution explorer. This window is called “Mini map”, and it shows the graph in a smaller size. It is useful when designing a large process. In order to add steps to the process design, the toolbox is available (Figure ). The toolbox is in the modeler’s left zone, and in order for it to be shown in its full size, one must place the mouse cursor near it. A step may be added to the document by dragging it from the toolbox.

Page 12: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

12

Figure Toolbox

There are several types of steps. Our process needs only some of them.

Start step A start step is indispensable in every process. This step is the entry point for the process and, as such, there can be only one step of its type in the process. It represents the moment at which the user that starts the process fills the data needed by the process in order to start. The user does this in a web form, and then starts the process.

End step Another fundamental step is the “End” step, which signals the ending of the process. It is possible to have more than one end step in a process, and use each one of them to signal a different end of

Page 13: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

13

process. For example, in our process we have two end steps: “End (approved)”, which indicates that the expense has been approved, and “End (rejected)”, which indicates that the expense has not been approved.

Evaluation step The evaluation step can be used to evaluate process conditions and use the result of the evaluation to decide which of several paths the workflow should take to continue its execution. In our process, this step can be used to evaluate the amount of the requested expense and decide whether the General Manager must approve the expense or not.

Question with evaluation step A question with evaluation step allows Q-flow to interact with users by sending them e-mail messages containing a question that must be answered by them. The question and its possible answers are defined in the process design. In addition, the step defines which path must be followed after the step has been executed according to the chosen answer. In our process, we are going to use this step to ask the Purchases Manager and the General Manager whether they approve the requester’s expense.

Notification step The notification step sends a user an e-mail message to notify him of some event. In the process we are implementing, we are going to use it to let the requester know what the result of his request was.

Web service step The web service step allows the workflow to invoke web service operations while passing some process data to the invocation. This step will be useful to invoke the ERP web service and pass it the data of the approved request.

Drawing the process After having seen the steps we are going to use, it is advisable to drag them to the design process document, and connect them so that the process is drawn. This leads us to implement the process in a top-down manner, in which we first built the process skeleton, abstracting ourselves from the details of each step, and focus on the details afterwards. As a first step, we drag the start step, which must be in every process. We can change its name to “Request input” by selecting the step in the design and editing the “Name” property in the property window (which is at the bottom right and is shown in Figure ).

Page 14: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

14

Figure Property window

Then we drag the question with evaluation step, which will represent the Purchase Manager’s approval task. Therefore, it is a good idea to rename it to “Purchase Manager approves?” This step must follow the start step, and so we must create a connection that goes from the start step to the question with evaluation step. This can be done by dragging the mouse from the lower part of the start step to the higher part of the question with evaluation step. Note how the mouse pointer changes when it hovers over the step connectors. Another useful feature that may help us to have a clean design is the “Aling middle” feature. To use it, do the following:

1. Select the steps you wish to align vertically. 2. Right-click on one of them. 3. Select the “Align middle” option in the context menu.

This causes the steps to be aligned. Our process should now look like the one shown in Figure .

Figure A process with aligned steps

Page 15: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

15

The Purchases Manager’s approval has two possible outcomes: either the request is approved and the process goes on, or the request is rejected, in which case the requester must be notified and the process comes to an end. The question with evaluation step can have more than one outgoing connection coming from its lower connector, and the different branches the process may take after the step is executed are given by the connections that come from that connector. We will see afterwards how to specify what answer leads to what path. For now, we will just draw the paths. First we draw the path corresponding to the rejection of the request. This path must have a notification step, which will send an e-mail message to the requester, lettimg him know that his request has been rejected. It must also have an end step which will finalize the process. In Figure we see how our process is coming along.

Figure The process with a rejection notification

Now we must draw the process path for the case in which the Purchases Manager approves the expense. In this case, the General Manager’s approval may be necessary, but that depends on the amount of the expense. The workflow must evaluate by means of an evaluation step whether the amount is 500 dollars or more and, if it is, include another question with evaluation step that represents tha General Manager’s approval task. The evaluation connector corresponding to a result of “true” is the lower one. If the General Manager rejects the expense, the requester is notified the same way he is notified when the Purchases Manager rejects the request. That is why we connect the question with evaluation step to the same notification we had dragged previously into the graph. By now, the process graph should look approximately like the one in Figure .

Page 16: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

16

Figure The process with the General Manager's approval

Now, what remains to be done is to define the “successful” path of the process, i.e. the path corresponding to the case in which the expense request is approved. In this case, the workflow must notify the requester that his request has been approved, and pass the request data to the ERP system by means of a web service invocation. Then, the workflow must end. In order to to this, we drag a notification step, a web service step, which we will configure later, and an end step from the toolbox. The request is approved if the General Manager approves it. Therefore, we must create a connection that comes from the General Manager’s approval step and goes to the new notification step. In addition, if, when the amount of the expense is evaluated, it turns out not to be larger or equal to 500 dollars, then the request must be approved, since, in this case, only the Purchases Manager’s approval is necessary. Therefore, a connection must be drawn from the evaluation step’s right connector, which corresponds to a result of “false” for the evaluation, to the new notification step. We must also connect the new notification step with the web service step, and the latter with the new end step. Something missing now is to take into account the deadlines for the approvals. After 24 hours, if no response is received from the approvers, the request must be rejected. The left connector of the question with evaluation step corresponds to the case in which the step times out and, therefore, we must draw a connection from that connector to the “Notify rejection” step, in both instances of this step.

Page 17: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

17

At this point, the process graph should be similar to the one in Figure .

Figure Process Graph

Application data Application data provide structured information of the process. Each datum is associated with a domain, which determines the possible values the datum may take (text, number, etc.) and the control used to show it in the web site (text box, combo box, etc.). Data may be modified during the execution of the process, both by users and by automatic steps (i.e. steps that do not require human intervention). In the case of interactive steps such as, for example, a question with evaluation step, one defines a “scope” for a datum. The scope specifies whether the datum will be editable, read-only or missing in that step. In our process, we assume the amount of the expense to be stored in an application datum, and the evaluation step evaluates the value of that datum. This is because the evaluation step is an automatic step that may evaluate conditions based on application data. Therefore, in this process, we will create an application datum that will hold the amount of the expense. To add an application datum:

1. Right-click on the template version in the solution explorer.

Page 18: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

18

2. Select the “Add” option and then click on “Application Data”. 3. Enter a name and, if you wish, a description for the datum, and click on “OK”.

After doing this, you will see that Q-flow opened a new document which shows the application datum we have just created. This document is the document of application data of the template version (Figure ). Notice that the process design document is still open and you may access it by clicking on its tab.

Figure Application data document

The default data domain is “Text”. In this case, we want the data to belong to the “Number” domain. This causes Q-flow to validate that only numbers are entered as values for the datum. To open the datum’s property window, double-click on it in the data document. The property window shows several properties (Figure ), but the only one we need to change is the “Data domain” property. We do that by choosing “Number” in the combo box and then clicking on “OK”.

Figure The property window of an application datum

Another application datum that may be useful in the process is one that allows the approvers to make comments. In particular, this datum could be used to give an explanation in case the expense is

Page 19: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

19

rejected. The most appropriate domain for this datum is the “Text area”, which is associated with a control that is suitable to enter long texts. Therefore, we create this datum the same way we created the previous one, but calling it “comment” and choosing “Text Area” as its domain.

Template roles Template roles are used as addressees for interactive steps. They are made up of users to which Q-flow assigns a task when a process reaches an interactive step. In the case of our process, we have three actors that can be matched to three template roles. Therefore, we have the “Requester” role, whose only member is the user who starts the process; the “Purchases Manager” role, whose only member is the user in charge of purchases, and the “General Manager” role, whose only member is the general manager. To add template roles to the template version, follow these steps:

1. Right-click on the template version in the solution explorer. 2. Select the “Add” option and then click on “Template role”. 3. Enter a name and, optionally, a description for the role. 4. Click on “Accept”.

After that, Q-flow shows the roles document of the template version, which shows the role that has just been created. To assign the user to the template role, you must open the role's property window. To do this, double click on the role, where it appears in the list (Figure ).

Page 20: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

20

Figure The property window of a template role

The only property we need to change is “Role members”, by adding the corresponding user. To do this:

1. Click on “Add role member…”. 2. Select the user and click on “Add”. In the case of the “Purchases Manager” role and of the

“General Manager” role, we will choose the “Administrator” user, which is the same user as the one used in the Q-flow installation. If you wish to use another user, it may be necessary to add it in the Organization Model Manager. In the case of the requester we will add as a member the “Flow starter user”, which appears in the “System roles” tab (Figure ). Once the workflow has been started, Q-flow will assign to this role the user who started the workflow.

After that, click on “OK” to confirm the changes made on the role. Follow the described instructions for each of the roles needed by the process.

Page 21: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

21

Figure Member selector: system roles

Detailing the process Now that we have defined the skeleton of the process, and the resources it requires, it remains to configure the steps so that they have the behavior we want and use the roles and data we defined. Let us start by revising each of the steps and seeing what properties we must configure in each of them.

Request input In this step, the starter of the wofklow must be able to enter a value for the amount of the requested expense. This can be done by modifying the step’s scope. You can access the scope window by right-clicking on the step and selecting the “Scope” option. Then Q-flow shows a window like the one in Figure . There the data we have defined previously appear on a list, together with the scope defined for them in the step. The default scope is “Missing”, and for the “amount” datum we must change it to “Editable”, so that the user that starts the workflow may enter a value for the datum. This can be achieved by selecting the datum and clicking on the “Editable” button. After performing this change, click on “OK” so that the changes to the step’s scope are confirmed.

Page 22: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

22

An additional change refers to the workflow’s flag. This flag provides information about the state of the workflow or process. To change the flag, you must open the step’s property window (by double clicking on the step) and edit the “Start flag” field. As a value for the flag, write “Authorizing”, as shown in Figure . Then, click on “OK” o confirm the changes.

Figure Data scope

Figure Property window of the Request Input step

Page 23: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

23

Purchases Manager approves? In this step, the Purchases Manager answers whether he approves the expense, based on its amount, and may enter a comment explaining its decision. For this to be possible, we need to change the step’s scope (in the same way as we did the “Request input” step) so that the “amount” datum has a “Read only” scope and the “comment” datum has an “Editable” scope. In addition to this, we must configure the possible answers, the question and the paths to which each answer should lead. This can be done in the step’s property window. The properties of the message associated with the question with evaluation are edited in the “Message” tab of the property window. The “Subject” field represents the title of the question and the subject of the e-mail message that will be sent to the user. We edit it and write “Expense request from”. In addition, we will use the “Insert tag” feature in order to insert a tag containing the “Requester” template role at the end of the subject. This can be done in the following way:

1. Click on “Insert tag”. 2. In “Item type”, choose “Roles” and select the “Requester” role. 3. Click on “OK”.

When this is done, the “#%Role:”Requester”%#” tag will be added to the subject. This tag is replaced during process execution by the name of the role member. The task’s addressee must be the Purchases Manager role. In order to select the addressee, you must:

1. Click on “Select addressee…”. 2. Select the the template role corresponding to that addressee (“Purchases Manager”). 3. Click on “OK”.

Figure shows how the “Message” tab should look after the settings have been changed.

Page 24: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

24

Figure Property windo of the “Purchases Manager approves?” step - Message

Answers to the question are configured in the “Response” tab. We want two possible answers for this step: “Approve” and “Reject”. In order to add answers, do the following:

1. Click on “Add…” 2. Enter the value and key for the answer. The default key is the same as the value, and there is

no need to change that. 3. Click on “OK”.

Figure shows how the “Response” tab should look after you have added the answers.

Page 25: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

25

Figure Property window of the "Purchases Manager approves?" step - Answers

The question’s timeout is configured in the “Time controls” tab. We want to create a timeout “time action” that is to be triggered one day after the question has been sent. In order to create a new time action, do the following:

1. Click on “New action…” 2. In “Action Class”, select “Time out”. 3. In “Time info”, choose “Time span”, enter 1 as the number of time units, and choose “Days” as

time unit. 4. Click on “OK”.

After doing this, the time action should appear in the step’s time actions list. Figure shows the “Time controls” tab after the time action has been created.

Page 26: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

26

Figure Property window of the "Purchases Manager approves?" step - Time control

Finally, in the “Evaluation” tab, the paths to which each response should lead are configured. In order to enter an answer evaluation, you must:

1. Click on “Add…”. 2. Select the answer key and the step through which the workflow will go on in case this answer is

chosen. 3. Click on “OK”.

You need to create the following evaluations: if the answer is “Approve”, go to “amount >= 500?”, and if the answer is “Reject”, go to “Notify rejection”. It is not necessary to modify the “Default” property, since paths have been assigned to all possible answers. The final state of the “Evaluation” tab is shown in Figure .

Page 27: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

27

Figure Property window of the "Purchases Manager approves?" step - Evaluation

amount >= 500? In this step, you must enter an evaluation that must yield “true” when the “amount” application datum has a value equal to or greater than 500, and false if not. Evaluations are entered in the step’s property window. In order to enter the evaluation we want, do the following:

1. Click on “Add…” 2. In “Item type”, choose “Application data”. 3. In “Item selection”, choose “amount”. 4. In “Operator”, choose “>=”. 5. In “Value type”, choose “Value”. 6. In “Value”, enter 500. 7. Click on “OK”.

After the condition has been entered, the step’s property window should look like Figure . Finally you must click on “OK” to confirm the changes.

Page 28: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

28

Figure Property window of the "amount >= 500?" step

General Manager approves? This step shares many characteristis with the “Purchase Manager approves?” step. Actually, one way to avoid configuring this step is to copy and paste the other one. This can be achieved by selecting the “Purchase Manager approves?” step, pressing “Control + C” to copy it and then “Control + V” to paste it. Then, you must modify the step’s name and addressee, which must be the “General Manager” role. In addition to this, you must adjust the step’s evaluations so that: if the answer is “Approve”, the following step is “Notify approval”, and if the answer is “Reject”, the following step is “Notify rejection”.

Save in ERP This step must be configured to access the ERP system’s web service in order to register the approved expense. In the “Web service URL” field, you must enter the URL of the ERP’s web service (we may create a test web service for this example at http://localhost/ERP/Service.asmx, with a method called RegisterExpense, which receives an integer). Then, when you click on “Navigate”, the URL is validated and the web service’s methods are loaded in the “Methods available” combo box. There, you must choose the method that registers the expense and click on “Add”. Then, the method and its parameters appear in the table below. Since the method has one parameter of the integer type, Q-flow will automatically match it with the “amount” application datum. Therefore, it is not necessary to make more changes, and the property window of the step looks like the one shown in Figure . Then, all that remains is to click on “OK” in order to confirm the changes.

Page 29: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

29

Figure Property window of the "Save in ERP" step

Notify rejection This step must be properly configured for the requester to receive a mail message indicating that the request has been rejected. To achieve this, you must edit the “Message subject” and the “Addressees” properties, which can be found in the “Message” tab, in the step’s property window. This can be done in the same way as in the question with evaluation steps. In the subject, write “Your request has been rejected”, and pick the “Requester” role as addressee. The step’s property window should look like the one in Figure . In addition, you must change the data scope for the step, since you wish the requester to be able to see the amount of the expense and the comments the approvers may have made. This can be done by changing the scope of these data to “Read only”,

Page 30: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

30

Figure Property window of the "Notify rejection" step

Notify rejection This step can be configured like the “Notify rejection” step, except for the fact that the subject should read “Your request has been approved”.

End (rejected) This is the step that signals the end of the flow when the request has been rejected. In order to be able to distinguish flows that ended in this end step from flows that ended in the “successful” end step, one may use the flow’s flag. This can be changed in the step’s property window. To do this, enter the word “Rejected” as the value of the “Start flag” property. In addition to this, you may check the “Progress = 100%” option, so that the flow’s “Progress” field is set to 100, signaling its end.

Page 31: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

31

Figure Property window of the "End (rejected)" step

End (approved) This step is configured the same way the “End (rejected)” step was configured, except for the fact that the name is different and the flag should be changed to “Approved”.

Decorating the process We have finished with the process design proper, specifying steps, data and process roles and configuring the steps so that they behave according to the process. A final touch to the process design may be its decoration. The Q-flow modeler provides several primitives that help one make a more presentable and understandable process. During process design, a connection was drawn between the evaluation step and one of the notification steps. If you look at the image in Figure , this connection passes behind the “General Manager approves?” step, and that does not look very nice. One way to solve this is to change the connection’s style from “Rectangular”, which is the default, to “Lineal”. This can be achieved by selecting the connection and changing, in the property window (which is at the bottom right), the property “Line path” to “Lineal”. Notice that the properties shown in the property window depend on the selected element, as shown in Figure , where the properties of connections can be seen. Now that the line path is lineal, when you right-click on the connection, the “Connection” option appears. This option has a suboption called “Add point”. Using this option, add a couple of points to the connection and move them so that the connection passes around the question with evaluation step, without touching it. The connection should look like the one in Figure .

Page 32: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

32

Figure Property window - Properties of a connector

Figure A connectoin made with a linear line path

Another interesting property of connections is that one may label them with a text. This can be very useful when the process may take several different paths, such as, for example, when there are question with evaluation steps. Let us label both outgoing connections of both question with evaluation steps, so that they have labels indicating the answers given by the approvers. For the outgoing connection corresponding to the “Approve” answer, we will add a label that reads “Yes”, and for the outgoing connection corresponding to the “Reject” answer, we will add a label that reads “No”. To add a label to a connection, do the following:

1. Select the connection. 2. In the property window, edit the “Text” property, entering the desired text. 3. Change the property “Show label” to “True”.

Figure shows the result of adding labels to the connections.

Page 33: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

33

Figure Labeled connections

Finally, we will see how to add swimlines to the business process we have just created. Swimlines can be used to signal regions of the process that have different meanings. These signals are made by using colors and labels. To edit the swimlines, no element of the graph should be selected, and you should click on the “Collection…” button that appears next to the “Horizontal swim lines” property in the property window. Then, a window like the one shown in Figure appears.You can add swimlines by clicking on “Add”. Then, for each swimline, you may configure: color, text, font, alignment and width. Create three swimlines with the labels “Input”, “Approval” and “Resolution”. After that, click on “OK”. The horizontal swim lines are shown in the design. You may adjust the swimlines’ width “by hand”, dragging the mouse pointer from the upper boundaries of the labels downwards. Notice that the mouse pointer changes when it gets near a zone that borders the swimlines’ labels. After the swinlines have been added and adjusted, the process graph should look more or less like the one shown in Figure .

Figure Swinlines editor

Page 34: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

34

Figure Decorated process graph

Setting as production version Now that the process is finished, it is time we checked it in and put it in production. It is important to check the template version in, since changes made while the version was checked out are saved locally, and have not been saved to the Q-flow database yet. To check in a template version, right-click on it in the solution explorer, and click on the “Check in” option. Finally, in order for you to be able to start workflows based on this version from the web site, you must set this version as the production version. This can be donde by right-clicking on the template version in the solution explorer and selecting “Set production version”. Aftter doing that, the template version will appear in bold in the solution explorer, as shown in Figure .

Page 35: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

35

Figure Template version in production

Executing the process This section describes how to execute the process.

Entering the web site To start workflows based on the process, we will use the Q-flow web site. We enter it by opening Internet Explorer and accessing the virtual directory corresponding to the server where the Q-flow web site has been installed. Assuming the web server to be the local machine, and that the default virtual directory has not been changed, you should access TTThttp://localhost/QflowWebSite. If the current Windows user is the one you used during installation, you will enter the web site automatically, since the site uses integrated security. If, on the other hand, the current user does not have permissions, Q-flow will ask you for the credentials of a user that does have them, as shown in Figure . In this case, you must enter the name and the password of a user who has permissions to enter the web site.

Figure Credentials request

Page 36: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

36

Starting a workflow Now we are in the Q-flow web site, which is shown in Figure . The web site allows one to perform all kinds of operations pertaining running processes, also called flows. Some of the operations that can be performed on flows are: start them, answer questions or pending tasks and see incoming notifications. We will begin by starting a workflow based on the template version we have just created. To do this, we open the templates list, which can be accessed by clicking on the “Templates” link in the menu that appears to the left. This list shows all templates that have a production version. By clicking on a template from the list, the user is directed to the workflow start page. There he enters the flow’s general information as well as values for the application data that were set to be editable in the template version’s start step. In this case we will fill the fileds with the values shown in Figure , and then click on “Start flow” to start the workflow.

Figure Main page of the Q-flow web site

Page 37: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

37

Figure Flow start form for the recently created template

Answering questions After you have started a workflow, a page will be shown letting you know that the workflow has been successfully started. In this page, two links are shown: “Flow details” and “Active tasks”. The first link takes you to the page shown in Figure . This page shows detailed information about the flow. This information is divided among several tabs. In particular, it is interesting to take a look at the “Details” tab, which shows a table containing general information about the flow, and the “Graph” tab, which shows the process graph and which steps have been executed. In this tab you may see that the workflow is currently in the “Purchase Manager approves?” step. The flow will stay in this step until the question is answered or timeout expires. To open the form in which you may answer the question, there are many alternatives. You may click on the question step that appears in the “Graph” tab, and then on the task shown in the “Step tasks” table. An alternative is to click on the “Active tasks” link, which is at the bottom of the flow details page, and then click on the row shown in the view. The question’s response form is shown in Figure . There, the Purchases Manager can see in the “Task subject” field the name of the requester (remember that we have used a tag), the amount of the requested expense, and he may enter a comment in the “comment” field. Then, he must choose what the answer is, by selecting “Approve” or “Reject” in the response combo box. Finally, he must confirm his answer, by clicking on the “Respond” button. Enter the comment shown in Figure and answer the question with the “Approve” response.

Page 38: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

38

Figure Flow details

Figure Response form for the question

Page 39: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

39

Viewing notifications After answering a question, go to the flow details page again. In the “Graph” tab, you will see that the workflow has finishd executing the “End (approved)” step. If you open the “Details” tab, you will see that the “Flow status” is “Finalized”. This indicates that the flow has ended its execution. It remains to see the notification sent to the requester letting him know that his expense has been approved. This notification can be seen by clicking on the “Notify approval” step in the graph and then clicking on the notification in the “Step tasks” panel. Figure shows the notification form. There, the requester sees in the subject that his request has been approved, and he may see the comment written by the approver and the amount of the expense he had requested. It is advisable, at this moment, to execute a considerable number of flows, testing different paths we defined in the process design. For example, you may execute flows in which the amount is greater than or equal to 500, and give different answers to the approval questions.

Figure Notification form

Views In order for you to be able to view the flows based on the template you created, you may use a custom view. To go the page where views are created, click on “Manage views”, which is a link that appears in the header of Q-flow’s web site. There are several tabs there. To create a view containing flows, you must open the “Flows” tab en click on the “Add view” link. When you do that, the view configuration page is shown (Figure ). This page is divided into many different tabs that allow one to configure several of the view’s aspects.

Page 40: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

40

In the “General” tab, enter “Expense requests” in the “Name” field, and check the “Show view in navigation tree” option. In the “Filter” tab, add a filter so that the view shows only flows based on the template we created before. To add a filter, do the following:

1. Click on the icon that can be found in the column named “Column name” in the filters table. 2. Select the “Template name” column. 3. In the “Operator” combo box, choose “Equals”. 4. Click on the text box that is in the “Value” column. 5. Write “Tutorial” and click on “OK”. 6. Click on the “Add” link, which is next to the “Action” column.

After that, click on “OK” to create the new view. Note that the view appears in the navigation tree, under the “Flows” group, which appears in the “Views” group. When you click on this link, you will be able to see the list of elements belonging to the view (Figure ).

Figure View settings

Page 41: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

41

Figure View's list

Web Parts Web parts are web components that can be added to Q-flow’s main page, and are a good way of having easily accessible userful information. In particular, it is possible to use web parts of the chart type, which show system statistics in the form of pie or bar charts. We will add a chart that shows the workflows of the template we created, classifying them according to their flag. To do this, first we must go to the home page by clicking on the “Home” link, which is in the page’s header. Then, click on “Modify contents”, which appears in the upper right part of the main page. Then, the left and the right zones will appear, as well as the web parts catalog, as shown in Figure . Web part zones are containers where web parts may be placed. In the web parts catalog, we will select the “Charts” category, and in this category, we will check the “Template flows by flag” option. Then, click on “Add”. The chart will be added to the left zone. Now we must configure the chart so that it shows the workflows based on the template we created. In order to do this, do the following:

1. Click on “Edit content”.

Page 42: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

42

2. Click on the arrow that can be found in the upper right corner of the web part, and choose the “Edit” option from the menu that appears.

3. A panel will appear, showing properties, like shown in Figure . You must choose the “Tutorial” template in the “Template selection” property.

4. Click on “Add”. After that, the chart will be shown with the data related to the flows based on the “Tutorial” template that have been executed, as shown in Figure . Click on “End editing” to finish editing the web parts. It is possible to see a list of flows with a given flag by clicking on one of the chart’s bars.

Figure Web parts modification

Page 43: Q-flow 3.0: Q-flow Tutorial - Urudata Tutorial-v1.… · Qf304006ENG Tutorial de Q-flow v1.0 10 Figure A new template has just been created Process steps ... have more than one end

Q f 3 0 4 0 0 6 E N G T u t o r i a l d e Q - f l o w v 1 . 0

43

Figure Web parts edition

Figure Web part added to the main page