Social Protocols

3,727 views

Published on

Published in: Business, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,727
On SlideShare
0
From Embeds
0
Number of Embeds
1,084
Actions
Shares
0
Downloads
21
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Social Protocols

  1. 1. Social Protocols <ul><li>Juan Quemada </li></ul>
  2. 2. Definition set of rules, conventions and behavioural patterns for human interaction and for multimedia context management which lead to effective and well coordinated “ technology mediated” collaboration among the members of a group in a particular situation and with a specific goal
  3. 3. Modelo <ul><li>R = {r1, r2, ..} is the set of roles played by individuals in a given collaboration. </li></ul><ul><li>C = {c1 x (m11, m12, ..), c2 x (m21, ...), ....} is the set of shared object classes with set of methods. </li></ul><ul><li>F = {c1 obj1, c2 obj2, ... } is the floor of shared objects instances. </li></ul><ul><li>State: A multimedia representation of the state which can be naturally recognized by individuals collaborating </li></ul><ul><ul><li>Examples: a visual composition, an easily recognizable sound, a specific type of vibration, etc. </li></ul></ul><ul><li>Input Events: events enabled to users with a given role at a given state. </li></ul><ul><ul><li>Can be fired by enabled roles over the interfaces and peripherals of the collaborative system when allowed. </li></ul></ul><ul><li>Output Events: multimedia messages send to users which uniquely identify the event occurred. </li></ul><ul><ul><li>Usually state and output event will be integrated into a unique multimedia message which will be usually shown as an integrated context to the collaborating individuals. </li></ul></ul><ul><li>Protocol Behaviour: The state changes and output events caused by the occurrence of input events. </li></ul><ul><ul><li>Will determine the access rights for activating input events associated with each role at any given state of the protocol. </li></ul></ul>SlideShow OneVideo Questions
  4. 4. Ejemplo I <ul><ul><li>The set of roles R = {prof, student}. Modelled with two predicates prof(u) and student(u). </li></ul></ul><ul><ul><li>The set of classes C = {Question, Slides, Mode} where each will have the following operations </li></ul></ul><ul><ul><ul><li>Question: RaiseHand(user u), BringToScene(user q) </li></ul></ul></ul><ul><ul><ul><li>Slides: SetSlide (int n) </li></ul></ul></ul><ul><ul><ul><li>Mode: SetOneVideo(user u), SetSlideShow (user u), SetQuestions (user). </li></ul></ul></ul><ul><ul><li>The Floor F = {Question Q, Slides S, Mode M}. </li></ul></ul><ul><ul><li>The explicit States = {OneVideo, SlideShow, Questions} </li></ul></ul><ul><ul><li>Input Events. defined by the first line of the transitions of the automaton. </li></ul></ul><ul><ul><li>Output Events. Multimedia messages incorporated to multimedia context defined by the state. </li></ul></ul><ul><ul><li>Protocol Behaviour. The precise behaviour is defined by the automaton in next slide. </li></ul></ul>Figure 2 SlideShow OneVideo Questions
  5. 5. T2 = MoveSlide (user u, int n) if (prof(u)) S.SetSlide (n) T5 = RaiseHand (user u) Q.RaiseHand (u) T1 = SlideShow (user u) if (prof(u)) M.SetSlideShow (u) T4 = OneVideo (user u) if (prof(u)) M.SetOneVideo (u) T3 = Questions (user u) if (prof(u)) M.SetQuestions (u) T1 = ........... T3 = ....... T6 = SelectQuestion (user u, q) if (prof(u)) Q.BringToScene (q) Figure 3 Questions with person asking Questions Layout SlideShow Layout OneVideo Layout Slide Show Questions One Video
  6. 6. Ejemplo II <ul><ul><li>The set of roles R = {admin, user, anonymous}. Modelled with predicates admin(u), user(u) and anonymous(u). </li></ul></ul><ul><ul><li>The set of classes C = {Repository, Object, Comment} </li></ul></ul><ul><ul><ul><li>Repository: SaveObj(user u, Id i, Object o), SaveCom(user u, Id i, ic, Comment o), DeleteObj(Id i), DeleteCom(Id i), ShowRep(Id i), ShowObj(Id i), ObjForm(user u, Id i), ComForm(user u, Id i, ic), NewId(), Next(Id i), </li></ul></ul></ul><ul><ul><ul><li>Object: CreateObj (title t, descr d, date d, picture p) </li></ul></ul></ul><ul><ul><ul><li>Comment: CreateCom (title t, descr d, date d) </li></ul></ul></ul><ul><ul><li>The Floor F = {Repository R} </li></ul></ul><ul><ul><li>The set of States = {ShowRepository, ShowObject, NewObject, NewComment, EditObject, EditComment} </li></ul></ul><ul><ul><li>Input Events. defined by the first line of the transitions of the automaton. </li></ul></ul><ul><ul><li>Output Events. Multimedia messages incorporated to multimedia context defined by the state. </li></ul></ul><ul><ul><li>Protocol Behaviour. The precise behaviour is defined by the automaton in next slide. </li></ul></ul>
  7. 7. T11 = DeleteCom (user u, id i) if (R.owner(i, u) or admin(u)) R.ShowRep ((R.DeleteCom(i)), R.next(i)) T10 = NewObj (user u) if (user(u) or admin(u)) R.ObjForm (u, R.NewId()) T8 = ShowObj (user u, id i) R.ShowObj(i) T7 = ShowRep (user u, id i) R.ShowRep(i) T12 = SaveObj (user u, id i, obj o) if (R.owner(i, u) or admin(u)) R.SaveObj(u,i,o).ShowRep(i); T4 = NewCom(user u, id i) if (user(u) or admin(u)) R.ComForm(u,i) T6 = SaveCom (user u, id i, com c) if (user(u) or admin(u)) R.SaveCom(u,i,R.NewId(),c).ShowObj(i); T3 = EditObj (user u, id i) if (R.owner(ic, u) or admin(u)) R.ObjForm(u,i) T5 = SaveObj (user u, id i, obj o) if (R.owner(i, u) or admin(u)) R.SaveObj(u,i,o).ShowObj(i); T2 = EditCom (user u, id i, ic) if (R.owner(ic, u) or admin(u)) R.ComForm (u, i, ic) T1 = SaveCom (user u, id i, ic, Com c) if (R.owner(ic, u) or admin(u)) R.SaveCom(u, i, ic, c).ShowObj(i) T9 = ShowRep (user u, id i) R.ShowRep(i) T11 = DeleteObj (user u, id i) if (R.owner(ic, u) or admin(u)) R.DeleteObj(i).ShowRep(R.Next(i)) New Comment Figure 5: Repository Show Repository Show Object Edit Comment New Object Edit Object

×