“Open-Source, Web-Based, Framework for Integrating Applications with Social Media Services and Personal Cloudlets”
Total Page:16
File Type:pdf, Size:1020Kb
Ref. Ares(2013)131450 - 01/02/2013 ICT-2011.1.2 Cloud Computing, Internet of Services & Advanced Software Engineering, FP7-ICT-2011-8 “Open-Source, Web-Based, Framework for Integrating Applications with Social Media Services and Personal Cloudlets” Deliverable D2.1 Cloud-based Services Analysis Workpackage: WP2 – Use Cases Analysis and Requirements Specification Iosif Alvertis (NTUA), Michael Petychakis (NTUA), Fenareti Authors: Lampathaki (NTUA), Sotiris Koussouris (NTUA), George Gionis (NTUA), Dónal McCarthy (TSSG), Susana Ortega (CGI) Status: Final Date: 31/01/2013 Version: 1.0 Classification: Public Disclaimer: The OPENi project is co-funded by the European Commission under the 7th Framework Programme. This document reflects only authors’ views. EC is not liable for any use that may be done of the information contained therein. D2.1 Cloud-based Services Analysis OPENi Project Profile Contract No.: FP7-ICT-317883 Acronym: OPENi Open-Source, Web-Based, Framework for Integrating Applications Title: with Social Media Services and Personal Cloudlets URL: www.openi-ict.eu Start Date: 01/10/2012 Duration: 30 months Partners Waterford Institute of Technology Ireland Coordinator National Technical University of Athens (NTUA), Greece Decision Support Systems Laboratory, DSSLab Fraunhofer-Gesellschaft Zur Foerderung Der Germany Angewandten Forschung E.V INFORMATICA GESFOR SA (CGI) Spain AMBIESENSE LTD UK VELTI SA Greece BETAPOND LIMITED Ireland 2 D2.1 Cloud-based Services Analysis Document History Version Date Author (Partner) Remarks 0.10 10/11/2012 Iosif Alvertis, Fenareti Initial table of contents Lampathaki (NTUA) 0.20 13/11/2012 Iosif Alvertis (NTUA) Initial draft of Section 3.1 0.30 20/11/2012 Iosif Alvertis, Sotiris Koussouris, Initial draft of Section 3.2. Updating section 3.1 George Gionis, Fenareti incorporating comments for additional services Lampathaki (NTUA) received by Lukasz Radziwonowicz (FOKUS) 0.40 12/12/2012 Iosif Alvertis, Fenareti Initial draft of Sections 1 and 3 incorporating Lampathaki (NTUA) preliminary inputs on 3.3.1, 3.3.4, 3.3.5, 3.3.6, 3.3.10, 3.3.11 from Dónal McCarthy (TSSG) and on 3.3.9, 3.3.12, 3.3.15, 3.3.17 from Susana Ortega (CGI) and comments for additional services from Hans Myrhaug (AmbieSense), Theodoros Michalareas and Timotheos Kastrinogiannis (VELTI) and Peter Elger (BETAPOND) 0.50 20/01/2012 Iosif Alvertis, Michael Petychakis Updated draft revising Section 3 (NTUA) 0.60 27/01/2012 Iosif Alvertis, Fenareti Updated draft incorporating Section 1, 2, 4 and Lampathaki (NTUA) 5 and circulated for final internal technical review 0.70 30/01/2012 Fenareti Lampathaki, Iosif Updated draft addressing comments received Alvertis (NTUA) from Theodoros Michalareas and Timotheos Kastrinogiannis (VELTI) 0.80 31/01/2012 Fenareti Lampathaki (NTUA) Updated draft addressing comments received from Robert Kleinfeld (FOKUS) 1.0 31/01/2012 Eric Robson (TSSG) Final version to be submitted to the EC 3 D2.1 Cloud-based Services Analysis Executive Summary The present report aims at analyzing the underlying state of the art of the cloud-based services in order to provide concrete recommendations and guidelines to drive the forthcoming design and implementation of the OPENi APIs Framework. The work carried out for the present State of the Art Analysis included the following steps: Pillar I – Baseline Analysis Analysis of the background of the Cloud-based Services. The core methods and protocols for designing web services (i.e. Web Services (WS-*), RESTful Web Services, Remote Procedure Call (RPC), JavaScript APIs and XMPP), the most prominent data formats and web application frameworks were studied. Patterns and guidelines for the APIs design have been analyzed together with protocols and schemas like ActivityStreams and the OpenGraph protocol. A set of FP7 research projects investigating the APIs landscape have been recognized with a purpose to identify common research directions and potential synergies. Pillar II – Identification of the Landscape Definition of the scope with a set of criteria that render a Cloud-based Service of interest to OPENi, i.e.: o The availability of APIs externalizing the functionality of a Cloud-based Service. o The added value of each Cloud-based Service to a developer. o The usefulness of each Cloud-based Service to the consumer. o The popularity of each Cloud-based Service (by the number of mash-ups utilizing it and the number of users it has attracted). o The coverage of a broad spectrum of functionality by each Cloud-based Service. o Whether a Cloud-based Service captures emerging trends in order to provide potential new ideas to the OPENi Use Cases. Iterative identification, classification and validation of relevant Cloud-based Services with an approach as inclusive as possible through empirical research over the web. Since there was no research work (papers) on the categorization of cloud-based services found, the categorization proposed by developers’ reference portals (e.g. Programmable Web APIs Directory, Mashape APIs, etc.) as well as the categorization adopted by the biggest mobile apps marketplaces, where the focus of developers and the appraisal from users meet one another (i.e. App Store, Google Play - Android Marketplace) were meticulously studied. Finally, the future trends according to analysts (e.g. Gartner Mobile Trends 2012, Appcelerator and IDC surveys) provided additional insights on the types of Cloud-based Services that are anticipated to dominate the market. Prioritization of the Cloud-based Services based on multi-criteria decision analysis. The categories have been filtered on the basis of their alignment and proximity to the OPENi Use Cases. A set of criteria have been also defined and assigned with specific weight in each category in order to identify which are the predominant services and which are the trends in cloud-based services. Indicative criteria that have been set are the Registered Users, the 4 D2.1 Cloud-based Services Analysis Monthly Active Users and the Alexa Reach Ranking. Figure 0-1 depicts the cloud-based services that gathered the highest evaluation score. Figure 0-1: OPENi Landscape of Cloud-based Services for In-depth Analysis Pillar III – Investigation of the Landscape In depth Analysis of the APIs available by the existing Cloud-based Services. During this step, a complete documentation of the APIs including their protocols, libraries, limitations and data formats has been conducted. The functionalities provided by each API have been studied in detail and mapped on the basis of the objects involved in each category and according to a common agreed terminology. Finally, the degree of the API exposure has been evaluated and summarizes the main points and lessons learnt from the analysis. Pillar IV – Conclusions & Key Take-Aways Elaboration on the OPENi Generic APIs. In order to proceed to the identification of the generic functionality for each category of cloud-based services, a detailed map containing all Cloud-based Services and their functionalities offered has been constructed. Upon obtaining a clear overview of the complete set of functionalities (irrespectively of the category to which each service belongs), the main objects and activities involved are identified based on the 5 D2.1 Cloud-based Services Analysis concepts of state-of-the art standards (like ActivityStreams) leading to the draft conceptualization of a set of Generic APIs to be put forward by OPENi. Seven (7) Generic APIs that combine cloud-based functionalities in a set of functionalities that are similar to Phone SDKs, and existing phone applications or functionalities have been proposed: o Activity API referring to a social, health, behavioural activity log as reflected in multiple cloud-based services ranging from Social, Photo and Video Sharing to Health and Location-based Services. It includes all the social and personal activities of a user, and is related with the logging activity of a device. o Communication API for conveying real-time information through the exchange of messages, or calls. It is related with the Phone and Messaging application of a smartphone. o Location API enabling location awareness through Checkins, Direction, Events, Reviews and Tips. It is a strong contextual API with location, which can be extracted by a GPS sensor and can be mapped on a map. o Media API bringing together photo, music and video sharing services with file transfer and syncing functionalities. It is related with the Gallery Application and the file system of a device. o Products & Services API embracing Analytics, Advertising, Payments and Shopping services. It is related with the store application of a Phone. o Profiles API extrapolating information about persons based on Analytics, Advertising, Contacts, Gaming, Health, Location-based Services, Messaging & Chat, Music, Social, etc. services. It is directly related to the Agenda application of a smartphone. o Search API in order to find and retrieve information from the cloud-based services. It is related to the search functionality found in a Phone OS. Such APIs bring together the functionality offered in four (4) to twelve (12) categories, as well as multiple and diverse objects and existing APIs. Drawing Future Perspectives and Key Lessons Learnt from the investigation of the state-of the art, indicatively: o Creating a classification of the cloud-based services’ territory was not a trivial task and could have gone a long way if a concrete methodology was not applied from beginning to end. o Research in a highly dynamic and evolving field is particularly challenging taking into account the novel cloud-based services that continuously arise and may eventually dominate the market. o Continuously tracking the emerging services, disruptive technologies and market developments with regard to the APIs and introducing the necessary changes in the OPENi wiki is considered as an effective way to keep the results tuned to the end users’ needs. 6 D2.1 Cloud-based Services Analysis Table of Contents 1 Introduction .......................................................................... 11 1.1 Purpose and Objectives .............................................................................