Question: I would like to know, how the complexity of a rule based application can be measured?

Is there a standard way defined by IBM ?

or something with Function Point to measure the complexity of a software based application 

Complexity can always be based on some parameters like the 1) Parameters being passed / 2) Number of Rules present / 3) database look ups / 4) Network Latency / 5)Ruleset Parsing Time / 6) Ruleset Execution Time / 7) Application Design / 8) Execution Unit Configuration / 9) Configure the XOM / 10) Asynchronous Ruleset Parsing / 11) Connection Pool Size / 12) RES Server Configuration / 13) XU Configuration / 14) Reduce Trace in Server Logs 

Can someone please help me understand the standard way IBM does recommend it or is it decided by the application architect ?

Any and all Inputs are much appreciated... Thanks in advance.

Answer: 
There is no defined way of measuring the 'complexity' of an ODM application. However, you should make sure you use the correct topology for your needs (see the [Deployment Architecture](http://www-01.ibm.com/support/knowledgecenter/SSQP76_8.7.0/com.ibm.odm.dserver.rules.deploying/topics/tpc_ds_managing_env.html?lang=en) ODM documentation), and the appropriate design decisions for your performance requirements (See the ODM documentation at [Overview: What affects the performance of a Decision Server application](http://www-01.ibm.com/support/knowledgecenter/SSQP76_8.7.0/com.ibm.odm.dserver.rules.designer.run/optimizing_topics/tpc_opt_perfscalability.html?lang=en) and [Improving the performance of Rule Execution Server](http://www-01.ibm.com/support/knowledgecenter/SSQP76_8.7.0/com.ibm.odm.dserver.rules.res.managing/topics/tpc_res_performance.html).)

There is also the [Improve performance for IBM ODM series](http://www.ibm.com/developerworks/views/bpm/libraryview.jsp?search_by=Improve%20performance%20for%20IBM%20Operational%20Decision%20Manager) on developerWorks, which discusses in detail the possible configurations and their impact on performance, including the parameters you mentioned. dW Answers also has a few entries on ODM performance listed in [Improve performance of ODM modules](https://developer.ibm.com/answers/questions/174010/improve-performance-of-odm-modules.html).
For me there are 3 key factors:

* Integrations with other applications (SOA approach for ws -ESB, BPM, .net, etc)
* Programming level, if you need to use a lot of functions for the rules (fors, maps, vectors, etc)
* Rule projects volume, how many decision services you would have.

Hope this help you.