IBM Operational Decision Manager Version 8 Release 5

Overview: Operational Decision Manager product family

 Note Before using this information and the product it supports, read the information in “Notices” on page 43.

This edition applies to version 8, release 5, modification 1 of Operational Decision Manager and to all subsequent releases and modifications until otherwise indicated in new editions. © Copyright IBM Corporation 2008, 2013. US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents

Overview: Operational Decision Manager 1 Security ...... 35 What's new in V8.5.1 ...... 1 Communication protocols ...... 36 What's new for business users ...... 1 Third-party tools and SAM ...... 37 What's new for developers...... 1 Third-party tools ...... 37 What's new for administrators ...... 5 Open source software ...... 37 Introducing Operational Decision Manager ....6 Eclipse ...... 37 What is Operational Decision Manager ....7 Apache Ant ...... 38 Business agility through synchronized business Software Asset Management system ....38 and IT cycles ...... 10 About Software Asset Management . . . 38 Complementary decision management strategies 12 SAM, license files, and the product Operational Decision Manager roles and activities 14 installers ...... 38 Business rule application development ....19 Making the SAM license visible ....39 Business rule applications based on Java or Licenses and archive repackaging ....39 XML...... 19 Licenses and multiple rule applications . . 39 Business rule applications for .NET platforms 22 Accessibility ...... 40 Event rule application development .....24 Accessibility features of the information center 41 Decision management for business users . . . 26 Decision governance ...... 26 Notices ...... 43 Decision management for rule projects . . . 28 Trademarks ...... 45 Decision management for event projects . . . 29 Understanding your Operational Decision Manager Index ...... 47 installation ...... 31 Composition of Operational Decision Manager 31

© Copyright IBM Corp. 2008, 2013 iii iv IBM Operational Decision Manager: Overview: Operational Decision Manager product family Overview: Operational Decision Manager

To implement a decision management solution you must understand the various modules that make up the product and choose the architecture that best suits your needs.

What's new in V8.5.1 Version 8.5.1 includes new features for the different users of the product. What's new for business users V8.5.1 includes features that were introduced with the last release, such as improved project governance and side-by-side comparison of decision tables in the Decision Center Business console.

Versions 8.5.1 and 8.5.0 introduce the following features: Readme information moved to Installing (V8.5.1)

The product documentation no longer includes a readme. You can find the readme information in Installing, the product installation section in the information center. Platform support and defect information is still available on the IBM® support site. Learn more... Decision governance framework (V8.5.0)

Decision Center offers a ready-to-use prescriptive method for change management and governance. The method is based on a framework that uses decision services, releases, and activities. This framework is available in the Decision Center Business console. Learn more... All-in-one decision table editor (V8.5.0)

The Decision Center Business console provides all its decision-table editing capabilities in one editor. You can test your rules as you write them, and optimize the order of rows in tables. A new tutorial takes you through the steps for updating a decision table. Learn more... Version comparison in the Business console (V8.5.0)

You can compare two versions of an action rule or a decision table side by side in the Decision Center Business console. Learn more... What's new for developers V8.5.1 introduces support for new versions of the application servers, and extends the decision engine to the distributed platforms. V8.5.1 introduces more support for PL/I and COBOL, and extends the decision engine to the distributed platforms.

Versions 8.5.1 and 8.5.0 introduce the following features:

© Copyright IBM Corp. 2008, 2013 1 Stand-alone server installation option removed from the launchpad (V8.5.1)

The launchpad no longer provides an option for installing a stand-alone server. There remain two ways to create a stand-alone server profile: v You can create a profile by setting values in the standalone.properties file, and then running the standalone.bat script file. Both files are located in the /shared/standalone directory. v You can create a profile by using the Profile Management Tool and the provided profile templates.

Learn more ... New application server versions (V8.5.1)

V8.5.1 supports the following new versions of the application servers: v Oracle WebLogic Server 12c v WebSphere® Application Server 8.5.5

The Decision Center Business console now supports the same application server versions as the Decision Center Enterprise console. Learn more... Decision engine available on all supported platforms supports more features (V8.5.1)

V8.5.1 offers the users of distributed platforms the choice of two rule engines: decision engine and classic rule engine. Originally available for only z/OS®, the decision engine now works with all the supported platforms.

Whether you deploy your rulesets from Rule Designer or Decision Center, the ruleset build mode is taken into account for rule execution, and for synchronization of your rule projects between Rule Designer and Decision Center.

The decision engine is designed to improve the overall performance of rule execution. The engine compiles rule artifacts into an archive that contains code that is ready to run. The ruleset loading in the engine is faster because no code is parsed or interpreted at run time.

For the decision engine, V8.5.1 adds support for the following features: v Rule Execution Server: – Hosted transparent decision services – Monitored transparent decision services – Decision Warehouse v Rule Execution Server console: – Updated list of properties in the main ruleset view – Warning if the decision engine version of a ruleset is not compatible with the version of the Rule Execution Server – Ruleset testing – Ruleset statistics – Ruleset archive content view v Rule Designer: – Client projects for RuleApps

2 IBM Operational Decision Manager: Overview: Operational Decision Manager product family – Remote and local debugging

The classic rule engine remains the default engine in V8.5.1. You must regenerate and then redeploy existing ruleset archives to use them with the decision engine. If you used the compiled archives cache feature with earlier versions of Operational Decision Manager, make sure that you clean out the entire directory of the compiled archives cache, and then restart the Execution Unit (XU). Learn more... Readme information moved to Installing (V8.5.1)

The product documentation no longer includes a readme. You can find the readme information in Installing, the product installation section in the information center. Platform support and defect information is still available on the IBM support site. Learn more... Deprecated features

The following table shows the deprecated features. Table 1. Deprecated features Deprecated Module Description JSR-94 (V8.5.1) Decision Server Rules The JSR-94 implementation is deprecated in V8.5.1. This feature will be removed in a future release of the product. Use the rule session API instead. Learn more... IlrRuleInformation.getActions Decision engine for Rule Unlike previous versions, a () method (V8.5.1) Designer and Decision decision engine rule can be Center associated with only a single action.

V8.5.1 replaces the deprecated method with String getActionName().. Learn more...

Extended PL/I support (V8.5.1)

The BIT string in PL/I is now supported when you generate a PL/I XOM from a PL/I include file. The single-bit BIT is mapped to the Java™ boolean type, and the multiple-bit BIT is mapped to the Java BitSet class. Learn more... Extended COBOL support (V8.5.1)

Char, Enum, and Map data types in Java are now supported when you generate a COBOL copybook from an existing Java BOM. They can be mapped to COBOL data types. Learn more... NIST SP800-131A support (V8.5.0)

Operational Decision Manager supports the National Institute of Standards and Technology (NIST) Special Publications 800-131a security standard in transition mode and in strict mode with the use of Transport Layer Security (TLS) 1.2. Learn more...

Overview: Operational Decision Manager 3 WebSphere Application Server profile templates are installed as a component (V8.5.0)

You can install the profile templates that are required to create an Operational Decision Manager cluster on WebSphere Application Server as a component when you use the launchpad to install a custom configuration, or you use Installation Manager. The profile templates component extends the repository on the computer that hosts the target WebSphere Application Server. Learn more... Operational Decision Manager Express® (V8.5.0)

The product installer includes an option to install Operational Decision Manager Express, which is a new entry-level offering. You must check this option if you have the corresponding license. Learn more... PL/I support for rule authoring and rule execution (V8.5.0)

PL/I is supported to generate a PL/I XOM from a PL/I include file. You can design a BOM from a PL/I model, author rules, and enable rule execution of PL/I applications. Learn more... REST decision service for ruleset execution (V8.5.0)

The Representational State Transfer (REST) decision service enables client applications to access a server through HTTP requests and provides integration with IBM Worklight® and other systems. Learn more... Rule Designer uses Eclipse SDK 3.6.2 with JDK 7 (V8.5.0)

Rule Designer requires Eclipse SDK 3.6.2, which includes JDK 7 by default. To use JDK 6, you must reset the parameters for Eclipse. Learn more... Manage embedded rules in Operational Decision Manager (V8.5.0)

Business Rules Embedded can export embedded rules so that you can manage them in Rule Designer or Decision Center. Learn more... Deprecated features

The following table shows the deprecated features. Table 2. Deprecated features Deprecated Module Description IlrRuleInformation.getActionsDecision engine for Rule Unlike previous versions, a () method (V8.5.1) Designer and Decision Decision Engine rule can be Center associated with only a single action.

V8.5.1 replaces the deprecated method with String getActionName(). Learn more...

4 IBM Operational Decision Manager: Overview: Operational Decision Manager product family Table 2. Deprecated features (continued) Deprecated Module Description COBOL code generation Rule Designer and Decision Instead of using generated (V8.5.0) Center COBOL subprograms, you can deploy RuleApps to zRule Execution Server for z/OS and execute rules. Learn more...

If you are using the COBOL code generation feature in Rules for COBOL, you can use the COBOL Generation Project Migration wizard to migrate your rule project to a zRule Execution Server for z/OS compatible rule project. Learn more...

In Versions 8.5.0 and 8.5.1, the COBOL code generation user interface is not displayed in Rule Designer by default. To display the COBOL code generation user interface in Rule Designer, stop Rule Designer, and add the following parameter in the file / eclipse.ini: -Dcobol.code.gen=true

Save the file, and restart Rule Designer.

What's new for administrators V8.5.1 introduces support for the progressive migration of databases from previous versions of Decision Center. V8.5.1 updates the System Management Facility to collect execution data on a logical partition (LPAR).

Versions 8.5.1 and 8.5.0 introduce the following features. Progressive migration of Decision Center database (V8.5.1)

If you have a 7.0, 7.5, or 8.0 Decision Center database, you can migrate part of your database to V8.5.1, work on these migrated projects, and then run an Ant task when you are ready to migrate the rest of your database. Learn more... Recording the number of decisions that run on an LPAR (V8.5.1)

The System Management Facility (SMF) is now used to collect execution data such as the number of decisions that are requested by your application at run time. To use the feature, you must do a configuration step that depends on your execution environment. Learn more...

Overview: Operational Decision Manager 5 Readme information moved to Installing (V8.5.1)

The product documentation no longer includes a readme. You can find the readme information in Installing, the product installation section in the information center. Platform support and defect information is still available on the IBM support site. Learn more... Support of NIST SP800-131A (V8.5.0)

Operational Decision Manager supports the National Institute of Standards and Technology (NIST) Special Publications 800-131a security standard in transition mode and in strict mode with the use of Transport Layer Security (TLS) 1.2. Learn more... WebSphere Application Server profile templates are installed as a component (V8.5.0)

You can install the profile templates that are required to create an Operational Decision Manager cluster on WebSphere Application Server as a component when you use the launchpad to install a custom configuration, or you use Installation Manager. The profile templates component extends the repository on the computer that hosts the target WebSphere Application Server. Learn more... TCP/IP management mode monitors remote XU instances (V8.5.0)

In the Rule Execution Server console, the TCP/IP management mode can monitor and manage XU instances, both Java EE and Java SE, outside the JVM or cluster where the console is running. Learn more... zRule Execution Server for z/OS console mode provides greater flexibility (V8.5.0)

The zRule Execution Server for z/OS can optionally run in console mode, if the HBRMODE=CONSOLE runtime variable is specified. Console mode delegates the management of all server connections in the same group to the console. This option provides greater flexibility and control during system administration and management. Learn more... Extra support for IMS™ users can provide enhanced performance (V8.5.0)

When a COBOL application is running in a Message Processing Region, IMS can use a preinitialization routine to establish a connection to zRule Execution Server for z/OS. The routine removes the requirement for the COBOL application to connect and disconnect each time that it is run, and can result in improvements to the overall performance. Learn more...

Introducing Operational Decision Manager Operational Decision Manager enables the business to respond to real-time data with intelligent, automated decisions. With Operational Decision Manager, IT and business users alike can manage the business decision logic used by operational systems within an organization.

6 IBM Operational Decision Manager: Overview: Operational Decision Manager product family What is Operational Decision Manager Operational Decision Manager combines decision making and change detection tools to provide a business rule management system that is easy to evolve, trace, audit, and test.

Operational Decision Manager includes two main components: Decision Server for managing decisions and detecting events Decision Server provides the runtime and development components to automate the response of highly variable decisions based on the specific context of a process, transaction, or interaction. You can monitor a business network to discover and take action on event-based data patterns, and then process this information against hundreds or even thousands of business rules in order to determine how to respond within front-end and back-end systems. Decision Center for putting decision management in the hands of those who drive the business With Decision Center, business users can manage decisions and events directly based on organizational knowledge and best practices, with limited dependence on the IT department. The degree of dependence can range from a limited review by business users of the business logic implemented by developers, to complete control over the specification, creation, testing, and deployment of the business logic by business users. Business and IT functions can work in collaboration, aligning the entire organization in the implementation of automated decisions and accelerating the maintenance lifecycle as they evolve based on new external and internal requirements.

The following figure shows the components that Operational Decision Manager provides for rule application development, rule management and authoring, and the execution environment.

Overview: Operational Decision Manager 7 From business policy to business rules

Business policies are statements that are used to make decisions such as pricing for insurance or loan underwriting, eligibility approvals for social or health services, or product recommendations for online purchases. Business policies are typically found inside application code, in the form of if-then statements, although they may also be stored elsewhere for documentation purposes, such as in procedural manuals and other documents.

A business policy can be expressed as several business rules. Here is an example of the kind of business policy that might be familiar:

Customers who spend a lot of money in a single transaction need an upgrade.

The process of capturing rules consists of formalizing the vocabulary required to express the policy as a conceptual object model and representing the logic of the business policy as if-then statements.

After the vocabulary has been created, the above business policy can be implemented with the following business rule: if the customer’s category is Gold and the value of the customer's shopping cart is more than $1500 then change the customer’s category to Platinum

8 IBM Operational Decision Manager: Overview: Operational Decision Manager product family When a business policy also has an IT policy or security policy embedded in it, you can combine business rule management with additional capabilities to handle the business policy aspects. For example, customers who spend a lot of money should be routed to a preferential service or customers who spend a lot of money require additional security on their transactions.

In the form of business rules, the business logic can be packaged and called from the application code as a business rule application. Therefore, changes to the business policy do not require changes to the application or process code. From event pattern detection to event rules

An event is an electronic signal indicating that a change in the state of the business has occurred. Orchestrating business events so that the right applications run at the right time for the right purpose is a challenge that can be particularly difficult with the large variety of business systems currently running in the enterprise. A wide range of technologies is also employed, ranging from batch processing applications to client/server, and to browser-based intranet and internet applications. Orchestrating the processing of the events that occur in these systems, as well as the events that occur manually, might potentially mean major system redesign and many months of modifications, tests, and deployment.

A rapid business systems orchestration requires an alternative approach to complex and expensive redesign and redeployment of existing systems is required. The solution is to implement a Business Event Processing layer that sits across existing systems, takes advantage of functions already developed in those systems, and manages the complex interactions (business events) that can occur between those systems. This layer of architecture is known as Business Event Processing. The Business Event Processing layer communicates significant events in one business system to other systems that require the information to respond to the critical event.

In large organizations, tens of millions of events occur everyday, but not all events or event occurrences are of equal importance. Providing insight requires the ability to determine when a pattern of seemingly unrelated events from one or more sources has occurred and then to coordinate the execution of the responses to that pattern of events.

Business Event Processing is the ability to sense when a business event or event pattern has occurred (or not occurred), indicating an actionable business situation, and to coordinate the right response or action, at the right time.

Event rules help detect, and respond to, event patterns among like or related events, missing events and aggregate events. Event rules also relate the pattern detection to a context and apply a dimension of time to the pattern. So, for example, the following logic can be created: if events A and B occur and event C does not occur in

For example, on a retail web site, if a customer adds a book to a shopping basket (event A) and views the delivery information page (event B) but does not complete the purchase at the online checkout (event C) within one week, then send an E-mail to this customer (action X). After one more day has passed, update the customer favorites database with the book details (action Y), and send a message to the Sales department to tell them this customer did not complete the purchase (action Z).

Overview: Operational Decision Manager 9 By using predefined logic that describes how business systems are to interact, the event runtime can notify those systems in real time so that they take the appropriate action. Why use decision management

Business events and Business Rule Management Systems (BRMS) are highly complementary technologies that in combination enable intelligent and responsive decision automation. These technologies enable organizations to flexibly build solutions that can detect and react to data patterns as they occur within a specified time period, and then provide the appropriate automated decision response to transactional and process-oriented business systems.

The combination of business events and business rules increases business agility and decision automation capabilities to achieve consistently better business outcomes and maximize resources and value. A decision management solution enables businesses to reuse sources of insight: v Historical data v Predictive knowledge v Simulation and events

Operational Decision Manager enables business users to manage decisions and make changes in a very short timeframe, increasing enterprise responsiveness to unforeseen events, as well as shortening response times as a result of higher levels of automation. Related information: “Composition of Operational Decision Manager” on page 31 The Operational Decision Manager comprises a set of components, which are installed on a distributed operating system. Business agility through synchronized business and IT cycles Business agility depends on responsive, intelligent decision automation. Operational Decision Manager helps manage decisions separately from business applications, with more flexibility and responsiveness to the changing needs of the business.

The ability to deal with change in operational systems is directly related to the decisions that they are able to make. Every transaction, order, customer interaction or process is dependent on decisions, which are in turn dependent on particular internal or external requirements and situational contexts. Every change therefore affects decisions, many of which are handled automatically within business systems.

When decision management is separate from application code, business experts can define and manage the business logic, reducing the amount of time and effort required to update that business logic in production systems, and increasing the ability of an organization to respond to changes in the business environment.

Operational Decision Manager provides an environment for designing, developing, and deploying business rule applications and event applications. The IT cycle consists of developing and maintaining this infrastructure. After the infrastructure is set up, distributed business teams can start collaborating through a Web-based environment to create and maintain business rules and events.

10 IBM Operational Decision Manager: Overview: Operational Decision Manager product family The lifecycles of decision management and application development can evolve in parallel. Decisions can evolve as required by the business context, without putting an extra load on the development of the application. Each time the application evolves, the decision management environment synchronizes with the application.

With this separation, decisions and application architecture can be managed asynchronously. For example, application developers can develop a new application version in response to changing application infrastructure and additional core business requirements. At the same time, policy managers can work on new decisions delivered in response to an evolving market, changing regulatory environment, or new patterns of events.

In addition to working on different time lines, developers and business users also expect to work with different tools, reflecting their different skill sets and views of the application.

For example, developers are accustomed to the Java world. They use source-code management systems to work simultaneously on separate copies of a project without interfering with each other.

Business users, on the other hand, do not concern themselves with the details of application development, but are interested in testing and managing decisions. Therefore, they need tools that can help them author, organize, and search for rules in the context of the overall policy.

With developers and business users working in their own environments at their own pace, the work of these two groups must be synchronized and merged.

Finally, both developers and business users require access to a rule execution environment to deploy rules to enable testing, validation, and rollout to production of new and changed business logic.

Overview: Operational Decision Manager 11 Related information: “Operational Decision Manager roles and activities” on page 14 Operational Decision Manager comprises a set of modules that operate in different environments, but also work together to provide a comprehensive decision management platform. “Complementary decision management strategies” Business rules and real time events can help your enterprise achieve business process agility. Synergies with other IBM products Operational Decision Manager complements other IBM products to empower businesses to automate, manage and improve the decision cycle in the face of growing complexity and change. Complementary decision management strategies Business rules and real time events can help your enterprise achieve business process agility.

Operational Decision Manager provides tools that support two complementary decision management strategies: business rules and event rules. Depending on the type of data you are dealing with and the sort of reasoning that you want to apply on this data, one of the two strategies prevails.

Rules and events are complementary services within the decision management domain, and together they enable users to author and manage rules by using aligned concepts, terminology, and tooling to support combined use cases.

Decision management Usage pattern Business rules Event rules Type of data Snapshot view of static data. Data over variable time frames. Reasoning Executes rules by using a defined order of rule Processes multiple unrelated execution or an order that events from varied sources to the inference-based algorithm identify a pattern and of the rule engine responds asynchronously determines. when this pattern is identified.

Processes enterprise events over extended periods of time, from milliseconds to months. Execution Receives individual events Responds to each call as a from the network and reacts unique transaction.Called by if the event completes a an API, for example as a web pattern of interest, and reacts service, or from a business by initiating actions on other process. systems. Outcome Calculates one or more Initiates actions when values to decide and patterns of business activity respond. do not occur as expected. These actions can be alerts or follow-on processing.

12 IBM Operational Decision Manager: Overview: Operational Decision Manager product family The combination of business rules and events can offer intelligent decision making that enables a business to take insightful, timely action of changes within their business network. Rules and events can be combined in runtime environments. The event runtime can execute business rules by using a web service interface. For more information about runtime integration between rules and events, see Invoking Decision Server Rules from Decision Server Events.

The following table illustrates how you could combine business rules and business events for two use cases.

Decision management Use case Business rules Event rules Car insurance v v Determine whether to Monitor customer make an offer, and if so, behavior and identify the for what. right timing for a v promotion. v Tailor price based on a large combination of Detect multiple requests factors. for insurance quote over a short period of time. v Detect quote requests that have not been accepted within a period of time. v Follow up on customer promotional offers. Credit card services v v Detect whether Detect events on credit transactions go over a cards (payments). given threshold, and allow v or reject the transaction. Aggregate data on credit v cards (payments and Notify customers based on withdrawals allowed by customer profile and rules). behavior. v Call business rules when a decision needs to be computed for allowing or rejecting the transaction.

Overview: Operational Decision Manager 13 Related information: “Business agility through synchronized business and IT cycles” on page 10 Business agility depends on responsive, intelligent decision automation. Operational Decision Manager helps manage decisions separately from business applications, with more flexibility and responsiveness to the changing needs of the business. “Operational Decision Manager roles and activities” Operational Decision Manager comprises a set of modules that operate in different environments, but also work together to provide a comprehensive decision management platform. Operational Decision Manager roles and activities Operational Decision Manager comprises a set of modules that operate in different environments, but also work together to provide a comprehensive decision management platform.

Two categories of users are involved in developing and maintaining a decision management solution: v IT users Architects, developers, and administrators develop and maintain the rule application. v Business users Business analysts, policy managers, and rule authors develop and maintain the decision logic.

The following table describes the different types of IT and business users that are involved in developing and maintaining a decision management solution.

14 IBM Operational Decision Manager: Overview: Operational Decision Manager product family Table 3. User roles for the development of business rule applications and event applications Role Activities Description Design Architects work mainly in Integrate Designer and have the following responsibilities: Deploy v Managing the overall deployment organization of the rules and make sure that the execution is optimized. v Defining the project organization so that it is convenient for developers and business users alike. v Defining the granularity of the rule applications and how they fit into the wider business process. v Provide valuable context for the application’s role in the managed business decisions. Design Developers work mainly in Author Designer and have the following responsibilities: Test v Developing, testing, Integrate debugging, and deploying business rule applications Deploy and event applications. They provide input to the design of the rules. v Writing the code for rule execution.

Developers are familiar with object models, APIs, and the development environment (Java EE application servers, Java SE.

Overview: Operational Decision Manager 15 Table 3. User roles for the development of business rule applications and event applications (continued) Role Activities Description Deploy System administrators work Administer on the servers to ensure that they run smoothly. These Monitor servers can be for Decision Center or runtime Audit environments.

Administrators have the following responsibilities: v Deploying and configuring the server and database for Decision Center and Rule Execution Server. v Managing user access to Decision Center and Rule Execution Server. v Ensuring that the business object model and rules are defined consistently for all the phases of the project. v Ensuring that the rules can be shared across platforms. v Configuring trace data sources for testing purposes. v Deploying applications. v Redeploying rulesets and event assets as changes are made. v Generating detailed execution reports. v Tracking and monitoring rule execution. v Restoring a particular application state.

16 IBM Operational Decision Manager: Overview: Operational Decision Manager product family Table 3. User roles for the development of business rule applications and event applications (continued) Role Activities Description Design Business analysts work in Author Designer and Decision Center. Test They act as the bridge Synchronize between business and IT departments, from design to Review integration inside a software application. Validate Business analysts have the following responsibilities: v Designing a formal specification for the rules, with validation from both developers and policy managers. v Defining the vocabulary that is used in rules. v Identifying candidate business rules. v Writing and organizing business rules and event rules so that rule authors can maintain them. v Validating that rule execution yields the expected results.

Depending on their level of technical knowledge, business analysts can perform tasks that are currently described as developer tasks. However, business analysts generally do not write code.

Overview: Operational Decision Manager 17 Table 3. User roles for the development of business rule applications and event applications (continued) Role Activities Description Review Policy managers are the Validate owners of the decisions within an organization and Author work mainly in Decision Center.

Policy managers have the following responsibilities: v Participating in the design of a formal specification for the rules. v Defining vocabulary elements with the help of business analysts. v Creating and updating rules. v Reviewing how the execution of rules is orchestrated. v Reporting on the status of the business policy. v Testing rules to ensure that they are written correctly. v Running simulations to ensure that the rules give the intended business outcome. v Managing releases and validation activities in the context of decision governance. Author Rule authors work in Decision Center. Review Rule authors have the following responsibilities: v Updating and sometimes creating rules. v Reviewing the business rules and event rules. v Creating change activities in the context of decision governance.

18 IBM Operational Decision Manager: Overview: Operational Decision Manager product family Related concepts: “Business rule applications based on Java or XML” As an IT user, you work in Rule Designer to define a rule authoring and management infrastructure for business users, and business users do not have to be aware of the underlying production platform. They author, review, and manage business rules in the same way regardless of the platform. “Event rule application development” on page 24 To develop event applications, developers, architects, and business analysts work together to design a data model, orchestrate event execution, author, review, and test events, and deploy the resulting event application to various production platforms (Java SE, Java EE, or z/OS). “Decision management for business users” on page 26 Decision Center is a scalable decision management server and repository with collaborative web environments for authoring, managing, validating, and deploying business rules and events. Related information: “Business agility through synchronized business and IT cycles” on page 10 Business agility depends on responsive, intelligent decision automation. Operational Decision Manager helps manage decisions separately from business applications, with more flexibility and responsiveness to the changing needs of the business. “Complementary decision management strategies” on page 12 Business rules and real time events can help your enterprise achieve business process agility. Business rule application development To develop business rule applications, developers, architects, and business analysts work together to design a data model, orchestrate ruleset execution, author, review, and test rules, and deploy the resulting business rule application to various production platforms (Java SE, Java EE, z/OS or .NET). Business rule applications based on Java or XML As an IT user, you work in Rule Designer to define a rule authoring and management infrastructure for business users, and business users do not have to be aware of the underlying production platform. They author, review, and manage business rules in the same way regardless of the platform.

You develop rule applications based on Java or XML and can deploy them to a distributed platform or WebSphere Application Server on z/OS, see Architecture of a business rule application. For a hands-on introduction to rule application development based on Java, see Introduction: Getting started with business rules.

The following diagram illustrates the different tools you use to develop a business rule application based on Java or XML, and the tasks you must carry out for this development.

Overview: Operational Decision Manager 19 Designing

You and business analysts first design the business rule application, by using Rule Designer. v You define how you want to organize the business rule application into rule projects, see Guidelines for organizing your application into rule projects. A rule project is a type of Eclipse project dedicated to the development of business rule applications, which you can store in a Source Code Control (SCC) system, see Designing a rule project. v The set of business rules that are put together as one executable decision unit is called a ruleset. You define ruleset parameters to pass data from the calling application to the ruleset, and to retrieve data from the ruleset. v You work with business analysts to define the vocabulary used in business rules. In Rule Designer, you then develop the business object model (BOM) which defines the elements and relationships in the vocabulary, see Tutorial: Defining a vocabulary. You can define the vocabulary in a top-down manner, by mapping the BOM to the Execution Object Model (XOM), a Java or XML model used at run time. You can also create the vocabulary in a bottom-up manner, by generating the BOM from the XOM, and then filtering and configuring the BOM to be a suitable basis for the business vocabulary, see Designing business object models. v In the rule project, you then organize a rule package structure for storing business rules and define a ruleflow to specify the high-level flow of execution for the business rules, see Orchestrating ruleset execution and Tutorial: Creating your first ruleflow. v With the help of business analysts, you define properties for managing and tracking business rules, by using rule model extensions, see the Business rule management extensions samples. Rule Designer provides editors for rule model extensions. v You set up business user validation tools, by configuring and customizing how tests and simulations are run with Decision Validation Services, see Tutorial: Configuring the BOM for Excel testing.

20 IBM Operational Decision Manager: Overview: Operational Decision Manager product family Authoring

If you are responsible for creating and managing the rules, you might author most of the business rules in the project, see Authoring rules. If business users are responsible for the creation and management of business rules, you then create complex rules only and set up some tools to facilitate business rule authoring for business users. v You and business analysts can create the following types of business rules: – Action rules, see Tutorial: Creating action rules. – Decision tables, see Tutorial: Editing decision tables. – Decision trees These business rules are all based on the Business Action Language (BAL), which is designed to look like natural language. In addition, you can create technical rules, which are based on the ILOG® Rule Language (IRL) and require programming skills (see the Rule-based programming samples). v You and business analysts can create business rule templates. v With the help of business analysts, you define vocabulary categories. With these categories, you can filter the vocabulary elements that are available when authoring business rules. v You can create rule authoring extensions, for example to integrate value editors for some vocabulary elements, or to define dynamic domains that retrieve values from a data source, see the Authoring extensions samples.

Testing

You debug the business rule application in Rule Designer. Business analysts test that the business rule application implements the expected business logic. v You debug the ruleset (see Tutorial: Debugging a ruleset). For this purpose you use an embedded rule engine to manage rule execution, see Debugging a rule project and Executing rules with an embedded rule engine . v You or business analysts perform rule analysis by using constrained semantic queries, see Reviewing a rule project. These queries check the consistency and completeness of individual rules and of the ruleset as a whole. You can customize the rule analysis reports. v You or business analysts run test scenarios on rules. You can run these tests directly in Rule Designer, without the full Rule Execution Server environment. For more information about scenario testing, see: – Testing with Decision Validation Services – Validating ruleset execution on z/OS – Tutorial: Debugging an Excel scenario file – Sample: DVS archive testing using JUnit v You create Key Performance Indicators (KPIs) that can be included with simulations to display business outcomes in Decision Center.

Integrating and deploying

You integrate and deploy the business rule application from Rule Designer. Deployment can also be done from Decision Center. v You package the ruleset into an executable archive, called a RuleApp, and write the code to run the rule engine on this RuleApp, see the Rule engine integration samples.

Overview: Operational Decision Manager 21 v You decide how you want to expose the RuleApp to the calling application. – Java SE rule session, see Sample: Java SE rule session. – Java EE rule session, see Sample: Java EE rule session. – Message-driven rule bean (see Sample: Message-driven rule bean) – Transparent decision service, see Sample: Web or monitored transparent decision service and Tutorial: Executing a hosted transparent decision service on Java or .NET. v You configure Rule Execution Server for the chosen application server. Rule Execution Server is a managed, monitored execution environment for deployed business rules. Rule Execution Server handles the creation, pooling, and management of ruleset instances so that applications can call the resulting decisions as easily as possible. See Tutorial: Creating a web application to call Decision Server on IBM Rational® Application Developer. v You deploy the RuleApp to Rule Execution Server. In the Rule Execution Server console, you manage the RuleApps. For more information about managing RuleApps in Rule Execution Server, see: – Tutorial: Managing RuleApps – Managing the Java rule execution environment v To enable test execution and in particular for scenario testing, you deploy the Scenario Service Provider (SSP) and the XOM to the Rule Execution Server storage.

Administering and monitoring

Rule Execution Server provides tools to administer and monitor business rule applications. v You use the Rule Execution Server console, Ant scripts, or enterprise management tools (such as IBM Tivoli® or HP OpenView) and JMX MBeans to monitor the execution of rulesets within Rule Execution Server. v You can debug a business rule application running in Rule Execution Server, see Tutorial: Debugging a remote Rule Execution Server application. v You create backup versions of rulesets and revert to a previous version if necessary. v You also monitor and archive execution results in Decision Warehouse. You can also gather statistics on performance.

Auditing

Ruleset execution trace data provides an audit trail of past decisions, sometimes required to satisfy regulatory requirements. In addition, this type of data provides a means to investigate or justify a decision rendered in a past transaction by showing all the rules associated with that decision. v By using Decision Warehouse, Rule Execution Server you can manage, backup, and remove stored decisions, see Auditing executed decisions. v Decision Warehouse also stores and retrieves detailed reports on rulesets for which monitoring is enabled, see Sample: Decision Warehouse customization. v You create Key Performance Indicators (KPIs). Business users often use reports to adjust business policies to reflect changing business conditions and improve performance based on these KPIs. Business rule applications for .NET platforms You can deploy and execute your rules on a .NET environment.

22 IBM Operational Decision Manager: Overview: Operational Decision Manager product family You can run rule applications in .NET by using rulesets developed in Rule Designer. You can deploy the ruleset as a .NET DLL into a native .NET environment, or expose the ruleset as a web service that you can call from a .NET environment. The following figure illustrates how you deploy a ruleset DLL to a native .NET environment.

Decision Server includes a .NET version of the rule engine and provides a set of tools to remap the BOM to a version that can be loaded and used in a native .NET environment. v You develop the BOM. If you want to execute on both Java and .NET platforms, you can create this BOM from a Java XOM and then translate the Java XOM to a .NET XOM, for example by using the Java 2 CSharp Translator for Eclipse. If your target platform is .NET only, you develop a .NET XOM. You must map the BOM to .NET classes by using BOM to XOM mapping. You cannot use the BOM Editor in Rule Designer to define this BOM to XOM mapping. You must define it in a separate B2X file. v In Decision Server, you generate a deployable .NET DLL. This DLL contains the ruleset and the BOM. On the .NET platform, you provide a .NET Execution Object Model (XOM) and the associated BOM to XOM mapping. Then, you deploy and execute the .NET DLL on the .NET platform, see Executing rules with the rule engine for .NET and Sample: Execution to .NET: rule engine for .NET.

To execute your rules on the .NET platform, you can also use Decision Server to expose a ruleset as a hosted transparent decision service based on object models from the Java or the .NET environment. You write and manage rules in Rule Designer and create a decision service to expose the business logic on the .NET platform, see Tutorial: Executing a hosted transparent decision service on Java or .NET. v You generate XML schemas from your .NET classes by using a .NET Framework tool. You then use the generated schema as the XOM against which you write rules in Rule Designer. v You define the decision service interface by setting the ruleset parameters and adding business rules to your rule project. v You expose the ruleset as a decision service by deploying the ruleset to Rule Execution Server. You then call the decision service from a .NET application by adding a web reference to your .NET project, see Calling decision services on .NET.

Overview: Operational Decision Manager 23 Event rule application development To develop event applications, developers, architects, and business analysts work together to design a data model, orchestrate event execution, author, review, and test events, and deploy the resulting event application to various production platforms (Java SE, Java EE, or z/OS).

You develop event rule applications to implement real-time event coordination between business systems (see Decision Server Events as the hub of business event processing). For a hands-on introduction to event application development, see Getting started with event rules.

You and business analysts design a data model (see Building the data model). The data model consists of business objects that identify where data comes from (event objects, data connections), and where the results of business event evaluation are sent (action objects). Business objects provide a data environment in which to process rules. Event objects construct business objects, and action objects are defined from business objects. v In Event Designer, you create event assets in an event project. In this event project, you can create a folder for each business system you want to integrate. In the business system folder, you create the following elements: – Events and event objects for events that initiate processes between business systems. – Actions and action objects for actions that might be performed when an event occurs. v For most events and actions, you define a connector. Event connectors pass data to the event runtime, action connectors retrieve data from the event runtime. The following types of connectors are available: – Email – File system – FTP – HTTP – JMS

24 IBM Operational Decision Manager: Overview: Operational Decision Manager product family – Relational database – SOAP – User Console v You define data connections (typically relational databases) that supply data that is required to complete the evaluation of the business logic. For example, the logic might use the customer service level, but that data might be available only in a DB2® database containing a master customer table.

You and business analysts author the business logic in Event Designer, see Building the business logic. v You create event rules, which determine how to interact with different business systems. For example, an event rule can state that when a customer makes a large financial transfer from the Transaction Processing business system, the Customer Service business system must contact the customer, and offer an investment alternative. v An event rule group consists of one or more event rules. Each event rule is triggered by an event and can trigger one or more actions. Optionally, you can use filters to logic among rules.

You deploy and integrate the data connections and the event assets into the event runtime (see Deploying assets to an event runtime server). v The event runtime monitors events as they enter the system and tracks the progress of events and corresponding actions as they move through a process (see Decision Server Events components). v When an event occurs in a business system and potentially requires one or more actions in another system, the relevant data (field name, field type, and value) is called an event payload. The connector for the business system passes this event payload to a JMS queue. The event runtime retrieves the message from the JMS queue and populates the appropriate business objects with the values contained in the event payload. The event runtime parses the event, identifies the event rule groups that reference the event, and determines whether any filters exist that require further evaluation. If an action includes an event rule, the event runtime attempts to evaluate it to determine whether the conditions for an action are met. If any values are missing, the event runtime attempts to retrieve the missing information from an external data connection. The action is initiated only if the condition is true. If the action does not include any conditions, the appropriate action is initiated.

You and business analysts test the business logic by using Event widgets. v In the Event Tester widget, you test the event logic in a business process. You define an event template and evaluate it. You can then view the result of any filters that were evaluated, and look at what actions were executed. You can also look at time-based events that have not yet been evaluated, and time-based actions that have not yet been executed (see Testing event logic using the Event Tester widget). v In the Event Capture widget and the Event Replay widget, you capture events from a production system, and replay a sequence of one or more of them, typically on a test system (see Testing and analyzing event logic using the Event Capture widget and the Event Replay widget).

You monitor business event processing in the runtime environment.

Overview: Operational Decision Manager 25 v To gather statistics on performance, you enable Performance Monitoring Infrastructure (PMI) on WebSphere Application Server (see Monitoring Decision Server Events). v In the Event Chart widget, you view charts in real time that display the history for events, actions, and filters used in event rule group evaluation (see Using event widgets for monitoring Decision Server Events and testing event rules).

You administer the development and runtime environments. v In the Administration browser-based interface, you monitor and manage the development and runtime environments, see Administering WebSphere Application Server and Decision Server Events for more information. In the development environment, you use Administration to view system events and event rule group processing, to ensure that the application is processing events and generating actions as designed. You can also run reports and view context processing. v You define user authentication and access to Event widgets (see Securing Decision Server Events). Decision management for business users Decision Center is a scalable decision management server and repository with collaborative web environments for authoring, managing, validating, and deploying business rules and events.

Decision Center provides project governance, including role-based security, history maintenance, and custom metadata. Business users use the same underlying rule language technology for business rules and event rules, and they have access to the same management and authoring environment. Decision Center provides enhanced collaboration between teams through multi-user access for business users and synchronization between IT and business user environments (see “Operational Decision Manager roles and activities” on page 14). Related information: Overview: Decision Center Decision governance In the Decision Center Business console, business users can work with a ready-to-use approach to change management and governance, which is based on releases and change activities. This approach is called decision governance.

For a hands-on introduction to decision governance in Decision Center, see Tutorial: Exploring governance workflows in the Decision Center Business console.

The following diagram illustrates the main tools and tasks for decision governance in Decision Center.

26 IBM Operational Decision Manager: Overview: Operational Decision Manager product family Synchronizing

As an IT user to enable decision governance, you publish rule projects as a decision service to Decision Center (see Decision services and Creating a decision service). The decision service is then available in the Decision Center Business console with an initial release that business users can start managing (see Releases). At any time, you can synchronize the decision service release that business users modified (see Synchronizing and storing rules).

Authoring

Business analysts and rule authors create change activities to author business rules in the Decision Center Business console (see Change activities). You can integrate custom value editors that are developed in Rule Designer into the Decision Center Business console (see Sample: Business console custom value editor).

Validating

Policy managers create validation activities to track and manage a test plan for the release and the results (see Validation activities). You can then use the Enterprise console to run test suites and simulations on the release. Policy managers can incorporate the report into the validation activity results (see Validating rules).

Administering

You can use the Decision Center Enterprise console to administer user access and the configuration of the Decision Center repository. In addition, you can configure profiles for users of the Business console (see User configuration in the Business console and Sample: Business console user service integration). The Decision Center repository provides services that support auditing and rollback of business rules (see Administering Decision Center).

Overview: Operational Decision Manager 27 Deploying

When all change and validation activities are complete, policy managers approve and complete the release, at which point deployment can occur. You, or policy managers, deploy a RuleApp to Rule Execution Server from the Decision Center Enterprise console. If the Decision Center repository is the production storage for business rules, you deploy directly to the production platform. You can also deploy to a test platform (see Deploying rules). Decision management for rule projects As an IT user, you publish rule projects to Decision Center. By using the Decision Center repository, business analysts and policy managers maintain the business rules. Reporting tools are available in the Decision Center Enterprise console, while Rule Solutions for Office is used for offline sharing of the business rules. A business analyst or policy manager can then deploy the business rules to Rule Execution Server from the Enterprise console, either directly or by a staged process in cooperation with a system administrator.

For a hands-on introduction to business rule management in the Enterprise console, see Getting started with business rules and Tutorials.

The following diagram illustrates the main tools and tasks for business rule management in Decision Center.

When the business rule application is ready to be made available to business analysts and policy managers, you publish rule projects to Decision Center. At any time, you can synchronize your working copy of the rule project with the contents of the Decision Center repository as changed by policy managers and business analysts (see Synchronizing rules between business users and developers).

Policy managers and rule authors can author business rules in the Decision Center Enterprise console, the Decision Center Business console, and in Rule Solutions for Office. With Rule Solutions for Office, rule authors write rules in Microsoft Word and edit decision tables in Microsoft Excel. They can create mixed rule and non-rule content in a RuleDoc, and retain semantic information together with the

28 IBM Operational Decision Manager: Overview: Operational Decision Manager product family actual implementation content of the rules (see Authoring rules). You can integrate business rule authoring and management extensions developed in Rule Designer into the Decision Center console and Rule Solutions for Office (see the samples: Authoring extensions for Decision Center and Business rule management extensions for Decision Center).

Policy managers use branches to work on multiple releases of the business logic, write queries on the business rules in their rule project, and create reports to review the results of the queries. Policy managers can use these queries to define smart folders, a business-oriented way of viewing the contents of a rule project in the Enterprise console. They can see the result of their work, or review the changes made by others, by searching the business rules in their rule project (see Reviewing and managing rules).

Policy managers must be confident that business rules are written correctly and any update will not break the business logic encapsulated in the ruleset (see Validating rules). Policy managers use the Enterprise console to validate the business logic against well-defined usage scenarios, by running tests and simulations against their rules. The Scenario Service Provider (SSP) calls Rule Execution Server to execute the rulesets and produce a report. The report provides details of the tests that passed and failed from a test suite or a simulation. You can store the results of execution (input data, output data, execution flow, and which rules were executed) in Decision Warehouse, a Rule Execution Server facility (see the samples: Testing in Decision Center).

You can use the Enterprise console to administer user access and the configuration of the Decision Center repository. Decision Center provides history and versioning services that support auditing and rollback of business rules (see Administering Decision Center).

You or policy managers deploy a ruleset to Rule Execution Server from the Enterprise console. Depending on whether the Decision Center repository is used as the production storage for business rules, you deploy directly to the production platform or to a test platform (see Deploying rules). Decision management for event projects You publish event projects to Decision Center. By using the Decision Center repository, business analysts and policy managers maintain the event rules. Reporting tools are available in the Decision Center Enterprise console. Policy managers then deploy the event rules to the event runtime from the Enterprise console, either directly or by a staged process in cooperation with a system administrator.

The following diagram illustrates the main tools and tasks for event management in Decision Center.

Overview: Operational Decision Manager 29 When the event application is ready to be made available to business analysts and policy managers, you publish event projects to Decision Center. At any time, you can synchronize your working copy of the event project with the contents of the Decision Center repository as changed by policy managers and business analysts (see Synchronizing rules between business users and developers).

Policy managers and rule authors can author event rules in the Enterprise Console. You can integrate rule model extensions developed in Event Designer into the Enterprise console (see Authoring rules).

Policy managers use branches to work on multiple releases of the business logic, write queries on the event rules in their rule project, and create reports to review the results of the queries. Policy managers can use these queries to define smart folders, a business-oriented way of viewing the contents of an event project in the Enterprise console. They can see the result of their work, or review the changes made by others, by searching the event rules in their event project (see Reviewing and managing rules).

Policy managers must be confident that event rules are written correctly and any update will not break the business logic. To validate the business logic, policy managers can use the Event Testing widgets. In the Event Tester widget, they can test the event logic in a business process (see Testing event logic by using the Event Tester widget). In the Event Capture widget and the Event Replay widget, they can capture events from a production system and replay a sequence of one or more of them, typically on a test system (see Testing and analyzing event logic by using the Event Capture widget and the Event Replay widget).

You can use the Decision Center Enterprise console to administer user access and the configuration of the Decision Center repository. Decision Center provides history and versioning services that support auditing and rollback of business rules (see Administering Decision Center). In the Event Chart widget, you can also view real-time charts which display the history for events, actions, and filters used in the evaluation of event rule groups (see Using event widgets for monitoring Decision Server Events and testing event rules).

30 IBM Operational Decision Manager: Overview: Operational Decision Manager product family You or policy managers deploy event assets to the event runtime from the Decision Center Enterprise console. Depending on whether the Decision Center repository is used as the production storage for event rules, you deploy directly to the production platform or to a test platform (see Deploying rules).

Understanding your Operational Decision Manager installation An overview of how the product family is divided and where the components are installed. Composition of Operational Decision Manager The Operational Decision Manager comprises a set of components, which are installed on a distributed operating system.

Operational Decision Manager is divided into a number of components. The components are installed using IBM Installation Manager. Some components are installed by default, other components are optional. You can install what you need at any time, and make updates to your installation when and if required. Installation Manager checks your system for the prerequisite software before installing each component.

Operational Decision Manager makes use of the basic Installation Manager features, including: v Select a language pack within the installer v Update an existing product package v Modify an existing product package v Roll Back a product package v Uninstall a product package

The following figure shows the installable high level Operational Decision Manager components:

Decision Server and Decision Center are separate components but work in combination with each other. For example, to run the Decision Center samples and tutorials you must install both components on the same computer, and the install directory for one component must be known by the other. By default, the installation directory for both components is the same, that is, they share the same Installation Manager package group directory.

The following set of components can be installed on a distributed platform: v “Decision Server ” on page 32

Overview: Operational Decision Manager 31 v “Decision Center” on page 33 Decision Server Table 4. Decision Server Rules Component Description Rule Designer A business rule application development tool for developers, modelers, and architects. Installed by default: v Rule engine An instance of a rule engine evaluates the conditions of the business rules against the objects to determine which rules are eligible to be executed. v Rule engine for .NET A rule engine that evaluates rules on the .NET platform. v COBOL Management Management capabilities to be able to create rule projects that are based on a COBOL model. Non default options: v Scorecard Modeler Scorecard Modeler extends the capabilities of Rule Designer by providing a ready-to-use scoring model complete with predefined scoring and reasoning strategies. Rule Execution Server A managed business rule execution platform that embeds the rule engine. Rule Execution Server application server The Rule Execution Server Java EE archives deployment archives for each supported application server.

If you want to configure Rule Execution Server on a supported application server other than WebSphere Application Server, you must select the option for the supported application server.

Table 5. Business Rules Embedded Component Description Business Rules Embedded You use the Business Rules Embedded to embed business rules into your applications.

32 IBM Operational Decision Manager: Overview: Operational Decision Manager product family Table 6. Decision Server Events Component Description Event Designer Event Designer is used to design, develop, test, deploy, maintain, and monitor event applications. Event runtime The event runtime manages the real-time business event coordination that was defined during application development. The event runtime can be deployed and configured on WebSphere Application Server. Event Widgets The Event Capture widget and Event Replay widgets are typically used by business users who, for testing purposes, want to capture events from a system, and replay a sequence of one or more of them, typically on a test system.

The Event Tester widget is typically used by business users who want to test the event logic in a business process.

The following figure shows a complete Decision Server installation:

Decision Center

Component Description Decision Center A set of business rule management tools for policy managers and business users, including an Enterprise console, a Business console, and a shared repository.

Overview: Operational Decision Manager 33 Component Description Rule Solutions for Office Rule Solutions for Office provides add-ins for Microsoft Word and Microsoft Excel, enabling you to author and manage business rules using Microsoft Office. Decision Center Installed by default: v Event Capture widget and Event Replay widget The Event Capture widget and Event Replay widgets are typically used by business users who, for testing purposes, want to capture events from a system, and replay a sequence of one or more of them, typically on a test system. v Event Tester widget The Event Tester widget is typically used by business users who want to test the event logic in a business process. v Event Chart Manager widget, Event Chart widget, and Event Layout widget These widgets are used to develop and display charts that show system activity in real time, including event processing, action creation, event rule group evaluation, and total and average values of numeric fields. v Events User Console The User Console provides the capability of integrating human activities into the process flow. Decision Center application server archives The Decision Center Java EE deployment archives for each supported application server.

If you want to configure Decision Center on a supported application server in other than WebSphere Application Server, you must select the option for the supported application server.

The following figure shows a complete Decision Center installation:

34 IBM Operational Decision Manager: Overview: Operational Decision Manager product family Security To help you configure applications safely, application servers check access to the resources and manage access rights.

Operational Decision Manager has been certified to support Federal Information Processing Standards (FIPS) 140-2 and the National Institute of Standards and Technology (NIST) Special Publications 800-131a security standard.

The FIPS 140-2 standard is an information technology security accreditation program to certify cryptographic modules for use in government departments and regulated industries that collect, store, transfer, share, and disseminate sensitive but unclassified information.

To configure WebSphere Application Server V8.5 to run in NIST SP800-131A mode (transition mode or strict mode) go to the following page: Configuring WebSphere Application Server for SP800-131 standard strict mode.

Configuration of a secure mode on an application server provides ways to increase the security of the application that you deploy.

In secure mode, an application server: v Checks access to the resources: access to a class using the Java reflection mechanism is not permitted without the appropriate security rights. v Manages access rights: Rule Execution Server Console access is managed with this mechanism.

By default, Rule Execution Server is installed with a minimum of security. The Rule Execution Server Console application defines three specific roles: resAdministrators, resDeployers, and resMonitors. The roles control access to the various JSP/Servlets.

Overview: Operational Decision Manager 35 There is no specific permissions implementation for Rule Execution Server MBeans. All that is required to access the MBeans using JMX are the correct credentials.

Java 2 Security provides a policy-based, fine-grain access control mechanism that increases overall system integrity. Java 2 Security is independent of Java EE role-based authorization. Java 2 Security can be disabled and enabled independently of global security. However, on certain application servers when global security is enabled, Java 2 Security is also enabled. Note that Java 2 security can be disabled even though global security is enabled.

Note: Security configuration of Rule Execution Server might relate to your application, domain, or server-scoped security policy in your enterprise. Review security settings for applications that call Rule Execution Server with your Java EE application architect or system administrator as appropriate.

You complete the installation of Decision Center and Rule Execution Server by using an Installation Settings wizard. For Decision Center, the Installation Settings wizard helps you create the correct groups in your application server when you set up security access. For Rule Execution Server, the Installation Settings wizard helps you create the correct type of database schemas. Communication protocols Rule Execution Server support HTTP and the secured HTTPS communication protocol. You can customize the protocol factory.

Communication with Rule Execution Server supports the HTTP or HTTPS communication protocols. Communication with Rule Execution Server can occur from Decision Center or Rule Designer.

You can customize the communication in two ways: v To support nontrusted certificates in secure mode. v To support custom protocols. Secure mode

By default, HTTPS supports only trusted certificates. As a consequence, when you communicate with Rule Execution Server in secure mode, you cannot connect using a demo certificate that is not trusted by the default JVM. Your application server raises an SSL handshake exception if you try to connect using a nontrusted demo certificate. To enable communication to work with nontrusted certificates, add the following Java system property in the start script of the application server:

-Dilog.rules.res.allowSelfSignedCertificate=true

To allow HTTPS on nontrusted self-signed certificates for Ant tasks, set the Java system property .rules.res.allowSelfSignedCertificate to true, as follows:

Custom protocols

You can customize the protocol factory for a specific protocol by using the following system properties: v custom.protocol.factory: The fully qualified name of the protocol factory.

36 IBM Operational Decision Manager: Overview: Operational Decision Manager product family v custom.protocol.scheme: The protocol name for which the protocol factory is customized. v custom.protocol.defaultPort: The default port used for the protocol if no port is specified in the URL.

You must launch the JVM that initiates the HTTP communication with these system properties and your implementation of the protocol factory class org.apache.commons.httpclient.protocol.ProtocolSocketFactory in the class path.

The protocol factory specified in custom.protocol.factory is instantiated and registered if both the following conditions are satisfied: v The HTTP client is instantiated. v The protocol in the URL used for communication is the same as the value of the property custom.protocol.scheme.

You can implement the protocol in one of the following ways: v Execute an Ant task with the system properties: -Dcustom.protocol.factory=com.ilog.MyProtocolFactory -Dcustom.protocol.scheme=https -Dcustom.protocol.defaultPort=443 v Add the properties to the build.xml file: Third-party tools and SAM The Operational Decision Manager installers install open-source third-party software. Third-party tools Third-party open-source software tools are included with Operational Decision Manager.

Open source software:

Operational Decision Manager includes a number of third-party open-source libraries and tools to enhance your user experience with the product. v “Eclipse” v “Apache Ant” on page 38

IBM gratefully acknowledges the work of the Open Source community and the many independent developers that build and support these Open Source packages.

The open source packages are provided to enhance Operational Decision Manager. The packages are not supported by IBM and IBM does not endorse their suitability for production use. For support, refer to the relevant user community through the Home Page for each package.

Eclipse:

Optionally, you can install Eclipse if you do not already have a version of this IDE installed.

The standard Operational Decision Manager installer provides Eclipse as an optional environment for the convenience of users. Eclipse is required for

Overview: Operational Decision Manager 37 successful application development with Operational Decision Manager, but users can choose to install Operational Decision Manager onto an existing, version compatible, Eclipse installation. You do not have to incorporate Eclipse into applications that you develop using Operational Decision Manager. However, certain features might require that specific Eclipse libraries be included in the final application.

Apache Ant:

Apache Ant is installed to provide a preconfigured build and deployment scripts.

Version 1.7.1 of Ant, the Java-based build tool, is provided in the /shared/tools/ant directory.

For more information about Ant, see http://ant.apache.org.

Ant is installed as part of the Operational Decision Manager installation. It provides a preconfigured build and deployment scripts. These scripts are integral to development of applications that incorporate Operational Decision Manager and can be useful as an element of the final application. However, they are not mandatory elements of Operational Decision Manager applications. In Operational Decision Manager powered applications, all product features are fully functional even if Ant has not been incorporated into the final application. Software Asset Management system Software Asset Management (SAM) is installed as the license enforcement system.

About Software Asset Management:

You must include the sam.jar file in the business rule applications that you develop.

Software Asset Management (SAM) is the license enforcement system of Operational Decision Manager. SAM takes the form of a JAR file, named sam.jar, that must be included in the class path of any business rule application developed with Operational Decision Manager.

The sam.jar file is specific to a particular customer, but it can be used on multiple machines belonging to that customer.

Note:

There can be many copies of the sam.jar file across the Operational Decision Manager distribution. To enable the use of any Operational Decision Manager module, the SAM file must be visible in the class path of the module.

SAM, license files, and the product installers:

During the installation of the products, the installer creates or updates the sam.jar files to include the licenses you have purchased for the modules that you are installing.

The license details are based on the installer that you used (evaluation or commercial version) and the installation passwords that you provided.

38 IBM Operational Decision Manager: Overview: Operational Decision Manager product family v If you are granted extra access over previously installed modules (an evaluation extension, for example), you must launch the installer to reinstall the modules with the new rights. v If you are granted access to extra modules, you must launch the installer to install them and to update all the SAM JARs for the entire file tree to include the new access, typically, to the SAM JARs of the old and the new modules. To benefit from the extra access beyond the installed tree, in Eclipse or on an application server), you must redeploy from the updated tree.

Making the SAM license visible:

After you have installed a module, make the SAM license visible in the class path of this module.

About this task

To be able to use the product, you must make sure that the license details are visible in the SAM file for each module.

Procedure

To make the license visible: 1. Install the module on your machine. The installer inserts a license file in the installation. The license file is included in the sam.jar. 2. Make sure the JAR file is in the appropriate class path such that the license files within the JAR are visible when you run the Operational Decision Manager modules.

Note:

If you use the classpath_*.xml file to set your class path, the license file is automatically included. The classpath_*.xml file is located in the lib subdirectory of the corresponding Operational Decision Manager component.

Licenses and archive repackaging:

If you repackage the module archives containing the sam.jar file, you must repackage this file, too.

For information on Decision Center repackaging, see the configuring and deployment documentation for your application server.

Licenses and multiple rule applications:

If you develop more than one business rule application, a message is displayed in the console output when you run your application. In this case, you must specify the SAM application name for each application.

Depending on the components that you include in your application, you can specify the SAM application name in any of the following ways: v By setting a property within your ruleset: see the IlrPropertyNames interface v By using the IlrRuleset.setApplication(java.lang.string) method

Overview: Operational Decision Manager 39 v By setting the Java system property ilog.sam.application when starting your application v By using the ruleset property ilog.sam.application in the Rule Execution Server Console

Accessibility Accessibility features enable people with disabilities, such as restricted mobility and limited vision, to work successfully with Operational Decision Manager.

This product supports the following accessibility features: Keyboard shortcuts You can navigate through the different Operational Decision Manager environments and their documentation using keyboard shortcuts. The rule management environments, including Eclipse and Microsoft Office, provide documentation on their accessibility features. You can also find topics that cover keyboard shortcuts in the documentation for Operational Decision Manager. Magnification You can use the settings of display systems to magnify development interfaces and supporting documentation Screen reading You can use a screen reader with a digital speech synthesizer, such as IBM Easy Web Browsing, to hear what is displayed on your screen. Consult the documentation with your assistive technology for details on using it with this product suite and its documentation. Technical documentation

The IBM product information centers share a browser-based environment that you can access using a web browser. Keyboard shortcuts

The following table lists Operational Decision Manager modules and their topics on keyboard shortcuts.

Product module Keyboard shortcut topics

Rule Solutions for Office v Ruleflow Editor keyboard shortcuts v Rule editor keyboard shortcuts

Decision Center v Business rules: User options v Event rules: User options

Decision Server Events v Accessibility

40 IBM Operational Decision Manager: Overview: Operational Decision Manager product family Related concepts: “Accessibility features of the information center” Accessibility features help users with physical disabilities, such as restricted mobility or limited vision, to use information technology products successfully. Accessibility features of the information center Accessibility features help users with physical disabilities, such as restricted mobility or limited vision, to use information technology products successfully.

Use the major accessibility features in this product to complete the following actions: v Use assistive technologies, such as screen-reader software and digital speech synthesizer, to use what is displayed on the screen. Consult the product documentation of the assistive technology for details on using those technologies with this product. v Operate specific or equivalent features using the keyboard only. Use the following keyboard combinations to navigate the information center: – To go directly to the right Topic pane, press Alt+K, and then press Tab. – In the Topic pane, to go from link to link, press Tab. – To move to the contents (navigation) view, complete one of the following actions: - For Microsoft Internet Explorer, press Alt+C, and then press Enter or the Up arrow. - For Firefox, press Alt+C. – To move to the Search Results view, complete one of the following actions: - For Microsoft Internet Explorer, press Alt+R, and then press Enter or the Up arrow. - For Firefox, press Alt+R. – To expand or collapse a node in the navigation tree, press the Right or Left arrows. – To move to the next topic node, press the Down arrow or Tab. – To move to the previous topic node, press the Up arrow or Shift+Tab. – To go to the next link, button, or topic node from inside one of the views, press Tab. – To scroll to the beginning or end of a pane, press Home or End. – To move to the previous topic, press Alt+Left arrow; to move to the next topic, press Alt+Right arrow. – To go to the next pane, press F6. – To move to the previous pane, press Shift+F6. – To print the active pane, press Ctrl+P. – To use Open Quick Menu to search or print a topic and its subtopics: - Open the menu by pressing Alt+M on a topic in the content (navigation) view. - Move to the previous item on the menu by pressing the Up arrow. - Move to the next item on the menu by pressing the Down arrow. - Select an item on the menu by moving to the item and pressing Enter. - Close the menu by pressing Esc. – Magnify what is displayed on the screen. Consult your Web browser documentation for information on how to change the text size.

Overview: Operational Decision Manager 41 The information center documentation includes the following additional features to aid accessibility: v The documentation is available in HTML formats to help users apply screen-reader software technology. v Images in the documentation are provided with alternative text so that users with vision impairments can use the contents of the images.

42 IBM Operational Decision Manager: Overview: Operational Decision Manager product family Notices

This information was developed for products and services offered in the U.S.A.

IBM may not offer the products, services, or features discussed in this document in other countries. Consult your local IBM representative for information on the products and services currently available in your area. Any reference to an IBM product, program, or service is not intended to state or imply that only that IBM product, program, or service may be used. Any functionally equivalent product, program, or service that does not infringe any IBM intellectual property right may be used instead. However, it is the user's responsibility to evaluate and verify the operation of any non-IBM product, program, or service.

IBM may have patents or pending patent applications covering subject matter described in this document. The furnishing of this document does not grant you any license to these patents. You can send license inquiries, in writing, to:

IBM United Kingdom Laboratories, Mail Point 151, Hursley Park, Winchester, Hampshire, England SO21 2JN

For license inquiries regarding double-byte character set (DBCS) information, contact the IBM Intellectual Property Department in your country or send inquiries, in writing, to:

Intellectual Property Licensing Legal and Intellectual Property Law IBM Japan, Ltd. 19-21, Nihonbashi-Hakozakicho, Chuo-ku Tokyo 103-8510, Japan

The following paragraph does not apply to the United Kingdom or any other country where such provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this statement may not apply to you.

This information could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice.

Any references in this information to non-IBM Web sites are provided for convenience only and do not in any manner serve as an endorsement of those

© Copyright IBM Corp. 2008, 2013 43 websites. The materials at those websites are not part of the materials for this IBM product and use of those websites is at your own risk.

IBM may use or distribute any of the information you supply in any way it believes appropriate without incurring any obligation to you.

Licensees of this program who wish to have information about it for the purpose of enabling: (i) the exchange of information between independently created programs and other programs (including this one) and (ii) the mutual use of the information which has been exchanged, should contact:

IBM United Kingdom Laboratories, Mail Point 151, Hursley Park, Winchester, Hampshire, England SO21 2JN

Such information may be available, subject to appropriate terms and conditions, including in some cases, payment of a fee.

The licensed program described in this document and all licensed material available for it are provided by IBM under terms of the IBM Customer Agreement, IBM International Program License Agreement or any equivalent agreement between us.

Any performance data contained herein was determined in a controlled environment. Therefore, the results obtained in other operating environments may vary significantly. Some measurements may have been made on development-level systems and there is no guarantee that these measurements will be the same on generally available systems. Furthermore, some measurements may have been estimated through extrapolation. Actual results may vary. Users of this document should verify the applicable data for their specific environment.

Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products.

This information contains examples of data and reports used in daily business operations. To illustrate them as completely as possible, the examples include the names of individuals, companies, brands, and products. All of these names are fictitious and any similarity to the names and addresses used by an actual business enterprise is entirely coincidental.

COPYRIGHT LICENSE:

This information contains sample application programs in source language, which illustrate programming techniques on various operating platforms. You may copy, modify, and distribute these sample programs in any form without payment to IBM, for the purposes of developing, using, marketing or distributing application programs conforming to the application programming interface for the operating platform for which the sample programs are written. These examples have not been thoroughly tested under all conditions. IBM, therefore, cannot guarantee or

44 IBM Operational Decision Manager: Overview: Operational Decision Manager product family imply reliability, serviceability, or function of these programs. The sample programs are provided "AS IS", without warranty of any kind. IBM shall not be liable for any damages arising out of your use of the sample programs.

Each copy or any portion of these sample programs or any derivative work, must include a copyright notice as follows:

© (your company name) (year). Portions of this code are derived from IBM Corp. Sample Programs. © Copyright IBM Corp. _enter the year or years_.

Trademarks IBM, the IBM logo, and .com are trademarks or registered trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml.

Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.

Microsoft, Windows, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both.

UNIX is a registered trademark of The Open Group in the United States and other countries.

Java and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle and/or its affiliates.

Notices 45 46 IBM Operational Decision Manager: Overview: Operational Decision Manager product family Index

roles (continued) A E rule authors 14 accessibility Eclipse rule authors disability as an installation option 37 roles 14, 26 keyboard shortcuts 40 event rule applications 14 administrators developing 24 roles 14, 19, 24, 26 integrating 24 architects S roles 14, 19, 24 SAM archives F See Software Asset Management repackaging, license aspect 39 (SAM) Federal Information Processing Standards scenarios 26 FIPS 35 secure mode in communication protocol 36 B security business agility 10 G for archive deployment at business analysts governance 26 installation 35 roles 14, 19, 24, 26 rule validation 26 simulations 26 business and IT cycles Software Asset Management (SAM) synchronizing 10 license enforcement system 38 Business Event Processing 10, 12 synchronizing as an expression of event pattern I business and IT cycles 10 detection 10 installing components business rule applications 14 overview 31 developing 19, 23 integrating 19, 23 V licenses 38 L validating on .NET data 19, 23 decisions 26 licenses on COBOL data 19 Software Asset Management 38 on Java or XML data 19 Business Rule Management 10, 12, 26 as an expression of business policy 10 M business users 26 Microsoft Excel managing business rules 26 authoring business rules 26 managing event rules 26 Microsoft Word authoring business rules 26 C communication protocols N customizing 36 new features in secure mode 36 overview 1, 5 customizing communication protocol 36 O D open source software 37 decision management activities 14 P for business users 26 policy managers roles 14 roles 14, 26 separated of applications 10 decision management for business users 14 decision management strategies R Business Event Processing 12 roles Business Rule Management 12 administrators 14 choosing 12 architects 14 developers business analysts 14 roles 14, 19, 24 developers 14 policy managers 14

© Copyright IBM Corp. 2008, 2013 47 48 IBM Operational Decision Manager: Overview: Operational Decision Manager product family



Printed in USA