To jest stara wersja strony!


Lab. 1: Working with the Activiti platform

Signavio Process Editor

Please sign up for the Signavio Platform: Registration for the Signavio BPM Academic Initiative by selecting: I agree that anonymized versions of all models I create using this platform can be made available for research purposes.

To log into the editor, please select Academic Login on the Signavio BPM Academic Initiative page.

www.manning.com_rademakers2_rademakers2_cover150.jpg

Activiti BPM Platform

Auxiliary materials for the laboratory:

For the needs of today's classes you can deploy Activiti platform from the website: https://www.activiti.org/download-links (the lab is prepared for Activiti version 5) on the Apache Tomcat or JBoss Application Server. Then, you can launch the Activiti Explorer in your browser: http://localhost:8080/activiti-explorer, and then sign in to your account:

login: kermit
password: kermit

You can also use the temporary server version at our server: http://192.168.1.145:8080/activiti-explorer/ui/

When logged in, you should have noticed the top bar displaying the menu of 4 icons for administration of:

  • Tasks - tasks,
  • Processes - processes,
  • Reports - reports,
  • Manage - other issues, such as users, groups, database management, or process implementations.

Creating accounts

In the Groups tab (Manage menu), look at the existing user groups. As an administrator user, we can use the default kermit user for a while, but we will need a non-admin user.

So, create a new user for you. Remember about a unique identifier! Assign your user to some groups but not the Admin group.

Creating a new process model

For better understanding of the BPM platform, we will create a very simplified model of the offer management process.

From the menu, select Processes. You should see 3 tabs:

  1. My instances – to observe the existing instance of the process,
  2. Deployed process definitions – to run processes deployed on the Activiti platform,
  3. Model workspace – to create new models and deploy or edit existing process models.

In the Model workspace tab, click on the New Model button and create a new process model using the Activiti Modeler. Give your model a name and a description.

In the Activiti Modeler application window, set the process attributes (on the right side of the window). The key elements are: the process identifier (Process identifier) and the process name (Name), as using them we will be able to distinguish our process from other processes or processes of other users. Please also fill in the author's field (Process author).

Modeling a simple process

By dragging from the left menu the Start event element, we will start modeling the process. At the beginning, let's model a very simplified process as follows:

As in the case of the process, the attributes for the BPMN elements we can set on the right side of the window.

  • For the Start event element:
    • Documentation: Start proceeding with an offer.
    • Initiator: initiator (this will hold the user who initiated the process)
    • Name: Offer received
    • Form properties – click on … and in a new window, set the following attributes as in the screenshot:

  • For the Specify offer task:
    • Documentation: Please add available specification for an offer as attachments.
    • Assignments: we have 3 possibilites
      • assignee – assign a task to a specific user,
      • candidateUsers – assign a task so that any of the specified users can execute it,
      • candidateGroups – assign a task so that any user belonging to the assigned group can execute it.

In our case, we only set the variable assignee to the value of ${initiator} – this notation means that we indicate the person who started the process (initiator) as the task performer.

Moreover, for this task, set the following Form properties:

  • Specifications details (id: specDetails) – the level of detail of the order specification (as for now, we can set this as a boolean, and later we will convert it to enum, for representing more values like: accurate, sufficient, insufficient).
  • Person responsible (id: responsible) – person assigned to the formal analysis of the request (responsible for the analysis); this is done for assigning a person and assigning it to the variable.

So far, to test such a simple process, we abandon the further elements of the process. In the meantime, let's do one of the final tasks: Approve offer in which we set only the contractor – the person assigned to carry out the formal analysis (please use the identifier of the defined variable).

Start a simple process

We save the model and turn off Activiti Modeler . We go to Activiti Explorer . In the Model workspace tab, select our process from the menu And from the list Model action choose Deploy .

You should move us to the Deployments tab in Manage , where we choose our process (by clicking on its name) in the Process Definitions \ Once deployed, from the Deployed process definitions tab we can start our process with the Start process button. You should open the form:
Complete the form with any data and click Start process .

If all goes well, under the tab Processes My instances we should see the instance of our process,

Since the first task was assigned to us (the user who started the process), we clicked the Tasks icon and went through the tabs Inbox where we should wait for our task Specify offer . We fill in the Responsible field with the name of another user (eg fozzie or a predefined user); we can also check the checkbox Specifications details . Then click Complete task .

Now click the Processes icon and go to the My instances tab to view the diagram, task list and variables of our process. Since the Approve offer is waiting for another user, we log in to the account of the specified user (if it was a „user”, his password is: „'fozzie”), and then we finish the task Approve offer / /. We're going back to our account and checking that my Instances tab has disappeared.

The historical data of our process is stored in the database, which is quickly available in the Database tab (click on the Manage icon). Look for the 'ACT_HI_PROCINST' table and find your process there. Because our Activiti installation with Activiti Modeler does not have a permanent model set up in the lab, we will save our model at home on disk. To do this, select Show all from the menu Deployments and look for our process. Please save your process file (file with extension .bpmn20.xml ) and view its syntax. Note the attributes of the 'process' tag, as well as additional attributes of other process elements typically used by Activiti.

Model development

We go back to the Model workspace page to expand our model to the gate. Depending on the level of detail of the tender specifications, if it is insufficiently detailed, you will want to ask the tenderer to provide additional information. To expand our model, select the appropriate model, then click on Edit model .

Please expand the model to the form as in the following diagram:

An important element of the model is the use of appropriate conditions on flows across the XOR gate (depending on the value of the 'specDetails' variable). Check out the Activiti User Guide on how to define the appropriate conditions for this gateway.

Further development of the model

Boundary Event Timer

Our subprocess consists of two tasks that we contact the customer by email and we also call to inform them about the email sent. In a very detailed version, we still have the task of waiting for a response from the customer - for simplicity, assume that when the customer has answered enough information on the phone, the user completes the „Call customer” task; otherwise, it will not finish until can not obtain sufficient information.

In the standard case, when the deadline for submitting tenders expires, the subprocess should automatically terminate and terminate the process. To do this we expand the process using the 'Timer Boundary Event':

pl/dydaktyka/dss/lab1.1507584669.txt.gz · ostatnio zmienione: 2017/10/09 21:31 przez kkluza
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0