We're developing an application which implements business logic in stored procedures on an Oracle database. It has been this way for a few years. The business rules are many, diverse and get often customized for specific customers.
Currently they're somewhat intermixed with data management and data retrieving code. I've been thinking of proposing to move some of the logic in a BRMS.
My colleagues are likely to oppose that because:
they experienced that the current implementation based on PLSQL is considerably more efficient than one having logic implemented in the middle tier, i.e. in Java.
Our users often do really need short response time from our software, because it also directs their operations in industrial environments.
our team is not big and the people most knowledgeable about business rules are also the ones that implemented the stored procedures. They're not used to work with Java and, above all, using PLSQL allows us to ignore all the cruft regarding frameworks, system integration and mapping between different tiers.
If we're going to switch to something else other than PLSQL it has to be something that doesn't require lot of java coding and is possibly framework independent.
PLSQL allows to leverage the application's weight onto an expensive DBMS. Ideally we'd like an effective integration between BRMS and DBMS.
To better present my proposal I'd need some objective figures about the following issues:
- performance penalty for moving from stored proecdures to BRMS
- integration between DBMS and BRMS
- abstraction offered by BRMS compared to the one offered by PSLSQL and pure java code
- training needed to for the switch
I looked on the net and found a few references. Unfortunately most of them compare implementations being either pure Java code vs stored procedures or pure Java code vs BRMS. I couldn't find anything comparing stored procedures and BRMS, or that describe how to integrate a stored-procedures solution with a BRMS.
Many thanks.