Mashup Generator for XBaya -...
Transcript of Mashup Generator for XBaya -...
Mashup Generator for
XBaya
1
Denis Weerasiri
University of Moratuwa
Outline
• The Story
• Mashups to the rescue
• Mooshabaya
• Back to the story
• Implementation
• Mooshabaya in..
• Mooshabaya Further..2
3
Motivation
From deciding whether to carry an umbrella in the morning to helping an airplane pilot choose the best flight path, accurate and timely weather information is essential to keeping us comfortable and safe.
The LEAD project from University of Indiana provides a Web-based virtual organization and portal to scientific research tools for meteorologists, atmospheric scientists, and anyone who wants to interactively explore the weather as it evolves.
A Whether Forecasting Process…
Satellite data retrieval
Mathematical modeling
Data assimilation
Algorithmic techniques to derive data
Results - back to the scientist
4
The Story
So a scientist requires a system ...
• To depict the real world problems or scientific scenarios as workflows.
• To execute the workflows and monitor them in real time.
• To secure some of his workflows from unauthorized access, while accessing the secured services.
5
Story Continues ...
• Traditional workflow languages or xml technologies have a large learning curve.
• He wants to prototype the workflows quickly.
• He is interested in using the data provided by web based APIs.
• He likes to integrate data sources like web feeds into the system.
6
Mashups to the rescue
• Mashups aggregate contents and services from two or more sources.
• Rapidly developed by mashing up APIs.
• Little investment in learning the mashup APIs and for using them.
7
Mooshabaya
• Exploring synergy of the workflow
domain and the mashup domain by a
potential merge.
8
Not Re-inventing the Wheel..
• XBaya Graphical Workflow Composer from Indiana University as the workflow composer of Mooshabaya.
• WSO2 Mashup Server to deploy the generated mashups.
• WSO2 Registry for the services.
9
Mooshabaya
WS-Messenger
Governance Registry
Mashup Server
Identity Server
Eventing Host
Object
Security
Registry Integrati
-on Mashup generati
-on
UI
Monitori-ng
Mashup Deploy-
ment
Back to the story…
Su
bs
cri
be
No
tify
Publish
Deploy
ExecuteDeployService
Fetc
hD
isco
ve
r
Ad
d
Fetch
11
Components of Mooshabaya
12
Security
Registry Integration
MashupGeneration
+Validator
UI
Monitoring
Mashup Deployment
+Runner
DeployService
EventingHost Object
User Interface
• Server configurations
• GUI based Workflow composition
• Event representation
Security
Registry Integration
MashupGeneration
+Validator
UI
Monitoring
Mashup Deployment
+ Runner
DeployService
Eventing Host Object
13
User Interface
Security
Registry Integration
MashupGeneration
+Validator
UI
Monitoring
Mashup Deployment
+ Runner
DeployService
Eventing Host Object
14
Registry Integration
Security
Registry Integration
Mashup Generation
+Validator
UI
Monitoring
Mashup Deployment
+ Runner
DeployService
Eventing Host Object
15
• Earlier supported XRegistry
• Now supports fetching meta data from WSO2
Governance Registry
• Meta data
o WSDL
o Workflow meta data (.xwf)
• Adding and importing resources
• Extensible to other registry types
Mashup generation +Validation
Security
Registry Integration
Mashup Generation
+Validator
UI
Monitoring
Mashup Deployment
+ Runner
DeployService
Eventing Host Object
16
Composition
• Service discovery
• GUI based composition
Validate
• Logical validation
• Compatibility testing
Generate
• Stub inclusion
• Eventing injection
Serialize
Mashup Deployer + Runner
DeployService
Eventing Host Object
Security
Registry Integration
Mashup Generation
+Validator
UI
Monitoring
Mashup Deployment
+ Runner
17
Deploy Mashup
Mashup server, Registry &
Mooshabayasynchronization
Mashup remote invocation
Monitoring
DeployService
Eventing Host
Object
Security
Registry Integration
Mashup Generation
+Validator
UI
Monitoring
Mashup Deployment
+ Runner
18
WS-Messenger
Mooshabaya
Monitoring
Mashup Server
Eventing Host Object
No
tify
Su
bs
cri
be Invok Mashup
Publish
Security Component
DeployService
Eventing Host Object
Security
Registry Integration
MashupGeneration
+Validator
UI
Monitoring
Mashup Deployment
+ Runner
19
Security
Mashup Run TimeComposition Time
Securing Generated
Mashup
Accessing Secured
Services in Mashup
SSL + Basic Auth
UsernameToken over HTTPS
Mashup Life-cycle
20
Compose
Generate
Deploy
Configure
Execute
Monitor
Security
Registry Integrat
-ionMashup
Generation+
ValidatorUI
Monito-ring
Mashup Deployme
nt+
Runner
DeployService
EventingHost
Object
Security
UI
Mashup Deployme
nt+
Runner
Discussion
Using mashups to deploy workflows as a light-weight medium
Rapid workflow prototyping and testing
Complete life cycle of a mashup
Seamless data aggregation to workflows taking service-level requirements in-to consideration
23
Conclusion and Future work
Using Mooshabaya as base...
Mashup perspective
Workflow perspective
Providing non-functional requirements
Security
Monitoring
RM
Atomic processes etc.24
Conclusion and Future work
Let's not converting high value business processes into mashups
Rather use mashups based implementations in data intensive workflows with the consideration of security, monitoring etc.
25
Mooshabaya in..
• Scientific workflows
• Business Processes
• Educational Researches
• Weather forecasts
27
• Q&A
29
• Thank you..
30