Search code examples
databasebpmn

How can I represent a software flow using a BPMN?


I know that BPMN is used for Business Processes but is it possible to use it for software flows?

An example could be when a user enters a web application(www.foo.com) using his/her Google credentials(Google sign-in API). In this software flow the system compares the Google credentials(Google Database) with the web applications internal credentials(www.foo.com Database) to check if the user is an existing or a new user.

Please can you provide examples on how the BPMN is going to look like if possible.

enter image description here


Solution

  • Sure, if you choose to model that problem domain with BPMN, you can do something like that. I give you an example.

    enter image description here

    I am using here a BPMN 'collapsed pool' for the user, a 'message' for the Google API Credentials, 'service tasks' to characterize automatised software steps and a 'data store' to visualise the internal database. The read/write usage of the database can be visualised by ingoing or outcoming 'data associations' (the dotted arrows), but I recommend to use that cautiously, as data associations can quickly clutter a software oriented process model. Better focus on the process flow (the solid arrows, called BPMN 'sequence flows').