[Pharo-users] Workflows and possible usages

Tim Mackinnon tim at testit.works
Thu Sep 26 04:12:50 EDT 2019

Hi everyone, in my day job I encountered an interesting domain problem that a previous java team has made a bit of a hash of ...

I thought it might be interesting to model it in Pharo to help explain it better to a new team  and I was interested in community thoughts as we have some of the best thinkers on tap.

The scenario is that a user is presented with several input fields to apply for a loan , one of them is Amount and another the type of loan (cash, invoice, machinery etc).

Depending on these answers, they are next presented with different questions - if the amount > 100k there are some high value questions, if the loan type is machinery there are some more additional questions on the type of machine etc. This progresses to a third form and potentially a 4th and 5th.

So it’s effectively a decision tree, that rules out different loan types.

The UI is a React web form, and I’ve suggested to the team to do some experiments with a dynamic UI that interprets a Json payload that describes the questions, so it’s really about how to model the questions and then render them out in this Json format.

I was wondering if this was a typical workflow problem (and whether the netstyle engine was appropriate or wasn’t there some other ones  announced recently too?)

I’ve never used a workflow engine - But it sounds a bit like the problem above? Or not?

Alternatively, I was thinking I could model groups of questions into a Decision, and then have a DecisionJourney of Decisions. Each decision could have some match and dependency criteria - e.g. some sort of matcher block eg [:d | d amount > 100 & d type = #machinery] and then some method to add questions to  a DecisionForm on a match which would then render the Json payload.

But I wondered if workflow engines just do this, and they might handle extra stuff for free.

Anyone have any thoughts or directions to explore?


Sent from my iPhone

More information about the Pharo-users mailing list