Transcription

Corticon TechnologiesCorticon BPM, Ver. 4.0CORTICON BUSINESS RULES MANAGEMENTVersion 4.0CORTICON TECHNOLOGIES, INC.400 S. El Camino Real, Suite 1275San Mateo, CA USA 94402Tel: (650) 212-2424Fax: (650) 212-2727Web: www.corticon.com E-mail: [email protected] OverviewTable 1 provides an overview of the Corticon Business Rules Management (BRM) platform and itsmain modules and functionality. Corticon’s approach to business rule modeling and execution differsin a number of ways from the more traditional (RETE-based) BRM products in which developersliterally write rules using some form of rule-based language.Corticon allows users to create rule sets in a completely declarative fashion using spreadsheet-likemodels. Using Corticon, organizations can model and manage their business policies, guidelines andoperational decisions through an interface very similar to Excel.Corticon features a “design-time” rules analysis functionality that mathematically verifies thereliability of the rules as a part of the modeling process. By applying patent-pending technologyknown as Predicate Logic Matrix, this design-time conflict-checking feature helps to ensure thatmodeled rules will deliver their intended result—providing a logically complete and unambiguousdecision for every possible outcome. In effect, Corticon business models can be verified for conflictsand other logical errors with a click of the mouse, and then tested against business cases, withoutwriting code.Verified and tested, rule sets form an executable decision service. Each decision service conforms toa “service contract”, which fully describes the inputs and outputs of the service. Corticon generatescompiled, optimized executable decision services (in the form of optimized Java byte code), whichare deployed as Web Services or Java Services, enabling standards-based integration to automatedecision points across corporate processes and applications.Corticon decision services are optimized to execute reliably and exceptionally fast on the server.Runtime performance is fast because what is being executed has been optimized and compiled atdesign time. Decision services also take advantage of the application server’s scalability features.Finally, Corticon is heavily focused on meeting decision automation needs (as opposed to traditionaldecision support applications), where fast design and reliable and fast execution are essential.Example Corticon applications include Sarbanes-Oxley and Basel II compliance initiatives, loanpricing and selection in banking, claims adjudication in insurance, complex service pricing intelecommunications, and supplier selection in manufacturing.Table 1. Overview of Corticon BRM, Key Modules and mplete and comprehensive modeling, analysis and test environment ready “outof-the-box”. Features intuitive spreadsheet-style business rules modeling andmaintenance environment—based on an extended decision table format; supportboth developers and (non-technical) business users. Users can capture and modeltheir organization’s best practices, policies and procedures without programming(i.e., coding). Models are fully executable, and can be incorporated into existingapplications as Web Services or Java Services. Applies sophisticated analysis andmathematical techniques to identify (and assist users) in resolving logical integrity1

Corticon TechnologiesCorticon BPM, Ver. 4.0Table 1. Overview of Corticon BRM, Key Modules and Functionalityissues during the rules modeling and design process (i.e., “design time), guaranteeingconflict-free complete rules.CorticonBusinessRules ServerForward-chaining inference engine written in Java (supports backward chaining atdesign time). Can function standalone, using the features of any J2EE Web Serverproduct embedded in a Java application or deployed into a container (i.e., servlet,session or message bean) within any J2EE application server, including IBMWebSphere and BEA WebLogic. Utilizes a patented “design-time inferencing”technique to determine the optimal sequence of a given set of rules, adhering to alldeclarative constraints. Targeted at decision automation needs (as opposed toDecision Support applications), where fast design, and reliable and fast execution sitory-based team development environment for business rules developmentand management via Web interface; provides facilities for managing rule assetsthrough their lifecycle, including rules versioning and access management, workflowand notification for rule approval processes and rule change impact analysis.CorticonEnterpriseDataConnectorProvides enterprise-class connectivity to back-end data sources during rulesexecution; uses a model-driven approach to data connectivity that requires no SQLcoding. Supports business agility and reduces maintenance by isolating rules fromdata source changes and isolating applications from data requirement changes.Pre-builtTemplatesandPatternsCorticon provides support for templates that make integrity-safe changes to businessrules, but does not offer any specific pre-built templates or frameworks for use withits BRM platform. Rather, Corticon relies on its partners to offer specificindustry/application content and templates.2.Product Architecture2.1.Architecture OverviewFigure 1 provides an overview of the Corticon platform architecture, which consists of two mainmodules—the Corticon BRM Studio and the Corticon Business Rules Server. Additional modulesinclude the Corticon Business Rules Collaborator and the Corticon Enterprise Data Connector.2

Corticon TechnologiesCorticon BPM, Ver. 4.0Figure 1. Corticon Business Rules Management ArchitectureRule Authoring Environment/Graphical IDE: Corticon BRM StudioCorticon Studio is a standalone business rules modeling and authoring platform that provides a singlespreadsheet-like modeling environment designed to support both developers and business users.Corticon Studio’s spreadsheet-like GUI allows users to capture and model their organization’s bestpractices, policies and procedures without programming dependency. These models are fullyexecutable, and can be incorporated into existing business applications as standard (XML-based)Web Services.Rules Server/Business Rules Engine (BRE): Corticon Business Rules ServerCorticon Server is the BRE for the Corticon platform. It can function standalone—using the featuresof any J2EE Web Server product—embedded in a Java application—or deployed into a container(i.e., as a servlet, session or message bean) within any J2EE application server, including IBMWebSphere and BEA WebLogic.Rules Repository/Rules Database: Corticon Business Rules CollaboratorCorticon Collaborator provides a repository-based environment for managing the business rules (andtheir associated rule assets) built with Corticon Studio. It supports multi-user team-managementfeatures—including check-in and check-out, versioning, security and access control, workflow, andcollaborative rules development.Corticon Enterprise Data ConnectorCorticon Enterprise Data Connector provides a direct connection from the Corticon rules engine torelational databases and other data sources. This allows the BRE to retrieve missing data or updatedata sources directly during rules processing, thereby improving performance and simplifyingintegration.3

Corticon TechnologiesCorticon BPM, Ver. 4.0Data Connector’s functionality leverages the Corticon platform’s code-free modeling approach andrequires no SQL programming skills; all SQL code is generated from the spreadsheet-like rulesmodels created in Corticon Studio.Enterprise Data Connector offers considerable business agility. This is because rules are isolatedfrom changes to the data sources, and applications consuming decisions (i.e., rule sets) are isolatedfrom changes to input data requirements. For instance, adding rule logic to a loan eligibility decisionthat requires new data (e.g., customer income, late payment history, etc.) could be accomplishedwithout any modification to the calling application. All of the new data can be retrieved from theexternal data source by Corticon.DeploymentThe Corticon platform affords various options for deployment and integration, including: Client deployment—Corticon’s run-time can be deployed directly on a client (with afootprint of as little as 800KB) when deployed as an applet. This option allows rules torun seamlessly within a browser environment, providing a highly-interactive userexperience based on business rules Web services—rule sets are deployed as Web Services and integrated with architecturesthat can invoke and consume Web Services via SOAP documents Microsoft .NET framework—rule sets are deployed as Web Services within theMicrosoft environment and invoked utilizing .NET Framework and SOAP messaging Java service with XML payload—rule sets are deployed as Java services (using a J2EEServlet or EJB interface) and integrated with an architecture that can make Java methodcalls and transfer XML payloads Java service with Java object payload—rule sets are deployed as Java services andintegrated with an architecture that can make Java method calls and transfer Java objects2.2.Business Rules EngineCorticon is an inference-based BRM product that supports forward chaining. It uses backwardchaining at design time to support optimization and analysis, but does not offer backward chainingwithin decision services at run-time, as this would break rule set integrity. Corticon representativesmake the case that this is where the distinction between decision automation and decision support iscritical. They believe that to support the ultimate goal of decision automation (i.e., guaranteed logicalintegrity, and reliable and fast execution of decisions), one must give up run-time backwardchaining—in effect, believing that the two are mutually exclusive.2.2.1.Rules Management ApproachThe Corticon platform uses a patented data-oriented approach to business rules combined with theapplication of advanced mathematical techniques (Predicate Logic Matrix) at design time to createoptimized and compiled rules sets in the form of decision services with guaranteed logical integrity.Corticon’s sophisticated analysis tools are designed to assist users with identifying and resolvinglogical integrity issues, thus guaranteeing conflict-free rules. Design-time inferencing is also used todetermine the optimal sequence of a given set of rules, while at the same time, adhering to alldeclarative constraints.2.2.2.Enterprise Data InteroperabilityCorticon Enterprise Data Connector ensures data consistency of data from external sources throughanalysis at design time. Corticon’s approach to connecting with external data sources leverages the4

Corticon TechnologiesCorticon BPM, Ver. 4.0analysis features to guarantee logical integrity while isolating rule logic from changes to data sourcesand hiding the sophistication of external data connection from the user.2.2.3.Maintaining Data QualityCorticon deploys and executes decision services (i.e., optimized and compiled rule sets withguaranteed logical integrity) that feature well-defined service contracts with respect to data. AndCorticon allows for user-defined data quality rules. Thus, data quality issues are proactively managedat run-time, and the Corticon decision service contract does not allow inconsistent data types to beprocessed, with data validation rules effectively trapping data values outside a range of interest.3.Interfaces and Ease of Use3.1.Development Environment: Corticon Rule Modeling StudioCorticon’s primary user environment for rules modeling is Corticon Studio, which features onecommon language that is accessible to both developers and business analysts. This singlerepresentation of rules is based on an extended decision-table format.Corticon has extended the traditional decision-table format to make it capable of expressing thecomplexity of other technical rule languages, while at the same time, preserving the ease-of-use thathas made spreadsheet products ubiquitous. The result is that Corticon Studio looks and behavesmuch like Excel, and users of all levels of sophistication can use it to model, analyze, test decisions(rule sets), using one common language and modeling environment. In other words, there is noseparate language (i.e., developer language) to synchronize with the business user language.Model-driven EnvironmentCorticon Studio is completely declarative and model-driven—including rules definition as well ascomprehensive rule integrity analysis and business context testing (to verify that rule results satisfybusiness intent). Even advanced rule language concepts are handled declaratively in the modelwithout requiring any procedural programming.Corticon Studio features a rich library of operators and business objects that users drag and-drop toconstruct rules. In addition, natural language expressions of rules are captured and used as referencedocumentation and as source for messages posted during the course of rule set execution.Figure 2 shows a screen shot of the Corticon Studio modeling environment. Note that in Corticon’sextended table format, rules correspond to columns, with the condition part of the rule in onesection and the action part in another section. Using Corticon’s library of operators and ability tosupport expressions, users can model business rule logic in a declarative fashion and then analyze,test, and deploy it.Figure 2 gives several examples of how rules are defined in Corticon Studio. Column one shows afairly simple rule: IF AN APPLICANT IS ‘MALE’, THEN ADD 100 TO THE POLICYPREMIUM. Column three (highlighted) shows another slightly more sophisticated rule: IF THEAPPLICANT’S AGE IS MORE THAN 30, THEN ADD 10 FOR EVERY YEAR OF AGEMORE THAN 30.5

Corticon TechnologiesCorticon BPM, Ver. 4.0Figure 2. Corticon provides a single rule modeling environment—based on an extended decisiontable format—designed to support both IT developers and business usersFigure 3 provides an example of how you can use Corticon to express sophisticated rule logic in avery compact fashion. These rules were created by dragging and dropping terms (e.g., “holidays”,“holiday.xdate”, “policyB”, etc.) and operators (e.g., “- exists”) to compare a policy effective datewith a collection of holiday dates. Note the natural language description of the defined rules thatappears in the bottom pane of the screen.Figure 3. Corticon rule modeling screen showing sophisticated rule logic6

Corticon TechnologiesCorticon BPM, Ver. 4.0No External Data Access LanguagesCorticon’s rule language syntax is free from any external data access language, such as SQL foraccessing database data. This modeling abstraction provides isolation from underlying database dataand technology changes. First, separation of rule logic from data access details provides agility toorganizations in that rule definitions don’t change whenever data sources change. Second, whenconnecting to external data sources, users simply identify the external source, and are free from anydata access coding.Comprehensive Analysis and Testing ToolsCorticon’s rule modeling environment also provides comprehensive analysis tools to guarantee thelogical integrity of a decision (rule set). This “one-click” rule analysis feature helps ensure that rulesare logically consistent (i.e., conflict-free, complete, and free of logical loops). Business case testing issimilar: users drag-and-drop desired inputs and enter values, then execute rule sets and view theresults and messages displayed in a business-friendly format.Deployable executables are automatically generated from the model. There is no additionalmanipulation of rule logic to produce a final executable.3.2.End-User Environment: Corticon StudioUnlike some BRM tools that provide a technical language designed for developers and templates thatenable editing of a subset of rule logic by non-technical end users, Corticon’s model-driven approachfeatures one language and one UI. Thus, non-technical users can fully exploit the capabilities of theStudio’s spreadsheet-based modeling environment.Figure 4 provides a screen shot of Corticon Studio showing its rules vocabulary (left side of screen)of business objects and operators. Basically, end users create rules and rule sets by dragging anddropping various operators and objects from Corticon’s rules vocabulary. Figure 4 also shows theresults of an ambiguity check, where the conditions of the two rules are not mutually exclusive andthe actions are different. The ambiguity is highlighted and multiple options made available to remedythe situation.7

Corticon TechnologiesCorticon BPM, Ver. 4.0Figure 4. Corticon Rule Studio showing Rules Vocabulary of Business Objects and OperatorsIt’s important to note, however, that should an organization desire to extend a subset of rulemanipulation functionality (i.e., parameterized rules) to some group of non-technical users, Corticonsupport this scenario as well. Corticon supports rule manipulation from Web form templates so thattightly constrained, integrity-safe rule editing can be exposed to authorized users. Figure 5 shows asample of a Web-based template.The use of Web forms is important, because it can provide additional flexibility and control toorganizations implementing Corticon applications. However, for most technical and non-technicalusers, the Studio modeling environment is the most appropriate and productive rules editingenvironment, where users define rule sets in the extended decision table layout, and executable codeis generated from the model.4.Business Rules Expression4.1.Defining Rules and Rule SetsCorticon’s rule representation scheme is based on an extended-decision table format that makes itcapable of expressing the complexity of other technical rule languages, yet still provides the look andfeel of a spreadsheet program.Corticon also supports natural language expressions of rules within a section of Studio, and uses thisrepresentation as reference documentation and as source for messages posted during the course ofrule set execution.8

Corticon TechnologiesCorticon BPM, Ver. 4.0Figure 5. Sample Web-based template for business users to make safe changes to business rules4.2.Creating and Maintaining RulesCorticon’s extended decision-table format directly supports users in graphically defining andmodeling rules and rule sets. This includes creating decision tables as well as scorecard type rules. Italso provides an equivalent, concise representation of decision trees.Additional rule language constructs enable the construction of scoring rules (increment anddecrement rules), and other complex derivation-type rules.4.3.Rule TemplatesAs noted previously, Corticon’s primary user environment is Corticon Studio, which usesone common language that is accessible to both developers and business analysts. Thus, there is nounderlying technical rules language, per se, and therefore, no need to create an additional language orlayer of representation in the form of templates to provide editing functions for non-programmers.In other words, there is no distribution or delegation of responsibility at the individual rule level thatmight possibly compromise the logical and business integrity of the rule set.Corticon representatives see this as an important differentiating factor of their product. BecauseCorticon supports complex rule modeling capabilities (i.e., editing, analysis, testing) using onelanguage, they believe it avoids or reduces some of the issues encountered when trying tosynchronize rule sets, languages and interfaces—issues associated with some BRM products thatprovide separate authoring and rule maintenance environments for IT developers and business users.Basically, with Corticon, there is no “bridging” required to synchronize non-technical user input withthe low leve