<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">K-Site Rules at the RuleML Challenge 2009</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">José</forename><forename type="middle">L</forename><surname>Martínez-Fernández</surname></persName>
							<affiliation key="aff0">
								<orgName type="laboratory">DAEDALUS -Data, Decisions and Language</orgName>
								<orgName type="institution">S.A. Avda. de la Albufera</orgName>
								<address>
									<postCode>321, 28031</postCode>
									<settlement>Madrid</settlement>
									<country key="ES">Spain</country>
								</address>
							</affiliation>
							<affiliation key="aff1">
								<orgName type="laboratory">Advanced Databases Group</orgName>
								<orgName type="institution">Universidad Carlos III de Madrid Avda. de la Universidad</orgName>
								<address>
									<postCode>30, 28911</postCode>
									<settlement>Leganés</settlement>
									<country key="ES">Spain</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">José</forename><forename type="middle">C</forename><surname>González-Cristóbal</surname></persName>
							<affiliation key="aff1">
								<orgName type="laboratory">Advanced Databases Group</orgName>
								<orgName type="institution">Universidad Carlos III de Madrid Avda. de la Universidad</orgName>
								<address>
									<postCode>30, 28911</postCode>
									<settlement>Leganés</settlement>
									<country key="ES">Spain</country>
								</address>
							</affiliation>
							<affiliation key="aff2">
								<orgName type="department">DIT</orgName>
								<orgName type="institution">Universidad Politécnica de Madrid Avda. Complutense</orgName>
								<address>
									<postCode>30, 28040</postCode>
									<settlement>Madrid</settlement>
									<country key="ES">Spain</country>
								</address>
							</affiliation>
						</author>
						<author role="corresp">
							<persName><forename type="first">Paloma</forename><surname>Martínez</surname></persName>
							<email>jmartinez@daedalus.es</email>
							<affiliation key="aff1">
								<orgName type="laboratory">Advanced Databases Group</orgName>
								<orgName type="institution">Universidad Carlos III de Madrid Avda. de la Universidad</orgName>
								<address>
									<postCode>30, 28911</postCode>
									<settlement>Leganés</settlement>
									<country key="ES">Spain</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">K-Site Rules at the RuleML Challenge 2009</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">8412D87E3DEDA5C2B90BB50E71BCFC52</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T10:14+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<textClass>
				<keywords>
					<term>Business Rules Management System</term>
					<term>RIF</term>
					<term>OWL</term>
					<term>Model Driven Architecture</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>There exist a great number of business rules engines in the market, each one with its own rules language. As a result, the need of a standard rules definition language is obvious. In this demo paper, the application of a combination of standard business rules languages to develop a business rules management tool, K-Site Rules, is explained. The main goals of this tool are: first, to integrate the development process for business rules in the software development lifecycle and, second, to make this development independent of rule engine products. K-Site Rules does not include its own rule engine implementation but acts as a broker to the preferred rule engine. In this way, business rules can be reused across different rule engines (which can change because of economical issues, performance issues, etc.) and through different projects in the company. The K-Site Rules tool is part of ITECBAN, a project devoted to the definition of a new platform core for banking applications.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>In the last few years, companies have started to introduce business rules systems (BRS) as one of the components of their information systems. The ability to adapt business processes to changes in the environment with low development costs is the main reason to introduce this knowledge based systems in the company's IT infrastructures. If business rules are properly identified, business behavior can be modified without applications recoding.</p><p>According to the Business Rules Group<ref type="foot" target="#foot_1">1</ref> (BRG), a business rule can be defined as "a directive, intended to influence or guide business behavior, in support of business policy that has been formulated in response to an opportunity, threat, strength, or weakness". From the Information Technology (IT) point of view a business rule can be defined as "a statement that defines or constrains an aspect of the business. It is intended to assert business structure, or to control or influence the behavior of the business". This work is centered on the latter definition.</p><p>There are several main drawbacks in the integration of BRSs in the IT infrastructure of the company: first of all, it is not clear how to engage the software development cycle with the business rules approach since business rules are usually scattered in the application code. Second, there are a lot of commercial products implementing business rules but there is no common way to express business rules; this lack of widespread standards is a main issue in the business rules field.</p><p>Currently, there is a trend in software development based on the Model Driven Architecture (MDA) <ref type="bibr" target="#b2">[3]</ref> where the main goals are promoting interoperability, portability and usability. For this purpose, several steps are taken: obtaining a system specification independent of the platform supporting it, identifying possible platforms, choosing a platform and transforming the generic model into the platform specific model. The right place in this architecture for BRSs must be envisaged to assure a good integration with the rest of technologies used by current IT systems. In this way, current drawbacks could be overcome. So, MDA assumes independence from the business rule engine to be used to implement the system. For this purpose, it can be assured that the principles of the Semantic Web can be applied, from the Ontology Web Language (OWL) <ref type="bibr" target="#b5">[6]</ref> standard to the Rules Interchange Format (RIF) <ref type="bibr" target="#b6">[7]</ref>. So, the ability to formalize the domain upon which business rules are defined through the use of ontologies can constitute an improvement for business rule systems. This demo paper describes a prototype of K-Site Rules, the tool for business rule development that is being developed in the ITECBAN project (Architecture for Core Banking Information Systems), funded by the Spanish Center for the Development of Industrial Technology (CDTI, Ministry of Industry, Tourism and Trade), INGENIO 2010 Program.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">K-Site Rules Framework Description</head><p>K-Site Rules is the name given to the tool developed by DAEDALUS and INDRA as part of the ITECBAN project. K-Site Rules is a tool specifically designed to support the business rules development process when rule engines are considered as part of the architecture of an IT system. Two main objectives have guided the development of K-Site Rules: first, independence of the rule engine selected to implement business rules, that is, the definition of the rule must be independent of the rule engine where it is going to be executed. This situation is depicted in Figure <ref type="figure">1</ref>.</p><p>Secondly, an easy and simple integration in the software development cycle adopted in the target organization must be provided. For this reason, K-Site Rules developer editor is integrated in the ECLIPSE development environment <ref type="foot" target="#foot_2">2</ref> .</p><p>Figure <ref type="figure">2</ref> shows the software components of K-Site Rules, where three basic elements can be distinguished. Business analysts are people with knowledge about the business but no technical capabilities, only as office software users. These people need tools with very simple user interfaces for them to be able to put their knowledge about the business in the form of business rules that can be processed by information systems. This is the main goal of the K-Site Rules Expert editor, allowing the definition of business rules using natural language, decision tables or decision trees in a web based interface. This module produces a standard definition of the business rules, currently using the RIF format which is stored in the configuration manager module. This web module also includes features to validate the defined business rules by providing test values and expected results when the rule is applied.</p><p>Developers, on the other hand, have a deep technical knowledge, but they are less aware about business domain concepts. For them there is also a particular tool, allowing the design, implementation and testing of business rules. This tool is integrated in the development environment, an Eclipse based development environment in the first implementation of K-Site Rules. As the K-Site Rules Expert editor does, the Developer Editor generates a standard expression of the business rule using RIF. This standard version is stored in the configuration Manager Module and is shared with business analysts. The developer has the ability to select the rule engine that will be used to execute the business rule, and to produce an automatic translation to the specific language of the selected rule engine. This module also provides the ability to validate business rules by giving test data and desired results.</p><p>Table <ref type="table" target="#tab_0">1</ref> shows the technology environment selected for the implementation of both rule editors. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>JAVA Programming Language</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Installation requirements</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>None Eclipse + Plugin configuration</head><p>There is a component in charge of transforming Unified Modeling Language (UML) models to OWL ones, which are then graphically depicted in order to facilitate users understanding of the knowledge model. The steps for the transformation among models are taken from the Ontology Definition Metamodel (ODM) <ref type="bibr" target="#b3">[4]</ref> specification. This transformation is implemented using JAVA programming language and a library to deal with OWL structures, OWLApi <ref type="bibr" target="#b1">[2]</ref> Rules Translator This is the core component of K-Site Rules and it is in charge of obtaining rule expressions according to a specific rule engine. The input to this module is a standard expression of the business rule, currently based on the RIF language. The output is a representation of the same business rule in the specific language understood by the rule engine. For example, if the rule engine selected to implement rules is ILOG JRules, the RIF representation must be translated to IRL, the rule language supported by ILOG JRules. If K-Site Rules is going to be included in a development process based on a Model Driven Architecture, this component is crucial to allow an automatic generation of an implementation of a system from the models defining that system.</p><p>There are different translation steps in the process. The first one is from RIF format to OMG Production Rules Representation (OMG PRR) <ref type="bibr" target="#b4">[5]</ref> and the second one from OMG PRR to the proprietary language used in the rule engine that is supporting the Business Rules Management System. The RIF to OMG PRR translation is done following the operators defined at the RIF Production Rules Dialect (RIF PRD) standard. A specific software component has been implemented in K-Site Rules to perform this transformation.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Configuration Manager</head><p>The Configuration Manager Module is a repository where business rules, probably with different versions, are stored. The current implementation of this module is based on Subversion, SVN <ref type="bibr" target="#b0">[1]</ref>, which provides needed version control and team work capabilities. In fact, developer and business analyst tools communicate through this component; changes made by one role to a business rule are shared with the other role through the configuration manager module. This component also allows auditing of business rules under development.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Software development cycle integration</head><p>K-Site Rules considers business rules at every stage of the development process. At the analysis phase, K-Site Rules provides tools to allow business experts the definition of business rules using natural language expressions and their vocabulary. Business analysts even have the tools to test the functionality of the business rules they are working in. At design time, developers can review, test and validate business rules in the specific rule language (IRL, DRL, etc.) built by the tool, by accessing the business rules expressions stored in the configuration management system. If it is needed they can develop additional business rules or adapt obtained implementations. Regarding business rules deployment, K-Site Rules does not impose any restriction, business rules produced by the tool reside at the configuration management system and can be deployed according to deployment policies defined at the company.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Example</head><p>This section summarizes the business rules development process using K-Site Rules expert editor. Suppose a car insurance company where conditions to give a policy to a customer can be expressed using rules. This is the domain model defined for the example environment shown at the test web site (please, follow section 5 instructions to access), at the Business Model tab. Figure <ref type="figure" target="#fig_2">3</ref>   Three main concepts are used in the example, the policy holder (Policy_Holder), who is the customer contracting the policy, the car involved in the policy (Car) and the policy itself (Policy).</p><p>Suppose that you want to define the following business rule to state the fee that a customer must pay for an insurance:</p><p>If the customer is between 30 and 55 years old and the rated horse power of the car to include in the policy is over 120 HP then the fee to pay is 500$. In any other case, the fee will be 400$ This business rule will be part of a decision service devoted to the definition of the fee that each customer must pay. The input for the decision service is formed by three concepts: the policy to be contracted (a Policy), data for the holder of that policy (a Policy Holder), and data of the car involved in the policy (Car). It is possible to define the given business rule as a written rule using the corresponding tool provided by K-Site Rules expert editor, once a ruleset has been defined. The written rule obtained is depicted in Figure <ref type="figure" target="#fig_3">4</ref>. Once the rule is defined, a validation process can be done through the functionality included in the Validation tab. At this tab, some example data can be given for instances of the concepts appearing as the input of the decision service.</p><p>Of course, validation data can be loaded through Excel files and, for developers, there is also the possibility of using serialized objects.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Conclusions</head><p>This demo paper is supported by the presentation available at http://clients.daedalus.es/MK-2009-43-ITECBAN-01.pdf. This presentation includes a guided tour through the different editors, describing the steps to be given in order to develop a business rule. There is also the possibility of testing K-Site Rules Expert tool, using as credentials: 'ruleml' as the user and 'ruleml09' as the password, through the following URL: http://163.117.129.57:8080/KSiteRulesExperto/?locale=en On the other hand, the development tool must be installed on a local machine so no web access can be provided but local demos can be performed if required. Sun Microsystems and Grid Systems. Special mention to our colleagues at INDRA must be done for their involvement in the specification of K-Site Rules: Fernando Alcántara, Pablo Leal, Juan Carlos Macho and Gonzalo Pando (in alphabetical order).</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Figure 1 .Figure 2 .</head><label>12</label><figDesc>Figure 1. K-Site Rules as an intermediary framework</figDesc><graphic coords="3,184.98,250.32,130.20,58.44" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head></head><label></label><figDesc>depicts the diagram for the insurance company model.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Figure 3 .</head><label>3</label><figDesc>Figure 3. Business model shown by K-Site Rules expert editor</figDesc><graphic coords="6,124.74,252.72,345.54,187.74" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head>Figure 4 .</head><label>4</label><figDesc>Figure 4. Written business rules definition with K-Site Rules expert editor</figDesc><graphic coords="7,124.74,147.42,345.84,218.88" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head>Table 1 .</head><label>1</label><figDesc>Development technologies used in K-Site editors</figDesc><table><row><cell>Technical Feature</cell><cell>K-Site Rules Expert</cell><cell>Development Editor</cell></row><row><cell></cell><cell>Editor</cell><cell></cell></row><row><cell>Base tool</cell><cell>Browser based</cell><cell>Eclipse based</cell></row><row><cell cols="2">Development technology Tomcat 6 + Google Web</cell><cell></cell></row><row><cell></cell><cell>Toolkit</cell><cell></cell></row></table></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="2" xml:id="foot_0">José L. Martínez-Fernández, Paloma Martínez, José C. González-Cristóbal</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_1">http://www.businessrulesgroup.org</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="2" xml:id="foot_2">http://www.eclipse.org 4 José L. Martínez-Fernández, Paloma Martínez, José C. González-Cristóbal</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="6" xml:id="foot_3">José L. Martínez-Fernández, Paloma Martínez, José C. González-Cristóbal</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="8" xml:id="foot_4">José L. Martínez-Fernández, Paloma Martínez, José C. González-Cristóbal</note>
		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><head>ACKNOWLEDGEMENTS</head><p>This paper has been partially supported by the Spanish Center for the Development of Industrial Technology (CDTI, Ministry of Industry, Tourism and Trade), through the project ITECBAN (Architecture for Core Banking Information Systems), INGENIO 2010 Programme. Other partners in ITECBAN are INDRA Sistemas, CajaMadrid,</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<title level="m" type="main">Version Control with Subversion: For Subversion 1</title>
		<author>
			<persName><forename type="first">B</forename><surname>Collins-Sussman</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><forename type="middle">W</forename><surname>Fitzpatrick</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><forename type="middle">M</forename><surname>Pilato</surname></persName>
		</author>
		<ptr target="http://svnbook.red-bean.com/nightly/en/svn-book.pdf" />
		<imprint>
			<date type="published" when="2007">11/03/2008. 2007</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">Igniting the OWL 1.1 Touch Paper: The OWL API</title>
		<author>
			<persName><forename type="first">M</forename><surname>Horridge</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Bechhofer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">O</forename><surname>Noppens</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">OWLED 2007, 3rd OWL Experienced and Directions Workshop</title>
				<meeting><address><addrLine>Innsbruck, Austria</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2007">2007</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<monogr>
		<author>
			<persName><forename type="first">J</forename><surname>Miller</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mukerji</surname></persName>
		</author>
		<ptr target="http://www.omg.org/docs/omg/03-06-01.pdf" />
		<title level="m">MDA Guide Version 1</title>
				<imprint>
			<date type="published" when="2003">2003</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<monogr>
		<title level="m" type="main">Ontology Definition Metamodel (ODM)</title>
		<author>
			<persName><surname>Omg</surname></persName>
		</author>
		<idno>ptc/2008-09-07</idno>
		<ptr target="http://www.omg.org/docs/ptc/08-09-07.pdf" />
		<imprint>
			<date type="published" when="2005">17/02/2009. 2005</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<monogr>
		<title level="m" type="main">Production Rules Representation (PRR), Beta 1</title>
		<author>
			<persName><surname>Omg</surname></persName>
		</author>
		<idno>Available as ptc/2008-09-07</idno>
		<ptr target="lastvisit:17/" />
		<imprint>
			<date type="published" when="2006">02/2009. 2006</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">OWL Web Ontology Language Semantics and Abstract Syntax</title>
		<ptr target="http://www.w3.org/TR/owl-semantics/(2004" />
	</analytic>
	<monogr>
		<title level="m">W3C Recommendation 10</title>
				<editor>
			<persName><forename type="first">F</forename><surname>Peter</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Pat</forename><surname>Patel-Schneider</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Ian</forename><surname>Hayes</surname></persName>
		</editor>
		<editor>
			<persName><surname>Horrocks</surname></persName>
		</editor>
		<imprint>
			<date type="published" when="2004-02">February 2004</date>
		</imprint>
	</monogr>
	<note>Latest version is</note>
</biblStruct>

<biblStruct xml:id="b6">
	<monogr>
		<title level="m" type="main">Christian de, RIF Production Rules Dialect (RIF-PRD</title>
		<author>
			<persName><forename type="first">Marie</forename><surname>Sainte</surname></persName>
		</author>
		<ptr target=":10/06/2009" />
		<imprint>
			<date type="published" when="2008">2008</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
