SBVR: What Are the Possibilities?
Completion of the Object Management Group's Semantics of Business Vocabulary and Business Rules (SBVR) is an important step toward putting information technology under more direct and immediate control of business decision makers. Here are two scenarios demonstrating what I mean by direct and immediate control.
An insurance company frequently adds insurance products, new pricing rules, and new eligibility rules. Decision makers simply describe products and state rules plainly in their own language (e.g., English, French or Chinese). At the push of a button, the company's IT system supports the new products and rules. Automatically, new operations appear in Web Services, methods are created or updated with new calculations and new conformance checking, and new database tables and columns appear along with new views and stored procedures. To support this automation, software engineers have previously made technology decisions, choosing platforms and design patterns. Parts of the system driven by business rules are then generated following the design patterns.
A pharmacy's billing department finds that 432 claims sent electronically to a payer, Blue Health, are being denied with a request for additional medical justification. The department head asks her billing system, in plain English, how many claims sent to Blue Health have no primary diagnosis and how many have no secondary diagnosis. The answers, given directly by the system, are 0 and 432. The department head then decides to impose a new rule: Each claim sent to Blue Health must be accompanied by a secondary diagnosis. At the push of a button, the system begins enforcing the new rule. Old claims lacking the secondary diagnosis are immediately flagged as violating the rule, and as new orders covered by Blue Health insurance are entered, the system prompts for a second diagnosis to satisfy the rule.
This sort of direct and immediate control is already appearing in some narrow circumstances. For example, I am seeing some software modernization projects that, rather than simply translating old code to a new programming language, are mining the business intent out of legacy code and working with subject matter experts to understand the business vocabulary and discover business rules that motivated the legacy code. The rules are stated in English from a business perspective and are not "rule engine" rules, which set variables and call functions. The business rules tell what is always true (structural rules) and what is obligated to be true (operative rules). Software services are generated from the business vocabulary and rule statements, which become the vehicle for change going forward. But generation capabilities are limited at this time and must expand to a greater variety of generation targets and design patterns.
Where does SBVR fit into the two scenarios above? SBVR is likely invisible to the business people making the rules, but its work is done at the push of a button. Business rule statements are parsed and interpreted with respect to business vocabularies to produce semantic formulations that tie to business concepts. SBVR provides a standard way to form models of vocabularies, concepts, and semantic formulations. These models then drive software generation. SBVR is not a language that business people use to write rules. Rather, it provides a way to model business meaning that has been expressed in business people's own language. SBVR imposes no requirement on business language other than clarity. Business people need no IT skills or IT knowledge to write rules that drive software systems.
SBVR defines an XML interchange format so that a variety of tools and services can interoperate in an SBVR Ecosystem. An SBVR model can be created in one tool and used by another. The goal of direct and immediate business control introduces many challenges requiring a variety of tools and services. The Ecosystem supports interoperation of tools that can be built separately but work together.
SBVR Ecosystem — a variety of tools and services communicate business meaning
Here are some of the kinds of tools and capabilities that are coming together within the SBVR Ecosystem.
- Vocabulary and Rule Management tools and repositories. Expect to find integration with business documents and traceability to source documents, business goals and even legacy IT artifacts.
- Language Processors that produce SBVR models from vocabularies and business statements. Expect to see language processors not only for English but also for many other languages. You can even expect to see different language processors for the same language competing on the basis of support for language structures and how well they help authors to write clearly and correctly.
- Generators for different targets (e.g., .Net, J2EE, relational databases, rule engines, workflow engines, constraint engines). Also, generators will create different kinds of models based on domain-specific languages used for further generation through software factories.
- Transformations to and from other kinds of models such as Ontologies, Conceptual Models (Object Role Modeling), Business Object Models (UML).
- Quality Analysis tools will check SBVR models for consistency, redundancy, and completeness.
Different parts of the SBVR Ecosystem present different challenges and require different kinds of expertise, so it is important that these parts need not all come from one tool but can be built independently.
The Ecosystem's growth is starting slowly but will accelerate. Each new SBVR-based capability adds value to the whole Ecosystem, and thereby increases the value of adding more. Each new language processor expands applicability of the SBVR-driven generators, quality analysis, and transformations. Each new generator adds more value to the language processors. The following business-driven generation and transformation capabilities are appearing or can be expected.
- Business-driven SOA — Web Service Generation
- Database — Schema Generation, Update and Query
- Process Orchestration
- Business Activity Monitoring
- Test Script Generation
- Data Validation
- ERP Customization
Standard business vocabularies will become available in SBVR's XML format. In some domains, such as insurance, vocabulary standards are already beginning to use SBVR. Other subject areas will follow. Standard business vocabularies will help businesses get a quick start at using SBVR and will facilitate business-to-business applications.
Businesses' direct and immediate control of automated systems will expand beyond business rules to include contracts, operating agreements, and other kinds of business artifacts. Here is another scenario of business people taking direct and immediate control.
Investors form a company to run a particular project. The company's operating agreement describes obligations of parties and states how proceeds are allocated to investors. A language processor is used to capture the meaning of the operating agreement in terms of SBVR. Before signing the agreement, investors run simulations to see proceeds resulting from different project outcomes. Going forward, software generated from the agreement checks that obligations are met and divides out proceeds to investors.
SBVR is a step toward putting information technology under more direct and immediate control of business decision makers, resulting in greater business agility. The community that created SBVR is now growing to include early adopters. It includes people from various backgrounds: the business rules approach, conceptual modeling, model-driven architecture, linguistics, terminology, software engineering, and more. The different backgrounds advance different capabilities in the SBVR Ecosystem. The Ecosystem is just getting started, but some capabilities are already operational. Early adopters are enthusiastic as they begin to feel the power of direct and immediate control. The possibilities are exciting.
# # #