Question 5
An application developer has created a batch process that leverages an embedded Java SE rule engine to validate some data, calculate some values, and report some recommendations for business users.
Some new calculation changes introduced by the application developer worked perfectly in the development, quality assurance, and staging environments but do not work when run in the production environment. Some of the calculations produce incorrect values. The calculations depend on some external data sources for information which the business users maintain.
The business users know which version of the batch process they are running but the application version and the RuleApp versions have no correlation because of poor application governance. The application developer suspects that the data sources maintained by the business are wrong. The business believes that the new calculations are executing wrong.
In addition to poor deployment governance, the application does not log information about the rules or external data being used. Furthermore, the use of the embedded rule engine does not leverage hot deployment of rules so the application developer is not sure how to determine if the new calculations are being used by the business users.
How can the application developer diagnose the situation?
Compare the data from the data sources in production to the data in the data sources in the non-production environments. Diagnosis of the rules are not required.
Unpack the application JAR file and compare the RuleApp rules embedded in the JAR file to the last RuleApp on the developer’s file system.
Run the batch program with remote debug flags set and use the application developer’s Rule Designer to debug the Java application and rules remotely.
Ask the business users which version of the application was being used and use that information to determine which rules are embedded in the application.
Correct answer: C