Effective collaboration between business and IT is essential to the success of both SOA and BPM; as Microsoft points out, "SOA by itself is not sufficient to guarantee alignment of business and IT."
A Business Rule Engine can act both as a technology and collaboration enabler; this article will explain how your organization can improve business processes and move toward SOA by focusing on these strategies.
- Streamline business processes by separating business logic from flow logic
- Create processes that are more agile by making it easy to update business logic
- Align the business goal of more dynamic decision-making with SOA technology
- Enable effective IT-Business collaboration by giving IT the control it needs and Business Users the tools they need to maintain business logic
Strategy: Streamline business processes
BPM tools enable business users to define business processes using visual tools. As business users define processes, they may find that defining all the permutations around decision points can create a workflow that is unwieldy, both in terms of understanding and ability to maintain, execute, and optimize. For example, a workflow may be defined to execute the logic that determines eligibility and pricing for insurance.By embedding every decision point within a workflow, organizations are unintentionally embedding decision logic-thus moving away from the vision of SOA. To help streamline business processes, organizations must identify decision logic and manage it differently from flow logic. By externalizing the decision logic from the workflow, a business rule engine can simplify a workflow and make the logic easier to update.For example, a single, high-level decision point called "Determine Eligibility" will encompass many underlying decisions and calculations. Figure A shows how this high level decision point within the workflow reduces the complexity of the workflow shown in the previous graphic. The underlying rules, logic, and calculations that drive that decision point can be maintained separately from the workflow, by the subject matter experts.
A High Level Decision Point ("Determine Eligibility") Replaces Several Underlying Decision Points Within A Workflow
Strategy: Externalize business logic for more agile processes
Organizations may also discover that many of their business processes do not change as frequently as the business rules, logic, and calculations at the heart of essential business operations. For example, the process to review and approve a loan may change occasionally, but the logic used to determine loan approval and terms will change frequently, based on market dynamics such as the sub-prime mortgage collapse in the U.S. or the introduction of new E.U. regulations, or changes in tax codes across geographies.
Like business logic embedded in complex workflows, business logic hard-coded in applications is rigid, requiring developers to maintain even the simplest of changes. In most organizations, subject matter experts such as underwriters, actuaries, risk managers, and business analysts document these rules and request changes to the application. For developers, this means a backlog of change requests and delays of new projects. For the business, it means unacceptable turnaround time. In today's world of frequently changing regulations and market dynamics, organizations do not have the time or resources for developers to write and maintain business rules within monolithic applications. Neither business nor IT can afford "business as usual."
A Business Rule Engine delivers more agile processes for today's dynamic marketplace by externalizing business logic and enabling subject matter experts to write and maintain that logic.
Strategy: Take pragmatic steps toward the strategic vision of SOA
Services Oriented Architecture (SOA) aims to break apart monolithic applications into a set of services that can be maintained independently and called from multiple applications. In the vision of SOA, monolithic applications become a series of "composite applications," applications composed of services that can be updated frequently and shared across multiple applications. SOA can be an enabling technology for BPM by providing reusable services that can be updated by business owners and called from multiple processes. SOA is often presented as a panacea to many key business problems.
However, there are two inter-related challenges with bringing the vision of SOA to reality. First, it's sometimes difficult for an organization to determine where to start. Many focus entirely on the infrastructure without giving thought to the business result they seek. Second, it is important to note that SOA is a technology infrastructure. SOA can be an enabling technology, but it is only through considering the technology means in light of the desired business objective that SOA can deliver on its full potential.
To successfully move toward SOA, organizations must start with a specific business challenge or opportunity, and then deploy the architecture to support it. A BRE can address a specific business objective while also providing a pragmatic approach to SOA by making the latest rules available as services to multiple processes or applications.
For example, a U.S. based Insurance Company has a strategic objective to move toward SOA built on the Microsoft .NET Framework. This company, however, has an immediate challenge. Through acquisition, they now have two underwriting applications, one on the mainframe and one on .NET. Each application is using different rules, logic, and calculations for underwriting- but the business needs consistency and auditability across platforms and applications. Figure B illustrates how it works.
Dynamic Decision Services
By externalizing the business rules, logic, and calculations that had been hard coded in the underwriting applications and making those rules available as services, the company will have consistent and auditable business logic that can be easily updated and shared across applications and business processes. A streamlined business process, automated by BPM technology, can call the decision service, regardless of application or platform.
SOA alone does not eliminate the backlog
The scenario above describes a pragmatic approach to SOA that aligns business and IT objectives. A key value of SOA is that the individual services can be easily updated. The key question then becomes: updated by whom? If business users continue to write requirements and throw them over the fence to IT, the application change queue remains backlogged and turn-around time is still not fast enough. The key factor in business process agility becomes empowering the business users to write and maintain the rules, calculations, and logic that power essential business operations.
Can IT really embrace end-user development?
The term "end user development" scares most IT people because they understand the risk they would take on by losing control of testing and quality assurance. IT professionals are held accountable for service level agreements, so they rightly ask: how can we effectively manage testing, quality control, change management, and security when others are doing the development? They know that if the application goes bump in the night, they will get the call, not the business analyst.
Strategy: Promote effective collaboration between business and IT
A business rule engine (BRE) can do what SOA alone cannot: enable the effective collaboration of business and IT. The most successful deployments of a Business Rule Engine begin with the collaboration of IT and business to investigate whether a rule engine could help them, and if so, which rule engine should they choose. By beginning the selection process together, IT and business begin defining the roles that each will have in the future. They determine which pieces each will own and which they will own together. Both need to have confidence that they have the appropriate amount of control and freedom to get their jobs done without undue risk. Let's walk through the typical requirements of business and IT face and how the right BRE can fulfill those requirements.
Let's face it: most developers like writing new code that makes a real impact on the business. They accept maintaining code as part of their responsibility, but it's not what gets them excited; it actually takes them away from "the cool stuff." If you could offer developers the opportunity to offload routine changes-but but maintain control about how rules are integrated into applications, how data is accessed, and who can update which rules; ensure adequate testing; and maintain version and change control-you'd have their attention.
A BRE provides a set of tools that enables IT to define a secure environment in which business analysts and business users can write and maintain business rules. The complexity of rules and the skills within the organization will determine who authors and who updates rules. In some organizations, business analysts and users write all rules. In others, developers may write the more complex rules, with business users responsible for maintenance. With role-based permissions, a BRE ensures that rules are updated only by those authorized, whether they are in IT or business.
To optimize quality assurance, BREs may provide a built-in testing function allows rule authors to test rules before they are integrated into applications. BREs should also include management capabilities such as check-in/check-out, versioning, and granular permissions to ensure that no rule is changed or promoted into production without appropriate authorization or testing.
The primary need of the business analyst or business user is to ensure that changes to business rules, calculations, and logic can be implemented as the business requires, whether for competitive or compliance reasons. Many business analysts use spreadsheets to develop the calculations and logic that drive business decisions. Analysts like using spreadsheets because they are familiar with the tool and can make updates whenever they need to. However, managing spreadsheets across an organization is difficult, as is ensuring that all business analysts are using the same logic to power decisions.
One of the largest banks in the U.S. was using spreadsheets to assess lending risk. The risk managers liked the spreadsheets for their flexibility. However, the Bank could not ensure the consistency of the business logic, nor could they comply with regulations such as BASEL II. They decided to move toward centralized management and deployed a web-based application, developed and maintained solely by IT. This allowed the Bank to comply with regulations, but the analysts lost control over the logic they understood and needed to do their jobs. Because the business rules, calculations, and logic were buried in code, IT needed to make even the smallest updates. Backlog soon grew to multiple months. The pendulum had swung too far in the opposite direction.
The Bank needed a way to empower its business analysts to maintain the logic that they understood and that they needed to do their jobs. IT needed to ensure centralized management, scalability, and auditability. What the Bank needed was a flexible, scalable solution that would allow business analysts to do their job and the business to comply with BASEL II.
A business rule engine empowers Business Analysts in a controlled environment
A Business Rule Engine provides the best of both worlds for the Bank by empowering business analysts to write and maintain the business rules, logic, and calculations that power essential business decisions. With a BRE, you can not only control who authors and maintains rules, you can report on rule changes for transparency, regulatory requirements, and corporate governance. A BRE should provide multiple authoring contexts so that business users can choose the authoring style that takes advantage of their skills and best suits the type of rules they are authoring. Consider capabilities like expression-based authoring for users familiar with Microsoft Excel; Business Language Authoring for English-like syntax and point-and-click authoring; and decision tables, which provide a simple way to author and edit complex rules. Decision tables also enable users to easily check rules for consistency, completeness and correctness.
Use a Combination of Technologies to Promote Effective Business-IT Collaboration
By focusing on a specific business objective and deploying a BRE to externalize business logic, you can improve BPM by delivering more agile business processes, provide pragmatic approach to SOA, and enable effective collaboration between business and IT.
Theresa O'Neil is Vice President of Business Development for InRule Technology. As Vice President of Business Development, Theresa has responsibility for developing worldwide partnerships with ISV, reseller, services, and technology organizations. With more than 17 years in software marketing, O'Neil has focused primarily on enterprise information and application solutions. Her experience includes leading enterprise software marketing at Platinum Technology, where she also helped launch a Y2K business; vice president of marketing for storage software firm TrelliSoft; and vice president of marketing for business intelligence company ShowCase Corporation.