Beyond Composite Applications

download Beyond Composite Applications

of 6

Transcript of Beyond Composite Applications

  • 8/10/2019 Beyond Composite Applications

    1/6

    Page 1 of 6

    Beyond Composite Applications

    Automating the Exception Rich Business Processes that Represent the Next

    Generation of Application Development

    Peter EvansGreenwood

    [email protected] Stason

    [email protected]

    The market for enterprise applications is

    maturing, forcing new development efforts to

    move up the business valuechain and deliver

    solutions to the exceptionrich business prob-

    lems that were previously beyond information

    technology's reach. Existing servicebased

    approaches are reaching their limits and new

    tools and techniques are needed to drive thisgrowth. Agent technology has proven to be a

    powerful tool, enabling the development of

    more flexible, adaptive and sophisticated solu-

    tions than possible with more conventional

    approaches. Integrating the technology with a

    modern servicebased architecture allows us to

    deliver applications as networks of dynamic

    business services, supporting the sophisticated

    negotiation and exception management neces-

    sary to enable this next wave of application

    development.

    Serviceoriented architectures (SOA) and

    webservice technologies[1] represent the lat-

    est generation of tools and techniques for deliv-

    ering enterprise applications. A webservice

    based approach allows us to create applications

    from distributed networks of loosely coupled

    services in heterogeneous environments,

    breaking away from the limitations of previous

    monolithic approaches to deliver more flexible

    applications more cost effectively than before.

    Today, the major focus in enterprise software is

    the development of composite applications[2].

    Existing applications from a companys portfo-

    lio are cracked open, exposing as webservices

    the suite of basic services the business trans-

    actions that each legacy application sup-

    ports. Any additional functionality required is

    developed as new services within the SOA of

    the composite application. Finally, the set of

    hetrogeneous services are strung together using

    workflow tools and techniques (such as

    BPEL[3]) to create higher level business pro-

    cess services to support the endtoend busi-ness processes required. These services act as

    clerks (Figure 1), scripting together the func-

    tionality provided by business transactions to

    deliver solutions targeted at a specific business

    need or process.

    Existing composite applications have already

    harvested much of the low hanging fruit, pro-

    viding companies with a suite of targeted appli-

    cations that simplify business operations andallow the business to focus on the problem at

    hand: delivering value to their customers and

    shareholders. Rather than interacting with a

    range of systems to carry out their job, users

    are now provided with a focused user interface

    that reduces the effort required to carry outtheir daytoday business activities, reducing

    cost and improving overall quality of service.

    FIGURE 1. Composite Application Technology Stack

    Workflow Tools

    Scripting Languages

    Clerks

    Composite Applications

    3rdParty Applications

    Network ServicesCustomer Functionality

    Business Transactions

    Service WrappedLegacy Applications

    mailto:[email protected]:[email protected]:[email protected]:[email protected]://-/?-http://-/?-http://-/?-http://-/?-mailto:[email protected]:[email protected]
  • 8/10/2019 Beyond Composite Applications

    2/6

    Page 2 of 6

    From Consolidation to Automation

    With the first generation of applications rapidly

    maturing, the next step in the evolution of

    webservice technology and composite appli-

    cations lies in front of us. The next generation

    of enterprise application technology will build

    on the consolidated business processes pro-

    vided by composite applications, automating

    the the decision and exception management

    processes that were previously beyond the

    reach of process automation technology. These

    applications will for the first time can cap-

    ture the truly dynamic nature of a business pro-

    cess as a collection of cooperating,

    deliberating, negotiating services.

    Automation allows us to bring the benefits of

    software to these (previously manual) pro-cesses. A software based solution can look

    across the enterprise to create globally optimal

    solutions where manual processes are restricted

    to locally acceptable solutions, restricted by the

    limited data and time available to human oper-

    ators. To do this we need to add a new layer to

    the technology stack (Figure 2) Agent ser-

    vices that contains technologies and

    approaches that are capable of automating theexception rich business processes and delibera-

    tions that are currently the responsibility of the

    human operators. Previously we had a suite of

    business transactions (webservices) coordi-

    nated by clerks (BPEL); now we introduce a

    layer of agents capable of managing business

    exceptions and planning the operations of

    Clerks in the layer below. This provides us

    with a simple threelayer technology model

    that allows us to associate specific technologies

    and approaches with different types of func-tionality in the final solution.

    A simple analogy is to compare the different

    layers to the roles in a simple shipping business

    process. If you were to walk into a shipping

    office to ship a package, then the three layers

    would be represented by the following business

    entities:

    The Shipping Business Transactions repre-sent the basic business transaction required

    to fulfill the business process. These

    include common business operations such

    as creating a waybill, scheduling a pickup,

    etc.

    You interact with a Shipping Clerk who is

    responsible for shipping business processes

    such as filling out and validating the

    waybill, calculating the charge or booking

    a pickup created by stringing together

    the business transactions. However, the

    Shipping Clerk cannot cope with business

    exceptions or complex business decisions.

    A Shipping Agent is responsible for plan-

    ning a shipment, and dealing with any busi-

    ness exceptions that arise. Whereas the

    Shipping Clerk knows how to carry out a

    business process, the Shipping Agent

    understands how the business process inte-

    grates with the business and the processs

    purpose.

    These new agent services require tools and

    techniques capable of supporting the develop-

    ment and maintenance of these complex,

    exception rich, business processes. One obvi-

    ous candidate is agent technology[4]. Agent

    technology is a large field that covers a wide

    range of disciplines; though, at its core, the

    technology is simply inspired by the flexibility

    and sophistication seen in living systems[5].

    The technology draws inspiration from a wide

    variety of fields; including philosophy, physi-

    ology, biology, game theory & mathematics,

    FIGURE 2. Agents, Clerks & Business Transactions

    Workflow ToolsScripting Languages

    MoreCom

    plex

    LessComplex

    Clerks

    Composite Applications

    Human Agents

    Software Agent Technology

    Agents

    Agents &

    Business Webs

    3rdParty Applications

    Network Services

    Customer FunctionalityBusiness Transactions

    Service Wrapped

    Legacy Applications

    http://-/?-http://-/?-
  • 8/10/2019 Beyond Composite Applications

    3/6

    Page 3 of 6

    logic, linguistics, economics and computer sci-

    ence.

    Agent technology's anthropomorphic nature

    makes it a good fit to the development of agent

    level services. The exception rich, goalbased,

    trialanderror nature of realworld business

    decisions can be directly supported by model-ing these decisions with goaldirected technol-

    ogy[6]. In the agent layer, business exceptions

    are no longer exceptional; they are simply

    alternative ways of achieving a goal. Business

    processes consist of a series of decisions made

    by different business roles. The roles are

    formed into networks of negotiating, cooperat-

    ing, agents working toward a common goal.

    Multiagent systems allow us to use agent

    tools and techniques to directly capture, and

    implement, the roles, their relationships, and

    the communication between them.

    A Logistics Composite Application

    Logistics management is typical of the style of

    business problem that webservice enabled

    composite applications are suited. The current

    trend in enterprise application support for

    logistics is to divide support between planning

    systems which compute production plans over-

    night, and execution systems which manage

    the flow of events (Figure 3). The disconnec-

    tion forces employees to deal with business

    exceptions (lost shipments for example). man-

    ually resolving the problems by updating the

    execution and planning applications directly.

    Consolidating Logistics Functionality

    We can address this problem by leveraging

    web technology to create a heterogeneous com-

    posite application involving all participants in

    the business process. The new applications fits

    between the existing systems, creating new

    endtoend business processes extending them

    rather than replacing them outright. The final

    composite application connects the planning

    and execution systems, providing employees

    with a single unified view into the logistics

    pipeline (Figure 4). Using this solution,

    employees can quickly identify and correct

    business exceptions as they occur.

    Automating Logistics Management

    Todays logistics solution architectures take a

    simple blackbox view of optimization: pro-

    duction is matched to expected demand and

    FIGURE 3. Logistics Management Today

    Planning

    Execution

    Planning

    Execution

    FIGURE 4. A Logistics Composite Application

    Planning

    Execution

    Planning

    Execution

    CompositeApplication

    CompositeApplication

    http://-/?-http://-/?-http://-/?-http://-/?-
  • 8/10/2019 Beyond Composite Applications

    4/6

    Page 4 of 6

    then fed into a set of predefined delivery pipe-

    lines, with business exceptions and deviations

    from the plan requiring human intervention.

    Once a shipment has entered a pipeline we can

    only delay its progress, and it is impossible for

    employees to optimize across pipelines by

    diverting underutilized capacity in one to covera deficiency in another. The result is a logistics

    network that contains excess stock, as the dis-

    connection between the planning and execution

    systems restricts the plan to managing produc-

    tion on a daily basis; tuning the input to the

    pipeline but not movements through it.

    One approach to improving the efficiency of

    the logistics network is to introduce a set of

    exception management and planning services

    to manage operation of the logistics pipeline

    (Figure 5). These exceptionrich roles werepreviously the domain of employees but lever-

    aging agent technology allows us to integrate

    them into the applications SOA, creating an

    enhanced application.

    New services are introduced to support the

    realtime planing and management functions

    required by the new application, previously thedomain of employees. Agent technology is a

    good fit for these services as each service

    implements business processes and heuristics

    reflecting the goalbased, trailanderror

    approach employees used to manually solve

    these problems in the past; approaches that are

    intractable with conventional technologies andtools. The final solution contains services in all

    three layers from the Business Transactions,

    through Clerks, to Agent services (Figure 6).

    The use of agent technology provides us with a

    degree of flexibility not possible with conven-

    tional approaches. The agentbased services

    isolate key business decisions behind cleanly

    defined interfaces, rather than forcing these

    decisions to be implemented with design pat-terns (such as Chain of Responsibility[7]) that

    bake business decisions into the solutions

    structure; where changing the business deci-

    sion involves (to some extent) refactoring the

    application. In contrast, agent tools and tech-

    niques provide a simple, highlevel, approach

    to capturing this goalbased behavior. Adding

    a new optimization strategy for the Optimiza-tion service is simply a matter of defining the

    new optimization business process, and then

    FIGURE 5. Automated Logistics Management

    Planning

    Execution

    Planning

    Execution

    CompositeApplication

    Route

    Management

    Optimization

    Replenishment

    CompositeApplication

    Route

    Management

    Optimization

    Replenishment

    FIGURE 6. Services in Automated Logistics Management

    Workflow Tools

    Scripting Languages

    MoreComplex Le

    ssComplex

    Clerks

    Composite Applications

    Route Management

    ReplenishmentOptimization

    Agents

    Agents &

    Business Webs

    Planning

    Execution

    Business Transactions

    Service Wrapped

    Legacy Applications

    http://-/?-http://-/?-
  • 8/10/2019 Beyond Composite Applications

    5/6

    Page 5 of 6

    adding it to the set of approaches for the agent

    to consider. The agent manages at runtime

    the trialanderror process of trying differ-

    ent optimization approaches until a successful

    one is found.

    Dynamic Business WebsThis approach to role automation can also

    extend beyond the original application bound-

    ries to integrate multiple application into a

    dynamic business web: a hetrogenerous collec-

    tion of applications, representing different

    companies (or departments within a company),

    that collaborate together in a single market-

    place to manage resources and negotiate. Com-

    panies can use business webs to coordinate

    operations between their various departments,or to automate planning and management with

    their partners.

    One example of this is gathering multiple 3PL

    solutions together into a logistics marketplace

    (Figure 7), extending the 3PL logistics man-

    agement solution beyond the original model to

    support 4PL operation. A 4PL solution allows

    us to combine multiple logistics providers into

    a single heterogeneous virtual logistics net-

    work a dynamic business web where cus-

    tomers, suppliers and partners can come

    together to create tailored solutions to business

    problems in real time. Each shipment is

    assigned a route assembled dynamically from

    one or more individual logistics providers. The

    extended realtime negotiation and monitoringfunctionality required by the 4PL approach is

    supported by creating a virtual auction between

    the participants in the business web. Previously

    these business functions were manual and off

    line, where today agenttechnology allows us

    to use advanced algorithms (inspired by eco-

    nomics) to automate them. The composite 4PL

    application consists of a distributed network of

    heterogeneous (agent) services using auction

    based algorithms to negotiate logistics and

    shipment routes, dynamically creating virtualsupply chains in realtime. The algorithms

    include advanced features such as multiitem

    markets, multiunit markets, trust, coalition

    formation and contract formation & breach

    management. The enhanced application uses

    this functionality to support, online and in real

    time, the dynamic formation and management

    of virtual supply networks disturbed across

    multiple logistics providers.

    Each in the business web is implemented with

    webservice tools and techniques extended

    with agent technology, while still presenting

    conventional webservice interfaces exter-

    nally. The collection of (agent) services oper-

    ates as a multi-agent system each agent

    acting independently but coordinating its

    FIGURE 7. A 4PL Logistics Marketplace

    Monitoring &

    Auditing3PL

    Application

    3PL

    Application

    3PL

    Application

    3PL

    Application

    4PL

    Marketplace

    http://-/?-http://-/?-
  • 8/10/2019 Beyond Composite Applications

    6/6

    Page 6 of 6

    actions with other agent via orchestration pro-

    tocols.

    Conclusions

    As the market for webservices based applica-

    tions matures, the lowhanging fruit the

    straightforward composite applications

    will be exhausted, and new development

    efforts will move up the technology chain to

    provide more advanced systemwide behav-

    iours. This move will be characterized by a

    shift from developing composite applications

    designed to consolidate business processes and

    data, to solutions that automate and optimize

    the business process brought into focus by the

    original composite application. These solutions

    can form the basis for the creation of dynamicbusiness webs, virtual applications, which

    dynamically provision the resources they

    require.

    Current tools and techniques cannot support

    this new generation of webservice based

    applications due to the nonlinear, exception

    rich nature of the business processes that they

    must implement. Agent technology promises to

    fill this gap, by providing the tools and tech-

    niques required to extend existing webserviceand SOA based approaches. The technology

    integrates cleanly with a modern servicebased

    approach to application development, with a

    modern SOA environment providing a sound

    foundation for the advanced functionality pro-

    vided by an agentbased solution.

    Marrying agent technology with webservice

    technology results in applications that exhibit a

    flexibility and robustness not seen with current

    technologies creating dynamic business

    webs that dynamically adapt to the rapidly

    changing business environment. Integrating the

    two technologies can provide us with the plat-

    form required to deliver the next generation of

    enterprise applications.

    References

    1. Singh & Huhns (2004), ServiceOriented

    Computing, Wiley, ISBN

    2. Dan Woods (June 2003), Packaged Com-

    posite Applications, O'Reilly & Associates,

    ISBN 059600520

    3. BPEL

    4. Nicholas Jennings (2001),An Agent Based

    Approach to Building Complex Systems,

    Communications of the ACM, Volume 44,

    Number 4

    5. Michael Wooldridge (June 2002),Introduc-

    tion to MultiAgent Systems, John Wiley &

    Sons, ISBN 047149691X6. M. Georgeff and A. Lansky (1986), Proce-

    dural Knowledge, Proceedings of the IEEE

    (Special Issue on Knowledge Representa-

    tion), 74:13831398

    7. Chain or Responsibility Pattern

    8. FIPA protocols