Empowering end-users to manage business rules: the ... - Springer Link

4 downloads 154857 Views 562KB Size Report
ysis of frameworks for development of rich internet applications. .... All technologies have support for AJAX communication between client and server, and ...
Empowering end-users to manage business rules: the case of a graphical environment built for a telco Catarina Ferreira da Silva1, Levi Baptista2, Paulo Rupino da Cunha3, Paulo Melo4

Abstract. We present GREAT (GRaphical tool for rules Editing and AudiTing), an approach and a tool for graphical business rules management that we designed and developed. This collaborative Web-based application with rich user interface enables easy creation and editing of business rules. Relevant features are (1) the ability to define templates of business rules with various levels of granularity and of rule elements, which can be further reused; (2) the ability to create configurable user profiles from a broad range of permissions, which combined with business rules templates, suits the tool to users with different goals and levels experience; (3) the automatic versioning of business rules. We validated our approach with real-world business rules provided by a telecommunications company. The easy to use graphical environment empowers the business experts to create the rules themselves, rather than having to resort to Information Technology professionals.

Keywords Business rules, graphical editor, Drools, RIA, DRL

1C.

Ferreira da Silva () Centre for Informatics and Systems of the University of Coimbra (CISUC), Portugal e-mail: [email protected] 2L. Baptista Department of Informatics Engineering, University of Coimbra, Portugal e-mail: [email protected] 3P. Rupino da Cunha CISUC, Department of Informatics Engineering, University of Coimbra, Portugal e-mail: [email protected] 4P. Melo INESC Coimbra and University of Coimbra, Portugal e-mail:[email protected] J. Stjepandic´ et al. (eds.), Concurrent Engineering Approaches for Sustainable Product Development in a Multi-Disciplinary Environment, DOI: 10.1007/978-1-4471-4426-7_100, ! Springer-Verlag London 2013

1193

1194

C. Ferreira da Silva et al.

1 Introduction According to Jeng et al. (1), business rules are expressions that describe and control the processes, operations and behaviour of how an enterprise, and the applications that support it, perform. Rules define, constrain or validate some aspect of a system through the evaluation of conditions and context of the rule invoker. Business rules (BR) can evaluate if a certain condition is met to decide if a defined action should be taken by the system. BR can also be used in support of jeopardy management to prevent potential business failures. A business process management approach based on BR should include a management system of these rules in such a way to facilitate their administration and modification. One of the components of these systems is a tool enabling business experts (which may not be Information Technology experts) to design, modify and maintain BR. Creating and coding BR for the purpose of process automation are not easy tasks. Hence, it is important to provide business experts with graphical applications for BR management. This way, they won’t have to rely on Information Technology (IT) experts and become free from the burden of understanding declarative BR languages used by those professionals. In this paper we present our approach to designing and developing a solution for BR management. It is based on a Web-based system with a rich user graphical interface in order to facilitate the tasks of business experts of creating and handling BR. Our solution handles the automatic translation of the graphical representation of BR to code interpretable by the most popular open source BR engine (the Drools Expert rules engine). To support the choices made, our work includes the analysis of a set of tools claiming to provide graphical edition of BR and the analysis of frameworks for development of rich internet applications. The remainder of the paper is organized as follows. Section 2 provides a short summary of the tools that provide graphical editing of BR. In section 3 we present our approach to the graphical management of BR, specify the requirements of the GREAT (GRaphical tool for rules Editing and AudiTing) tool, and explain its development approach. In section 4 we validate our work by modelling BR provided by a telecom company in our graphical environment and then generating the corresponding executable code. In section 5 we briefly discuss advantages and limitations of our approach and we provide concluding remarks in section 6.

2 Graphical Editing Tools for Business Rules Usually, due to the specificity of the processes of defining and maintaining business rules (BR), those functions are carried out by experts in the IT area, instead of business experts. The desire to create a tool which would help this process, making it collaborative between specialists in different areas, and in which the

Empowering end-users to manage business rules

1195

definition and design of BR would be really in charge of business professionals is not new. In our research for this project we have identified and compared three tools aiming at providing graphical editing of BR: the Drools Guvnor (2), the Microsoft Business Rule Composer (3), and the Visual Rules WebModeler (VRWM) (4). One major characteristic of these tools is the obligation of using the Business Rules Management System specifically associated with each editing tool. Table 1 provides a comparison of the most important criteria and functionalities that we analysed. Table 1 Comparative table of analysed Business Rules editing tools BR tool

Drools Guvnor

Visual Rules WebModeler

Supported BRMS

Just the Drools BRMS

Just the Visual Rules proprietary BRMS

Versioning

Yes

Yes

Yes

Rules verification

Yes

Yes

Yes

Rules validation

Yes

Yes

Yes

License

Apache Software License

Commercial License

Commercial License

Web Application

Yes

Yes

No

“Desktop style” Application

No

Yes

Yes

User Authentication

Yes

Yes

No

No

Yes

No

No

Yes

No

No

Yes

No

No

Yes

Yes

Criteria

Graphical representation of the business rules Symbolical representation of rules operations Graphical edition of business rules Drag-and-drop of elements

Microsoft Business Rule Composer Just the BRMS integrated in the Microsoft BizTalk Server 2010

Among the analysed tools for editing BR, Visual Rules is the one with greater graphics capabilities and more intuitive features. It is the only tool that combines capabilities such as graphical representation of the rules, symbolic representation of the rules operations, and drag-and-drop of elements. The Microsoft Business Rule Composer (MBRC), although having features such as drag-and-drop of elements, has no graphical representation of the rules or of the rule elements. In the

1196

C. Ferreira da Silva et al.

Drools Guvnor tool, there is a total absence of graphical representation and rich user interaction functionalities. At the platform level, only the VRWM and the Drools Guvnor are web applications, running on browsers. From these two, only the VRWM has graphics that look comparable to a desktop application. Regarding interoperability, none of the tools allows the export of the created business rules to a BRMS other than those to which they are associated. In terms of licensing, only the Drools Guvnor is open source, with the other tools being associated with commercial licenses. Versioning of the BR is supported by all four tools, though in different ways. The MBRC allows the user to create multiple versions of a project (set of rules), but not keeping any additional information associated with them (such as rationale, author, or creation date). When created, the new version is empty, and it is the user that must copy the old rules or create new rules. The Drools Guvnor lets the user store a copy of the current status of the project. Along with the copy it saves the creation date and comments. In VRWM this feature is not managed at the level of graphical editor, but rather at the Visual Rules BR repository. It offers the possibility of creating a new full copy of a certain rules project and modifying it to create a new version. Information such as author and creation date is registered. All tools allow the user to view a history of versions available and to deploy of an earlier version (roll-back functionality). Our study revealed that, from these three tools, only the VRWM is a web tool with real graphics capabilities and intuitive features to assist the creation and maintenance of BR, bringing together features such as the graphic representation of BR, the symbolic representation of the BR elements and operations, and the drag-and-drop of elements. However, the VRWM tool has limitations regarding its interoperability with other BR tool types, as it does not allow the rules to be exported to other rule execution engines besides its own proprietary system. This tool is also associated with an onerous commercial license. Other limitations are related to performance and fluidity of use, since the VRWM has noticeable waiting times when loading and updating rules. Its versioning system is not automatic, which can lead to loss if the user starts making changes without previously creating a new version.

3 The GREAT business rules graphical editor Our approach to a BR graphical editor aims to help non-technical professionals, in the task of creating and maintaining BR, making this a collaborative process between experts from different fields, which is not the current reality (5). It was decided to design a graphical BR editing environment with features that allow its utilization by professionals not specialized in IT, using open-source technologies, with convincing fluidity and processing performance and that would overcome the

Empowering end-users to manage business rules

1197

limitations of the previously analysed tools. The characteristics defined for the GREAT tool were: • Design and implement a Web-based application with rich user interface; • Support automatic versioning, which means that every time a user opens an existing rule set and wants to modify it, this modified rule set can only be saved as a new version; • Development using open source technologies; • Define a branching BR structure (creating rule trees), so that designing different rules with common parts can be easier and faster; • Provide user profiles with different permissions, to assign different abilities to distinct types of professionals; • Ability to define and manage rule and rule element templates, to support rule reuse, and restrict actions of inexperienced users; • Provide for graphical comparison of different rule versions. Since we intended to develop a tool that could run on a web browser, but at the same time maintaining the interactivity, user experience, and fluidity of a conventional desktop application, we decided to develop GREAT with a RIA (Rich Internet Application) framework. In the process of RIA technology analysis and selection, an extensive comparative work was carried out. We analysed, tested and compared the following RIA technologies: the Cappuccino Framework (6) the Dojo Toolkit (7), the Sencha Ext JS 4 (8), the SproutCore Framework (9) and the ZK Framework (10). Table 2 provides a comparison of the most important criteria that were analysed. The technologies that were the object of analysis can be divided into two groups, those that are full development frameworks such as Cappuccino, SproutCore and ZK, and libraries that provide modules to be included in JavaScript code, such as the Dojo Toolkit and Sencha EXT JS. Among the development frameworks, SproutCore is the only that makes use of JavaScript as a programming language. The Cappuccino Framework uses Objective-J, a language based on Objective-C and JavaScript, created in parallel with the framework, and ZK uses Java to implement the logic layer and a mark-up language developed specifically for the ZK Framework, the ZUML, to implement the presentation layer (GUI). All technologies have support for AJAX communication between client and server, and features for RIA application development. However, in the case of the Dojo Toolkit the desktop look is not guaranteed. In terms of browsers compatibility all the technologies ensure the operation in the latest versions of the most popular browsers such as Internet Explorer, Mozilla Firefox, Safari and Google Chrome. All these technologies are still being supported by their developing teams, having all released new versions during 2011. Regarding the licensing, we consider the most liberal to be the Dojo Toolkit and SproutCore, since their BSD and MIT licenses, respectively, require only the maintenance of copyrights in source code and compiled executable.

1198

C. Ferreira da Silva et al.

Table 2 Comparative table of analysed RIA development technologies RIA Technology Cappuccino

DoJo Toolkit

Sencha EXT JS

SproutCore

ZK

Latest Version

v0.9 (Feb11)

v1.6 (March-11)

v4.0 (April11)

v1.5 (April11)

v5.0.7 (May11)

Technology type

Framework

Library

Library

Framework

Framework

RIA functionalities

Yes

Yes

Yes

Yes

Yes

“Desktop style” look

Yes

No

Yes

Yes

Yes

AJAX support

Yes

Yes

Yes

Yes

Yes

Programming language

Objective-J

JavaScript

JavaScript

JavaScript

ZUML + Java

Web technologies abstraction ( HTML / CSS)

Yes

No

No

No

Yes

Supported browsers

IE 7+, Firefox 2+, Safari 3+, Google Chrome, Opera 9+

IE 6+, Firefox 3.6, Safari 4 e 5, Google Chrome 8+, Opera 10.5

IE 6+, Firefox 3.6+, Safari 3+, Google Chrome 6+, Opera 10.5+

IE 7+, Firefox 3+, Safari 3+, Google Chrome

IE 6+, Firefox 1.x +, Google Chrome, Safari 1.3, Opera 9.x, Mozilla 1.7.x, Netscape 7.x, Opera mini, Opera mobile

LGPL v2.1

Academic Free Licence v.2.1 or modified BSD license

Open-source if developed application is GNU GPL License V3 compliant

MIT license

LGPL or ZK Open Source License or Commercial

Criteria

Licensing

Empowering end-users to manage business rules

1199

The Cappuccino framework is provided through a slightly more restrictive license, the LGPL v2.1, because there is a requirement to distribute the modified source code of the framework if changes are made on the actual framework code (but imposes no requirement on the rest of the code).The EXT JS Sencha is provided under a commercial license, with an exception made if the developed software is compatible with the GNU GPL License V3. Finally, the ZK Framework offers different licenses options according to the version of ZK that is being used, ranging from LGPL for the most basic version, to a commercial license for the top of the range versions of the framework. In the end, Cappuccino framework was shown to provide several characteristics that were considered overall superior to the other technologies: it is a framework oriented to the development of Web applications from scratch, supports a LGPL v2.1 licensing plan, uses a powerful and versatile programming language (Objective-J), provides a plethora of demo applications with good performance, and proposes total abstraction from the traditional Web Technologies during the development process. Thus, we decided to develop GREAT using the Cappuccino Framework. With the use of this RIA technology it was possible to develop a BR editor tool which we claim maintains the same interactivity and provides the same user experience and fluidity as a conventional desktop application. From the user point of view, the web experience is enhanced due to the availability of rich user interface characteristics like the possibility to drag and drop graphic elements and the absence of pages reloads (in RIA applications, everything happens in a single screen). This, combined with an instant response to the user actions and a very low application processing time, ensures a smooth flow of utilization and an eye catching experience, while maintaining the absence of installation and everywhere availability of cloud-based applications. From the developer point of view, there are advantages in terms of implementation and maintenance of the tool. The Cappuccino framework provides total abstraction of the usual Web development technologies (such as JavaScript, HTML and CSS) while ensuring full compatibility with most common browsers available, allowing the programmer to focus on the development of the logic of the application. In terms of maintenance, the RIA applications have very low installation and maintenance costs, since, instead of having one installation on each workstation, the different users will access a central installation using their web browsers. Moreover, having the application running on a web browser instead of running as a native application, assures that it is mostly cross platform, eliminating the required effort to develop a different versions for distinct systems.

1200

C. Ferreira da Silva et al.

4 Validation of Our Approach In order to evaluate and validate the viability and efficiency of our solution we used BR from the telecommunications domain, namely from an Operation Support Systems (OSS) department. An example is provided in figure 1, which shows the source code of a typical rule in Drools Rule Language (DRL). Our key motivation to show this example is not to explain its function in the overall system, but rather to illustrate how this kind of formulation does not match the skills of nontechnical end-users, who are knowledgeable about the business but not about programing languages. rule "RG01_1" salience 80 ruleflow-group "flow6" when $msg1: WMMessage(code == "GPMP_01") $msg2: WMMessage(code == "GPMP_03") then Log.info("Removing WMMessage "+$msg2); retract($msg2); end rule "RG01_2" salience 80 ruleflow-group "flow6" when $msg1: WMMessage(code == "GPMP_01") $msg2: WMMessage(code == "GPMP_11") then Log.info("Removing WMMessage "+$msg2); retract($msg2); end rule "RG01_3" salience 80 ruleflow-group "flow6" when $msg1: WMMessage(code == "GPMP_01") $msg2: WMMessage(code == "GPMP_04") then Log.info("Removing WMMessage "+$msg2); retract($msg2); end Fig.1 Example of a business rule from the OSS department of a telecom company, represented in DRL

Empowering end-users to manage business rules

1201

Moreover, since these BR have several rule elements that repeat themselves , it is important to provide for definition of structures (which we called templates) that can be further reused when needed. Figure 2 shows the work screen of GREAT, showing the BR example given earlier (figure 1), designed with the graphical rule elements. As shown, the user has a palette on the left where the basic el ements for building rules are placed. The element "START", represented by a n arrow to the right, supports the function of indicating the creation of a new rule. The element "IF", identified by a rhombus , which represents a condition to be applied to the facts. The element "Action", identified by a circle, represents the actions of the BR. Finally, the element a arrow to the left, is used in rules with different ramif i"END", represented by an cations, when we want a particular branch to have different attributes from the others.

tool,, with one business rule designed Fig. 2 Screen of the work area in the GREAT tool

The graphically designed rules can be translated and exported to the DRL la nguage, as can be seen in figure 3. GREAT has been integrated with the other a pplications of the OSS department of the telecom company, to be used by their e mployees. The company has the intent of make this tool available to its clients in the future. We consider this is a major indicator of the success of our approach. Besides enabling the graphical editing of BR, the tool also facilitates auditing. It co ntains an embedded versioning system system that keeps a history of the changes made to any rule sets, complementing the changes with contextual information such as the rationale for the modifications, its author, or date of changes. It becomes possible

1202

C. Ferreira da Silva et al.

to find out how the BR evolved through ttime ime and why. Rollbacks or a visual co mparison with previous versions is possible.

Fig. 3 Screen of the DRL business rule code build by the application GREAT, ready to be e xported to a Business Rules Management System

5 Advantages and Limitations of Our Approach In comparison with the BR tools previously analysed in table 1, GREAT has the easiness of use of the VRWM and uses a BR language supported by open source engines. Unlike the VRWM, GREAT exports the graphically designed rules to DRL (used by the Drools Drools BRMS) , a rule language supported by an open source engine. GREAT was architected with expansibility in mind, namely to facilitate adding support of new rule languages and rule engines . We claim that GREAT , as developed, also offers the following advantages over the existing graphical business rules editing tools: • The ability to set different user profiles from a broad range of permissions. The profiles are fully configurable, giving the ability to define very different user profiles, ranging from the kind of user that only has permissions to view the rules without making any kind of modifications, to a user with full access to the system features, or, for example, a user that can build rules with only certain -defined elements. pre-defined • The ability to define rule templates, allowing pre-constructed rules or rule el ements to be reused. These templates support various levels of granularity,

Empowering end-users to manage business rules

1203

which may range from an almost complete rule which lacks only an element field, to a rule in which void fields are shown that can be filled later with several new elements. This way, the resources needed to create BR are optimized, not only on the time spent in the process, since there is a reuse of work already done, but also, when combined with the possibility of having different user profiles, to limit the action spectrum of an inexperienced user. This restriction in the user actions enables the BR to be edited by less-experienced users in a controlled way. Hence, BR can be modified by these users but eventual mistakes are prevented. • The improved interoperability, as the GREAT tool can be modified to suit different domain realities or configured to export the defined BR to different declarative BR languages or Business Rules Management System. • The RIA-based development of the GREAT tool outperforms the rest of the tools in terms of fluidity of use and performance. • The automatic and mandatory versioning of BR and BR sets, unlike the already existent BR editor tools. Within the GREAT tool the user never risks overwriting a previously existing BR. The current version of the GREAT tool has the limitation of only offering support to create and maintain business rules of the “IF…THEN…” kind, failing to support other BR structures, e.g. the decision-table BR. However, the architecture of the application was designed so that it can be extended with other BR structures. The tool provides textual editor of the rules preamble and within the “IF…THEN…” constructs one can include complex expressions. These particular aspects are not graphic and, as so, they may be considered as limitations in terms of support for non-expert users.

6 Conclusions We have identified, analysed, tested, and compared existing tools aiming at providing graphical editing of business rules (BR). Given some limitations we have found, we decided to develop a new approach and collaborative tool to create BR graphically. For this, we identified, tested, analysed, and compared several Rich Internet Application (RIA) frameworks and have decided to develop our BR graphical editor using the Cappuccino framework. We validated our system with real BR provided by a telecommunications company. We consider the major contributions of our work to be: • The GREAT business rule editor tool provides the ability to define templates of BR and of rule elements with various levels of granularity, which can be further reused;

1204

C. Ferreira da Silva et al.

• This BR editor is a collaborative tool, enabling permissions control that combined with the creation of rule templates prevents eventual mistakes of lessexperienced users; • The GREAT editor is a RIA-based web tool, providing fluidity of use and maintaining the same interactivity degree as a conventional desktop application; • The GREAT editor provides graphical rule elements and icons, enabling rules to be created by experts in the business operation area, rather than by IT professionals. Business experts are hence relieved from the burden of learning and understanding declarative business rules languages. The tool provides mainly support for “IF…THEN…” rules. However, additional textual constructs can be incorporated in the rule description and custom graphical elements can be created, having any kind of Drools Rule Language code embedded. Future improvements of the GREAT tool can include the development of support for other BR structures, such as decision-table rules.

7 References 1. Jeng JJ, Flaxer D, Kapoor. S. RuleBAM: a rule-based framework for business activity management. IEEE International Conference onServices Computing, 2004. (SCC 2004). Proceedings. 2004 [Internet]. 2004: 262–70. Available from: http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=1358014 2. The JBoss Drools team. For users and administrators of Guvnor [Internet]. (2012) Available from: http://docs.jboss.org/drools/release/5.3.0.Beta1/drools-guvnor-docs/pdf/guvnordocs.pdf 3. Microsoft Corporation. Introducing BizTalk Server 2006 R2 [Internet]. (2007) Available from: http://download.microsoft.com/download/e/3/c/e3c6b6d8-7fec-459e-94791cd320019244/Introducing Microsoft BizTalk Server 2006 R2.pdfEEqOAznBM66q27MMRJ4KMwompMNA 4. Bosch Software Innovations. Visual Rules - Feature List [Internet] (2012) Available from: http://www.visual-rules.com/fileadmin/pdf-en/brochure/visual-rules-feature-list.pdf 5. Ross RG. Business Rules: Seeing the Elephant [Internet] (2012) Available from: http://www.bptrends.com/publicationfiles/03-06-2012-COL Business Rule Solutions-Seeing the Elephant-Ross.pdf 6. 280 North Inc. Cappuccino Web Framework [Internet] (2009) Available from: www.cappuccino.org 7. The Dojo Foundation. Dojo Toolkit 1.7 [Internet]. (2012) Available from: www.dojotoolkit.org 8. Sencha Inc. Ext JS 4 - Sencha [Internet]. (2012) Available from: www.sencha.com/products/extjs 9. Strobe Inc. SproutCore [Internet]. (2011) Available from: www.sproutcore.com 10. Potix Corporation. Leading Enterprise Java Web Framework | ZK [Internet] (2012) Available from: www.zkoss.org