How to model details of a system processing in bpmn?

38 views
Skip to first unread message

bpmn user

unread,
Sep 10, 2020, 9:51:17 PM9/10/20
to BPMN Forum
Hi guys
I have a general question about some BPMN concepts and i will be appreciate if you help me find the answer.
I want to model a process which contains a part that should be done by user in a system.
This part has a lots of steps. For example user should first sign up to system and he should fill a form for that. I want to model also the validation process of the form in my BPMN process (because i need to document the whole process in details) . for example check if the username is unique, the password has the required length and a few more rules. please consider that this parts should be in details i mean all the conditions and possibilities should be model in details.
My question is that how i should model this parts in my BPMN diagrams ? Do i should still use BPMN for that or i have to use some UML behavioral diagrams such as state machine or activity diagram for this purpose ? If No, how to connect my BPMN models with those UML diagrams and is this kind of modeling (mixing BPMN and UML together) valid and standard ?
And if Yes, how to model behavioral details of a system in details with BPMN ? for example checking that if a text field for phone number contains only numeric values should be a service Task ? and for containing Lane of this Task what should be the name of Lane ? “System” maybe ?
Thank you all very much

Anthony Horner

unread,
Sep 11, 2020, 4:02:36 AM9/11/20
to BPMN...@googlegroups.com
Hi, 

I would be aware of making the distinction between process flow and page flow.  Bpmn is more to do with capturing the underlying business logic.  You could model to such a low degree and maintain a hierarchy of ‘processes‘ (arguable that these are processes )but at some point the cost of maintaining them all outweighs any gains.

--


--


You received this message because you are subscribed to the Google


Groups "BPMN Forum" group.


Public website: http://www.bpmnforum.com


To post to this group, send email to BPMN...@googlegroups.com


To unsubscribe from this group, send email to


BPMNforum+...@googlegroups.com


For more options, visit this group at


http://groups.google.com/group/BPMNforum?hl=en_US?hl=en





---


You received this message because you are subscribed to the Google Groups "BPMN Forum" group.


To unsubscribe from this group and stop receiving emails from it, send an email to BPMNforum+...@googlegroups.com.


To view this discussion on the web visit https://groups.google.com/d/msgid/BPMNforum/626b2188-9f3b-4251-b83e-f1dce224d614o%40googlegroups.com.


Michelle McWilliams

unread,
Sep 11, 2020, 12:28:39 PM9/11/20
to BPMN Forum
I think that's it's important to consider the distinction between a procedural document like a job aid, and a business process model.  Much of the details that you are talking about, I would consider job-aid material, where you may include screen shots and minute step by step how-to instructions. Granular information about "how".  Whereas in a business process model, I consider the focus to be on what happens, by who, in what order, when, and whether decisions or events alter the flow of the process.  

Emmanuel Gaudin

unread,
Sep 14, 2020, 5:25:39 AM9/14/20
to BPMN...@googlegroups.com

This is a very general question. I think you could use the journal review example enclosed in which there are a lot of verification going on.

JournalReview.png

--

Kai Grunert

unread,
Sep 14, 2020, 7:32:24 PM9/14/20
to BPMN Forum
Hi,

I somehow disagree with some of the previous writers: you can model nearly every process with BPMN (or UML, or EPC, or Petri Nets, etc.). It is not important if the process is a page flow or another more technical sequence of steps to achieve something. (The important term here is "process". Of course it is not recommended to use a process modeling language to explain a whole software archictecture...)

What is important for you is
  1. why you want to model something (e.g. documentation, analyzation, evaluation, automation)
  2. for whom you model something (the stakeholders, e.g. manager, technical staff, etc.)
These questions determine how you need to model the process: which selection of elements to use (for understanding), your language and terms, how important it is that you exactly follow the standard, etc.

Since your questions are very broad, here are some thoughts:
  • get a good book about BPMN and read it (e.g. Bruce Silver's book)
  • as a beginner you often try to model everything in one diagram. But there is no problem in creating multiple process diagrams for different parts. (If you want to link them, in BPMN you can do that with "subprocesses".)
  • You can even use different modelling languages for different diagrams, if some parts are better explained in UML or so. (Don't mix different standards in one diagram ;) ) The connection is often up to you - maybe you present it to your manager with multiple powerpoint slides. The manager will not care, if this is standard conform (btw, having 100% valid and standard conform process models is only important for automation. Of course you should also not be too far away from the standard, or noone will understand your models anymore.)
  • pay attention to the abstraction level: for example, if your process is "register" -> "validate" -> "store". Then, you usually don't want to have a process, where the first activity is  "register" but the validation process is splitted into "check username", "check forename/surname", "check postal code" - this is not the same level of abstraction, because you can also have  "register" splitted into multiple steps. 
  • your validation process could be modeled purely in BPMN, but probably a better option is to use a Business Rule Task (a typed task) and model the validation process in DMN.
  • you would only use a "service" task if you communicate with an external IT system. if you want that for checking the phone number, okay. but this is probably not your intention. (Is it  important that you use typed tasks? this is usually only necessary if you want to automate it. if that is your goal, use a script task - although there are actually some process engines out there that could do the validation locally with a service task (in my mind a misinterpretation of the standard).)
  • for your own process, "pools" (which contain "lanes") are optional. if you model them, why not using the name of the system that actually validates the input, e.g. the browser?

Michelle McWilliams

unread,
Sep 14, 2020, 7:35:32 PM9/14/20
to BPMN Forum
Also you know, it really depends upon what's the point or purpose of your mapping. 
I would not model both BPMN and UML on the same diagram.  However, there is no reason you cannot reference a UML diagram or a job aid document as a little note note on the diagram attached to an appropriate task box. 
Unless the main point of your diagram is to chart out what the system is doing, in which case you probably really aren't looking at a need for a BPMN model, and may want to find a forum for UML or other system data modeling.  




On Thursday, September 10, 2020 at 9:51:17 PM UTC-4, bpmn user wrote:

bpmn user

unread,
Sep 18, 2020, 11:24:04 AM9/18/20
to BPMN Forum
Hi guys
Thank you all for your times reading and replying to this post

To clarify my issue, I would ask you to take a look at a process model
This process model shows a common process of registering a user in a system 

7360644b9b829c42f56ff49913c6ef370630fe11.png

The second lane which named “System” represents the behavior of the system when the user clicks on the register button.

My question is that is this kind of modeling true or not? because the second lane completely represents the behavior of the system and I think for modeling the behavior of a system we should use UML diagrams like State Machine or Activity Diagram not the BPMN!

If this kind of modeling is not acceptable, how should I model that?

Keith Butler

unread,
Sep 18, 2020, 1:15:30 PM9/18/20
to BPMN...@googlegroups.com
Using different pools (not lanes) could represent the functional behavior of people in one and computers in another because they are rather autonomous.
Messages should be used to communicate between pools.
You may not get input from all the or-gates that flow to the and-gate at the bottom.
Try a complex-gate instead.

--
--
You received this message because you are subscribed to the Google
Groups "BPMN Forum" group.
Public website: http://www.bpmnforum.com
To post to this group, send email to BPMN...@googlegroups.com
To unsubscribe from this group, send email to
BPMNforum+...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/BPMNforum?hl=en_US?hl=en

---
You received this message because you are subscribed to the Google Groups "BPMN Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to BPMNforum+...@googlegroups.com.


--
Keith A. Butler, M.S. PhD.
BPM+Health-logo-Founding-Member-small.png

Kai Grunert

unread,
Sep 22, 2020, 6:52:31 PM9/22/20
to BPMN Forum
Not quite sure what you mean with "true or not" - if you read my last message, I already answered this topic: it is always up to who needs to understand the diagram and what you want to do with it. For example: if your manager just want to get an overview how the process works, it is probably good enough (just ask him). If a programmer needs to know the rules how to assess a proper password, you need more details... (but you can also do this kind of modelling in BPMN, DMN, etc.)

which part would you like to model in UML and why? (actually we can't answer the question for you, if you should use UML or BPMN. you need to ask your stakeholders and find out what is better for them. an easy way would be to just model this simple process in UML **and** in BPMN. then go and ask you stakeholders which they like more.)
  • You have an obvious error in your modelling: you have multiple XOR-Gateways in your process, but the joining one is an AND-gateway which will lead to a deadlock situation. You should use a joining XOR instead
  • I personally don't like the style where two sequence flows go into one activity: i think it is not obvious what it means (if it is an AND or an XOR join). I would recommend to put an XOR joining gateway before the activity

Emmanuel Gaudin

unread,
Sep 22, 2020, 6:52:40 PM9/22/20
to BPMN...@googlegroups.com
What you wrote seems fine to me. You are describing the process of what to verify when a new user signs up. This would not really fit in a state machine description because there are no states here, it is just a bunch of verifications one after another. A state machine is event based and the only event is when the user clicks the register button.

--
Reply all
Reply to author
Forward
0 new messages