1 g.r. gangadharan 1, hong-linh truong 2, martin treiber 2, vincenzo d‘andrea 1, schahram dustdar...
TRANSCRIPT
1
G.R. Gangadharan1, Hong-Linh Truong2, Martin Treiber2, Vincenzo D‘Andrea1, Schahram Dustdar2,
Renato Iannella3, Michael Weiss4
1University of Trento, Italy 2Vienna University of Technology, Austria
3National ICT Australia, Austrilia4Carleton University, Canada
Consumer-specified Service License Selection and Composition
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Talk outline
Motivation ODRL-S license overview License-aware service selection and
composition framework License composition for composite service Directional Matchmaking Algorithm
Illustrating scenario Conclusion and next steps
27th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Software as a Service/Utility & License
Web service, SaaS and Service Utility Can be composed and used by different consumers Different usage modes (e.g., subscription, pay per
use) etc.
Some questions How to deal with legal „terms“? Such as
noncommercial use How to associate licenses with a service utility? How to search, select and compose service utility,
taking into account the license?
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
3
4
What is a Service License?
• A license between a service provider (as the licensor) with (could be) many service consumers (the licensees).
• Describes the use of and access to services in machine interpretable form.
• A complementary concept for completeness of service usage description.• Can be viewed as a superset including SLAs and Policies.
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
5
Existing work in Service License?
• Though there are few examples of service licenses (by Amazon, Google, Yahoo!), to the best of our knowledge, there is no conceptualization of service licensing.
• These licenses are not machine interpretable.
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
6
Why Not a Software License for Services?
• Services are also software fragments!
• Services are not targeted as standalone applications.
• Consumers do not require to download them for local use.
• Services support composition and reuse.
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
What is this paper about
• This paper: • Uses ODRL-S to describe service license• Proposes composition and selection of services
based on licenses• We do not discuss
• The comparison between ODRL-S with other specifications (e.g., WS-Policy, WSPL, WSOL, WSLA, Slang, etc.)
• Specifying license is not the focus of this paper• See http://dit.unitn.it/~gr/pubs.html
• Selecting a service based on functional parameters• Contribution: Consumer-specified license-based service selection
77th IEEE ICCBSS, 25-29 Feb 2008, Madrid
8
•ODRL-S (Open Digital Rights Language for Services)•Based on ODRL-S (http://odrl.net/)
•Subject• define the service being licensed
•Scope of Rights• adaptation, composition, attribution, derivation, sharealike, non-commercial use
•Financial Terms•Warranty, Indemnity, and Limitation of liability (WIL)•Evolution
•deal with software evolution/versioning
Background: Anatomy of a Service License
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
9
Subject
Scope of Rights
Financial Terms
Warranties, Indemnities, Limitation of Liabilities
Evolution
ODRL Asset Model
Extended ODRL Rights Model
Representation of SLA in ODRL
Representation of ServiceEvolution in ODRL
Background: ODRL-S Service License Model
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
ODRL-S is nominated by the ODRL consortium as a standard for representing service licensing and currently
open for public review at a Working Group (ODRL-S WG).
10
Element Value
Background: ODRL-S Service License Structure
<o-ex:offer> <o-ex:asset> <o-ex:context> <o-dd:uid>urn:service-id</o-dd:uid> </o-ex:context> </o-ex:asset> <o-ex:permission> <sl:derivation /> </o-ex:permission> <o-ex:requirement> <o-dd:attribution /> <o-dd:peruse> <o-dd:payment> <o-dd:amount o-dd:currency=“EUR”>
1.00</o-dd:amount> </o-dd:payment> </o-dd:peruse> </o-ex:requirement> </o-ex:offer></o-ex:rights>
Model
Attribute Name
Element
Attribute Value
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Previous and background work for this paper
License Compatibility analysis [ICSOC’07]. Service selection based on functional
parameters Vector space-based web services search
(http://www.vitalab.tuwien.ac.at/projects/search/)
Web Services Evolution Management Framework (SEMF) Managing licenses and other services information https://www.vitalab.tuwien.ac.at/autocompwiki
11
[ICSOC’07] G.R.Gangadharan, M.Weiss, V.D’Andrea, R.Iannella “Service License Composition and Compatibility Analysis”, Proc. of the Intl. Conf. on Service Oriented Computing (ICSOC’07), Vienna, Austria, Sept. 2007.
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Service Evolution Management Framework (SEMF)12
License-aware Service Composition Framework
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
User interface, Web services consumers
Service Selection Request Handler
FCA (Function Compatibility Analyzer)
LCA (License Compatibility Analyzer)
Service Discovery Resource Management
Service Information
Functional parameterslicense clauses
Services and licenses
Functional parameters Compatible services
license linksLicense clauses and links
Compatible license
13
<feed xmlns="http://www.w3.org/2005/Atom">
<id>urn:uuid:3043abca-90a5-45d4-8508-bbaa4945ffad</id>
<entry>
<id>urn:uuid:121f3368-aea8-4197-86b0-f0561a428042</id>
<updated>2007-09-14T16:37:53+02:00</updated>
<published>2007-09-14T16:37:53+02:00</published>
<title>Licence</title>
<!-- link to current information -->
<link href="http://wisur.at:8080/axis/
/services/WISIRISFuzzySearchService?odrls"/>
<category term="License"
scheme="http://www.dmoz.org/Computers/
Software/Licensing/"/>
<category term="http://odrl.net/1.1/ODRL-EX-11.xsd"/>
ODRL-S License
Managing Service License using SEMF
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
14
….
<content type="application+xml">
<agreement>
<asset>
<execute>
<requirement>
<peruse>
<payment>
<amount currency="EUR">1.00</amount>
<taxpercent code="VAT">20.0</taxpercent>
</payment>
</peruse>
</requirement>
</execute>
</asset>
</agreement>
</content>
Managing Service License using SEMF (cont.)
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
16
•A service provider defines a license for the service and publishes the service with the license.
•Service consumers are often interested in selecting a service with a particular type of license.
Consumer-specified license: A set of license clauses specified by a consumer to be used in the selection of services.
Consumer-specified Licenses
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Consumer-specified License-based Service Selection and Composition
Consumers specify licenses for a service to be composed
Our framework Finds suitable services Checks if licenses allow services to be composed Proposes composite service license
Applies Directional Matching Algorithm for consumer-specified and provider-specific licenses in license composition
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
17
18
Service License Composition
•Objective•To propose a service license for composite service• Composite license associated with composite service
•Approach•Two licenses are compared using our algorithm presented in [ICSOC’07].• A composite service license is generated by
• Extracting elements of each license and put them together in a single license. • Removing redundant clauses.
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
19
• A set of functionalities and the requested license clauses are provided by a consumer as inputs.
• Services matching the functionality specified by a consumer is retrieved.
• LCA searches in the Service Information for the information about licenses of each service being selected by FCA
•The license of the selected service is compared with the consumer-specified license.
Service License Composition
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Service License Composition Algorithm
Find all services to be composed that functional parameters met consumer-specified license clauses
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
20
• Licenses of all services to be composed must be compatible
Compose a license for composite service
Directional Matching Algorithm
21
•Analyzing the compatibility between a consumer specified license and a provider specified service license.
•Compatibility is directional•Based on a set of rules for compatibility between
•consumer-specified license clauses against unspecified Scope of Rights and Financial Terms in provider-specified license clauses.•unspecified Scope of Rights and Financial Terms in consumer-specified license clauses against provider-specified license clauses.
Directional Matchmaking Algorithm (DMA)
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
22
• Two licenses are compatible, if all the respective models in both the licenses are compatible.
• A model is compatible with another model, if the model types are same and their elements are compatible.
• An element e1 is compatible with another element e2, if:• e1 and e2 have same type or using redefinition or unspecification [use tables]• e1 and e2 have equal value.• for all nested elements, corresponding elements are compatible.• all attributes of e1 and e2 are compatible.
• An attribute a1 is compatible with another attribute a2, if the attributes are of same type and the associated values of attributes are equal.
Directional Matchmaking Algorithm (DMA) (cont.)
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Illustrating scenario
Current implementation Not all features have been implemented Java-based algorithms Tested in house
Simple scenario RestauranceService to be composed from
LocationService: provides map/location information ReservationService: provides table reservations
We need to find possible LocationService and ReservationService suitable to consumer-specified license
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
23
Illustrating scenario: examples of licenses
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
24
LocationService License ReservationService License
Consumer-specified license
25
<o-ex:permission> <sl:composition/></o-ex:permission>
<o-ex:permission> <sl:derivation/></o-ex:permission>
<o-ex:permission> <sl:composition/></o-ex:permission>
Consumer-Specified Service License
LocationService LicenseReservationService License
Illustrating scenario: Consumer Specified SL Composition
CompatibleCompatible CompatibleCompatible
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
26
<o-ex:permission> <sl:composition/></o-ex:permission> <o-
ex:permission> <sl:derivation/></o-ex:permission>
LocationService License
ReservationService License
Illustrating scenario: Consumer Specified SL Composition
CompatibleCompatible
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
27
<o-ex:offer> <o-ex:permission> <sl:composition/> </o-ex:permission> <o-ex:requirement> <o-cc:attribution/> </o-ex:requirement> <o-ex:requirement> <o-cc:sharealike/> </o-ex:requirement> </o-ex:offer>
Illustrating scenario: Resulting Composite Service License
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Summary and next challenges Mechanism to specify and associate licenses
with services To support consumer-specified, license-aware service
selection and composition, motivated by SaaS and service utility models
Foundation study for our next steps:How to realize and provide a full implementation
of service license model for SaaS/service utility Validation of a real system with license-aware
selection and composition License enforcement for services
287th IEEE ICCBSS, 25-29 Feb 2008, Madrid
29
Thanks for your attention!Feedback, suggestion, research collaboration are more than welcome!
Hong-Linh TruongDistributed Systems GroupVienna University of Technology
[email protected]://www.vitalab.tuwien.ac.at/autocompwiki
7th IEEE ICCBSS, 25-29 Feb 2008, Madrid