Collaboration Systems

Slides:



Advertisements
Similar presentations
Intisar O. Hussien Faculty of Computer Studies Arab Open University
Advertisements

Database Architectures and the Web
Integrating Educational Technology into the Curriculum
Dewan290-F991 Taxonomies of Collaborative Applications Prasun Dewan Department of Computer Science University of North Carolina CB 3175 Sitterson Hall.
0 General information Rate of acceptance 37% Papers from 15 Countries and 5 Geographical Areas –North America 5 –South America 2 –Europe 20 –Asia 2 –Australia.
Saul Greenberg Computer Supported Cooperative Work Saul Greenberg Professor Department of Computer Science University of Calgary.
1 Discussion of AIDS Collaboratory Prasun Dewan UNC Chapel Hill/Microsoft.
Chapter 1: Overview of Workflow Management Dr. Shiyong Lu Department of Computer Science Wayne State University.
Collaborative Information Systems for Student Projects Chapter Extension 2.
Chapter 9: Moving to Design
SOFTWARE.
Chapter 9 Elements of Systems Design
© Drexel University Software Engineering Research Group (SERG) 1 Based on the paper by Philippe Kruchten from Rational Software.
Computer System Architectures Computer System Software
CSCW & Groupware Computer Supported Cooperative Work 490 F Autumn 2006.
Operating Systems CS3502 Fall 2014 Dr. Jose M. Garrido
Computer Supported Cooperative Work 440 Autumn 2008
Management Information Systems Foundations of Information Systems Ismiarta Aknuranda Informatika UB.
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
Chapter 1: Overview of Workflow Management Dr. Shiyong Lu Department of Computer Science Wayne State University.
CHAPTER TEN AUTHORING.
Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct.
INF5200/TOOL5100: CSCW/L Issues in CSCW and groupware Lecture 1, Issues in CSCW and Groupware: Anders Mørch and Sisse Finken INF5200/TOOL 5100,
Workshop on Future Learning Landscapes: Towards the Convergence of Pervasive and Contextual computing, Global Social Media and Semantic Web in Technology.
Advanced Principles of Operating Systems (CE-403).
EDUCAUSE 2005 Annual Conference October 19, 2005.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
DISTRIBUTED COMPUTING. Computing? Computing is usually defined as the activity of using and improving computer technology, computer hardware and software.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
TOOL5100: CSCL Issues in CSCW and groupware A. Mørch, Issues in CSCW and Groupware: Anders Mørch TOOL 5100,
CIS/SUSL1 Fundamentals of DBMS S.V. Priyan Head/Department of Computing & Information Systems.
Scheduling Interactive Tasks in the Grid-based Systems M. Okoń, M. Lawenda, N. Meyer, D. Stokłosa, T. Rajtar, D. Kaliszan, M. Stroiński TERENA Networking.
Team working in distributed environments M253 Communicating, Cooperating & Collaborating on Line Faculty of Computer Studies Arab Open University Kuwait.
Application Software System Software.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Presented by: George Elias MULTISITE COLLABORATION TOOLS.
Building Systems for Today’s Dynamic Networked Environments A Methodology for Building Sustainable Enterprises in Dynamic Environments through knowledge.
처음 페이지로 이동 Groupware and Computer Supported Cooperative Work n Clarence Ellis and Jacques Wainer n 발표자 : 임산공학과 김 훈.
9 Systems Analysis and Design in a Changing World, Fifth Edition.
AUTHOR PRADEEP KUMAR B.tech 1 st year CSE branch Gnyana saraswati college of eng. & technology Dharmaram(b)
Groupware Chapter 13 Groupware C.A. Ellis, S.J. Gibbs, G.L. Rein Michael Rounding.
Chapter 1 Characterization of Distributed Systems
COMPSCI 110 Operating Systems
How to Think about Today’s Readings
Chapter 1: Introduction
Chapter 2: Database System Concepts and Architecture - Outline
2. OPERATING SYSTEM 2.1 Operating System Function
Group Decision Support Systems
The Open Grid Service Architecture (OGSA) Standard for Grid Computing
Computer Software Lecture 5.
Operating Systems (CS 340 D)
Design and realization of Payload Operation and Application system of China’s Space Station Wang HongFei 首页.
Chapter 2: System Structures
Ubiquitous Computing and Augmented Realities
Chapter 18 MobileApp Design
The Impact of Cloud Computing to Technology-Based Companies
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Collaboration Systems
Database Management System (DBMS)
Advanced Operating Systems
Introduce yourself Presented by
Language Processors Application Domain – ideas concerning the behavior of a software. Execution Domain – Ideas implemented in Computer System. Semantic.
Operating Systems : Overview
Operating Systems : Overview
Collaboration Frequently people need to cooperate Two key ways
Operating Systems : Overview
Computer Supported Cooperative Work
Groupware systems Meeting and decision support system
Materials prepared by Dhimas Ruswanto, BMm
Chapter-1 Computer is an advanced electronic device that takes raw data as an input from the user and processes it under the control of a set of instructions.
Presentation transcript:

Collaboration Systems 11/9/2018 Collaboration Systems 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 11/9/2018 290-63:Overview

Definition Oxford: Work jointly esp at literary or artistic production Malone: helps people work together more effectively Lynch et al: makes users aware they are part of a group Wells: software and hardware for shared interactive environment Ellis: supports groups engaged in a common task and provides an interface to shared environment Peter & Johnson-Lenz: computer-mediated culture, intentional group processes plus supporting software Johansen: specialized computer aids for collaborative work groups Winograd: state of mind 11/9/2018 290-63:Overview

Potentially Real-Time Definition Collaborative Application Same output? Symmetric? N-User? I/O I/O Coupling User 2 User 1 Potentially Real-Time 11/9/2018 290-63:Overview

Traditional Collaborative Applications File Mail Talk send User 2 receive User 1 hi hello User 2 User 1 save User 1 User 2 load 11/9/2018 290-63:Overview

Benefits: Towards Being There Face-to-Face Interaction Computer-Supported Interaction Network 11/9/2018 290-63:Overview

Gesture Cam: Remote Surrogate 11/9/2018 290-63:Overview

Benefits: Beyond Being There Face-to-Face Hollan & Stornetta ‘92 Interaction Computer-Supported Interaction Network 11/9/2018 290-63:Overview

Action Workflow Director Manager 2 Schedule Interview Status By Candidate Workflow Step 3 1 4 Manage Review Manager Director 7 10 Manager Technical Directors Submit Evaluation Form 5 6 Director Manager Declare Assessment 9 8 11/9/2018 290-63:Overview

Combining Both Goals? 11/9/2018 290-63:Overview

View controls manipulated concurrently Phantom controls associated with concurrency and access control View Divergence 11/9/2018 290-63:Overview

Collaboration vs. Virtual Environments Shared Whiteboard Nanomanipulator Remote VE Collaborative Applications VE Immersive VE Telepresence Colab. Nanomanipulator Asynchronous/ Face-to-face Collaboration 11/9/2018 290-63:Overview

Collaboration vs. Real-Time & Distributed Apps. Factoring Prime Numbers Audio/Video Conferencing Multi-Mouse Whiteboard Distributed Applications Real-Time Applications Collaborative Applications Shared Whiteboard Colab VE Lotus Notes Embedded Systems 11/9/2018 290-63:Overview

Collaboration vs. Mobile Apps. Disconnected Shared Editing with Syncing Disconnected Editing with Syncing Collaborative Applications Mobile Applications Connected Shared Interaction Connected Interaction 11/9/2018 290-63:Overview

Relationship with Object-Oriented and User Interface- Technology Interactive Applications Collaborative Applications O-O Applications Beans Model-View-Controller-Coupler, Jitter Manager, ... Collaborative Beans Model-View-Controller 11/9/2018 290-63:Overview

Traditional System Aspects Applications Existing Shared Screen Interoperability FC vs. CC Extensibility/Composability Applications Telepointer Jitter Performance/Resource Management Functionality/Abstraction Coupling System Support 11/9/2018 290-63:Overview

Views of Collaboration Systems Ensure actual needs met. Conceptual depth, avoid duplication. Build on existing knowledge. See integrated sets of features Problems Issues Disciplines Systems : Applications and Infrastructures 11/9/2018 290-63:Overview

Problems: Application Areas Business Management National Collaboratory Software Engineering Engineering/Design Writing Decision making, business processes, monitor state. Connected labs. Team development Just in time VR-based Distributed co-authoring. 11/9/2018 290-63:Overview

Problems: Application Areas Education Medicine Air Traffic Control Command and Control Games/Casual Interaction Any complex task! Distance presentation, remote lab., colab projects Distance, sharing, workflow Coordinate controllers Coordination Sharing of information/actions Is collaborative 11/9/2018 290-63:Overview

Generic Tasks Social Interaction Information Exchange Presentation Consulting Comment/Discuss Compose Artifact 11/9/2018 290-63:Overview

Generic Tasks: Product Life Cycle Design Implementation Debugging/Testing Inspection/Review 11/9/2018 290-63:Overview

Specific Experimental Tasks Annotate/discuss research article/software specs/video Present lecture to remote and local audience Rank job candidates Choose videos to rent, take on road trip Get status report on action items and feedback from each participant Choose name for new game Search for shopping list online 11/9/2018 290-63:Overview

Views of Collaboration Systems Problems Issues Disciplines Systems: Applications and Infrastructures 11/9/2018 290-63:Overview

Issues: Semantics Session Management: How do distributed users create, destroy, join, and leave collaborative sessions? Single-User Interface: What are the application semantics if there is a single user in the session? Coupling: what feedback does a user receive in response to the input of another user? Access Control: How do we ensure that users do not execute unauthorized commands? Concurrency Control: How do we ensure that concurrent users do not enter inconsistent commands? 11/9/2018 290-63:Overview

Issues: Semantics (Contd.) Process Control: How do we ensure that users follow prescribed group processes? Merging: How do we merge concurrent commands entered by different users? Undo/Redo: What are the semantics of undo/redo in a collaborative session? Awareness: How are users made aware of ``out of band'' activities of their collaborator? 11/9/2018 290-63:Overview

Issues: Implementation Objects: What kind of objects are composed in a collaborative application? Collaboration Awareness: Which of these objects are collaboration aware and how are these objects integrated with existing, collaboration-unaware objects? Layers: How are these objects arranged in layers? Concurrency: How is the application decomposed into concurrent threads? Distribution: How are the application objects placed in different address spaces and hosts? 11/9/2018 290-63:Overview

Issues: Implementation (Contd.) Replication/Migration: Which of these objects are centralized and which are replicated? Which of the centralized objects can migrate? Display Consistency: How to ensure actions are executed in the same order on computers that share them? Real-Time Support: What kind of services are provided to ensure real-time interaction with tolerable jitter and latency? 11/9/2018 290-63:Overview

Views of Collaboration Systems Problems Issues Disciplines Systems: Applications and Infrastructures 11/9/2018 290-63:Overview

Computer Science Disciplines Operating Systems Database Management Systems Programming Languages User Interface Systems Software Engineering Distributed file, memory, scheduling, “OS-based” IM Concurrency Control, Recovery Shared object constructs I/O distribution of window systems, toolkits Application area, process control, patterns 11/9/2018 290-63:Overview

Views of Collaboration Systems Problems Issues Disciplines Systems: Applications and Infrastructures 11/9/2018 290-63:Overview

Systems: Applications RTCALendering Cognoter whiteboard CES (Transaction-based Collaborative Editing System) Grove Outline Editor Information Lens Typed Email Coordinator Speech-Act Workflow Quilt Editor Annotations IBIS Discussions Video Walls Hydra GroupDraw optimistic CC PREP Diff-based Editor MUDs (Multiuser Dungeons) DIVE (Distributed Interactive Virtual Environment)/ MASSIVE MIT (Sarin & Greif) Xerox (Stefik et al) MIT (Liskov) MCC (Ellis) MIT (Malone) Stanford (Winograd) Bellcore (Leland) Xerox (Abel) U. Toronto (Buxton) U. Calgary (Greenberg) CMU (Neuwirth) Xerox (Curtis) Sweden (Fahlen)/ Nottingham (Benford) 11/9/2018 290-63:Overview

Systems: Infrastructures NLS (Engelbart ’68) Colab (Stefik ’85) VConf (Lantz ‘86) Rapport (Ahuja ’89) XTV (Abdel-Wahab, Jeffay & Feit ‘91) Rendezvous (Patterson ‘90) Suite (Dewan & Choudhary ‘92) TeamWorkstation (Ishii ’92) Weasel (Graham ’95) Habanero (Chabert et al ‘ 98) JCE (Abdel-Wahab ‘99) Disciple (Marsic ‘01) Post Xerox Xerox Stanford Bell Labs UNC/ODU Bellcore Purdue Japan Queens U. Illinois ODU Rutgers 11/9/2018 290-63:Overview

Systems: Products VNC (Li, Stafford-Fraser, Hopper ’01) NetMeeting Groove Advanced Reality LiveMeeting (Pay by minute service model) Webex (service model) ATT Research Microsoft 11/9/2018 290-63:Overview

Database Transactions Multiple Views Coupling Issue Cognoter Application WYSIWIS Interaction Database Transactions Discipline Infrastructure App. Area Task NetMeeting Software Engineering Design 11/9/2018 290-63:Overview

Course Goals State-of-the-art Project Applications Infrastructure Shared Word, Browser Infrastructure Groove, Shared Objects Project Writing Integrate with 291 Programming Integrate with 243/RAship Presentation Research 11/9/2018 290-63:Overview

Projects Infrastructure-based Application-/usage- based 11/9/2018 290-63:Overview

Infrastructure-based Replication vs. centralization Existing system can change it dynamically. Hypothesis: Transition to centralized when conference gets less interactive and larger Dynamic policies for transitions Formal performance model Shared layer VNC and NetMeeting share different user-interface layers Benefits of different sharing different layers. Can we dynamically change shared layer? Dynamic policies, performance model 11/9/2018 290-63:Overview

Infrastructure-based Scheduling Feedback vs. Feedthrough processing Give sufficient time to both using proportional scheduling. Energy-aware collaboration Energy dissipation a function of amount and rate of information communication Can study and adjust the coupling (send summary information in batches) 11/9/2018 290-63:Overview

Infrastructure-based Locking Many locking schemes Lock whole spreadsheet vs. individual cell. Provide one comprehensive mechanism. Partly designed but not implemented. Lock-free Consistency management Locking ensures displays are consistent – no race conditions. Consistency without locks – operation transformation Called optimistic CC - misnomer 11/9/2018 290-63:Overview

Infrastructure-based Context-specific presence Can synchronously monitor idle time. Can synchronously monitor every input in shared apps. Synchronously summarize application-specific information E.g. whose mail are you reading? Access control Needed because we collaborate But it is a pain Let us collaborate on setting access control. 11/9/2018 290-63:Overview

Application-based Qual scheduler TA/RA Matcher Automatic did not work. Semi-automatic, collaborative. Students enter courses and time constraints Faculty members enter expertise and time constraints Schedulers form committees and assign times based. System checks qual constraints met. TA/RA Matcher Students and faculty enter preferences. Administrators can see all data. Students and faculty can see filtered data. E.g. one on one matches. 11/9/2018 290-63:Overview

11/9/2018 290-63:Overview

11/9/2018 290-63:Overview

11/9/2018 290-63:Overview

11/9/2018 290-63:Overview

11/9/2018 290-63:Overview