social computing principles platforms and applications
play

Social Computing: Principles, Platforms, and Applications Amit K. - PowerPoint PPT Presentation

Social Computing: Principles, Platforms, and Applications Amit K. Chopra University of Trento Workshop on Requirements Engineering for Social Computing, 2011 Aug 29, Trento Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 1 /


  1. Social Computing: Principles, Platforms, and Applications Amit K. Chopra University of Trento Workshop on Requirements Engineering for Social Computing, 2011 Aug 29, Trento Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 1 / 20

  2. Social Applications Interaction Among Autonomous Agents ◮ Business processes ◮ Banking ◮ Car insurance ◮ Healthcare ◮ Social networks ◮ Argumentation ◮ Software engineering itself Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 2 / 20

  3. Social Dependence Commonality Across Social Applications ◮ Doctors depend on some civic body for salary ◮ One bank depends on another to settle transactions ◮ A friend depends on another not to share photos outside the circle ◮ General public depends on claims of scientific bodies that glaciers are melting ever faster ◮ Community depends on members’ acceptance of what counts as what Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 3 / 20

  4. Social Computation Evolution of Social Dependence The computers are autonomous agents ◮ Humans, organizations, or their software surrogates ◮ Each independently motivated (and designed) As agents interact, social state evolves ◮ Each agent computes social state from its own local observations ◮ No global state as such Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 4 / 20

  5. Social State Evolution Car Insurance Business Process Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 5 / 20

  6. Hypothesis If we understood the nature of social dependence, many potentially diverse classes of applications could be built from the same high-level abstractions ◮ Simplifies their software engineering ◮ Common semantic basis Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 6 / 20

  7. Current Software Engineering Car Insurance Workflow Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 7 / 20

  8. Current Software Engineering Not Suited to Building Social Applications Low-level abstractions based on control flow resulting in ◮ Overspecified systems ◮ Less reusability ◮ Less manageable designs and code ◮ Less interoperability across applications ◮ Social aspects handled offline Commonality, if any, is at a lower-level Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 8 / 20

  9. Current Software Engineering Platforms for Social Applications ◮ Web: database abstractions ◮ WS-*: layer on top the Web, but again lacks social abstractions Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 9 / 20

  10. Current Software Engineering Machine Orientation Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 10 / 20

  11. Way Forward For Social Applications Interaction Orientation Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 11 / 20

  12. Car Insurance Protocols Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 12 / 20

  13. Challenge One: Social Abstractions Promising candidates ◮ Commitment: customer is socially committed to merchant for payment in return for goods ◮ Trust: doctors trust civic bodies to pay their salaries Patterns over the elementary abstractions Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 13 / 20

  14. Challenge Two: Social Application Specification Language Intuition: essentially in terms of interactions protocols ◮ Agents themselves are arbitrary Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 14 / 20

  15. Challenge Three: Software Engineering Principles Do we need to revisit and reinforce them? E.g.: Modularity ◮ Agents (roles) are the fundamental units of modularity in system decomposition ◮ An agent’s autonomy derives from that of its principal ◮ Fail modularity: business workflows such as BPEL Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 15 / 20

  16. Challenge Four: Methodology Do we need new ideas here? Protocols and agents would be independently designed ◮ How we do design protocols and agents from stakeholder requirements? ◮ What kinds of reasoning and tools would best support their design? Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 16 / 20

  17. Challenge Five: Social Platform Distributed Enactment Provides infrastructure services ◮ Would support the primitive interaction protocols ◮ Social API for programming agents ◮ Discovery services ◮ Social-level interoperability Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 17 / 20

  18. Social Computer Is Not Social Computing Is a machine ◮ Solves social problems by considering inputs from social entities (including other social computers) in light of social conventions ◮ Google’s PageRank: lightweight social computer if one considers a link as a vote Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 18 / 20

  19. Conclusions Current SE approaches emphasize control instead of interaction ◮ Mismatch with the nature of social applications Social computing emphasizes interaction and the computation of social relationships ◮ An approach for specifying, implementing, and enacting social applications ◮ Provides a common semantic basis and platform for many diverse kinds of applications Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 19 / 20

  20. Acknowledgments ◮ Munindar Singh, Fabiano Dalpiaz, John Mylopoulos, Paolo Giorgini, Matteo Baldoni, Nicolas Maudet, Pınar Yolum, Michael Huhns, and Michael Jackson ◮ Marie Curie Trentino Cofund Chopra (chopra@disi.unitn.it) Social Computing Aug 29, Trento 20 / 20

Recommend


More recommend