ScholarQuill logoScholarQuillUniversity Notes
My Semester
Explore Notes
Past Papers12 New
Video CoursesNew
Search
Settings
Study Tools
GPA/CGPA Calculator
Schedule & To-Do
Student Portal
Contact
Contact
ScholarQuill logo
My Semester
Explore Notes
Past Papers12 New
Video CoursesNew
Search
Settings
GPA/CGPA Calculator
Schedule & To-Do
Student Portal
Contact
ScholarQuill logoScholarQuillUniversity Notes
Study PortalCOMP3145Synchronous Groupware
Ctrl + K
Login
Explore
Search
Semester
Papers
CGPA
    COMP3145

    HCI & Computer Graphics

    Progress0 / 73 done
    Topics73
    1Input-output channels2Human memory3Thinking, Reasoning, Problem solving4Emotions and Individual differences5Psychology and design of interacting systems
    6Text entry devices7Positioning, Pointing, and drawing devices8Display devices9Devices for virtual reality and 3D interaction10Physical controls, Sensors and special devices11Paper printing and scanning12Memory, Processing and networks
    13Models of interaction14Frameworks and HCI15Ergonomics16Interaction styles17Elements of the WIMP interfaces18Interactivity and Context of interaction
    19Introduction20Paradigms for interaction
    21What is design22Process of design and User focus23Navigation design24Screen design and layout25Iteration and prototyping
    26Software life cycle27Usability engineering28Iterative design and prototyping29Design rationale30Design rules and Guidelines31Golden rules and heuristics32HCI patterns33Evaluation techniques and methods34Task analysis35Universal design36User support systems37Computer Supported Cooperative Work38Groupware systems39Implementation of synchronous groupware40Ubiquitous computing41History of Computer Graphics42Graphics architectures and software
    43Pinhole camera, Human vision, Synthetic camera44Modeling vs. rendering45OpenGL Architecture46Displaying simple two-dimensional geometric objects47Positioning systems and windowed environment48Color perception and models49RGB, CMY, HLS color models50Color transformations
    51RGB and indexed color
    52Network environment and client-server computing
    53event, sample and request input54Using callbacks and picking
    55translation, rotation, scaling, shear56Homogeneous coordinates and concatenation57Current transformation and matrix stacks
    58Classical viewing59Specifying views in 3D60Affine transformation in 3D61Projective transformations62Ray tracing
    63Illumination and surface modeling64Phong shading model65Polygon shading
    66Line drawing via Bresenham's algorithm67Clipping and polygonal fill68BitBlt operations69Hidden surface removal (z buffer)
    70Buffers71Reading and writing bitmaps and pixel maps72Texture mapping73Compositing
    3 min read
    Topic 39 of 73
    Topic Study Note Illustration
    39

    Implementation of synchronous groupware

    Definition: Synchronous groupware refers to collaborative systems that allow multiple users to interact and work together in real-time , regardless of their physical location.

    1. What is Synchronous Groupware?

    Definition: Synchronous groupware refers to collaborative systems that allow multiple users to interact and work together in real-time, regardless of their physical location.

    Key Idea: All participants see updates instantly, and communication happens simultaneously, supporting tasks like brainstorming, design collaboration, or meetings.

    Examples: Google Docs (real-time editing), Zoom, Miro, Figma live collaboration.


    2. Goals of Synchronous Groupware Implementation

    • Provide real-time interaction between multiple users
    • Ensure consistency of shared data across all users’ views
    • Maintain low latency and responsiveness
    • Support awareness of other users’ activities (cursors, edits, presence)
    • Handle concurrent access and conflict resolution efficiently

    3. Key Features Needed in Synchronous Groupware

    1. Real-time communication: Audio, video, chat, or textual updates
    2. Shared workspace: Collaborative editing or visualization of documents, designs, or models
    3. User presence awareness: Indicators showing who is online and what they are doing
    4. Concurrency control: Mechanisms to prevent conflicts when multiple users modify the same data
    5. Version control / history: Track changes to allow undo or rollback
    6. Notification system: Inform users of updates or changes instantly

    4. Technical Considerations in Implementation

    A. Architecture Models

    1. Client-Server Architecture

      • Clients connect to a central server that manages updates and synchronization
      • Pros: Centralized control, easier conflict management
      • Cons: Server bottleneck can limit scalability
    2. Peer-to-Peer Architecture

      • Clients communicate directly and share updates without a central server
      • Pros: Reduces server load, scalable
      • Cons: More complex conflict resolution, network reliability issues
    3. Hybrid Architecture

      • Combines server for coordination with peer-to-peer communication for efficiency

    B. Synchronization Techniques

    • State Synchronization: All clients maintain the same system state, updated in real-time
    • Operational Transformation (OT): Changes from multiple users are transformed to maintain consistency (used in Google Docs)
    • Eventual Consistency: Updates propagate to all clients, and the system eventually reaches the same state

    C. Awareness Mechanisms

    • Presence awareness: Shows who is currently online
    • Activity awareness: Shows what other users are doing (typing, editing, moving objects)
    • History awareness: Logs of past actions for context and recovery

    D. Concurrency Control

    • Locking mechanisms: Users temporarily “lock” a resource while editing
    • Optimistic concurrency: Multiple edits allowed, conflicts resolved afterward
    • Operational transformation / CRDTs (Conflict-free Replicated Data Types): Ensure seamless concurrent editing

    5. Implementation Steps

    1. Requirement Analysis: Identify tasks requiring real-time collaboration
    2. Design Architecture: Choose client-server, peer-to-peer, or hybrid model
    3. Design Shared Workspace: Define shared objects, document structures, and views
    4. Implement Synchronization Mechanism: OT, CRDTs, or locking strategies
    5. Implement Awareness Features: Cursors, activity indicators, notifications
    6. Implement Communication Tools: Chat, voice, or video integration
    7. Testing and Optimization: Check latency, concurrency handling, and conflict resolution

    6. Examples of Synchronous Groupware Implementation

    • Google Docs / Sheets: Real-time document editing with OT-based synchronization
    • Figma: Collaborative design with live cursors and version control
    • Miro: Real-time collaborative whiteboard with multi-user editing
    • Slack Huddles / Zoom: Real-time communication and screen sharing

    Key Takeaways

    • Synchronous groupware enables real-time collaboration, requiring careful design of synchronization, concurrency, and awareness mechanisms.
    • Implementation involves choosing an appropriate architecture, handling concurrent edits, and providing awareness features.
    • Effective synchronous groupware improves productivity and coordination, especially for distributed teams.
    ← Previous topic 38
    Groupware systems
    Next topic 40 →
    Ubiquitous computing

    Past Papers

    Open this section to view and download past papers

    Click on Show Past Papers to load available exam papers.

    Reading Progress
    0%
    3mremaining
    499words
    Beginnerlevel
    On This Page

    No headings found

    Study Toolkit

    Subject Portal

    HCI & Computer Graphics