1
SOFTWARE ADAPTIVITY THROUGH XML-BASED BUSINESS RULES AND AGENTS Queen’s University of Belfast, School of Computer Science, Belfast, United Kingdom Liang Xiao and Des Greer Metadata Editor Conclusion Motivation Introduction ► Agents can be used in combination with XML Business Rules to achieve adaptivity ► Three editors have been developed to capture business knowledge at three levels ► Agent systems running on Jade platform can be generated with the Architecture Editor ► The agent behaviours are governed by Business Rules which adapt according to editors so the ► Our approach is to generate agent systems and let them execute business rules specified in editors by business people ► Code is not changed. Rather, various editors are used to easily change behaviours ► New behaviours are effected immediately by the running agent system ► The ultimate goal is to achieve Two-Way Adaptivity. Agents will be self-learning, self-reasoning, and self-adaptive. Their knowledge is not only from business world’s demand, but also from their beliefs from the actual execution environment Business Rules Editor ► Issues: • Software maintenance between 40 and 90% of total life cycle costs • Expensive and difficult to adapt software systems • New requirements are difficult to predict • Changes involve rebuild and reinstall cost ► Research Aims: • Make changes to requirements easy and reflected in deployed software immediately ► Adaptive Object Model (AOM) uses metadata to describe the actual business model ► Allows new objects/attributes/methods to be added at runtime with low cost ► Problems: • No global view of the business model -difficult to control • Architects and developers have separate systems – no unified view -<rule> <id>1</id> <condition>customer.name == Liang Xiao </condition> <action>customer.discount = 0.2 </action> <priority>2</priority> </rule> - <object> <name>customer</name> - <attributes> <attribute>name</attribute> <attribute>age</attribute> <attribute>address</attribute> <attribute>occupation</attribute> <attribute>organization</attribute> <attribute>type</attribute> <attribute>interest</attribute> <attribute>discount</attribute> <attribute>talent</attribute> <attribute>credit</attribute> </attributes> <behaviour/> </object> ► New business terms can be registered through the Metadata Editor in XML format. E.g. “credit” as a new attribute of “customer” is registered in the above editor and its XML definition is updated as the following: ► After this, new global Business Rules on new business terms can be defined through the Business Rules Editor ► Without rebuilding the system, agents can start to speak these new vocabularies immediately during their sending and receiving messages and this can reflect new business concepts/strategies Architecture Editor Local rules are defined through the Architecture Editor and the selected one in the diagram can be described as the following: On an event of receiving an incoming “call for proposal” message from Retailer agent If the condition of the rule is satisfied, that is, isOrderAttractive () is true Then perform an action, that is, generate a business proposal for the order, including price for the order, order dispatch time, etc. and send these as a “propose” message to Retailer agent Update its beliefs, that is, the customer placing the order is interested in the products listed in the order. ► A typical global Business Rule generated with the Business Rules Editor has the following form: Solution Software agents may be more appropriate than objects ► Agents can use Business Rules as executable requirements ► Business Rules can evolve with changes of business strategies Architecture Editor Business Rule Editor Metadata Editor (behaviours) Business Rules Document Local business rules and UML Model Global business rules Generation Business people (business decision maker) Business people (business infrastructure/architectur e designer) Adaptive info (requirements) Adaptive info Agent System End users Agent beliefs

Metadata Editor

Embed Size (px)

DESCRIPTION

Business people (business infrastructure/architecture designer). Generation. Business Rules Document. Architecture Editor. Local business rules and UML Model. Agent System. Adaptive info. Adaptive info. Business Rule Editor. (requirements). (behaviours). Global business rules. - PowerPoint PPT Presentation

Citation preview

Page 1: Metadata Editor

SOFTWARE ADAPTIVITY THROUGH XML-BASED BUSINESS RULES AND AGENTS

Queen’s University of Belfast, School of Computer Science, Belfast, United KingdomLiang Xiao and Des Greer

Metadata Editor Metadata Editor

Conclusion Conclusion

Motivation Motivation

Introduction Introduction

► Agents can be used in combination with XML Business Rules to achieve adaptivity

► Three editors have been developed to capture business knowledge at three levels

► Agent systems running on Jade platform can be generated with the Architecture Editor

► The agent behaviours are governed by Business Rules which adapt according to editors so the generated agent systems are adaptive

► Our approach is to generate agent systems and let them execute business rules specified in editors by business people► Code is not changed. Rather, various editors are used to easily change behaviours► New behaviours are effected immediately by the running agent system► The ultimate goal is to achieve Two-Way Adaptivity. Agents will be self-learning, self-reasoning, and self-adaptive. Their knowledge is not only from business world’s demand, but also from their beliefs from the actual execution environment

Business Rules Editor Business Rules Editor

► Issues: • Software maintenance between 40 and

90% of total life cycle costs• Expensive and difficult to adapt software

systems • New requirements are difficult to predict• Changes involve rebuild and reinstall

cost► Research Aims:

• Make changes to requirements easy and reflected in deployed software immediately

► Adaptive Object Model (AOM) uses metadata to describe the actual business model

► Allows new objects/attributes/methods to be added at runtime with low cost

► Problems:• No global view of the business model -

difficult to control• Architects and developers have separate

systems – no unified view

-<rule>

  <id>1</id>

<condition>customer.name == Liang Xiao </condition>

  <action>customer.discount = 0.2 </action>

  <priority>2</priority>

</rule>

- <object>   <name>customer</name> - <attributes>   <attribute>name</attribute>   <attribute>age</attribute>   <attribute>address</attribute>   <attribute>occupation</attribute>   <attribute>organization</attribute>   <attribute>type</attribute>   <attribute>interest</attribute>   <attribute>discount</attribute>   <attribute>talent</attribute>   <attribute>credit</attribute>   </attributes>   <behaviour/>  </object>

► New business terms can be registered through the Metadata Editor in XML format. E.g. “credit” as a new attribute of “customer” is registered in the above editor and its XML definition is updated as the following:

► After this, new global Business Rules on new business terms can be defined through the Business Rules Editor

► Without rebuilding the system, agents can start to speak these new vocabularies immediately during their sending and receiving messages and this can reflect new business concepts/strategies

Architecture Editor Architecture Editor

Local rules are defined through the Architecture Editor and the selected one in the diagram can be described as the following:On an event of receiving an incoming “call for proposal” message from Retailer agentIf the condition of the rule is satisfied, that is, isOrderAttractive () is trueThen perform an action, that is, generate a business proposal for the order, including price for the order, order dispatch time, etc. and send these as a “propose” message to Retailer agentUpdate its beliefs, that is, the customer placing the order is interested in the products listed in the order.

► A typical global Business Rule generated with the Business Rules Editor has the following form:

Solution Solution

► Software agents may be more appropriate than objects

► Agents can use Business Rules as executable requirements

► Business Rules can evolve with changes of business strategies

Architecture Editor

Business Rule Editor

Metadata Editor

(behaviours)

Business Rules Document

Local business rules and UML Model

Global business rules

Generation

Business people (business decision maker)

Business people (business infrastructure/architecture designer)

Adaptive info

(requirements)

Adaptive infoAgent System

End users

Agent beliefs