Business process
automation
made easy with
Java, Part 1
Tutorial Details:
Business process automation made easy with Java, Part 1
Business process automation made easy with Java, Part 1
By: By Ahmed Abulsorour and Siva Visveswaran
Implement business rule engines in a J2EE enterprise
hese days, severe market demands drive enterprises to reduce costs and increase shareholder value. In such an environment, businesses can realize significant cost reductions and efficiencies by automating business process flows, eliminating nonvalue-adding human interventions, and allowing enterprise applications to communicate and intelligently and seamlessly share information. In this two-part series, we present the technology building blocks for automating an enterprise, how those blocks fit within an enterprise component architecture such as J2EE, and how you can design and build a business rule engine solution based on this architecture.
We begin by explaining business process automation components, then introduce existing J2EE-based (Java 2 Platform, Enterprise Edition) rules engines, and conclude by explaining how rule engines fit within an enterprise architecture.
Read the whole series, "Business Process Automation Made Easy with Java:"
Part 1: Implement business rule engines in a J2EE enterprise
Part 2: Design options for rule engine integration
What is business process automation?
We define business process automation as technology components substituting and/or supplementing manual processes to manage information flow within an organization to lower costs, reduce risk, and increase consistency. For example, Figure 1 illustrates a generic risk-assessment business process inherent in most financial applications such as mortgage preprocessing, claims processing, underwriting, and so on.
Figure 1. Manual risk-assessment process
Such a manual risk-assessment process can lead to problems such as:
Laborious data entry/re-entry
Manual risk assessment that potentially varies from field to field
No analytical data to validate past decisions (for improvements)
Long turnaround times
Added up, such problems can make manual risk assessment an expensive process.
Figure 2 illustrates the same process in an automated environment.
Figure 2. Automated risk-assessment process
Clearly, the transformed environment can significantly lower costs by eliminating manual data re-entry, shortening decision cycles via automated risk assessment, centralizing decision making, and lowering risk due to the analytical input.
Technology building blocks of a business process automation solution
Automation can deliver benefits only with a combination of process re-engineering, enabling technology, and an organizational structure that can support both. We believe the following four key technology building blocks are mandatory for an automated enterprise:
Business rule engine: Business rules describe the structure, operation, and strategy of an organization's business process. A few key people in the organization enforce business rules, typically captured in policy and procedure manuals, customer contracts, supplier agreements, and so on. That manual decision making proves error-prone and inconsistent. In legacy environments that support business processes, rules encoded inside the application can be expensive or difficult to change. A business rule engine lets you separate application code from business rules, maintain rules in a central/shareable repository, and promote consistent decision making. Such an engine proves central to any automation solution.
Application integration platform: Automation implies that manual processes will make way for system processes, which in turn implies that the systems that help realize a business process can seamlessly communicate and exchange information without manual intervention. That requirement calls for a strong application-integration platform that supports multiple communication protocols and data semantics between systems.
Workflow engine: In typical business scenarios, including the risk management example we saw earlier, automation needs some manual processes on an exception basis. For example, if a rule engine cannot establish the credit worthiness of an applicant based on the rules defined in its repository, someone must take a second look. Workflow engines enable a smooth hand-off between systems, between people, and between systems and people.
Common data interchange standards: To lower costs through automation over the long term, enterprises need a common, XML-based data interchange standard that reduces development and maintenance efforts.
In this article, we focus on a J2EE-centric automation solution built around the business rule engine component.
Elements of a business rule engine
Let's examine the rule engine elements common to most commercial products such as Blaze Advisor, ILOG JRules, or Expert Shell technologies such as Jess.
Figure 3 introduces the three common rule engine elements.
Figure 3. Elements of a business rule engine
The first element, the rules repository, contains the domain knowledge coded in the form of rules. Developers generally write rules in a high-level business language that relates to the domain, storing the rules in the repository in a compiled form to enhance performance. Both the rule engine and the rules authoring tool employ the rules repository.
The second element, the rule engine core implementation, consists of:
Rules management module: Accesses the repository and loads the correct rules-set into the engine.
The agenda: Tracks the prioritized rules selected by the inference engine during the pattern-matching logic cycle.
The working memory: Contains the current state of facts that led to the current rules in the agenda.
Execution context module: Represents the runtime environment for the inference engine's execution. During the inference engine's execution cycle (logic cycle), an execution context would hold a physical grouping between a specific instance of the agenda and the working memory. More than one execution context can simultaneously exist and share the same rules-set.
The inference engine: Puts rules into the agenda based on the facts in the working memory. If a rule executes, then adds more facts, those facts become inserted into the working memory, then are used later to match more rules until the logic cycle's end, where no more rules can be matched with facts from the working memory.
The third element, the rules authoring studio, is the user interface with which to input rules to the repository. Most currently available rules engines include a rules editor to compose rules in a high-level rules language that usually includes syntax checking. Testing and debugging functions let the user build test scenarios to simulate the rules' effects in a real environment.
Architecture
Now that you understand process automation and business rules, let's see how and where a rule engine fits in an automated enterprise.
J2EE as an enterprise-application architecture foundation
In this article, we employ J2EE as the as the component architecture, but the general ideas apply to other environments, such as CORBA. J2EE today represents the preferred platform for building open standards-based, multitier, server-centric applications. The J2EE 1.4 specification introduces new APIs that implement core Web services protocol stacks, new management and deployment APIs, new JavaServer Pages (JSPs), Enterprise JavaBeans (EJB), and Java Connector Architecture (JCA) API versions, and provides a robust service and integration platform. For enterprises employing J2EE as their foundation platform, the road to automation can start with Figure 4's application architecture.
Figure 4. An automated J2EE enterprise architecture
In Figure 4, notice:
The architecture follows industry best practices as outlined in Sun Microsystems' " Sun Java Blueprints for Enterprise "
You can expose the business rule engine (and other middle-tier components) either synchronously (with Remote Method Invocation (RMI)) or asynchronously (with Java Message Service (JMS)) to Web applications needing decision support
The integration layer uses JCA for legacy system integration and, as mentioned above, JMS for asynchronous communication
By isolating the core business services from the supporting automation infrastructure, you can reuse them in a manual context
Rule engines and J2EE
Let's see how to integrate a business rule engine within a J2EE enterprise to build business automation applications. We've based the architecture (Figure 5) on the Model-View-Controller (MVC) design pattern. Within MVC, we employ a Model 2 architecture in the view (Model 2 is a hybrid approach based on both JSPs and servlet technologies).
Figure 5. J2EE rule engine architecture
The architecture's presentation tier handles the client interaction by abstracting the low-level protocol details into an event-based mechanism. The communication protocol employed can range from HTML over HTTP (Web-based thin client browsers), RMI over IIOP (Internet Inter-ORB Protocol) (Java Foundation Classes- (JFC) or Swing-based clients), or even XML over HTTP (SOAP (Simple Object Access Protocol)) for Web services (Web service client). In this article, we concentrate on the Web-based presentation tier based on HTML over HTTP.
The Business Object tier, known in J2EE as the EJB tier, has the application's business logic implementation. The Business Object tier contains all the components that model the business, including the business rules that operate on them. The Web-based presentation tier propagates the user responses, which require changes to data, to the Business Object tier for processing in the form of events.
Finally, the integration tier implements the integration architecture with external engines.
You can deploy a business rule engine in two modes:
As a standalone server that handles its own life cycle and low-level server architecture details such as threading, lock
Read
Tutorial at: Click here to view the tutorial
Rate Tutorial: Business process
automation
made easy with
Java, Part 1
View Tutorial: Business process
automation
made easy with
Java, Part 1
Related
Tutorials:
|
Displaying 1 - 50 of about 4026 Related Tutorials.
|
JDO UNPLUGGED - PART 1
Relational Mapping' Technology
developed by Java Community Process(JCP), with active....
==============================================================================
BOOKS FOR REFERENCE:
1. Java Data Objects (May...
JDO - Java Data Objects Tutorials, JDO Java Data Object, JDO Tutorial, JDO |
Business Intelligence
technology and
concepts like BI made it easy to access and manage all kinds... inevitable and
hence is going to be a major part of in all kinds of business...
Business Intelligence
  |
Open Source Business Model
the viability of open source biotechnology as a business model. The first is made up...
Open Source Business Model
Open Source Business Model
What is the open source business
model
It is often confusing to people |
Calculate process time in Java
Calculate process time in Java
Calculate process time in Java
 ... the
process time of the completion of the operation through the Java program |
VOIP for Your Business
that long distance calls are becoming an integral part of business communications... applications or other custom made applications with it.
VoIP lends itself to easy...
VOIP for Your Business
VOIP for Your Business |
The Future of Business Intelligence
of BI inevitable and hence is going to be a major part of in all kinds of business...
The Future of Business Intelligence
GPS Capability,GPS Capabilities
The Future of Business Intelligence |
eClarus Business Process Modeler
Eclipse Plugin-Language
eClarus Business Process...;
Focus on connecting IT to business requirements... through shared models and
artifacts among business analysts and SOA architects |
Open Source Workflow Engines in Java
server, JBoss said it has acquired the open source Java Business Process... Workflow Engines in Java
The Open For Business Project: Workflow Engine Guide...) is the first open source graphical Java workflow process editor fully according |
Business Intelligence Tools
DISCUSSED that Business Intelligence is a process to collect data and extract...
Business Intelligence Tools
GPS Capability,GPS Capabilities
Business Intelligence Tools
  |
JDO UNPLUGGED - PART II
JDO - Java Data Objects Tutorials, JDO Java Data Object, JDO Tutorial, JDO UNPLUGGED - PART II
JDO UNPLUGGED - PART II... www.jcp.org and selecting JSR-12 or
can be downloaded from sun java website. Goto |
Easy Struts
generation.
Provide a
global view of any Java
project with Easy Struts...
Easy Struts
Easy Struts...;
The Easy
Struts project |
Development Process
Java: Development Process
Java: Development Process
Software development can be looked at from two perspectives process
and product. Process is how you go about writing programs |
Decreasing process time by caching through the Hash Table in Java
Decreasing process time by caching through the Hash
Table in Java
Decreasing process time by caching through the Hash
Table in Java...;
This section illustrates you how to improve the process
time |
Business Intelligence in Insurance
in the business process and should be done with proper calculation and analysis by using... intelligence is now one of the integral part of the decision making process. After...
Business Intelligence in Insurance
GPS Capability,GPS Capabilities |
History of Business Intelligence
of new technology and concepts like BI made it easy to access and manage all...
History of Business Intelligence
GPS Capability,GPS Capabilities
History of Business Intelligence
  |
Open Source web Templates
Open
Source Web Templates
A web site template is a pre-made website with essentially no content. This makes it easy for you to have...;
Open Source Template Engines in Java
Velocity is a Java-based |
Web Services Tutorials and Links
for application to application communication. The programmatic interfaces made... format bindings.
Java
Web services:
The Java Web Services Developer Pack (Java WSDP) is a free integrated toolkit you can |
Small Business Computer Security, the Basics
Small Business Computer Security, the Basics
Small Business Computer Security, the Basics... in business today realizes both the natural dependency on computers |
String Exercises 1 - Answers
Java: String Exercises 1 - Answers
Java: String Exercises 1 - Answers
Answers to the String Exercises 1.
3 -- s refers to exactly the same string as a.
ERROR -- t |
Open Source Java
extension to the Java programming language, Java platform compatible and easy... to release Java as an entirely open source project.
Sun made the commitment to open... on the Java virtual machine.
The reason ActiveGrid made contributions to the Jython |
ILOG Business Rule Studio
ILOG Business Rule Studio
ILOG Business Rule Studio...-editing and debugging of Java code and rules.
Rule Studio supports deploying... with business rule authors through integration with Rule Team Server. In addition |
Java Server Faces (JSF) Tutorial
Overview
JSF was developed by Java Community Process(JCP... standard framework, developed through Java Community Process (JCP), that makes it easy to build user interfaces for java web applications by assembling reusable |
Wi-Fi as a part of LBS
Wi-Fi as a part of LBS
Wi-Fi as a part of LBS
 ... direction in cities, to locate any particular business points, to track stolen |
New Page 1
and use application data without using java code. EL
was introduced in JSTL 1.0... be a map key.. If the
first value is a Java Bean, then second value must be a bean... one is ${bigFive[0]}
The second one is ${bigFive["1"]}
EL Operators |
Easy Eclipse Plugin
Easy Eclipse Plugin
Easy Eclipse Plugin..., so it
may easier to install the Server
Java distribution.
Eclipse
J2EE tools..., with support of
Enterprise Java Beans 3.0 and Aspect-Oriented Programming
Know |
Programming: Initials 1
Java: Programming: Initials 1
Java: Programming: Initials 1
Name... are made up of characters (primitive type char). You can extract the
first |
Java Util Examples List
and classes for easy manipulation of in-memory data. The java util package...;
Calculate process time in Java...;
Decreasing process time by caching through the Hash
Table in Java |
Simple Linked List Exercise 1
Java: Simple Linked List Exercise 1
Java Notes: Simple Linked List Exercise 1
Name... strings and puts
them in a doubly linked list.
1
2
3
4
5
6 |
How Struts Works
;
Model : The model is basically a business logic
part which takes the response...;
The basic purpose of the Java Servlets in struts is to
handle requests made by the client or by web browsers |
JSF Tutorial for Beginners
;
JAVA
SERVER FACES ( not to be confused with JSP..JAVA SERVER PAGES), is
the latest technolgy from JCP(Java Community Process).
It is ...; illustration.
---------
JAVA SERVER FACES is  |
Java Interview Questions - Page 12
Java Interview Questions,interview questions java
Java Interview Questions - Page 12
 ...: Serialization is the
process of writing the state of an object to a byte stream |
Business Intelligence Solutions in India
management, business process reengineering, CRM, supply/demand chain management...
Business Intelligence Solutions in India
GPS Capability,GPS Capabilities
Business Intelligence Solutions in India |
The J2EE Architecture allows the programmers to divide their work into two major categories Business Logic Presentation
major categories Business Logic Presentation Logic...:
Business Logic... with
the users.
Business Logic:
These are EJB applications |
mediniQVT
chain, model transformations are the key for process automation.
medini QVT..., maintenance and
customization of process specific transformation rules.
Highlights... incremental update as well as
the transition from manual modeling to automation |
TIBCO Business Studio
Eclipse Plugin-Language
TIBCO Business Studio...;
This End User License Agreement for TIBCO? Business Studio..., or if you are downloading the Software as part of your job responsibilities |
Java Interview Questions - Page 2
:
1. The Java Virtual Machine (Java VM)
2. The Java... is the package?
Answer: The package is a Java namespace or part of Java...
Java Interview Questions,interview questions java
Java |
Plugin builder
;
Pluginbuilder supports the build
automation of Eclipse plug-ins... further build automation
Best Practices like test automation, code coverage... and subversion projects
Build HEAD and releases
Easy to use main build file |
Business Intelligence Value Chain
business strategies.
Knowledge Gain
It’s the process of knowing something... the desired business goals.
Hence the method or process that includes data collection...
Business Intelligence Value Chain
GPS Capability,GPS Capabilities |
SEE with Java
SEE with Java
SEE with Java
 ...;
Position Vacant:
SEE with Java
Job Description
Java... project full life cycle project. Candidate with Java, EJB, JPA , Hibernate |
WEBSERVICE USING APACHE AXIS - TUTORIAL-2 AXIS FOR EJB-WEBSERVICE (part-5)
;
"It
is entirely possible to package your business logic into Java Beans... had seen parts 1 to 4 of this tutorial on exposing an EJB as XML-Webservice using Axis. This is a 7 part
article.?
part-1 : Overview
part-2 : deploying |
Web Services - Web Services Tutorials
in EJB2.1, while EJB3.0 made the web
services development easy and more flexible... such as Microsoft .NET is capable of using a Java EE application
server to access... includes an endpoint
address: WSDL is similar to java interface |
Business Development Executive, Online Marketing Executive
Business Development Executive, Online Marketing Executive
Business Development Executive, Online Marketing Executive...;
Position Vacant: Business Development Executive, Online Marketing |
Java Plateform Micro Edition
developed under the Java Community
Process as JSR 68, the different flavors... and preverify the Java source files. The whole build process is shown below...
Java Plateform Micro Edition
Java Plateform Micro |
Business Intelligence in Healthcare
Business Intelligence in Healthcare...;
TO MAKE A PROFIT DRIVEN BUSINESS decision, every company depends.... Business Intelligence (BI) is solely offers solution to data warehousing and data |
Using Beans in JSP. A brief introduction to JSP and Java Beans.
Using Beans in JSP. A brief introduction to JSP and Java Beans...;
Java
Beans
Java
Beans are reusable components. They are used to separate Business logic |
Tutorials - Java Server Pages Technology
of the
translation process must extend a superclass that is either
1... with
business-related code and data access code. The Java code representing...
JSP Tutorials - Java Server Pages Technology Tutorial |
Tutorials - Java Server Pages Technology
of the
translation process must extend a superclass that is either
1... with
business-related code and data access code. The Java code representing...
JSP Tutorials - Java Server Pages Technology Tutorial |
Integrating Business Logic Tier and Integration Tier Components
Integrating Business Logic Tier Components,JSF Spring and Hibenate
Integrating Business Logic Tier and Integration Tier Components...;
In the business logic tier web have created |
Business Intelligence: Power to gain competitive advantage
be relevant, updated, trusted and easy to use. There are different business...
Business Intelligence: Power to gain competitive advantage
GPS Capability,GPS Capabilities
Business Intelligence: Power |
Free Java Books
, are part of the successful Java BluePrints program created by Sun Microsystems... (hereafter referred to as adventure builder) are part of the successful Java BluePrints... such as Mosaic enabled millions of people to roam the Net and made Web surfing part |
|
|
|