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
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
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
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.
Popular in Discussions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance








