Collaborative Applications Prasun Dewan Department of Computer Science
Collaborative Applications Prasun Dewan Department of Computer Science University of North Carolina CB 3175 Sitterson Hall Chapel Hill, NC 27599 -3175 dewan@cs. unc. edu http: /www. cs. unc. edu/~dewan Dewan 1
Definition Collaborati ve Application I/O Coupling User 1 Dewan User 2 Potentially Real-Time 2
Traditional Collaborative Applications File Mail save send load User 1 User 2 Implicit Comm. Artifact-based Polling Dewan Asynchronous User 1 Talk hi hi receive hello User 2 User 1 Explicit Comm. Private Messages Auto Notification Asynchronous User 2 Implicit Comm. Session-based Auto Notification Synchronous 3
Novel Collaborative Applications File++ Mail++ Talk + File + Mail Implicit Comm. Artifact-based Session-based Synchronous Artifact-based Private Messages Talk++ Talk + Mail Session-based Explicit Messages File + Mail + Talk Implicit & Explicit Comm. Artifact-based Session-based Synchronous & Asynchronous Dewan 4
Talk++ • • Talk++ Mail++ File++ Talk + Mail + Talk + Dewan Mail File Mail + File 5
Talk Screen Division • Screen gets divided among two users. • Each portion shows history of user’s input. • Each user’s input seen incrementally. • N-Users? Dewan 6
Semi-Synchronous N-User Talk • A single history shared by all users • User’s input not seen incrementally. • Concurrent unseen typing can lead to history misinterpretation • User does not know if newly shown text was entered concurrently Dewan 7
Horizontal Time Line Horizontal time line in Flow Chat (Vronay, Smith et al. 99), • Users see concurrent input. • Time line of committed text for third party • Textless box created for uncommitted text Dewan • Long conversations will not fit. • Incremental input of users in other threads of conversations distracting 8
Vertical Time Line Vertical time line in Freeway (Vronay 2002) Dewan • Comic-book metaphor • Incremental input not shown – empty balloon created • Does not work for large # users 9
Threaded Chat • • Scales to large # users & supports long conversations New message response to clicked message. Incremental input not shown, but empty box created Chronological order not shown • New items gradually fade to grey. • Fewer messages, balanced participation, but users less comfortable and same task performance. Threaded Chat (Smith, • Overhead of responding to message? Cadiz et al. 2000) • Associate default thread with message • Designed for N-users, and synchronous/asynchronous Dewan 10 • Not as useful for 2 person or pure synchronous communication
Babble Persistent Sessions and Involvement Degree dewan CSCW Demo wu Faculty Retreat sherman Comp 14 omojokun From: PD Is the grading sheet ready From: Omojokun About to post it. • User List • Involvement Degree • Topic List • Current messages • Persistent sessions • Social topics synchronous • Work topics asynchronous Bradner et al ‘ 99 Dewan 11
MUDs: Textual Virtual Reality John Mary (Wizard) Say Hi everyone John has entered the room (hear footsteps) You say, “Hi everyone” Emote smiles You smile John says, “Hi everyone” Whisper “Boring” to Joe You whisper, “Boring” to Joe Look John @who Move John to public place Name Connect Time Idle Time More natural? Dewan John smiles John’s textual description Change John’s description Disallow John whisper Disallow John from this room Make John a wizard 12
Line of Site Graphical VR • MUD place represented as 3 -D space • Users represented as avatars in 3 -D space. • Line of site communication • Move avatars close to users of interest. • Can express emotions Avatars in V-Chat (Smith, Farnham et al. 2000) Dewan 13
DIVE: Aura-based Graphical VR User 4 Dewan • Avatar interaction • With another user enables communication Aura Session • With app enables sharing. User 2 • Transitive User 3 • Multiple auras • Podium - perception and communication. Application Determine whether can User 1 speak into/hear the speaker. • Table – perception and distribution. Determine if distributed document Fahlen, Stahl et al ‘ 93 14 is shared or private.
MASSIVE: Aura and Nimbus Aura Nimbus User 2 User 1 • Speaker’s aura must intersect listener’s nimbus • User 2 can hear User 1 Greenhalgh & Benford 95 Dewan 15
MASSIVE: Aura and Nimbus Aura User 2 Nimbus User 1 • Speaker’s aura must intersect listener’s nimbus • User 1 cannot hear user 2 Greenhalgh & Benford 95 Dewan 16
Elvin Cofee. Biff: Textual Remote VR # of people in coffee room Scrolling user list. Can get notified when # > threshold (party!) Dewan 17
Room 1 Dewan Screen & Speaker Camera & Microphone Screen & Speaker Video Walls: Video-based Remote VR Camera & Microphone Room 2 18
Two Remote Rooms • Goal: spontaneous collaboration • 3 Kitchens connected • See CNN to attract attention • Moderately useful • N rooms? Display of two remote kitchens, local image, and video to attract attention (Jancke, Venolia et al. 2001) Dewan 19
Media Space Map Room 2 Dewan Room 4 • Selecting a room starts video conference with user • Can be abrupt 20
Office Walker Interaction Model (Obata, Sazaki 98) Dewan • Each office has virtual neighbors • Clicking on office places caller in virtual hallway • Neighbors can see small image. • User can approach to create bigger image. • Office worker, neighbors, visitors can initiate talk. 21
Two Remote Rooms • Media space/Office Walker intended for 1 -1 • Connected Kitchens can be used for 1 -N • Speaker focus? Display of two remote kitchens, local image, and video to attract attention (Jancke, Venolia et al. 2001) Dewan 22
Overview + Speaker • Omni-directional set of cameras to create overview image. • Shot of current speaker sent separately. • Speaker can be selected manually by buttons. • Auto detection Overview, speaker and persons selection buttons (Rui, Gupta et al. 2001) Dewan – Speaker’s voice received by his microphone first. – Audio triangulation can be used when each speaker does not have microphone. • Custom zooming? – on non speaker or 23 speaker?
3 -D Telepresence • Multiple cameras used to create 3 -D Model of Room • Remote site can navigate in this model UNC Office of the Future Dewan – With or without tracking – Can focus on speaking person – Or patient! 24
Gesture Cam: Remote Surrogate • Can determine which objects to look at – As in office of the future • Can point to specific objects – As in Clearboard Figure originally appears in [30] Dewan 25
Gesture Cam: Architecture Figure Originally appears in [30] Dewan 26
Colab. Psy. Bench Dewan 27
Psy. Bench Dewan 28
Psy Bench Architecture Dewan 29
In Touch Dewan 30
In Touch Architecture Dewan 31
Merging Graphical VR and Tele. Presence? Dewan 32
Mixed reality: Internet Foyer • Physical Foyer – Public visiting place • Virtual foyer – 3 -D image visualization of web pages with avatars – Clicking on page opens the page shows 2 -d images of people browsing it. • Mixed reality Benford ‘ 95 Dewan – Physical foyer has video wall to 3 -D visualization and avatars – Virtual foyer has video 33 of physical foyer
TELEP: Presentation to large # users Lecture Site Question & Vote Status Remote Site Scrollable remote audience view Video Picture. Text Comm. Text Descrip. Display at lecture (left) and remote site (right) (Jancke, Grudin et al. 2000) Dewan Speaker Slide Video video • Questions seldom asked • Local audience not seen remotely 34
Video Production Lecture • Same screen for • • Figure 4: Cameras and their placement (Liu, Rui et al. 2001) Dewan • • lecture and audience view Switch to speaking audience member as soon as tracked If no one tracked, show overview If lecturer speaking, occasionally show random audience member A shot should be shown for a max and min time. Always show person from the same side. Two consecutive shots should be very 35 different
Video vs. App. Sharing • Screen shot can be shared through video broadcast or app sharing • App sharing cheaper, with better fidelity. • Allows collaborative input. – E. g. multiple presenters • Integrating with video for noncomputer objects? Dewan 36
Team. Workstation: Integrated Desktop & Computer Awareness (Ishii 90) Dewan • Each user has personal and shared computer • Shared computer can provide various overlays 37
TELE-SCREEN Editing paper xxxx yyyyy Dewan 38
TELE-DESK Editing paper xxxx yyyyy Dewan 39
SCREEN-OVERLAY Editing paper xxxx yyyyy Dewan 40
DESK-OVERLAY Editing paper xxxx yyyyy Dewan 41
SCREEN & DESK OVERLAY Editing paper xxxx yyyyy Dewan 42
COMPUTER SHARING Editing paper xxxx yyyyy Dewan • Computer shared by capturing and distributing video to the monitor • Keystrokes also captured and distributed by hardware. • Everything overlaid is video • No software needed 43
SUMMARY OF MODES (Ishii 90) Dewan 44
Awareness of Collaborator • Must look away from work area to see collaborators’ image. • Do not know what object the collaborator is gazing at. • Overlay Video? Dewan 45
Clearboard: Collaborator Awareness Figure available from http: //ishii. www. media. mit. edu/people/ishii/CB. html. Dewan 46
Clearboard: Drafter Mirror • • • Dewan Figure first appeared in [26] Coupling two non electronic whiteboards. Half-slivered mirror Fluorescent marker See two hand images • One captured directly • One reflected Polarized film and filter on each camera 47 prevents feedback between screen pairs
Clearboard: Architecture • Figure first appeared in [26] Dewan • • Mirror image transmitted when LCD screen in transparent mode. Video projected when in scattering mode. Digitizer pen used to track user 48 input.
Two Gaze Awareness Problem • Object of interest: Do we know what object on the screen the collaborator is looking at. – Clearboard and Facetop address this. • Person of interest: Do we know which one of many collaborators a person is addressing – Hydra, MAJIC address this Dewan 49
Hydra: Gaze Awareness • Images too small to give good user experience Figure originally appears in [5]. Dewan 50
MAJIC: Real-Life with Seamless User Boundaries Figure originally appears in [36] Dewan • Similar idea in office of the future – From talking head to large (projected images) – Gives more of a feeling of being there – Solving different problems 51
Talk: Being there vs. beyond • Being there – “Real-time” communication – Peripheral awareness • Footsteps, hallway – – – – – Dewan Moods Aura Nimbus Video Remote view control Remote pointing Haptics Human access control Podium, sharing documents in a table • Beyond being there – Teleporting to room – Whispering noticed by those not included – Aura and nimbus customizable – Anonymity, Presence Control – Multitasking – Involvement degree and conversation status – Talk history – Threads & structuring conversations – Computer controls – Asynchronous collaboration 52
Anonymity • In theory participants can be more bold • In an experiment perceived status did no harm (Davis, Zaner 2002) Dewan 53
Presence Control • Presence – Location – In-use computers – Activities • Computer and other Dewan • TELEP Presence Options – Video, photo, text • Users liked not sending video • Collaborator is often required to poll for presence in meeting (Mark, Grudin ’ 99) • Moral: presence status? 54
Multitasking • Reduced commitment to meeting and less engaged (Mark, Grudin et al. 99). • But may be willing to attend more meetings! – TELEP: Teachers more willing to cover elementary stuff knowing advanced students can tune out (S. A. White, A. Gupta et al. 2000) Dewan 55
Meeting video browsing Dewan 56 (Li, Gupta et al. 2000)
Video Processing: • Pauses in speech and • Application of associated video removed. pause/removal, rime • Time compress without compression changing pitch – Sports video & • Table of contents generated Lectures manually. – Upto 147 % playback • Shot boundaries generated by speed detecting transitions – Not TV dramas! • Bookmark and annotate • Shot boundaries • Jump to next/previous – Sports programs (high – Bookmark variation in content) – Shot Boundary – Slide transition – Not lectures – Time boundary Dewan (Li, Gupta et al. 2000) 57
Automatic Slide Summaries • Allocate time at beginning proportional to slide time – Slide time proportional to slide importance – Important things explained at beginning • Both techniques found equally good and acceptable. • Not as good as authorgenerated summaries • Include higher-pitch information – Pitch increases when excited Dewan (He, Sanocki et al. 1999) 58
Other Slide-based Summarization Techniques • Slides only • Slides + text transcript of audio • Slides + text transcript + points in text summary highlighted Dewan (He, Sanocki et al. 2000) • High information density – All three methods as good as authorgenerated A/V summaries • Low information density – Highlighted text as good as authorgenerated A/V summaries 59
Chat History Issues • Snap-back scrolling • People hardly use – In Flow Chat history. – Scrolling takes us back • Hard to scroll back and in time forth. – Designed for passive text – Chat is active text being changed under you. Dewan – Releasing scrollbar returns to present – Can be used for any history-based tool 60
Elvin Ticker-Tape History with Time. Out Fitzptarick et al’ 99 colab: vibhor: merging of vector works User Name Group pd colab: pd: Great! Give demo sometime. Timeout 5 mins. Great! Give demo sometime. Dewan 61
Scripted Collaboration • Computer acts as moderator – Determines issues discussed and allocated time • After using it rules enforced manually. (Farnham, Chesley et al. 2000) Dewan 62
r. IBIS: Real-time Structured Issue Resolution *I: Which processor should be used Resolved issue ? P: Processor A AS: Fast *P: Processor B AS: Cheap, already in use Unresolved position Argument Supporting -P: Processor C Rejected position Current position AS: Cheap & fast AO: Will not be available in time Dewan Rein & Ellis ‘ 91 Argument objecting 63
Implicit structure for status • Messages automatically classified into comments, questions, responses. • Based on presence of ? • Statistics shown about them. Threaded Chat (Smith, Cadiz et al. 2000) Dewan 64
CLARE: Structured Discussion + Process Model • Structured discussion a la IBIS (RESRA Representation Schema of Research Artifacts) – – – paper is source addressing some problem about which a claim can be made supported by evidence generated by research methods defining concepts • Process model (SECAI ) – – Dewan – Summarization (Privately create RESRA) Evaluation (Private critique it) Comparison (Publicly compare them) Argumentation (Publicly critique them) Integrate (The various RESRAs) 65
RESRA Dewan Figure originally appears in [39] 66
SECAI Figure originally appears in [39] Dewan 67
Mail++ • • Dewan Talk++ Mail++ File++ Talk + Mail File Mail + File 68
(Venolia, Dabbish et al. ) Threaded Email • Messages shown chronologically • Special lines created to show parent -child relationship • Messages grouped by day – today, yesterday Dewan • • • Groups messages, gives context Useful after vacation Thread-based commands – Delete thread – Forward messages and subscriptions 69
Prioritizing mail messages (Horvitz, Koch et al. 2002) Dewan 70
Prioritizing mail messages • Automatically prioritize mail messages based on – organizational relationship to sender – proximity of send time to key times for sender – message length and body – how long message waiting Dewan (Horvitz, Koch et al. 2002) 71
Messages to mobile device • Goal: cause minimal disruption. • If user not active > T & message priority > P – Send to mobile device • P function of – Whether user in meeting. • Determined from calendar – Other factors. • Replace Dewan – “Not active > T” with – “Likely to be away > T” (Horvitz, Koch et al. 2002) 72
Messages to mobile device (Horvitz, Koch et al. 2002) Dewan 73
Presence Forecast • Determine when mobile user is likely to return to office and remain there for some time – e. g. probability of user returning within 15 minutes and remaining for 30 minutes • Based on – activity with desktop – patterns of past behavior • aggregate • lunch, morning, afternoon, evening, night behavior – how long user has been away Dewan 74
Presence Forecast Probability of return within 15 min p(Client activity within 15 min. | time away, time of day) Lunch Night All Afternoon Morning Evening Dewan Time away (Horvitz, Koch et al. 2002) 75
SMART OOF (Horvitz, Koch et al. 2002) Dewan 76
SMART OOF (Horvitz, Koch et al. 2002) Dewan 77
SMART OOF • SMOOF: Smart out of office message • If message priority is > threshold send presence estimate (Horvitz, Koch et al. 2002) Dewan 78
Time Wave • Office Presence forecast – Updated continuously based on how long user has been away (Horvitz, Koch et al. 2002) Dewan 79
Time Wave (Horvitz, Koch et al. 2002) Dewan 80
Time Wave • Email review forecast – Updated continuously based on prev. email history (Horvitz, Koch et al. 2002) Dewan 81
Dewan 82
Time Wave • Cost of interruption forecast, associated with – time of day, free period (Horvitz, Koch et al. 2002) Dewan 83
Dewan 84
Coordinate Multi Device System • Track user activity on multiple devices • Forecast which devices accessible • Useful because – devices may imply location – caller knows to send email or call mobile phone – capabilities required by caller may be device specific • certain devices allow video conferencing Dewan 85
Other forecasts • Based on user activity, data, and input can determine – whether a person will attend a meeting • • Dewan calendar meeting duration running vs. one-time meeting invitation specific or to group 86
Information Lens: Typed Messages Type: Exam Change Notice Messages Subject: …. Semi-structured typed messages Notices Joe Absence 14 Exam Change Type-based filtering Dewan Notices Room Change Notice Requests Exam Change Notice Exam Change Request Class Absence Request Type Hierarchy Malone ‘ 87 87
Coordinator: Structured Conversation Request (response, completion, alert dates) Acknowledge Customer Agree Interim-Report/Cancel/New-Promise Producer Report-Completion Satisfaction Automation of form fields alerts, reminders status information Dewan Request Customer Flores et al 88 Satisfaction Agree Producer Complete 88
Action Workflow Schedule Interview Status By Candidate Workflow Step Director 2 1 Director 10 9 Director 3 4 Manager Review 5 7 6 Manager 8 Manager Declare Assessment Dewan Manager Technical Directors Submit Evaluation Form Medina Mora ‘ 92 89
ATOMICMAIL: Computational Mail Data Lisp-based PL Single Directory Accessed File Creation Limited Mail Messages Limited Program display/animate graphics gather data and mail Mail Receiver Borenstein ‘ 92 Dewan 90
File++ • • Talk++ Mail++ File++ Mail + Talk + Dewan File Mail + File 91
State of the art file system • • Access control Locking Versioning Disconnected access – Hoarding • “caching” data needed in disconnected access – Directory merging on connection • Adds composed • Deletes cancel. • File granularity – Programmer-defined merge procedure Dewan • Local area network 92
Application-level Support • Disconnected access and merging of – Calendars – Address book – Word – Powerpoint – Not Excel. Dewan 93
Lotus Notes: P 2 P Database Replication “Replica” rep. schedule Table & recordbased merging Dewan source determines read access delete replication old data replication schedule destination determines write access type replication record replication ACL rep. param. rep. immediate rep. 94
Groove Workspace • Groove workspace – Wide-area replicated storage • Like Lotus Notes but with a file-system like UI – Replicas merged on connection time • As in Lotus Notes – Intuitive access control based on making and accepting invitations. Dewan 95
Chronicle: Fine-grained Spreadsheet Versions • Named Range – – – Unit of naming, storage, versioning Rectangular cell block Range name User-defined annotation User id Date • Compose named ranges – Sally’s expense data + Joe’s sales data • Try different alternatives of named range – Sally’s expense forecast – Joe’s expense forecast • Ranges can be browsed, mailed • Dewan Concurrent editing of named range automatically creates versions 96
Mail + File • • Talk++ Mail++ File++ Mail + Talk + Dewan File Mail + File 97
Mail + File • Version system ala multiple mail copies. • Editing sent file – before mail receipt – after mail receipt – allows users to have own file name spaces, easy access control • Sending access permissions via mai – a la groove invitations • Sending same file to a group of users – creates a single copy of file on accessible shared (sharepoint) site Dewan 98
POLITeam: Shared Workflow Documents • Workflow – Structured mailing of documents. • Breaking workflow – Received document can be shared with others Dewan 99
News • Like file, logically centralized information shared among multiple users. • As in mail, users view/modify information by receiving/sending/responding to messages. Dewan 100
News: Shared Mailboxes Message 1 User 1 Message 2 User 2 Send User 2 Receive User N Message M Dewan 101
Scaleable Modifiable Information • • Wide area shared information. Scales to the whole world. Cannot build such a file system. How can we build News? – Loose consistency as in Notes and Groove! Dewan 102
News: Scaleable Architecture News Server News Client read news post news News Client News Server eventual delivery of immutable messages in possibly different order Dewan News Server exchange news News Client 103
Message/News Filtering • Agent-based – Newsgroup – Discussion Thread – Urgent Message – Sender Cost – Contents of Messages (Data Mining) Dewan • Rating-based – Moderator – Known Reviewers – Anonymous Similar Reviewers 104
Group Lens: Aggregate-based Filtering • Multiple (arbitrary) people rate message • Rating combined into one aggregate number specific to reade • Correlation coefficient - CAB: – – – Sum (i = 1 to n) ((Ai - Amean)* (Bi - Bmean)) ----------------------Sqrt ( (Sum (i = 1 to n) (Ai - Amean)**2) * Sum (i = 1 to n) (Bi - Bmean)**2 • Given set S of rating users, aggregate: – Sum (i = 1 to n) (Bi - Bmean)*CABi – -------------------– Sum (I = 1 to n) CABi Dewan + Amean 105
News: Scaleable Architecture News Server News Client read news post news News Client How should this architecture be modified? Dewan News Server exchange news News Client 106
Group Lens Architecture News Server post news read news Modified News Client Dewan post rating read rating send rating get rating Better Bit Bureau 107
Getting Ratings & Other Apps • Incentive to review? • Implicit review – Track amt of read time • Other apps – Books • Buying is strong endorsement – Movies – People? • Multi-dimensional • I like his reliability but you care about his creativity Dewan 108
Adding Agent-based Filters • Spell checker – Rating inversely based on % misspelled words • Included messages – Rating inversely based on % included text • Length – Rating inversely based on message length • Agent is another user giving ratings! – Can find correlation with an agent Dewan 109
Adding Filters News Server post news read news Modified News Client Dewan read news Filterbot (Rating Agent) post rating read rating send rating get rating Better Bit Bureau Only filterbots agreeing with user used in ratings! send rating 110
Adding Filters Sarwar, Konstan et al 98 Dewan 111
Evaluating Aggregation-based Filtering • Coverage – Measures % of time predictions are available before an item is rated by user • Based on a minimum # of ratings available from sufficiently close neighbors • Decision Support Accuracy – Probability random “good” item rejected by system – Probability random “bad” item accepted by system – Good vs bad • 4, 5 vs 1, 2, 3 Dewan 112
Experiments Coverage, Decision Making Accuracy Dewan 113
Experiment Conclusions • Net. general – Filters hardly helped • Perl. misc – Spell helps a lot – Others help somewhat • Linux. Announce • Spell helps • Included messages – Must be right amount • Length useful in announcements – Length and spell help • Recipes – Spell checking helps • Humor – All factors but length Dewan help 114
Annotated Files • Discussions are like news – Shared among n users – Author name evident • They are associated with shared objects • UI for adding discussions – Hypermedia vs. columnar UI Dewan 115
PREP: Zero-Cost Hyperlinks Main text Alice’s comments Benu’s comments Chou’s comments Para 1 Para 2 Dewan 116
Quilt: Writeable Typed Hypermedia Artifact = Document + Colab. Info. Document In Share. Point now Revisions Suggestions Public comments Private messages Other Creation time Creator Triggers Logging Machine Level (Insert-Char) User- Alert significant changes Level (Reorganized Section 2) Colab Styles Author modifies owned section Roles Co-author modifies all Reader < Commenter < Co-Author Designated editor modifies all Dewan Fish. Kraut et al ‘ 88 117
Annotation Granularity • Whole document • Parts of document – Links to threaded discussion about it. – Good for making broad comments • preferred by readers – Directly transferred from hard copies – Anchors to part of the document. – Difficult to implement – Do not require reproducing document part being commented. – Good for detailed comments. • In theory at least. Dewan (Brush, Bargeron et al. ) 118
Office 2000 Variable Granularity Annotations Dewan (Cadiz, Gupta et al. 2000) 119
Office 2000 Study • Specification Drafts rather than Completed Documents • Ten month period. • 20 annotations person. • Large fraction stopped after first annotation – Orphan annotations losing context a reason Dewan • Users do not make high-level comments – Author would not get it • Or nitpicky ones such as spelling, language – Other readers not interested in them. • Use other channels when immediate communication required – Cannot assume notification (Cadiz, Gupta et al. 2000)subscription 120
Orphan Annotations • Arise when fragment to which anchored is deleted. • Office 2000 attaches them to the whole document. – Not ideal if no longer relevant • More sophisticated algorithm: – Save deleted fragment. – Find new matching fragment • Cut words from back and front and do match. • Stop when < 15 chars to avoid false positive. • Users liked it when the differences between old and matched text was small but not large. – Did not work well all the time • Could match keywords instead of whole text. • Could do an intelligent diff as in PREP Dewan – Neuwirth, Chandok 92 121 Brush, Bargeron et al 2001
Live Annotations? • Nitpicky comments entered as edits. – Special annotation right and view like read right and view in Office • Shown as a track change. • User can accept the underlying script. • Akin to calendar invitations – Email desired changes to shared artifact • Dual: – Automatically email/notify actual changes to Dewan shared artifact 122
Automatic Notifications • Content not given • Changer does not know if manual email needed Dewan 123
Descriptive Notifications • Actual comment given. • Link to thread. • Commenter knows subscriptions. Dewan 124
Mercury: Automatic In-Place Notification module A Module B export T import T type T = String char v: T = ‘a’ Edit T User 1 Dewan Buffered Notifications User 2 Asynchronous Error notification 125
Subscription Mechanism Dewan (Cadiz, Gupta et al. 2000) 126
Subscription Specifications • Enrique: Whenever any document is created inform him about it. • Alice & Benu: Whenever any document is created inform them about it. • Alice & Benu: When any document they own is modified, send them an event • Chou & Dimitri: When any circulation document they have processed changes stations, send this event to them Dewan 127
Group. Desk: Automatic Customizable Awareness Notification Relation Classes Works. On Editor Object Classes Object can raise establish Document Relations: Editor Events: Modification Interested Users: Alice, Benu Dewan Event Classes Modification Comment Added Interest Context 128
Event Semantics • Interest context associated with object classes • Relations implicitly defined by system – Currently active user. – Document creator • When an event occurs on object: – For each interest context: • If event is subclass of specified event field – Send event to all interested users who have the specified relation with the object Dewan • Example 2: – Object Class: Circulation. Document – Interest Context • Relation: Has. Processed • Event: Changes. Station • Users: Chou, Dimitri • Example 2: – Object Class: Document – Interest Context • Relation: * • Event: Created • Users: Enrique – Inherited by Circulation. Document 129
Disruption caused by notifications • Czerwinski, Cutrell et al 2000 • For complex tasks – No problems • For simple tasks – Performance went down • Automatic prioritization useful • Polling vs. notifications? – Grudin 94: Managers who with staff polled calendar continuously found notifications nuisance Dewan 130
Side Show Dewan (Cadiz, Venolia et al. 02) 131
Side Show Dewan (Cadiz, Venolia et al. 02) 132
Side. Show & Peripheral Awareness • Three level of awareness – In sideshow sidebar – In document from where ticket is moved. – By hovering on sidebar • Can be used for any information source – Person – Weather map – Web page Dewan 133
Side Show: Person Aawareness Dewan (Cadiz, Venolia et al. 02) 134
Dewan 135
Dewan 136
Dewan 137
Dewan 138
Dewan 139
Talk + File Talk++ Mail++ File++ Talk + File Talk + Mail + File Dewan 140
RTCAL: Real-Time Artifact Sharing Topic, Participants Chair, Controller Proposal: 10 am Vote: Yes Proposal: 10 am Vote: No Public Appts Awareness Public Appts Private Appts Public Appts Application Commands Regular User Dewan Public Appts Application Commands Conference Control Commands Chair join, leave get floor, release floor, terminate 141
Scroll Wars • User scrolling to see some pvt appointment causes “scroll wars” Dewan 142
GROVE: Access-Controlled Views Fine-grained Access Control User and State Awareness No Concurrency Control Incremental Sharing Independent Scrolling public, shared, private read, write rights Outline Title 1. Readable and writeable item 1. 1 Also readable and writeable *. Shared readable and writeable *. * Shared readable User 2 Dewan User 3 User 1 User 4 Outline Title 1. Readab and writeable item 1. Also readable and writeable 2. A Shared Item *. * Different shared item User 1 User 3 User 2 User 4 143
Cognoter (Stefik et al ’ 85) • Groove – cannot scroll independently • Keep pvt and public information in separate windows. – Drag and drop or commit to make public a la IM – Now scroll wars only occur in public window – Ability to scroll together or separately • Can also change scrolling mode in Groove • Process model in shared window – – – Dewan – Brainstorming – add items (ideas) to shared window Organizing – collect ideas into alternatives Evaluation – discuss and delete alternatives Analogous to SEPIA process model. 144
Aspects Concurrency Control • Groove – user working independently must manually enforce CC • Free for all – Paragraph-level locking – Adjacent bar gives lock status • Black for locker, grey for others • Medium mediation – A pen passing mechanism ala Groove/Net. Meeting • Full mediation – Moderator passes pen – Conference starter is moderator Dewan 145
Interactive Lock Probelms • Overhead in locking & unlocking – If explicit commands needed – Group. Draw – selecting/unselecting lock/unlock • May forget to unlock Dewan 146
CES: Delayed Commitment & Tickle Locks Distributed Document Nodes Implicit Commit Del/CR to unlock items Text Node Owner User 1 Host 1 Dewan Tickle Locks (Timed out) Central Host Document Root Text Node Owner User 2 Host 2 147
Locking Delay • Might need to go to remote site to determine if lock available – Assuming lock information is not replicated – Replication requires addressing consistency problems Dewan 148
Group. Draw: Virtual Gestures & Optimistic Locks Coupled Graphical Objects Uncoupled Scrollbars & Palettes Multiuser Scrollbar & Gestalt Viewer Optimistic Locking Implicit Locking/Unlocking Fine-grained CC & AC User 1 User 2 Dewan 149
Independent Drawing Modes • Group. Draw allows users to select drawing mode independently • What happens in single display groupware? • Pebbles – Mobile computer as input device – Shared screen is output device Dewan 150
Pebbles: Single-Display Groupware User Identifier Telepointer * + Drawing Mode Dewan 151
Ensemble • Group. Draw and Pebbles: pointer exported to all. • Ensemble: selectively import and export telepointers. • Implicit Session Management: editing same file puts users in same session. • Locked objects: changes not broadcast. Dewan 152
Talk + Mail + File • • Talk++ Mail++ File++ Talk + Mail + Talk + Dewan Mail File Mail + File 153
IRI: Distance Learning Environment Figure available at http: //www. cs. odu. edu/~tele/iri. Dewan 154
- Slides: 154