Component Description CMU Note-Taker Tools Human Computer Interaction Institute Carnegie Mellon University Prepared by: Bill Scherlis <scherlis@cs.cmu.edu> March 26, 1999 1 1 - Overview Note-Taker tools will: Support structured synchronous and asynchronous collaborative note-taking by multiple people. Directly integrate with presentation tools (PowerPoint), email (IMAP-based systems), shared file areas, sensor inputs, etc. Provide a range of asynchronous collaborative services: • • • • • Information awareness and update Messaging and annotation Task-specific shared information structures Structural differencing Coordination and concurrency control Use multimedia inputs for annotation, messaging, and control • Point, speak, request The Note-Taker technology baseline was initially developed in the CSpace project in the ITO/IC&V program. 2 2 - Architecture Overview Note-Taker builds on two ideas: Assets MM designator PowerPoint Client Hosts Clientside controls & models Email Task agenda COA table MM designator 3 Fabric: Representation for organizing collaborative information and linking it with external user-app objects. Fine-grain versioning Collaborative services Persistable Situated Events: Event architecture for linking object versions and replicas, and for maintaining consistency and awareness. Aggregation and filtering Logging and checkpoints Serv Server Email PowerPoint Server(s) Clientside controls & models Clientside controls & models 3 - Component Description Asset — An information source/sink. • Examples: MS Office tools, task-specific note taking tools, email archives, shared file areas, sensor information streams, etc. • Generate situated events as state changes (e.g., in response to direct interaction by users) • Respond to request events from Note-Taker. Client-Host — Maintain fabric models • Maintain local shadows/replicas of shared collaborative information. • Provide user-level interaction for Note-Taker services. • Provide view-maintenance services for visualization of models. Server — Multicase event dispatch • Failure-robust 4 4 - External Interfaces Asset API Assets manage complex structured objects Common event hierarchy Messaging and annotation API Integrate with conventional IMAP-based email Integrate with multimedia sources/sinks Other message viewing mechanisms (e.g., mapsituated) Model API Interact with versioned fabric model • Change, update, request, administrative, etc. 5 Event API Transmission / wrapping beans-based events Event aggregation and filtering 5 - Existing Software “Bridges” Part 1 (Existing) - Assets include conventional commercial tools (MS Office, NTFS). Part 2 (Functionality) - Asynchronous collaborative services for single-user commercial tools. Objects with memory of past states. Part 3 (Protocol) - An event-based interaction using sites within assets to locate updates/changes and requests. Sites are named hierarchically (relative or absolute or with tags). 6 6 - Information Flow Part 1 (with other CPOF components) 7 LEIF: We expect that NoteTaker will interact directly with both LEIF Infobuses. We also intend to experiment with replacing the LEIF display model with a more semantically-rich model. MultiModal: We will use multimodal inputs both to situate messages/annotations/comma nds in the information space and to provide their contents. Situating enables terseness, prioritization, structural browsing, etc. Part 2 (inputs) Inputs are in the Note-Taker event format. The hierarchy of Note-Taker events can evolve according to needs. Part 3 (outputs) Outputs can be either NoteTaker events or views of model structures. The API to the model structure can be evolved according to the needs of visualization components. 7 - Plug-n-play Part 1 (interacting with other CPOF components) Initial: CMU multi-modal components Potentially: • Viewers: Visualization tools, directly or via LEIF. • Assets: CPOF document types, directly or via LEIF. Parts 2, 3 (similarities and complementarities) Note-Taker and LEIF: LEIF handles protocols and APIs in a way that can support Note-Taker. Note-Taker provides a wide range of services not present in LEIF: • Collaborative services. • Messaging and annotation. • Structural differencing, versioning, and history. • Semantically rich models. • Persistence and name mgt. • Distributed event processing 8 8 - Operating Environments and COTS Component Name Asset Required Hardware Any Java platform Operating System Language N/A Java Required COTS none Client Host Win NT device Windows NT Java Sun Java SDK. Win NT. Server Win NT device Windows NT Java Sun Java SDK. Win NT. Asset: PowerPoint Win NT device Windows NT MS Java & Sun Java Win NT, Office97, J++, Sun Java SDK Asset: Win NTFS Win NT device Windows NT C++, MS Java, Sun Java Win NT, Vis C++, J++, Sun Java SDK Asset: IMAP email Win NT device Windows NT Java Sun Java SDK Note: This applies to current and evolving Note-Taker components, not new multimedia components to be developed in CPOF/CMU or interfaces with components from other CPOF projects. 9 9 - Hardware Platform Requirement Windows NT device 10 256 MB ram, 100MB disk (estimate, not including Office97)