W dniu 2010-07-29 05:47, BJ Freeman pisze:

My efforts have been how to have a ui that a business person would
understand, and generate ECA and SECA to accomplish Thier logic. The
top level of this would be when they generate a business plan, it sets
up the rules on how the business flow is done. This actually is base
on compiler theory and some program that create web code for a
particular type of web.  I estimated to be about 1.5 man year.


I thought something similar, but not connected directly to UI. There should be some kind of stateful document business tier which should react to either generic events (like drop line, change field). Events could come from ui tier, but also from batch tier. E.g we want to create or change order from XML source. Then it should take current db state of order (if it exists) diff with target state and generate appropriate events. Ideally this event should not require to load into memeory whole document tree. The best thing would be to have rules/expressions which are automatically translabe either into java code or SQL. That for example would make possible to decide if we want to summarize order via java code which makes sens when we have it already loaded into memory or SQL if we change only one line.

The best thing I was able to find is called functional reactive programming and has some implementation for C#, Scala and functional languages. In languages which make possible to get AST of expressions we can track dependencies on it or translate it to SQL update. And DSL is also an option. I tried Drools which does not seems to be best solution as it does not track dependecies between rules (rule fire order must be given), so it make possible to calculate order summary before calculate line summary.

Another thing is to make such a document logic extensible and replacable. But if each rule would have its name that would should be easy.

If someone would be interested in sponsoring such a project I could give more thoughts on it.

Best regards,
    Marek Mosiewicz
    http://www.jotel.com.pl

Reply via email to