DOC PREVIEW
Chico CSCI 693 - Comparing .NET and Java based rules engines

This preview shows page 1-2-3-4-5-6 out of 18 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 18 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 18 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 18 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 18 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 18 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 18 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 18 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

CSCI 693 Research PaperRules EnginesComparing .NET and Java based rules enginesBy:Manali Kulkarni MS Candidate, California State University, Chico, CA [email protected]: Dec 17, 2009.CSCI 693 Research Paper: KULKARNI, Manali 2Abstract – The financial services industry is a fast paced one; it is dominated by incessant requirements changes, regulatory compliance mandates and new products. To handle this volatile and fast paced environment, it is the need of the hour to have tools that are quick, flexible and accurate. The financial services sector thrives on Rules Engines; they are employed by most financial giants today to facilitate their day to day workings. In this paper I intend to research the two categories of Rules Engines – Java based and .NET based. Beyond the comparison; I also intend to emphasize the need, relevance and applicability of Rules Engines in the financial services world.Index words – Rules Engines, Rule-based programming, Business RulesI. INTRODUCTIONRules Engine is a software tool that provides the user with the ability to create, classify, modify, manage, test and deploy business rules [2]. Rules engines are an integral part of a Business Rules Management System (BRMS). Business rules change more frequently than application code and Rules Engine gives the Business Analyst the ability to modify and deploy new business rules into the production environment without having to deal with the complex task of code redesign. One of the biggest merits of a Rules Engine is its ability to segregate application code from business rules.II. BACKGROUNDRules Engines, as the name suggests, it is a software tool that employs rule-based programming. Rule-based programming was first perceived in the seventies for AI (Artificial Intelligence) systems. Since then it has found applications in diverse fields such as Healthcare, Telecommunications, Travel and Transportation, Manufacturing and Supply chain, Insurance and Financial Services among many others. In the realm of rule-based programming, rules are expressed as simple “If <condition>, then <action>” statements.CSCI 693 Research Paper: KULKARNI, Manali 3Most commercial rules engines are inference/production rules engines that use the forward chaining algorithm. Inference engine, as the name implies, analyses the data available and draws inferences from it which help move closer to the final goal. Forward chaining algorithm gathers facts/data, draws conclusions and performs actions in accordance with the conclusion. It essentially fires all the rules that match a given condition and continue to do so until the goal is reached or there are not more conditions to match [9].III. RULES ENGINES IN THE FINANCIAL SECTORBusiness rules are dynamic in nature and more so in the financial sector; they change constantly and not seldom. An example of a simple rule change in the mortgage industry would be a credit score eligibility change – Change the existing rule: If the customer has credit score > 720 then approve loan of $500,000 toIf the customer has credit score > 680 then approve loan of $500,000. Having worked in the financial industry for more than 6 years I have seen criteria such as the credit score eligibility change as frequently as multiple times in a day. The example above is a simple 2-digit change that can be extremely crucial to the business involved.Along with changing business rules, financial firms are also required to abide by a number of regulatory compliance directives. These mandates can change as often as once a week or as rarely as once a year. However it is compulsory to comply with the directives and failing to do so invites heavy penalties from the enforcing agencies. Rules engines make it easy forCSCI 693 Research Paper: KULKARNI, Manali 4users to implement these seemingly intricate mandates using lucid “If, then” statements. An example of mortgage fees compliance rules would be “If State is NY then Closing Fee is $ 0”. This simple rule makes sure that the loan process does not go forward until the closing fee field is made zero.Traditional application development is rendered redundant when it comes to dealing with the ever-changing nature of business rules. In the typical orthodox environment where application developers handle all modifications and treat them as “code change”, a simple credit score change like the one mentioned above would require a lot of unnecessary effort and time. Employing the usual conventional approach would mean the business rules and the logic is intertwined heavily with the application code, database structures and objects, thus making it a tedious process to modify them quickly. A relatively plain and lucid rule change would still require the developers to scour through the application code, locate the business rule, figure out the logic, modify it, pass it on to the QA (Quality assurance) team, have them test it for errors, then pass it on to the UAT (User acceptance testing) team, have them test it to make sure it meets client/user specifications and then deploy it to the production environment. This makes the process laborious, time-consuming, expensive (too much man power and hours involved) and incompatible with the supersonic speed at which e-businesses operate.Rules engines provide the necessary relief. They separate application code from business logic. This solves a majority of the problems involved with the time complexity and cost involved with the orthodox method of application development. Popular commercial rules engines today have the ability to fire thousands of rules per second and accommodate up to 50,000 rules [5]. Rules engines are so transparent and easy to manage that the entire cycle ofCSCI 693 Research Paper: KULKARNI, Manali 5locating business rules, modifying, testing and deploying them to production can be done by a business analyst alone. IV. TYPES OF RULES ENGINESThe two most dominant platforms employed in the industry today are Sun Microsystems Java [7] and Microsoft’s .NET [8]. Aptly so, the two types of rules engines that are provided by vendors are also Java-based and .NET-based. Most application development today is carried out in these two languages and although the BRMS separates application code from business logic, to be able to conceive an integrated system the rules engine needs to be capable of reading .NET and Java objects along with communicating with multiple databases.1. .NET based


View Full Document

Chico CSCI 693 - Comparing .NET and Java based rules engines

Download Comparing .NET and Java based rules engines
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Comparing .NET and Java based rules engines and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Comparing .NET and Java based rules engines 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?