290 likes | 428 Views
Consumer-specified Service License Selection and Composition. G.R. Gangadharan 1 , Hong-Linh Truong 2 , Martin Treiber 2 , Vincenzo D‘Andrea 1 , Schahram Dustdar 2 , Renato Iannella 3 , Michael Weiss 4 truong@infosys.tuwien.ac.at 1 University of Trento , Italy
E N D
Consumer-specified Service License Selection and Composition G.R. Gangadharan1, Hong-Linh Truong2, Martin Treiber2, Vincenzo D‘Andrea1, Schahram Dustdar2, Renato Iannella3, Michael Weiss4 truong@infosys.tuwien.ac.at 1University of Trento, Italy 2Vienna University of Technology, Austria3National ICT Australia, Austrilia 4Carleton University, Canada 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 7th 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
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
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
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 7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Background: Anatomy of a Service License • 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 7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Background: ODRL-S Service License Model Subject ODRL Asset Model Scope of Rights 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). Extended ODRL Rights Model Financial Terms Representation of SLA in ODRL Warranties, Indemnities, Limitation of Liabilities Representation of Service Evolution in ODRL Evolution 7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
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 Element Attribute Name Element Value 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 [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
License-aware Service Composition Framework User interface, Web servicesconsumers Functional parameterslicense clauses Services and licenses Service Evolution Management Framework (SEMF) Service SelectionRequestHandler Functional parameters Compatible services license links Compatible license License clauses and links FCA (FunctionCompatibilityAnalyzer) LCA (LicenseCompatibilityAnalyzer) Service Discovery Resource Management Service Information 7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Managing Service License using SEMF <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 7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Managing Service License using SEMF (cont.) …. <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> 7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Managing Service License using SEMF (cont.) 7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Consumer-specified Licenses • 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. 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
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
Service License Composition • 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. 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 • Licenses of all services to becomposedmustbecompatible • Compose a licenseforcompositeservice • DirectionalMatchingAlgorithm 7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Directional Matchmaking Algorithm (DMA) • 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. 7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Directional Matchmaking Algorithm (DMA) (cont.) • 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. 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
Illustrating scenario: examples of licenses Consumer-specifiedlicense ReservationServiceLicense LocationServiceLicense 7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Illustrating scenario: Consumer Specified SL Composition LocationService License ReservationService License <o-ex:permission> <sl:derivation/> </o-ex:permission> <o-ex:permission> <sl:composition/> </o-ex:permission> Compatible Compatible <o-ex:permission> <sl:composition/> </o-ex:permission> Consumer-Specified Service License 7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Illustrating scenario: Consumer Specified SL Composition LocationService License <o-ex:permission> <sl:composition/> </o-ex:permission> Compatible <o-ex:permission> <sl:derivation/> </o-ex:permission> ReservationService License 7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Illustrating scenario: Resulting Composite Service License <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> 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 7th IEEE ICCBSS, 25-29 Feb 2008, Madrid
Thanks for your attention!Feedback, suggestion, research collaboration are more than welcome! Hong-Linh Truong Distributed Systems GroupVienna University of Technology truong@infosys.tuwien.ac.athttps://www.vitalab.tuwien.ac.at/autocompwiki 7th IEEE ICCBSS, 25-29 Feb 2008, Madrid