Engineering human-based services in elastic systems Hong-Linh Truong Distributed Systems Group, Vienna University of Technology [email protected]http://dsg.tuwien.ac.at/staff/truong 1 ASE Summer 2015 Advanced Services Engineering, Summer 2015 – Lecture 9
49
Embed
TUWien - ASE Summer 2015: Engineering human-based services in elastic systems
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Service-based Integration of Human Users in Workflow-
driven Scientific Experiments. In: Proceedings of the 8th
IEEE International Conference on eScience (eScience
2012
HUMAN SERVICE UNITS IN
VIENNA ELASTIC COMPUTING
MODELASE Summer 2015 28
VieCOM -- incorporate humans into a
programming paradigm (1)
• Abstracting human compute units as program elements
• Extending programming languages to support human compute units
• Data/control flows via extensible APIs
Programming languages
• Shared memory (e.g., human –software – human), message passing (human-to-human), artifact-centric, etc., via APIs working atop the compute unit abstraction layer
Multiple programming
models
• Computing capability /profile management: human computing power, reputation and incentive models
• Monitoring and enforcing incentives/rewards, quality of results, availability
• Communication between human-middleware, among Individual Compute Units (SCU)/Social Compute Units (SCU) for exchanging artifacts and comprehensing l tasks
Provisioning/Negotiation/Execution APIProvisioning/Negotiation/Execution API
Abstraction of Human-based Compute Units
SCUSC
U
SC
U SCU SCU
Program languages and programming models
Program
elements
Software
Compute
Units
program human actions
and dependencies
program incentive condition
and rewarding action
program result evaluation
method
Human-to-middleware
interfaces:
•visualization of collective tasks
•embedding of common forms
•mobile app
30ASE Summer 2015
Cloud of hybrid service units
Cloud of HBS: A cloud of HBS includes HBS that can be provisioned, deployed, and utilized on-demand based on different pricing and incentive models.
Cloud of HBS: A cloud of HBS includes HBS that can be provisioned, deployed, and utilized on-demand based on different pricing and incentive models.
Cloud of hybrid services: A cloud of hybrid services includes SBS and HBS that can be provisioned, deployed and utilized on-demand based on different pricing andincentive models.
Cloud of hybrid services: A cloud of hybrid services includes SBS and HBS that can be provisioned, deployed and utilized on-demand based on different pricing andincentive models.
ASE Summer 2015 31
Hybrid compute unit design –
fundamental elements
32ASE Summer 2015
Hong-Linh Truong, Hoa Khanh Dam, Aditya Ghose, Schahram Dustdar "Augmenting Complex Problem Solving with
Hybrid Compute Units",9th International Workshop on Engineering Service-Oriented Application (WESOA's 2013), In
conjunction with ICSOC 2013, Dec 2, 2013, Berlin, Germany, (c)Springer-Verlag
Hong-Linh Truong, Hoa Khanh Dam, Aditya Ghose, Schahram Dustdar "Augmenting Complex Problem Solving with
Hybrid Compute Units",9th International Workshop on Engineering Service-Oriented Application (WESOA's 2013), In
conjunction with ICSOC 2013, Dec 2, 2013, Berlin, Germany, (c)Springer-Verlag
Hybrid compute unit design --
Relationships
33
Relationship Type HBS SBS TBS HCU
Similarity Yes Yes Yes Yes
Composition Yes Yes Yes Yes
Data Dependency Yes Yes Yes Yes
Control Dependency Yes Yes Yes Yes
Location Dependency Yes Yes Yes Yes
Forwarding Yes Yes No Yes
Delegation Yes Yes No Yes
Social Relation Yes No No Yes
Elasticity Yes Yes No Yes
ASE Summer 2015
Hybrid compute units
34
Hybrid compute unit (HCU): a set of service units
includes software-based services, human-based
services and things-based services that can be
provisioned, deployed and utilized as a collective
on-demand based on different quality, pricing and
incentive models.
Hybrid compute unit (HCU): a set of service units
includes software-based services, human-based
services and things-based services that can be
provisioned, deployed and utilized as a collective
on-demand based on different quality, pricing and
incentive models.
ASE Summer 2015
Extensible architecture
Adapters for: email,
Dropbox, REST,
Android
Integrated with
WP4,6,8;
API access for WP5,2
Open source and
documentation:
https://github.com/tuwi
endsg/SmartCom
ASE Summer 2015 35
P. Zeppezauer, O. Scekic, H.-L. Truong and S. Dustdar, "Virtualizing Communication for Hybrid and Diversity-Aware Collective Adaptive Systems,"
10th International Workshop on Engineering Service-Oriented Applications (WESOA'14@ICSOC), Paris, 2014.
Zeppezauer, Virtualizing Communication for Hybrid and Diversity-aware Collective Adaptive Systems, Master thesis, Dec 2014.
P. Zeppezauer, O. Scekic, H.-L. Truong and S. Dustdar, "Virtualizing Communication for Hybrid and Diversity-Aware Collective Adaptive Systems,"
10th International Workshop on Engineering Service-Oriented Applications (WESOA'14@ICSOC), Paris, 2014.
Zeppezauer, Virtualizing Communication for Hybrid and Diversity-aware Collective Adaptive Systems, Master thesis, Dec 2014.
Muhammad Z.C. Candra, Hong-Linh Truong, and Schahram
Dustdar, Provisioning Quality-aware Social Compute Units in
the Cloud, ICSOC 2013.
Muhammad Z.C. Candra, Hong-Linh Truong, and Schahram
Dustdar, Provisioning Quality-aware Social Compute Units in
the Cloud, ICSOC 2013.
Algorithms
Ant Colony
Optimization
variants
FCFS
Greedy
SCU
extension/reduction
Task reassignment
based on trust, cost,
availability
Mirela Riveni, Hong-Linh Truong, and Schahram
Dustdar, On the Elasticity of Social Compute Units,
CAISE 2014
Mirela Riveni, Hong-Linh Truong, and Schahram
Dustdar, On the Elasticity of Social Compute Units,
CAISE 2014
ASE Summer 2015 38
Selecting human units
Do not select at all
Let human units bid the tasks
E.g., in crowdsourcing platforms
Static/fix mapping
E.g., using static information for human-task mapping
Simple selection techniques
Using the requirement of the task to find the suitable
human units based on their capabilities
Complex selection techniques
Utilizing complex dependency graphs to find suitable
human units
ASE Summer 2015 39
Selecting SCU based on task
graphs
40
SCU Formation
Algorithms
Business As
Usual
Corrective
Action
HBS
Constraints
Hong Linh Truong, Schahram Dustdar, Kamal Bhattacharya: Programming Hybrid Services in the Cloud. ICSOC 2012: 96-110Hong Linh Truong, Schahram Dustdar, Kamal Bhattacharya: Programming Hybrid Services in the Cloud. ICSOC 2012: 96-110
ASE Summer 2015
Placement techniques for human
units
Usually at design time the developer/designer decides
Where to put human units
Where some triggers should be put in order to invoke
human units if needed
At runtime
Find suitable human units
Invoke human units
Placement of human units
Application-specific
Needs automatic algorithms and supporting tools
ASE Summer 2015 41
Configuring iSCU
Establish „connectedness“ based on compliance
constraints and network topology
Addional cost might occur!
Program SBS and HBS for the iSCU to have a
complete working environment.
Different connectedness
E.g., ring-based, star-based, and master-slave
topologies
ASE Summer 2015 42
Towards programming framework
for HCU
43
Coordination and
Composition Models
Coordination and
Composition Models
[ICSOC12]
ASE Summer 2015
EVALUATING HUMAN
SERVICES
ASE Summer 2015 44
Turkalytics
Develop „Interaction
Model“ for human
activities
Monitor and analyze
metrics, e.g.,
performance and
location
ASE Summer 2015 45
Paul Heymann and Hector Garcia-Molina. 2011. Turkalytics: analytics for human computation. In Proceedings of the 20th international
conference on World wide web (WWW '11). ACM, New York, NY, USA, 477-486. DOI=10.1145/1963405.1963473
http://doi.acm.org/10.1145/1963405.1963473
Paul Heymann and Hector Garcia-Molina. 2011. Turkalytics: analytics for human computation. In Proceedings of the 20th international
conference on World wide web (WWW '11). ACM, New York, NY, USA, 477-486. DOI=10.1145/1963405.1963473
http://doi.acm.org/10.1145/1963405.1963473
Turkalytics
Track client
detail at client
side (in browser)
Store tracked
information in a
log server
Analyze events
ASE Summer 2015 46
Paul Heymann and Hector Garcia-Molina. 2011. Turkalytics: analytics for human computation. In Proceedings of the 20th international
conference on World wide web (WWW '11). ACM, New York, NY, USA, 477-486. DOI=10.1145/1963405.1963473
http://doi.acm.org/10.1145/1963405.1963473
Paul Heymann and Hector Garcia-Molina. 2011. Turkalytics: analytics for human computation. In Proceedings of the 20th international
conference on World wide web (WWW '11). ACM, New York, NY, USA, 477-486. DOI=10.1145/1963405.1963473
http://doi.acm.org/10.1145/1963405.1963473
VieCOM
SCU execution model and lifecycle
management
Metrics for ICUs and SCUs
Mirela Riveni, Hong-Linh Truong, and Schahram Dustdar, On the Elasticity of Social Compute
Units, CAISE 2014
Mirela Riveni, Hong-Linh Truong, and Schahram Dustdar, On the Elasticity of Social Compute