Upload
jabari
View
24
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Collaborative Applications. Prasun Dewan. Department of Computer Science University of North Carolina CB 3175 Sitterson Hall Chapel Hill, NC 27599-3175 [email protected] http:/www.cs.unc.edu/~dewan. Definition. Collaborative Application. I/O. I/O. Coupling. User 2. User 1. - PowerPoint PPT Presentation
Citation preview
Dewan 1
Collaborative Applications
Prasun Dewan
Department of Computer ScienceUniversity of North CarolinaCB 3175 Sitterson HallChapel Hill, NC 27599-3175
[email protected]:/www.cs.unc.edu/~dewan
Dewan 2
Definition
User 1 User 2Coupling
Potentially Real-Time
I/O I/O
Collaborative
Application
Dewan 3
Traditional Collaborative Applications
File
save
User 1 User 2
load
Mail Talk
send
User 2
receive
User 1
hi
hello
User 2User 1
hi
hello
Dewan 4
Traditional Collaborative Applications File
save
User 1 User 2
load
send
User 2
receive
Talk
hi
hello
User 2User 1 User 1
hi
hello
Implicit Comm.Artifact-based
PollingAsynchronous
Explicit Comm.Private Messages
Auto NotificationAsynchronous
Implicit Comm.Session-based
Auto NotificationSynchronous
Dewan 5
Novel Collaborative Applications
Implicit & Explicit Comm.Artifact-basedSession-basedSynchronous & Asynchronous
Session-based Explicit Messages
Artifact-basedPrivate Messages
Implicit Comm.Artifact-basedSession-basedSynchronous
File++ Mail++ Talk++
File + Mail Talk + Mail
File + Mail + Talk
Talk + File
Dewan 6
Talk++• Talk++• Mail++• File++• Talk + Mail• Talk + File• Mail + File• Talk + Mail + File
Dewan 7
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 8
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 9
Horizontal Time Line
• Long conversations will not fit.
• Incremental input of users in other threads of conversations distracting
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 10
Vertical Time Line
• Comic-book metaphor
• Incremental input not shown – empty balloon created
• Does not work for large # usersVertical time line in Freeway (Vronay 2002)
Dewan 11
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.
• Overhead of responding to message?
• Associate default thread with message
• Structure? Threaded Chat (Smith, Cadiz et al. 2000)
Dewan 12
Babble Persistent Sessions and Involvement Degree
• User List
• Involvement Degree
• Topic List
• Current messages
dewan
wu
omojokun
sherman
CSCW Demo
Faculty Retreat
Comp 14
From: PD
Is the grading sheet ready
From: Omojokun
About to post it.
Bradner et al ‘99
• Persistent sessions
• Social topics synchronous
• Work topics asynchronous
Dewan 13
MaryJohn
MUDs: Textual Virtual Reality
Say Hi everyone
Emote smiles
Whisper “Boring” to Joe
You whisper, “Boring” to Joe
@who
Name Connect Idle Time Time
John has entered the room (hear footsteps)
You say, “Hi everyone” John says, “Hi everyone”
You smile John smiles
Look John
Move John to public place
Change John’s description
John’s textual description
Disallow John whisper
Disallow John from this room
(Wizard)
Make John a wizard
Dewan 14
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 15
Session
DIVE: Aura-based Graphical VR
Application
User 2
User 1
User 3
User 4
Aura
• Avatar interaction
• With another user enables communication
• With app enables sharing.
• Transitive
• Multiple auras
• Podium - perception and communication. Determine whether can speak into/hear the speaker.
• Table – perception and distribution. Determine if distributed document is shared or private.
Fahlen, Stahl et al ‘93
Dewan 16
MASSIVE: Aura and Nimbus
• Speaker’s aura must intersect listener’s nimbus
• User 2 can hear User 1
User 1User 2
AuraNimbus
Greenhalgh & Benford 95
Dewan 17
MASSIVE: Aura and Nimbus
• Speaker’s aura must intersect listener’s nimbus
• User 1cannot hear user 2
User 1User 2
AuraNimbus
Greenhalgh & Benford 95
Dewan 18
Elvin CofeeBiff: Textual Remote VR
# of people in coffee room
Scrolling user list.
Can get notified when # > threshold (party!)
Dewan 19
Video Walls: Video-based Remote VR
Camera & Microphone
Scr
een
& S
peak
er Camera & Microphone
Room 1 Room 2
Scr
een
& S
peak
er
Dewan 20
Two Remote Rooms
• Goal: spontaneous collaboration
• 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 21
Media Space
Room 2 Room 4
Map
• Selecting a room starts video conference with user
• Can be abrupt
Dewan 22
Office Walker
Interaction Model (Obata, Sazaki 98)
• 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 and initiate talk.
Dewan 23
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 24
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– 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
speaker?
Overview, speaker and persons selection buttons (Rui, Gupta et al. 2001)
Dewan 25
3-D Telepresence
• Multiple cameras used to create 3-D Model of Room
• Remote site can navigate in this model– With or without
tracking
– Can focus on speaking person
– Or patient!UNC Office of the Future
Dewan 26
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 27
Gesture Cam: Architecture
Figure Originally appears in [30]
Dewan 28
Colab. PsyBench
Dewan 29
PsyBench
Psybench.gif
Dewan 30
Psy Bench Architecture
Dewan 31
In Touch
Dewan 32
In Touch Architecture
Dewan 33
Merging Graphical VR and TelePresence?
Dewan 34
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– Physical foyer has
video wall to 3-D visualization and avatars
– Virtual foyer has video of physical foyer
Benford ‘95
Dewan 35
TELEP: Presentation to large # users
Display at lecture (left) and remote site (right) (Jancke, Grudin et al. 2000)
Speaker video
Slide Video
Lecture Site Remote Site
Video PictureText
Descrip.
Question & Vote Status
Text Comm.
Scrollable remote
audience view• Questions seldom
asked
• Local audience not seen remotely
Dewan 36
Video Production Lecture• Same screen for
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 different
Figure 4: Cameras and their placement (Liu, Rui et al. 2001)
Dewan 37
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 non-computer objects?
Dewan 38
TeamWorkstation: Integrated Desktop & Computer Awareness
• Each user has personal and shared computer
• Shared computer can provide various overlays
(Ishii 90)
Dewan 39
Editing paperxxxx yyyyy
TELE-SCREEN
Dewan 40
Editing paperxxxx yyyyy
TELE-DESK
Dewan 41
Editing paperxxxx yyyyy
SCREEN-OVERLAY
Dewan 42
Editing paperxxxx yyyyy
DESK-OVERLAY
Dewan 43
Editing paperxxxx yyyyy
SCREEN & DESK OVERLAY
Dewan 44
Editing paperxxxx yyyyy
COMPUTER SHARING
• Computer shared by capturing and distributing video to the monitor
• Keystrokes also captured and distributed by hardware.
• Everything overlaid is video
• No software needed
Dewan 45
SUMMARY OF MODES
(Ishii 90)
Dewan 46
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 47
Clearboard: Collaborator Awareness
Figure available from http://ishii.www.media.mit.edu/people/ishii/CB.html.
Dewan 48
Clearboard: Architecture
Figure first appeared in [26]
• Mirror image transmitted when LCD screen in transparent mode.
• Video projected when in scattering mode.
• Digitizer pen used to track user input.
Dewan 49
Clearboard: Drafter Mirror
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 prevents feedback between screen pairs
Dewan 50
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 51
Hydra: Gaze Awareness
Figure originally appears in [5].
• Images too small to give good user experience
Dewan 52
MAJIC: Real-Life with Seamless User Boundaries
Figure originally appears in [36]
• 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
Dewan 53
Talk: Being there vs. beyond• Being there
– “Real-time” communication
– Peripheral awareness• Footsteps, hallway
– 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 not 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
Dewan 54
Anonymity
• In theory participants can be more bold• In an experiment perceived status did no harm
(Davis, Zaner 2002)
Dewan 55
Presence Control
• Presence– Location
– In-use computers
– Activities• Computer and other
• 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: give control
Dewan 56
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 57
Meeting video browsing
Pause removal: Toggles between the selection of the pause-removed video and the original video.
Time compression: Allows the adjustment of playback speed from 50% to 250% in 10% increments. 100% is normal speed.
Duration: Displays the length of the video taking into account the combined setting of Pause-removal and Time compression controls.
Timeline zoom: Zoom in and zoom out.
Personal notes button: Opens separate dialog with user-generated personal notes index. Contains "seek" feature allowing user to seek to the points in video. Notes index entries also indicated on Timeline seek bar.
Elapsed time indicator
Timeline Markers: Indicate placement of entries for TOC, shot boundaries, and personal notes.
Jump back/next controls: Seek video backward or forward by fixed increments or to the prev/next entry in an index. Jump intervals are selected from drop-down list (shown below) activated by clicking down-pointing arrows. List varies based on indices available.
Basic Controls: Play, pause, fast-forward, timeline seek bar with thumb, skip-to-beginning, skip-to-end. No rewind feature was available.
Shot boundary frames: Index of video. Shot is an unbroken sequence of frames recorded from a single camera. Shot boundaries are generated from a detection algorithm that identifies such transitions between shots and records their location into an index. Current shot is highlighted as video plays (when sync box is checked). User can seek to selected part of video by clicking on shot.
Table of contents: Opens separate dialog with textual listings of significant points in the video. Contains “seek” feature allowing user to seek to points in the video. Index entries are also indicated on the Timeline seek bar.
(Li, Gupta et al. 2000)
Dewan 58
Video Processing:• Pauses in speech and
associated video removed.
• Time compress without changing pitch
• Table of contents generated manually.
• Shot boundaries generated by detecting transitions
• Bookmark and annotate
• Jump to next/previous– Bookmark
– Shot Boundary
– Slide transition
– Time boundary
• Application of pause/removal, rime compression– Sports video &
Lectures
– Upto 147 % playback speed
– Not TV dramas!
• Shot boundaries– Sports programs (high
variation in content)
– Not lectures(Li, Gupta et al. 2000)
Dewan 59
Automatic Slide Summaries• Allocate time at
beginning proportional to slide time– Slide time proportional to
slide importance
– Important things explained at beginning
• Include higher-pitch information– Pitch increases when
excited
• Both techniques found equally good and acceptable.
• Not as good as author-generated summaries
(He, Sanocki et al. 1999)
Dewan 60
Other Slide-based Summarization Techniques
• Slides only• Slides + text transcript
of audio• Slides + text transcript
+ points in author-generated A/V summary highlighted
• High information density– All three methods as
good as author-generated A/V summaries
• Low information density– Highlighted as good as
author-generated A/V summaries
(He, Sanocki et al. 2000)
Dewan 61
Chat History Issues
• People hardly use history.– Some of you did.
• Hard to scroll back and forth.– Designed for passive
text
– Chat is active text being changed under you.
• Snap-back scrolling– In Flow Chat
– Scrolling takes us back in time
– Releasing scrollbar returns to present
– Can be used for any history-based tool
Dewan 62
Elvin Ticker-Tape History with TimeOut
colab:vibhor: merging of vector works
colab:pd: Great! Give demo sometime.
User Name Group Timeout
pd
Great! Give demo sometime.
colab 5 mins.
Fitzptarick et al’ 99
Dewan 63
Scripted Collaboration
(Farnham, Chesley et al. 2000)
• Computer acts as moderator– Determines issues
discussed and allocated time
• After using it rules enforced manually.
Dewan 64
rIBIS: Real-time Structured Issue Resolution
*I: Which processor should be used
?P: Processor A
AS: Fast
*P: Processor B
AS: Cheap, already in use
-P: Processor C
AS: Cheap & fast
AO: Will not be available in time
Resolved issue
Unresolved position
Argument Supporting
Rejected position
Argument objecting
Rein & Ellis ‘91
Current position
Dewan 65
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 66
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 )– Summarization (Privately create RESRA)– Evaluation (Private critique it)– Comparison (Publicly compare them)– Argumentation (Publicly critique them)– Integrate (The various RESRAs)
Dewan 67
RESRA
Figure originally appears in [39]
Dewan 68
SECAI
Figure originally appears in [39]
Dewan 69
Mail++
• Talk++• Mail++• File++• Talk + Mail• Talk + File• Mail + File• Talk + Mail + File
Dewan 70
Threaded Email
• Messages shown chronologically
• Special lines created to show parent-child relationship
• Messages grouped by day – today, yesterday
• Groups messages, gives context
• Useful after vacation
• Thread-based commands– Delete thread
– Forward messages and subscriptions
(Venolia, Dabbish et al.)
Dewan 71
Prioritizing mail messages
(Horvitz, Koch et al. 2002)
Dewan 72
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
(Horvitz, Koch et al. 2002)
Dewan 73
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– “Not active > T” with
– “Likely to be away > T”(Horvitz, Koch et al. 2002)
Dewan 74
Messages to mobile device
(Horvitz, Koch et al. 2002)
Dewan 75
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 76
Presence Forecast
(Horvitz, Koch et al. 2002)
p(Client activity within 15 min. | time away, time of day)
Pro
bab
ility
of r
etu
rn w
ithin
15m
in
Time away
Night
Morning
Evening
Lunch
AfternoonAll
Dewan 77
SMART OOF
(Horvitz, Koch et al. 2002)
Dewan 78
SMART OOF
(Horvitz, Koch et al. 2002)
Dewan 79
SMART OOF
• SMOOF: Smart out of office message
• If message priority is > threshold send presence estimate
(Horvitz, Koch et al. 2002)
Dewan 80
Time Wave
• Office Presence forecast– Updated continuously based on how
long user has been away
(Horvitz, Koch et al. 2002)
Dewan 81
Time Wave
(Horvitz, Koch et al. 2002)
Dewan 82
Time Wave
• Email review forecast– Updated continuously based on
prev. email history
(Horvitz, Koch et al. 2002)
Dewan 83
Dewan 84
Time Wave
• Cost of interruption forecast, associated with– time of day, free period
(Horvitz, Koch et al. 2002)
Dewan 85
Dewan 86
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 87
Other forecasts• Based on user activity, data, and input can
determine– whether a person will attend a meeting
• calendar
• meeting duration
• running vs. one-time meeting
• invitation specific or to group
Dewan 88
Information Lens: Typed Messages
Subject: ….
Type: Exam Change Notice
Semi-structured typed messages
Messages
Notices Requests
Room Change Notice
Exam Change Notice
Exam Change Request
Class Absence Request
Type Hierarchy
Joe Absence
14 Exam Change
Type-based filtering
Notices
Malone ‘87
Dewan 89
Coordinator: Structured Conversation
Customer Producer
Request (response, completion, alert dates)
Acknowledge
Agree
Interim-Report/Cancel/New-Promise
Report-Completion
Satisfaction
Automation ofform fieldsalerts, remindersstatus information
Customer Producer
Request Agree
Satisfaction CompleteFlores et al 88
Dewan 90
Action Workflow
Status By Candidate Workflow Step
Manage Review
Director Manager
Director Manager
2
Schedule Interview
1 43
Director Manager
Declare Assessment
98
10 7
Manager Technical Directors
Submit Evaluation Form
56
Medina Mora ‘92
Dewan 91
ATOMICMAIL: Computational Mail
Data Program
Mail Receiver
display/animate graphics gather data and mail
Lisp-based PL Single Directory Accessed File Creation Limited Mail Messages Limited
Borenstein ‘92
Dewan 92
File++
• Talk++• Mail++• File++• Mail + File• Talk + Mail• Talk + File• Talk + Mail + File
Dewan 93
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
• Local area network
Dewan 94
Application-level Support• Disconnected access and merging of
– Calendars– Address book– Word– Powerpoint– Not Excel.
Dewan 95
rep. schedule
Lotus Notes: P2P Database Replication
“Replica” “Replica” source determines
destination determines
read access delete replication old data replication replication schedule
write access type replicationrecord replication ACL rep.rep. param. rep. immediate rep.
Table & record-based merging
Dewan 96
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 97
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
• Concurrent editing of named range automatically creates versions
Dewan 98
Mail + File
• Talk++• Mail++• File++• Mail + File• Talk + Mail• Talk + File• Talk + Mail + File
Dewan 99
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 100
News
• Like file, logically centralized information shared among multiple users.
• As in mail, users view/modify information by receiving/sending/responding to messages.
Dewan 101
Message M
Message 1
Message 2
Send Receive
User 2 User 2
User 1
User N
User 1
User N
News: Shared Mailboxes
Dewan 102
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 103
News: Scaleable Architecture
News Client
News Client
News Client
eventual delivery of immutable messages in possibly different order
post newsNews Server
News Server
News Server
News Server
exchange news
read news
Dewan 104
Message/News Filtering
• Agent-based– Newsgroup– Discussion Thread– Urgent Message– Sender Cost– Contents of Messages
(Data Mining)
• Rating-based– Moderator– Known Reviewers– Anonymous Similar
Reviewers
Dewan 105
Group Lens: Aggregate-based Filtering
• Multiple (arbitrary) people rate message• Rating combined into one aggregate number specific to reader• 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– -------------------------------------- + Amean– Sum (I = 1 to n) CABi
Dewan 106
News: Scaleable Architecture
News Client
News Client
News Client
How should this architecture be modified?
post newsNews Server
News Server
News Server
News Server
exchange news
read news
Dewan 107
Group Lens Architecture
News Client
News Server
post news read news
Better Bit Bureau
send rating
post rating
Modified News Client get rating
read rating
Dewan 108
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 109
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 110
Adding Filters
News Client
News Server
post news read news
Better Bit Bureau
send rating
post rating
Modified News Client get rating
read rating
Filterbot (Rating Agent)
read news
send rating
Only filterbots agreeing with user
used in ratings!
Dewan 111
Adding FiltersSarwar, Konstan et al 98
Dewan 112
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 113
Experiments
NoFilterbot
Spell Include Length
general 40, 69 43, 67 46, 70 44, 67
perl.misc 7, 65 42, 74 13, 64 13, 68
linux.announce 14, 66 46, 68 20, 61 48, 70
food.recipes 22, 61 71, 66 27, 66 42, 56
rec.humor 15, 46 50, 80 50, 72 16, 71
Coverage, Decision Making Accuracy
Dewan 114
Experiment Conclusions• Net.general
– Filters hardly helped
• Perl.misc– Spell helps a lot – Others help somewhat
• Linux.Announce– Length and spell help
• Recipes– Spell checking helps
• Humor– All factors but length
help
• Spell helps • Included messages
– Must be right amount
• Length useful in announcements
Dewan 115
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 116
POLITeam: Shared Workflow Documents
• Workflow– Structured mailing of documents.
• Breaking workflow– Received document can be shared with others
Dewan 117
PREP: Zero-Cost HyperlinksMain text Alice’s
commentsBenu’s comments
Chou’s comments
Para 1
Para 2
Dewan 118
Quilt: Writeable Typed Hypermedia
Revisions Suggestions Public comments Private messages Other
Document
Creation time
Creator
LoggingMachine Level (Insert-Char) User-Level (Reorganized Section 2)
RolesReader < Commenter < Co-Author
TriggersAlert significant changes
Colab StylesAuthor modifies owned section Co-author modifies all Designated editor modifies all
Artifact = Document + Colab. Info.
Fish. Kraut et al ‘88
In SharePoint now
Dewan 119
Annotation Granularity
• Whole document– Links to threaded
discussion about it.
– Good for making broad comments
• preferred by readers
– Directly transferred from hard copies
• Parts of document – 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.
(Brush, Bargeron et al.)
Dewan 120
Office 2000 Variable Granularity Annotations
(Cadiz, Gupta et al. 2000)
Dewan 121
Office 2000 Study
• Specification Drafts rather than Completed Documents
• Ten month period.• 20 annotations per
person.• Large fraction stopped
after first annotation– Orphan annotations
losing context a reason
• 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 subscription(Cadiz, Gupta et al. 2000)
Dewan 122
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– Neuwirth, Chandok 92
Brush, Bargeron et al 2001
Dewan 123
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
shared artifact
Dewan 124
Automatic Notifications
• Content not given
• Changer does not know if manual email needed
The following change(s) happened to the document http://product/overview/index.htm:
Event: Discussion items were inserted or modified in the document
By: rsmith Time: 7/28/99 11:01:04 AM Event: Discussion items were inserted
or modified in the document By: ajones Time: 7/28/99 12:09:27 PM
Click here to stop receiving this notification.
Dewan 125
Descriptive Notifications
• Actual comment given.
• Link to thread.
• Commenter knows subscriptions.
This is an automatic notification. More information... Click here to update your notification settings. The changes that just occurred are: On http://server/Notify.htm
colinb added a reply to a comment by duncanbb on 9/12/2001 3:20 PM
Dewan 126
Mercury: Automatic In-Place Notification
module A
export T
type T = char
User 1
Module B
import T
v: T = ‘a’
User 2
Edit T Asynchronous Error notification
Buffered Notifications
module A
export T
type T = String
Dewan 127
Subscription Mechanism
(Cadiz, Gupta et al. 2000)
Dewan 128
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 129
GroupDesk: Automatic Customizable Awareness Notification
Relations: Editor Events: Modification Interested Users: Alice, Benu
Relation Classes Object Classes Event Classes
WorksOn
Document
Modification
Editor
Object
Comment Added
can establish can raise
Interest Context
Dewan 130
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
• Example 2:– Object Class:
CirculationDocument
– Interest Context• Relation: HasProcessed
• Event: ChangesStation
• Users: Chou, Dimitri
• Example 2:– Object Class: Document
– Interest Context• Relation: *
• Event: Created
• Users: Enrique
– Inherited by CirculationDocument
Dewan 131
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 132
Side Show
(a) Subscribe by dragging ticket to Sideshow (Cadiz, Venolia et al. 02)
Dewan 133
Side Show
(b) Ticket displays number of annotations and replies. The tooltip window shows details when a user mouses over the ticket
(Cadiz, Venolia et al. 02)
Dewan 134
SideShow & 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 135
Side Show: Person
Aawareness
(Cadiz, Venolia et al. 02)
Dewan 136
Dewan 137
Dewan 138
Dewan 139
Dewan 140
Dewan 141
Talk + File
Talk++
Mail++
File++
Talk + File
Talk + Mail
Mail + File
Talk + Mail + File
Dewan 142
RTCAL: Real-Time Artifact Sharing
Application Commands
Regular User Chair
Conference Control Commands
join, leave get floor, release floor, terminate
Application Commands
Proposal: 10amVote: Yes
Proposal: 10amVote: No
Public Appts
Private Appts
Public Appts
Public Appts
Public Appts
Topic, Participants Chair, Controller
Topic, Participants Chair, Controller
Awareness
Dewan 143
Scroll Wars
• User scrolling to see some pvt appointment causes “scroll wars”
Dewan 144
GROVE: Access-Controlled Views
Outline Title 1. Readable and writeable item 1.1 Also readable and writeable *.Shared readable and writeable * .* Shared readable
User 2 User 3 User 4
Outline Title 1.Readable and writeable item 1.1 Also readable and writeable 1.2 Another public item
*.* Different shared item
User 1 User 3 User 4
User 1 User 2
Independent ScrollingIncremental SharingNo Concurrency ControlUser and State Awareness Fine-grained Access Control
public, shared, private
read, write rights
Dewan 145
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– Brainstorming – add items (ideas) to shared window
– Organizing – collect ideas into alternatives
– Evaluation – discuss and delete alternatives
– Analogous to SEPIA process model.
Dewan 146
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/NetMeeting
• Full mediation– Moderator passes pen
– Conference starter is moderator
Dewan 147
Interactive Lock Probelms
• Overhead in locking & unlocking– If explicit commands needed– GroupDraw – selecting/unselecting
lock/unlock
• May forget to unlock
Dewan 148
Central Host
Host 1 Host 2
CES: Delayed Commitment & Tickle Locks
Document Root
Text Node Owner User 1
Text Node Owner User 2
Distributed Document Nodes
Implicit Commit Del/CR to unlock items
Tickle Locks (Timed out)
Dewan 149
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 150
GroupDraw: Virtual Gestures & Optimistic Locks
User 2
Implicit Locking/UnlockingOptimistic Locking
Fine-grained CC & ACUncoupled Scrollbars & PalettesCoupled Graphical Objects
User 1
Multiuser Scrollbar & Gestalt Viewer
Dewan 151
Independent Drawing Modes
• GroupDraw 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 152
Pebbles: Single-Display Groupware
*
+
TelepointerUser Identifier
Drawing Mode
Dewan 153
Ensemble
• GroupDraw 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 154
Talk + Mail + File
• Talk++• Mail++• File++• Talk + Mail• Talk + File• Mail + File• Talk + Mail + File
Dewan 155
IRI: Distance Learning Environment
Figure available at http://www.cs.odu.edu/~tele/iri.