Title: Business Object and Component Architectures: Enterprise Application Integration Encounters Complex A
1Business Object and Component Architectures
Enterprise Application Integration Encounters
Complex Adaptive Systems
- Jeff Sutherland, Chief Technology Officer
PatientKeeper, Inc. jeff.sutherland_at_computer.org - http//jeffsutherland.com/
HAWAII INTERNATIONAL CONFERENCE ON SYSTEM
SCIENCES HICSS-34 January 3-6, 2001Outrigger
Wailea Resort Maui
2Complex Adaptive Systems - cas
Holland, John H. Hidden Order How Adaptation
Builds Complexity. Addison-Wesley, 1996.
- Typical legacy system are frozen
- Chronic underinvestment in automating service
functions - Buyers have been insensitive to architecture,
focused on small pieces of (customized)
functionality. - Fragmented, non-technical stakeholders have made
short term buying decisions.
3Complex Adaptive Systems
- Composed of interacting agents which respond to
stimuli. - Stimulus-response behavior can be defined in
terms of rules. - Agents adapt by changing their rules as
experience accumulates. - Agents can be aggregated into meta-agents whose
behavior may be emergent.
4Enterprise Systems are cas
- Business entities are examples of complex
adaptive systems. - Modification time is on the order of months or
years, roughly time required to change software. - Automating business processes renders parts of
the business in software. - Business systems have severely constrained rule
sets, making them an ideal test bed for cas
concepts.
5Powerful EAI strategy is capturing software
- It is often taken for granted that as systems
evolve over time they tend to become more
complex... - Single systems may grow by increases in
structural sophistication the system steadily
cumulates increasing numbers of subsystems or
subfunctions or subparts to break through
performance limitations, or to enhance its range
of operation, or to handle exceptional
circumstances. - Or, it may suddenly increase by "capturing
software" the system captures simpler elements
and learns to "program" these as "software" to be
used to its own ends... (Arthur 1994)
6Hollands Key Concepts and Business Object
Architectures
- Aggregation (property)
- Tagging (mechanism)
- Nonlinearity (property)
- Flows (property)
- Diversity (property)
- Internal models (mechanism)
- Building blocks (mechanism)
7Aggregation
- Aggregation - the basic mechanism in object
modeling - Forming components out of objects is aggregation.
- More important are emergent properties of
intelligent objects - Meta-agents (an enterprise)
- aggregates of agents (enterprise systems)
- emergent behaviors (revenue, profitability, and
cash flow, the indices of value creation).
8Tagging
- Facilitates the forming of aggregates XML, CORBA,
COM, EJB - Facilitates selective mating, messaging.
Firewalls use tagging to preserve boundaries
between aggregates. - Object identity used to componentize object
models. Enables filtering, specialization, and
cooperation. - Develop hierarchical aggregates that exhibit
emergent behaviors (like an operating system).
9Nonlinearity
- Catastrophic and chaotic behaviors like traffic
flow on the Internet. - Brownouts, system loadings, scalability effects
are often nonlinear. - Predator/prey interactions
- Arrival, proliferation, and destruction of
viruses on the Internet - Revenue prediction in an enterprise financial
system - Rate of construction of software
10Flows
- Workflows
- Tags condition flows
- Flows typically have a multiplier effect.
- money injected into the economy
- email or other message flows on a network.
- Recycling effect
- individual pieces evolve, die, replaced, reused
- living software is constantly changing due to
flows, as rivers change their course. - dead software is eventually detritus that is
expelled from the enterprise organism.
11Diversity
- Persistence of an individual agent depends on the
ecosystem of agents that surround it. - Evolution causes convergence of system
architectures. - Emergent patterns that reappear again and again
in widely disparate environments. - Usefulness in business object systems arises from
interactions between diverse agents as in human
societies.
12Internal Models
- Utility of cas is enhanced if the system can
learn from experience and adapt behavior. - Systems must develop and act on internal models
that simplify the external world. - Systems infer results of actions before they are
taken to choose actions that have productive
results. - Prospects for longevity of software systems
depend on this capability, just as in living
systems.
13Building Blocks
- Reuse is dependent on building blocks.
- Basis of Moore's law in hardware production.
- Could be the basis of dramatic improvements in
software productivity. - Building blocks are the basis for generation of
internal models and are essential to the
construction of adaptive enterprise systems.
14EAI Case 1 Workflow engine, intelligent
adapters, and XML messaging
- New technology was superimposed on the old in
order to enable - (1) interaction between web HTML clients and
mobile WML clients, - (2) utilization of standard transform mechanisms
with XSL/XSLT, - (3) easy integration with future systems in
electronic marketplaces through XML, and - (4) validation and language mapping capabilities
available with XML DTD and XML Schema tools.
15EAI Case 1Workflow drives backend
- Business logic is encapsulated in a workflow
which drives backend Unisys LINC system. - Intelligent adapters provide for the glue that
links the external applications to the workflow. - Adapters transform XML message formats into other
data formats or into objects and are able to take
different actions based on the content of the
message.
16EAI Case 1Workflow drives frontend
- Conductor workflow engine sends XML messages to a
frontoffice adapter which insulates the
frontoffice Sun Forte 4GL system from the
workflow layer
17EAI Case 1 and cas concepts
- Two legacy systems are aggregated into a single
system by adapters controlled by the workflow
engine. - Nonlinear behavior induced by actions of goal
seeking agents is avoided in this system by
essentially hardcoding workflows and tuning them
prior to production. - Flows are automated by the workflow engine and
routed using tags supported by the infrastructure
of XML. This is the key innovation of this
strategy. Workflow captures legacy systems. - Diversity is managed by shielding the workflow
engine with robotic clients. - Internal models are essentially hardcoded,
preventing dynamic adaptation. - Building blocks used in aggregation are enabled
by workflows interacting with adaptors that
manipulate legacy systems.
18EAI Case 2 Mobilizing Healthcare Information
- Case/control studies show that minimal healthcare
automation can triple compliance, cut cost in
half, and improve clinical outcomes by 50-100. - Physicians are inherently mobile and highly
resistant to PC based automation. Mobile devices
at the point of care will be required. - Radical automation via intelligent agents could
create an effect similar to improvements in the
auto industry. Just as cars now run routinely to
100,000 miles, the average person will cruise to
100 years of age with a high quality of
performance. Lower health care costs per unit of
value will be a byproduct.
19Primary Care Physician Computerization Levels
Renata Bushko. AHCPR Data, FHTI 1997.
20Clinical OutcomesTop 10 Causes of U.S. Deaths
1994
Medication Error Annual Cost 76B Bootman, Lyle.
Arch Int Med 115181949-1956, 1995.
- Medication deaths might be reduced from 106,000
to less than 25,000 with automation. - Deaths from meds are significantly underreported
so effect may be more dramatic than expected.
Lazeron J, Pomeranz B. Corey P. Incidence of
Adverse Drug Reactions in Hospitalized Patients.
JAMA 2791200-1205, 1978.
21EAI Case 2 PatientKeeper Platform
Handheld
- Patient centric UUI
- Integrated applications 1..n
- Device independent XML datastore
- Application API
- Synchronization to clinical repository
Patient Manager
Alert Manager
WebApp
Inter Application Framework
Data Store
- Web-based repository
- Web-based preferences
- Web-based central administration
Transport Protocol
Synchronization Protocol
GlobalSync
- Synchronization to clinical repository
- Java/XML workflow engine with client APIs
- Personalization engine to forward user-specific
data to mobile device - Mapping template APIs to convert client datainto
standard Virtmed format - Client adaptors with XML parsing functions for
communication between foreign clinical
repositories and Virtmed platform - Clinical repository with application objects
- Patient management system
- Proven EMPI and Interface Engine
- Full-featured proven clinical database
Transport Protocol
Cerner Transport Protocol
CHCS Adapter
Other Adapter
Clinical Repository
Webtop Protocol
Cerner Transport Protocol
LegacyApps
LegacyApp
LegacyApp
Component API
Virtmed Workspace
Patient Management
Interfaces
EMPI
Clinical Repository (Oracle)
22EAI Case 2 and cas concepts
- The architecture aggregates multiple
heterogeneous systems through component objects,
adapters, or messaging interfaces. - Flows are handled by workflow engines at both the
synchronization server and clinical repository
layers of the architecture. - Tagging is supported by XML infrastructure.
- Diversity is shielded from the mobile
infrastructure by the clinical repository. - Building blocks are aggregated with a wide
variety of integration patterns and mechanisms
for interoperability. The system is complex
enough to induce nonlinear behavior but this must
be managed by manual tuning or coding. - Internal models are implicitly defined by
hardwiring components for specific applications.
Mobile devices used as remote controls enable
adaptive behavior. Key innovation is that user
can dynamically modify workflow.
23EAI Case 3 Big Workflow
- Big Workflow initially designed to cross
multiple applications and multiple vendors to
support patient flow across an healthcare
Integrated Delivery Network (IDN). Similar
systems have been implemented or are under
construction in manufacturing and other vertical
application domains. - Workflow must be managed across across hundreds
of large applications provided by dozens of
vendors. - Centralized management of business processes are
imposed on all vendor applications. - Business processes can be modified globally
without modifying vendor systems.
24Big Workflow is Federated, Heterogeneous,
Distributed, Enterprise Workflow
- Any server on the Internet can host any component
- Process manager, workflow engine, observers,
worklists - W3C standards (HTTP, XML, SOAP everywhere)
- No single point of failure
- Any system that supports an XML remote procedure
call (SOAP) can participate
At the OOPSLA97 Business Object Workshop,
Santanu Paul presented Essential Requirements for
a Workflow Standard. He reviewed work on Rainman
A Workflow System for the Internet at IBM T.J.
Watson Research Center and pointed out
deficiencies in the WfMC architecture.
25Workflowand Agents
Browser/Mobile/Wireless Devices
XML
HTML
HTML
Transport
UI Metadata
View Layer
Metadata
XML
XML
Application Model Layer
Business Logic
Workflow Engine
XML
Patient Object
Domain Layer
Persistence Layer
Data Access
26Enterprise Workflow
Process Templates
1. Treat a patient
Process Manager
2. Who is responsible?
3. Where is their worklist?
Policy Manager
LDAP
4. What happens next?
5. Insert work item.
Worklist Proxy
Workflow Engine
Worklist
6. Do it!
27Create Work
1 Create work (XML context)
ProcessManager Servlet
WfLDAP
2 Init LDAP entry
http
3 Invoke Process ManagerCreateWork (context,
LDAP ref)
ProcessManagerImpl
Persistent Worklist Items
4 Invoke WfEngineGetNextState (context)
WfEngine
WorkListImpl
5 If active work, put on worklist
7 Insert work (return ID for WfNewWork)
6 Insert(context, WorkItem)
WorkListProxy
WorkList Servlet
http
Note If Owner is not Performer, must create
Observer entry in Owner WorkList and call
Performer WorkList to Subscribe
28Big Workflow lays foundation for Agent driven
integration
- Autonomous controls own behavior
- Interactive talks to other agents, humans,
machines - Adaptive, reactive senses and responds to
environment - Mobile transports itself across platforms
- Proxy - may act on behalf of someone or something
- Goal oriented pro-active and purposeful
- Rational - able to reason or understand
- Intelligent - state is formalized (i.e., beliefs,
goals, plans, assumptions) - Temporally continuous - is a continuously running
process - Character traits believable personality/emotiona
l state - Transparent and accountable
- Learning and evolving experience changes
behavior - Cooperative - e.g., can coordinate, collaborate,
and negotiate - Rugged - able to deal with errors and incomplete
data - Trustworthy - adheres to Laws of Robotics and is
truthful
OMG Agent Working Group. Agent Technology Green
Paper. OMG Document ec/99-08-06, Version 0.8, 20
August 1999.
29EAI Futures Objects and Agents
Jim Odell, Chair, OMG Agent Working Group
James Odell. Objects and Agents How do they
differ? Distributed Computing, 1999 (in press).
30EAI Futures Collaborative Agents
31EAI Futures Collaborative Agents
- Business object (BO) components use a
multilayered architecture to support agent
technology. - The first layer contains knowledge about goals to
seek. - The second layer advertises services to other
business object components that may be performed
by this BO and are associated with the goals of
the BO. - The third layer provides the operations used to
perform the service and these operations may be
packaged into workflows. - The fourth layer contains references to
operations performed by other BOs. - Coordination between BOs is carried out by
conversations based on well-known coordination
strategies
32Summary
- New technology will provide automated, adaptive
behavior to the enterprise by capturing
software in legacy systems. - Legacy system services will be widely embedded in
global internet systems supporting supply chain
integration just as mitochondria are in humans. - Workflow tools will orchestrate large scale
system behaviors and serve as reptilian brains. - Collaborative agents with goal-seeking objectives
will provide a neocortex and use reptilian brains
to execute basic behaviors.