StefanHoutzager

StefanHoutzager

Elixir and BPM (business process management)

Just reading an interesting document wherein elixir takes an important place
http://arxiv.org/pdf/1601.05976.pdf . BPM (business process management), for those who never heard of it, is a sort of Model Driven Development; in BPM you model a workflow / process mostly visual and use this model for execution. So the process that was hidden in your code becomes visible and maintainable for business specialists (I mean specialists that do not code). It can be used together with other MDD parts like BRM (business rules management). Here the rules are extracted out of the code. Even the screen / form builder where you visually compose your forms is a form of MDD. You can choose to create executable models (for example an xml or json that can be interpreted by your code), generate code based on your model or choose a mix. I prefer executable models. Here a company that did a lot of research which names key advantages: https://www.mendix.com/blog/the-power-of-mendix/ .
The paper about bpm/elixir only mentions code-generation, I would like to stress the preference for a model interpreter.
Some web-based MDD frameworks / libraries / tools would definately add to a compelling / competitive elixir development environment.

Most Liked

StefanHoutzager

StefanHoutzager

About the writer Robert Singer of the document: http://www.robertsinger.eu/web/.
Surprising for me that there are no reactions on this post. A wildly interesting subject it seems to me, I think elixir would be ideal for a bpms.

StefanHoutzager

StefanHoutzager

I have never used a full blown BPMS in production, allas. Only small but nifty homegrown workflow design tools. The most advanced one was made in a company for life insurance software. Life insurance specialists could configure their products with the software and use them afterwards. The software was very succesfull and the small company (maybe 30 workers) was bought by their most important customer: a large dutch life insurance company (thousands of workers). I have no idea about improvements that have been made with this product, but you can easily find some things out for yourself with google. I’m sure BPM can be exploited succesfully in other markets also.
I have seen a full blown BPMS during a course of a week. It was savvion. An expensive product, but vast, impressive and “complete”. It was built with java. I’m sure a better version could be built with elixir or erlang. Most BPMS systems moreover need some client install, a webinterface would be preferable. There are at least some online BPMN 2.0 designers (a lot more than just a designer is needed in the UI for a comple BPMS). Bpmn.io (free) is in development, the demo (https://bpmn.io/ , “try online”) is of an old version I think. It is a very very incomplete designer. There are others, f.e. GoJS is not free has more possibilities.
I will search for a video / reading now.
Edit: the first two hits with “business process management” I found worthwile, but they might not satisfy you. These are very short intro’s that give an overview:
https://www.youtube.com/watch?v=XtvIU0ZCwjE
https://www.youtube.com/watch?v=_YXqnEXnnBk
To see the software in action you could look at f.e. some savvion demo’s on youtube or google for “best business process management software” or whatever, choose the tool that looks promising and try to find more info on it

MrDoops

MrDoops

Where BPM sorts of solutions can be very powerful is when you have somewhat technical domain experts who can’t code, but can model or read a business process diagram. Spreadsheet wizards tend to find this kind of pseudo-coding easy. I walked through an accountant responsible for our sales commissions how to use Process Builder (Salesforce tool) and sent him some documentation to reference. It took him a couple weeks, but he automated a lot of the headache in that process without me having to spend the time to learn the domain in depth to code up a solution. I’ll have to rebuild that piece pretty soon anyway (it is a Salesforce tool after all), but it has provided a lot of value in the mean time, and now I have something to reference when scoping the long-term solution out.

Poorly/cheaply/quickly built applications can run into the issue of requiring a developer resource to make changes to processes, and that can be very problematic for a business. It can get worse when the business hacks together some other solution with spreadsheets and now the source of truth is spread-out (pun intended). As much as I dislike solutions like Salesforce, they do allow for quick, point-and-click changes which is something that Rails/Phoenix approaches which require a developer resource aren’t very good at unless the change is designed for.

BPM / declarative business process modeling solutions would be good for communication and frequently changing domains. That being said I think the line where a business should just call up an experienced consultant and have them build it is sooner than typical.

Last Post!

CharlesIrvine

CharlesIrvine

Where Next?

Popular in Discussions Top

New
chuck
Let me start by stating an assumption: Phoenix is a great approach to building REST APIs. There are many reasons for this, but I will ass...
New
slashdotdash
Phoenix Live View is now publicly available on GitHub. Here’s Chris McCord’s tweet announcing making it public.
New
Fl4m3Ph03n1x
Background A few days ago I was listening to The future of Elixir from Elixir Talks, with Dave Thomas (@pragdave ) and Brian Mitchell. I...
New
thojanssens1
It would be nice to be able to define a redirect from one route to another from the router.ex file. E.g.: redirect "/", UserController, ...
New
owaisqayum
I have a sample string sentence = "Hello, world ... 123 *** ^%&*())^% %%:>" From this string, I want to only keep the integers, ...
New
shishini
I think this twitter post and youtube video didn’t get as much attention as I hoped I am still new to Elixir, so can’t really judge ...
New

Other popular topics Top

electic
Hi, I am new to Elixir. I am trying to use the DateTime component to insert a date into MySQL however the there seems to be no way to fo...
New
lanycrost
Hi everyone! I need implement if…else if…else condition from my elixir code, and anymore of this control flow structures not work proper...
New
dokuzbir
I want to highlight html closing tags when i click a html tag. That works in .html files but doesnt work for html.eex templates. How can...
New
aadeshere1
I have a another noob question about loop. Since elixir is immutable, while loop is not directly possible. total = 10 while total != 0 ...
New
WestKeys
Currently suffering from paralysis by [HTTP client] analysis. This is rather unusual in Elixirland as there tends to be consensus on the ...
New
TunkShif
This post is an instruction guide to help you setup your Neovim for Elixir development from scratch. It includes general information on h...
274 42576 114
New

We're in Beta

About us Mission Statement