StefanHoutzager

StefanHoutzager

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.

Showing Posts 1 to 10

StefanHoutzager

StefanHoutzager OP

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.

uranther

uranther

I am still reading through that paper but I really like the idea of Model-Driven Development (Architecture/Engineering/??) in general and using Elixir/OTP especially. It’s a fresh recipe of these technologies :slight_smile: I agree about model interpretation rather than code generation; that just makes plain sense.

Have you used MDD in production before? What kinds of processes were being executed? Did it improve communication and understanding among the team(s)?

EDIT: I finished reading the paper and it whet my appetite. Do you have any good videos or reading on this topic?

StefanHoutzager

StefanHoutzager OP

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

uranther

uranther

I saw those two videos too in my search. The first author is actually a brilliant presenter; she has some other BPM videos. And in the second video, one commenter keenly points out one of the most valuable pieces of the video:

The first rule of any technology used in a business is that automation applied to an efficient operation will magnify the efficiency. The second is that automation applied to an inefficient operation will magnify the inefficiency.
— Bill Gates

StefanHoutzager

StefanHoutzager OP

Just an afterthought: I think all these “higher-level” talks are an analysis of some things that have evolved bottom-up. I don’t mean the analysis afterwards is unimportant, the ideas have to be organized and communicated clearly. But first there was chaos, and programmers like us, and then the earth appeared. :-))
Or were there some concurrent processes going on? Did they appear simultaneous? Ah, Aristotle on time and all those aporias! :slight_smile:

StefanHoutzager

StefanHoutzager OP

This is an example of an bpmn diagram. The diagram is persisted as an BPMN 2.0 compliant XML file. I’m using the open-source package bpmn.io as modeler, so I don’t need a client-install. Only thing that I have to do now is write the elixir backend … :wink:

kjwvanijk

kjwvanijk

Im curious, Why did you opt in to using BPMN when the article is about leveraging s-Bpm

StefanHoutzager

StefanHoutzager OP

I did not want to build something like s-Bpm, just my own bpms, using bpmn2.0 and dmn1.1. In the end I had to find some things out myself, the article I refered to appeared not very helpful.

StefanHoutzager

StefanHoutzager OP

small sidepath: bpmn can be used for orchestration of microservices

more interesting articles: http://flowing.io/
Even more, Forrester about low code envs in common:
http://agilepoint.com/wp-content/uploads/Q2-2016-Forrester-Low-Code.pdf

StefanHoutzager

StefanHoutzager OP

“BPMN is the most under appreciated technology in our field IMO.”
Hear who says it (see link). Likie likie! :wink:

(fyi I built a bpms - a bpmn and other dsl’s interpreter - using bpmn with an elixir backend, wip, but I have to make money with something less interesting now) :wink:
Search for keyword “bpm” on this forum to find more.

https://news.ycombinator.com/item?id=17506437

Where Next? Top

Trending in Discussions Top

budgie
A little off-topic, but I feel like people here have a good head on their shoulders. I used to be quite good at making software. Was luc...
New
axelson
Hi there! :wave: @frigidcode and I (but mostly him) have been running an Elixir Book club, we’re almost done with Designing Elixir Syste...
New
juhalehtonen
There has been a thread to discuss the Stack Overflow Developer Survey on this forum every year since 2018, so here’s yet another one for...
New
achempion
I’ve been using Emacs as my main code editor for more than a two years. It’s a custom build version although I’ve tried doom emacs and sp...
New
budgie
I love Elixir. It’s one of 2 programming languages I’ve ever fallen in love with. But I don’t use it anymore. Serverless was the promis...
New
jtormey
Lately I’ve been thinking about how to organize components as a LiveView application grows. One of the pain points I’ve found (for myself...
New
Null-logic-0
What IDE or editor are you using for Elixir development? Personally, I use Zed, and I really like it, but sometimes I wish there were a ...
New

Other Trending Topics Top

GenericJam
Edit: 2026 May 15 - This post is archived. Mob is alive!! Main docs: mob v0.7.11 — Documentation A bit of explanation for the slightly c...
New
garrison
Hobbes is a low-level distributed database for the Elixir programming language. Hobbes provides a simple, safe, and scalable storage lay...
New
KristerV
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
mudasobwa
I fully migrated to my own harness from Anthropic/Gemini and I think it’s time to share it. Welcome DSH, the DeepSeek Harness, fully writ...
New
mcass19
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
ausimian
Emily is an Elixir library that runs Nx computations on Apple’s MLX. Install it as the default Nx backend and Nx, defn, Axon, Nx.Serving,...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews