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: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Implementing Web Applications as Social Machines Composition: a Case Study
1. Implementing WebImplementing Web
Applications as SocialApplications as Social
Machines Composition: aMachines 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
2. 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
3. Social Machines Research Group
SEKE 2012 Presentation
3/
30
Computing
Means
Connecting
Wade Roush (2006)
Web 3.0
9. 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
10. 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
11. 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).
12. 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
13. 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
14. OperationOperation –– Application DevelopedApplication Developed
• Requirements: Application which help people
to gather information about nearby places
Social Machines Research Group
SEKE 2012 Presentation
14/
23
18. 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
19. 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
20. 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
21. 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
22. 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
23. Implementing Web Applications as Social Machines
Composition: a Case Study
• Thank you!
Kellyton Brito
Informatic Center – Federal University of Pernambuco
ksb@cin.ufpe.br
Acknowledgments
Social Machines Research Group
SEKE 2012 Presentation
23