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

AstonJ
As the title says, please share what you’ve been up to with Elixir. Whether that’s been learning it, looking into it, making stuff with i...
2977 92995 915
New
AstonJ
The obligatory hello world thread! Who are you and where are you from? :stuck_out_tongue:
4616 55835 594
New
caslu
I want to open this thread for you all to discuss and help those who really like Ash but are still hesitant to use it in a real project. ...
New
arcanemachine
I was working on an Ecto migration and I needed a timestamp. So, for the nth time, I looked up the different data types for timestamps, a...
New
alexslade
Fly’s CEO posted this recently - Turn And Face The Strange · The Fly Blog It says that Fly is going all-in on sprites, which is a worry ...
New
Herve37
We’re evaluating API mocking tools for OpenAPI-based projects and would love to hear what other teams are using. We’re particularly inte...
New
matt-savvy
Is there a word for the ~> symbol used in Version strings? Do you also just call it a Squiggle Arrow™ ?!
New

Other Trending Topics Top

garrison
Hobbes is a low-level distributed database for the Elixir programming language. Hobbes provides a simple, safe, and scalable storage lay...
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
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
netoum
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
wintermeyer
There are three potential reasons for members of this forum to have a look at https://vutuv.de You are tired or annoyed of LinkedIn. Yo...
New
aseigo
ICal is a library for interacting with iCalendar data. It parses iCalendars into typed Elixir structs via ICal.from_ics, and can prepare ...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews