The main artefact that SocIoS plans to present is a framework for allowing application developers of variable level of expertise to combine content and services from a wide range of SN sites into complex workflows. The approach for services development and deployment is “write once, run everywhere”. The resulting services can be deployed on the developer’s own server or inside the SocIoS platform. There they can be discovered and used by other users of the platform, allowing SocIoS to orthogonally address the debate regarding interoperability through a trusted third party (TTP) or an ad-hoc, distributed solution. The terms of service usage, including billing information, will be defined by Service Level Agreements. The SocIoS framework will make sure to develop applications that will adhere to all the related regulation, be it national, or enforced by the individual platforms. Overall SocIoS aims to support:
- the full exploitation of the main SN assets namely, UCC and social graphs
- the SN user -be it individual or organization- to easily develop, deploy, share and configure applications
- the integration of the developed applications to a service provisioning market
- the business applications
- the extendibility of the SocIoS platform
- the sustainability and interoperability of the SocIoS platform
- the viability of the SocIoS platform through the adherence to the respective regulations and privacy protection
The SocIoS framework consists of 5 main components, namely:
- A SOA infrastructure implementing a service discovery, service composition and workflow enactment mechanism that allows users to discover available services that match their criteria, combine them into workflows and compose new services that implement the resulting workflow. The resulting services can be hosted either on the platform or on the developer’s own web server. Services that can be used to compose workflows will include SNs, services built and deployed inside the platform by other users, services built in the platform but hosted on remote servers as well as third party services hosted on remote servers that are advertised in the platform. For services hosted on remote servers and thus prone to failure due to unavailability a special dynamic discovery mechanism will be developed that detects changes in location or status that may cause unavailability and takes proactive measures in order to keep the registry up to date. One issue here is that currently most SNS provide access to their data and functionalities through APIs and not as services. Special provision will be made to accommodate such SNS so that they are transparently incorporated in the service composition process. More specifically, wrapper services that expose all functionality of the SNs APIs as services will be created and hosted in the platform. Those wrapper services constitute the core SocIoS services and will be referred to as such for the remainder of the proposal.
- An API that will grant developers with single point access to the underlying SN APIs. Using the API, users will be able to programmatically create applications that draw data from or perform actions on a wide range of SNs without having to familiarize themselves with the different concepts, data structures and functions of each SN. Through the API, users will also be able to invoke third party services that are accessible through the SocIoS platform. By using a simple set of functions, the common user will be able to combine the functionality or data from the aforementioned services into a new application tailored to his/her needs. The SocIoS API functions and data structures (object model) will be designed in a way that they are comprehensible to the user by incorporating concepts that are familiar to the users from their involvement in the SNs. The SocIoS API will also be able to support the adaptive incorporation of changes in the SN APIs or the semi-automatic inclusion of new ones.
- A usable user interface that provides access to the aforementioned discovery mechanism and API. Through the interface the users will be able to perform search actions based on specific keywords, select the services that they wish to include into their workflows, specify the environment(s) upon which they want to deploy it, the ways that they want to control it and set its access rights. The interface will give to its end-user the opportunity to find and recruit available SN services from various platforms and combine them in order to build the application as if they were mere functions or objects. This will be done in a transparent way to the user, with usability being the most significant requirement at this phase.
- A toolset for supporting the business extensions of the developed applications. This toolset will affect both the API and API implementation layers but most importantly it will live in the service infrastructure providing to SLA-aware features. The purpose of this toolset will be to allow the incorporation of quality notions in the SocIoS services while investigating all the implications that will occur from that concept. Such are: the inclusion of SLAs associated to the services, the management of the SLA lifecycle, the addition or integration with payment mechanisms, the incorporation of non- functional requirements in the development phases and the investigation of the viability of the various occurring business models.
- A toolset for third-party services support. An enhancement of the SOA infrastructure so as to incorporate in the service management process, services that have been developed outside the SocIoS framework. Examples of such services that would be of special interest for SocIoS are: a) services for the management of the UCC (information, media, etc) that thrives in the SN platforms, and b) services for the encapsulation of existing models/analyses of SNs that will take into account the differentiation that a SN environment must make in order to operate as a service market in contrast to the typical IT service provisioning environments. With this toolset, the final applications and services that will be built using SocIoS will constitute workflows that combine SocIoS services and third-party web services. Core artefacts of this toolset will be a data and interface specification transformation mechanisms. Exploiting these components and the underlying technologies SocIoS will develop two integrated solutions for the news broadcasting and TV production vendors that desire to exploit SN content and dynamics to extend their market share by providing more qualitative and interactive services. The development of these two products will provide guidance to the technical work of the SocIoS project but also will evaluate the technologies.