implementing web applications as social machines composition: a case study

23
Implementing Web Implementing Web Applications as Social Applications as Social Machines Composition: a Machines Composition: a Case Study Case Study Kellyton Brito, Lenin Otero, Patrícia Muniz, Leandro Nascimento, Vanilson Burégio, Vinicius Garcia, Silvio Meira Federal University of Pernambuco UFPE, Recife - Brazil Federal Rural University of Pernambuco UFRPE, Recife Brazil C.E.S.A.R, Recife, PE, Brazil

Upload: kellyton-brito

Post on 14-Jun-2015

449 views

Category:

Technology


1 download

DESCRIPTION

With the evolution of the web and the concepts of web 3.0 as known as programmable web, several issues need to be studied in order to develop, deploy and use this new kind of application in a more effective way, such as communication between systems, unstructured data and non-scalable protocols, among others issues. In this regard, a new concept – named Social Machines – emerged to describe web based information systems that interact for a common purpose. In order to apply and validate in practice this new model, in this paper we describe a case study which implements a web application that is a composition of several public and well-known services from different application domains, such as Wikipedia, Flickr, Twitter, Google Places and Google Maps, following the Social Machines’ model. In the end, we present the results and some improvement suggestions for the model.

TRANSCRIPT

Page 1: Implementing Web Applications as Social Machines Composition: a Case Study

Implementing Web Implementing Web Applications as Social Applications as Social Machines Composition: a Machines Composition: a Case StudyCase Study

Kellyton Brito, Lenin Otero, Patrícia Muniz, Leandro Nascimento, Vanilson Burégio, Vinicius Garcia, Silvio Meira

Federal University of Pernambuco – UFPE, Recife - Brazil

Federal Rural University of Pernambuco – UFRPE, Recife – Brazil

C.E.S.A.R, Recife, PE, Brazil

Page 2: Implementing Web Applications as Social Machines Composition: a Case Study

AgendaAgenda

• Motivation

• The Emerging Web of Social Machines

• The Case Study

– Definition

– Planning

– Operation

– The analysis and interpretation

• Conclusions and Future Works

Social Machines Research Group SEKE 2012 Presentation

2/23

Page 3: Implementing Web Applications as Social Machines Composition: a Case Study

Social Machines Research Group SEKE 2012 Presentation

3/30

Computing Means Connecting Wade Roush (2006)

Web 3.0

Page 4: Implementing Web Applications as Social Machines Composition: a Case Study

Computing Computing meansmeans CONNECTINGCONNECTING

ConnectingConnecting MachinesMachines

Running Services

In an EcossystemEcossystem

Social Machines Research Group The Emerging Web of Social Machines - A brainstorm

4/23

Page 5: Implementing Web Applications as Social Machines Composition: a Case Study

Social Machines Research Group The Emerging Web of Social Machines - A brainstorm © 2011 – Vinicius Cardoso Garcia

5/23

Page 6: Implementing Web Applications as Social Machines Composition: a Case Study

Social Machines Research Group SEKE 2012 Presentation

6/30

Page 7: Implementing Web Applications as Social Machines Composition: a Case Study

Social Machines Research Group SEKE 2012 Presentation

7/30

Page 8: Implementing Web Applications as Social Machines Composition: a Case Study

Social Machines Research Group The Emerging Web of Social Machines - A brainstorm © 2011 – Vinicius Cardoso Garcia

8/14

Page 9: Implementing Web Applications as Social Machines Composition: a Case Study

Software Development and WebSoftware Development and Web

• Native characteristics of the web

– A caotic place: mix of business, research, government, social, and individual interests

– Anarchic architecture: unstructured data , thousands of simple, small-scale interactions between agents and resources, unreliable parts, etc

• It is necessary to create new mental models of such a web as a platform to provide a common and coherent conceptual basis for the understanding of this innovative phase of software development

Social Machines Research Group SEKE 2012 Presentation

9/23

Page 10: Implementing Web Applications as Social Machines Composition: a Case Study

Social Machine (SM) Social Machine (SM) –– TheThe conceptconcept

• We have been trying to explain the web in terms of conectable entities called Social Machines

– SM = <Rel, WI, Req, Resp, S, Const, I, P, O>

• SM is a mental model to help us in designing and developing of web-based applications that are supposed to be “sociable”

• “Sociable applications”

– Take advantage of their environment (consider the existing available services) and publish their capabilities to other applications

– Designed and built to be networked with other appplications and services

– Simplify the combination and reuse of existing services

10/23

Page 11: Implementing Web Applications as Social Machines Composition: a Case Study

Social MachinesSocial Machines

Social Machines Research Group 11/23

Social Machine is a web unit defined by

the tuple:

SM = <Rel, WI, Req, Resp, S, Const, I, P, O>

A Social Machine (SM) receives requests (Req) from other

SM’s and returns responses (Resp). The requests are

converted to inputs (I) for a processing unit (P), which has

states (S) and produces outputs (O). In addition, there are

rules that define relationships (R) with other SMs, under

a specific set of constraints (Const).

Page 12: Implementing Web Applications as Social Machines Composition: a Case Study

Case Study DefinitionCase Study Definition

• Is it possible to implement an application which uses many API’s of many domains using SM’s model?

• What are the main benefits, difficulties and challenges?

Social Machines Research Group SEKE 2012 Presentation

12/23

Page 13: Implementing Web Applications as Social Machines Composition: a Case Study

Planning (Main Points)Planning (Main Points)

• Null Hypothesis – H0’: it is not possible to design and implement the application

according to Social Machines model; – H0’’: there are no benefits in implementing the application

according to Social Machines model; – H0’’’: there are difficulties and challenges in implementing the

application according to Social Machines model;

• Variables – Independent: SM’s Model and Documentation; – Dependent: Feasibility of implementation, benefits, dificulties

and chalenges; – Control: Comparison with other projects

• Analysis Criteria – Qualitative analysis of documentation and code, and discussion

with guest specialists;

Social Machines Research Group SEKE 2012 Presentation

13/23

Page 14: Implementing Web Applications as Social Machines Composition: a Case Study

Operation Operation –– Application DevelopedApplication Developed

• Requirements: Application which help people to gather information about nearby places

Social Machines Research Group SEKE 2012 Presentation

14/23

Page 15: Implementing Web Applications as Social Machines Composition: a Case Study

Application ArchitectureApplication Architecture

Social Machines Research Group SEKE 2012 Presentation

15/23

Page 16: Implementing Web Applications as Social Machines Composition: a Case Study

Social Machine DefinitionSocial Machine Definition

16/23

Page 17: Implementing Web Applications as Social Machines Composition: a Case Study

ScreenshotScreenshot

Social Machines Research Group SEKE 2012 Presentation

17/30

Page 18: Implementing Web Applications as Social Machines Composition: a Case Study

Analysis and InterpretationAnalysis and Interpretation

• Qualitative Analisys

– Documentation analisys

– Discussion with guests specialists in web API’s, Cloud Computing and Software Architecture

• H0’: it is not possible to design and implement the application according to Social Machines model

– Rejected: Application was designed and implemented in full compliance with its requirements and with the SMs model

Social Machines Research Group SEKE 2012 Presentation

18/23

Page 19: Implementing Web Applications as Social Machines Composition: a Case Study

Case Study ResultsCase Study Results

• H0’’: there are no benefits in implementing the application according to Social Machines model

– Rejected

– Benefits on the design phase

– Modularity and abstraction

– Encapsulating and external API’s usage centralized in the wrapper interface

Social Machines Research Group SEKE 2012 Presentation

19/23

Page 20: Implementing Web Applications as Social Machines Composition: a Case Study

Case Study ResultsCase Study Results

• H0’’’: there are difficulties and challenges in implementing the application according to Social Machines model

– No Rejected

– Difficulties to define external SM’s • No access to information about them

• Creation of two classes: Internal and External SM’s

– Difficulties to describe SM’s

– Need a Social Machine controller • To manage what SM’s choose (for ex.: Foursquare or Google

Places), using QoS, charges of API access, service status, etc

Social Machines Research Group SEKE 2012 Presentation

20/23

Page 21: Implementing Web Applications as Social Machines Composition: a Case Study

Conclusions and Future WorkConclusions and Future Work

• This work offers a new perspective on software development on the Web – it can collaborate to the process of providing a unifying

vision to describe web based information systems and could be a practical way of dealing with the complexity of this emerging web

• It’s possible to use SM’s to develop applications that

uses several API’s • Simple application

– More case studies needed – More application domains

Social Machines Research Group SEKE 2012 Presentation

21/23

Page 22: Implementing Web Applications as Social Machines Composition: a Case Study

Conclusions and Future WorkConclusions and Future Work

• The Research Framework overlaps several areas – Semantic web; cloud computing; SOA; XaaS; Software Reuse

and so on…

• Some topics

– Social Machine Controller – An architectural framework – Quality attributes – An algebra to describe its connections and conditionals – ...

• People as Social Machines – Using this concept to create Social Machines wich represent

people and their relationship with other people or systems?

Social Machines Research Group SEKE 2012 Presentation

22/23

Page 23: Implementing Web Applications as Social Machines Composition: a Case Study

Implementing Web Applications as Social Machines Composition: a Case Study

• Thank you!

Kellyton Brito Informatic Center – Federal University of Pernambuco

[email protected]

Acknowledgments

Social Machines Research Group SEKE 2012 Presentation

23