Mobile Agents for Integrating Cloud

advertisement
Mobile Agents for Integrating
Cloud-Based Business Processes
with On-Premises Systems and
Devices
Janis Grundspenkis
Antons Mislēvičs
Department of Systems Theory and Design,
Riga Technical University,
Riga, Latvia
Agenda
–
–
–
Why this is important?
What to do with mobile agents in cloud
BPM integration scenarios?
How ideas proposed in this research may be
applied?
Definitions
–
–
–
–
Business Process – an activity or set of activities that
accomplish a specific organizational goal;
Business Process Management – concepts, methods,
and techniques to support the design, administration,
configuration, enactment, and analysis of business
processes;
Business Process Management System – information
system, that supports implementing business process
management in organization;
Mobile Agent – program, that moves from host to host
during execution.
Why this is important?
Business Process Management Systems (BPMS)
are becoming more popular;
– Implementing BPMS requires to ensure
integrations with existing enterprise systems;
– More companies choose cloud BPMS option,
as it allows to reduce costs and implementation
time;
– As existing enterprise system are deployed onpremises, cloud to on-prem integration aspects
are becoming very important;
– Existing integration solutions to not meet
various specific BPMS integration requirements.
–
Cloud BPMS (SaaS)
SaaS Integration Problem
–
Publish web services:
1. Security risks
2. IT involvement
– Directly from applications;
3. Hard to configure in complex
– Custom developed;
network topologies
Not applicable in SaaS scenario
VPN;
Relayed messaging (TARGET, Windows Azure
Service Bus); Requires special configuration for on-prem web services
scalability
– Using communication agent; Limited
Integration through WS and DB
–
–
Needs direct access to data sources
Cloud BPMS integration requirements
Complex computations close to data sources dealing with large amounts of data
2. Complex transformations and computations
with data stored in on-premises application security and privacy reasons
3. Implementing rapid changes in integrations –
to adapt business process to changes in the
environment
4. Accessing legacy systems and specific devices
that are deployed on-premises and have no
web services or database interface
1.
Analyzing existing methods
Publishing
web
services
Publishing
custom web
services
Relayed
messaging
Using communication
agent
No
Partially. On
machine,
where service
is deployed.
No
Partially. On machine
where agent is deployed.
2. Transformations No
in local network
Yes
No
Yes
3. Implementing
rapid changes
No. Need to
modify or
republish
services.
No. Need to
change
configuration
of services.
Partially. Depends on
implementation.
Typically some
integration data stored
locally.
Yes
No
Typically no. Depends on
implementation.
1. Computations
close to data
sources
No. Need to
modify or
republish
services.
4. Accessing legacy No
systems
Using mobile agents (MAs)
Mobile agents solution
Mobile agents
1. Computations close to data
sources
Yes. Mobile agents may move between hosts during
execution. Deploying new hosts is a simple process.
2. Transformations in local
network
Yes. Mobile agents are executed in local network.
3. Implementing rapid changes
Yes. Integration logics is stored in agent definition (on
BPMS side).
4. Accessing legacy systems
Yes. Mobile agents may connect to systems using low level
APIs (via implementing custom agent actions).
Problems in existing MA implementations
–
–
No common standard for packaging mobile
agents;
Programming skills are required to develop
mobile agents.
Proposed approach
–
Mobile agents are developed and executed
as workflows:
allows to develop agents in GUI;
– easier to understand for business people.
–
MA development process
Agent Designer
Packaging agents
–
Agent packages are based on Open
Packaging Conventions:
–
–
–
–
–
open standard;
package may contain any data;
package may evolve over time;
native support for digital signatures;
native support for compression (especially
important for mobile agents).
Agent Package
System architecture
Proof implementation – AgentWF
–
Technologies:
–
–
–
–
–
–
.NET 4.0
WF 4.0
WCF 4.0
WPF 4.0
AddIn Framework
Standards:
–
–
–
–
–
–
OPC
XML
XML encryption
XAML
JSON
X509 certificates (signing and encryption)
MA Security
–
–
–
Sign agent definition parts
–
–
Ensures that designed agent was not modified
Routing agents to agent host instance based on signature
–
Sensitive information can be decrypted only on hosts where
certificate was installed
Encrypt configuration sections
Isolate Agent Host Instances
–
–
–
–
Agent Host Instance runs with permissions of specified user
Agent is executed in separate isolated add-in process
Agent Host routes agent to defined Agent Host Instance
based on agent signature and properties
Timeouts
–
Multiple timeouts on Agency and Agent Host level (agent idle,
agent execution, etc.)
AgentWF architecture
AgentWF agent stores
AgentWF workflow actions
Extensibility
–
Allow agents to perform new actions
(integrate with new systems on-premises):
–
–
Develop custom Agent Activity Packs (WF 4.0)
Enable integration with new cloud BPM
systems:
Develop custom Protocol Handlers
– Develop BPM Extensions (WF actions, agent stores)
–
Proof of Concept Solutions
1.
Integration with cloud BPM: workflows in Office
365 (SharePoint Online) (cloud system is
available in Latvia: www.office365.lv)
2.
Developing Agent Activity Pack for Integration
with on-premises accounting system Tildes
Jumis (popular in Latvia: www.tilde.lv/jumis)
3.
Use official Latvian eID card for signing mobile
agents;
Key Takeaways
–
Popularity of cloud BPMS leads to specific “SaaS to
on-premises” integration requirements, which can
not be effectively addressed using existing solutions;
–
Proposed solution addresses these issues and is
based on mobile agents;
–
Proof of concept implementation of proposed
solution is provided - AgentWF
–
Solution was validated in multiple scenarios, that are
specific for Latvia;
Download