DE10000998B4 - Anmerkungsschicht zur synchronen Zusammenarbeit - Google Patents

Anmerkungsschicht zur synchronen Zusammenarbeit Download PDF

Info

Publication number
DE10000998B4
DE10000998B4 DE10000998A DE10000998A DE10000998B4 DE 10000998 B4 DE10000998 B4 DE 10000998B4 DE 10000998 A DE10000998 A DE 10000998A DE 10000998 A DE10000998 A DE 10000998A DE 10000998 B4 DE10000998 B4 DE 10000998B4
Authority
DE
Germany
Prior art keywords
workspace
annotation layer
mode
layer
real
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE10000998A
Other languages
English (en)
Other versions
DE10000998A1 (de
Inventor
Suresh Kumar
Pradeep Varma
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE10000998A1 publication Critical patent/DE10000998A1/de
Application granted granted Critical
Publication of DE10000998B4 publication Critical patent/DE10000998B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay

Abstract

Eine vom Arbeitsbereich unabhängige Benutzeroberfläche für ein System zur Echtzeit-Zusammenarbeit, implementiert auf Rechnern, die mit einem Netzwerk verbunden sind, wobei das um die Benutzeroberfläche erweiterte System zur Echtzeit-Zusammenarbeit weiterhin jeden Arbeitsbereich unterstützt, der bereits zuvor unterstützt wurde, und wobei die Benutzeroberfläche folgendes umfaßt:
Eine im System zur Echtzeit-Zusammenarbeit gemeinsam genutzte transparente Anmerkungsschicht, wobei die Anmerkungsschicht zwischen jedem Teilnehmer und dem gemeinsam genutzten Arbeitsbereich plaziert wird und die gemeinsam genutzte Anmerkungsschicht über dem Arbeitsbereich liegt, so daß der Arbeitsbereich für jeden Teilnehmer durch die transparente Anmerkungsschicht hindurch sichtbar wird,
Ein Mittel zur Auswahl und Änderung des Betriebsmodus während einer gemeinsamen Arbeitssitzung vom Diskussionsmodus in den Bearbeitungsmodus, wobei im Diskussionsmodus nur die Anmerkungsschicht direkt bearbeitet und/oder geändert wird, während im Bearbeitungsmodus nur der Arbeitsbereich direkt bearbeitet und/oder geändert wird und die gemeinsam genutzte transparente Anmerkungsschicht im Diskussionsmodus den Teilnehmern der Echtzeit-Arbeitssitzung die Möglichkeit bietet, den Arbeitsbereich wahlweise anzuzeigen und zu...

Description

  • Bereich der Erfindung
  • Die vorliegende Erfindung befaßt sich im allgemeinen mit der Zusammenarbeit durch mehrere Teilnehmer, die über ein Netzwerk miteinander verbunden sind und im besonderen mit der konsistenten Echtzeit-Zusammenarbeit, bei der jeder Datentyp von den Teilnehmern in einem gemeinsam genutzten Arbeitsbereich verwendet werden kann.
  • Hintergrund der Erfindung
  • Durch die Verbreitung von Internet und Intranets arbeiten immer mehr Menschen und Arbeitsteams an entfernten Standorten zusammen. Die Tools für die gemeinsame Zusammenarbeit können in asynchrone und synchrone Tools unterteilt werden. Bei Groupware, wie etwa Lotus Notes und Microsoft Exchange und Diskussionsforen in einem Netzwerk, in dem die Daten gemeinsam genutzt werden, handelt es sich um asynchrone Tools. Bei diesen Tools ist eine gleichzeitige Anwesenheit mehrerer Benutzer in der Umgebung nicht erforderlich, bzw. bringt keine weiteren Vorteile mit sich. Andererseits ermöglichen es neue Tools, wie etwa Chat, Whiteboards und weiter entwickelte Umgebungen, wie etwa SameTime, den Arbeitsgruppen eine simultane Interaktion. Diese Tools ermöglichen es Benutzern und Arbeitsteams, in einem gemeinsamen Arbeitsbereich zur gleichen Zeit synchron und in Echtzeit zu arbeiten. Änderungen im gemeinsam genutzten Arbeitsbereich werden für alle Teilnehmer umgehend sichtbar gemacht.
  • Derzeit sind die synchronen Tools relativ eingeschränkt, was die Datentypen betrifft, die in dem gemeinsamen Arbeitsbereich verwendet werden können. Der Arbeitsbereich für Chat-Programme besteht aus einer gemeinsamen Textdatei, die als Konversationsprotokoll dient. Beim Arbeitsbereich für Whiteboards handelt es sich um eine gemeinsam verwendete Bitmap. Wenn eine Gruppe beispielsweise eine Tabellenkalkulation in einer Diskussion mit Hilfe eines Whiteboards einfügen möchte, muß sie die Bitmap für die Tabellenkalkulation gemeinsam verwenden und lokale Kopien der Tabellenkalkulation manuell verändern, um die Tabellenkalkulation und die Darstellung der Tabellenkalkulation in einer gemeinsamen Diskussion im Whiteboard synchron zur Verfügung zu stellen. Seit kurzem ist es möglich, Arbeitsbereiche, wie etwa Tabellenkalkulationen in Echtzeit-Zusammenarbeit direkt zu ändern, wobei die Arbeitsbereiche automatisch synchron bleiben. Diese Mechanismen jedoch sind eher arbeitsbereichspezifisch und bieten keine generelle Methode zur Diskussion in beliebigen Arbeitsbereichen für eine Echtzeit-Zusammenarbeit.
  • US Patentschrift 5,761,419 beschreibt ein System von Computern, die miteinander verbunden sind. Auf einem Computer (Host) befindet sich eine Anwendung. Jeder Benutzer eines Computers kann Befehle auf der Anwendung des entfernten Host-Computers auszuführen und kann die Operationen von anderen Benutzern auf der Anwendung des Host-Computers auf seinem Bildschirm beobachten. Dies erfolgt dadurch, dass die Bildschirminhalte von der Anwendung auf alle Computer kopiert werden. Darüber hinaus kann jeder Benutzer auch Anmerkungen auf den Bildschirmen der anderen Computer machen. Dies erfolgt ebenfalls dadurch, dass die Anmerkungen auf alle Bildschirme der verbundenen Computer kopiert werden. Diese Methode ist jedoch arbeitsbereichspezifisch und bietet keine generelle Methode zur Diskussion in beliebigen Arbeitsbereichen für eine Echtzeit-Zusammenarbeit.
  • Zusammenfassung der Erfindung
  • Es ist deshalb Ziel der vorliegenden Erfindung, eine effektive Echtzeit-Zusammenarbeit zwischen entfernten Standorten zu bieten, in der beliebige Datentypen in einem gemeinsamen Arbeitsbereich konsistent genutzt werden können.
  • Gemäß dieser Erfindung wird eine Methode für die standardisierte Anzeige, Diskussion und Expertenänderung in allen Arten von Arbeitsbereichen und in Echtzeit-Arbeitssitzungen zur Verfügung gestellt. Die Methode umfaßt eine Benutzeroberfläche auf der Grundlage einer transparenten Anmerkungsschicht, die in einem beliebigen Echtzeit-System zur Zusammenarbeit integriert werden kann. Das daraus resultierende System zur Zusammenarbeit arbeitet weiterhin mit allen Arbeitsbereichen zusammen, mit denen es bereits zuvor zusammenarbeiten konnte. Der Unterschied ist nun, daß es nun von einer transparenten Hülle umgeben ist, genannt Anmerkungsschicht, über die die Teilnehmer ihren Arbeitsbereich anzeigen können.
  • Durch die Anzeige des Arbeitsbereichs über die transparente Hülle können Teilnehmer auf dieser Hülle Markierungen oder Anmerkungen für den Arbeitsbereich vornehmen. Dadurch wird der Arbeitsbereich selbst nicht verändert, da hierfür Fachkenntnisse über den Arbeitsbereich erforderlich sind. Die zulässigen Markierungen auf der Hülle können sehr umfangreich sein, in der Tat größer als die möglichen Änderungen in dem angezeigten Arbeitsbereich über der Hülle. Die Hülle beispielsweise kann das Markieren von Teilen einer Tabellen, das Schreiben einer Überschrift für eine Tabelle und das Schraffieren mehrerer Bereiche in einem gängigen Textdokument ermöglichen. Teilnehmer ohne Fachkenntnisse zu einem bestimmten Arbeitsbereich können an einer gemeinsamen Arbeitssitzung teilnehmen, indem sie einfach mit der Anmerkungsschicht arbeiten und anderen die Expertendetails zur Änderung des Arbeitsbereichs selbst überlassen.
  • Je nach Wunsch der Teilnehmer kann die Anmerkungsschicht mit dem darunterliegenden Arbeitsbereich synchronisiert werden, oder die Anmerkungsschicht kann unsynchronisiert bleiben. Wenn die Anmerkungsschicht synchronisiert wird, verursacht das Verschieben der Anmerkungsschicht ein verschieben des Arbeitsbereichs, und umgekehrt. Das Erweitern des Arbeitsbereichs durch Hinzufügen von Daten erweitert ebenfalls die Anmerkungsschicht in den entsprechenden Bereichen. Eine Verringerung des Arbeitsbereichs durch Löschen von Daten verkleinert ebenfalls die Anmerkungsschicht in den entsprechenden Bereichen, usw. wenn die Anmerkungsschicht nicht synchronisiert wird, bewirkt das Verschieben des Arbeitsbereichs kein Verschieben der Anmerkungsschicht, und eine Veränderung des Arbeitsbereichs bewirkt auch keine Veränderungen der Anmerkungsschicht. Bei einer asynchronen Ausrichtung zwischen der Anmerkungsschicht und des darunterliegenden Arbeitsbereichs kann die Anmerkungsschicht als statischer Filter dienen, durch den der Arbeitsbereich ganz oder teilweise angezeigt werden kann. Teilnehmer möchten die Anmerkungsschicht beispielsweise als unbewegliche Schiene mit fester Größe anzeigen, durch die sie den Arbeitsbereich sehen, wenn sie den Arbeitsbereich verschieben.
  • Jeder Teilnehmer kann sich dafür entscheiden, ob er mit der Anmerkungsschicht oder mit dem darunter liegenden Arbeitsbereich arbeiten möchte, indem er für sich einen Betriebsmodus festlegt. Im Diskussionsmodus kann ein Teilnehmer die Anmerkungsschicht markieren, gemeinsam genutzte Cursor bewegen und die Anzeige ändern, indem er sie durchblättert oder indem er zu einem anderen Bereich der Anmerkungsschicht wechselt. Je nach Wunsch des Teilnehmers kann der Arbeitsbereich durch die transparente Anmerkungsschicht hindurch sichtbar oder unsichtbar sein, abhängig vom ausgewählten Modus.
  • Ein Teilnehmer kann den gemeinsam genutzten Arbeitsbereich nicht ändern, solange er sich im Diskussionsmodus befindet. Der Bearbeitungsmodus bietet dem Teilnehmer eine Möglichkeit, Änderungen am Arbeitsbereich vorzunehmen. Der Bearbeitungsmodus setzt bei dem Teilnehmer arbeitsbereichspezifische Kenntnisse voraus, d.h. der Teilnehmer muß wissen, wie die einzelnen Arbeitsbereiche bearbeitet und/oder verändert werden können. Je nach Wunsch des Teilnehmers kann die darüber liegende Anmerkungsschicht im Bearbeitungsmodus sichtbar oder unsichtbar sein. Sowohl im Bearbeitungs- als auch im Diskussionsmodus können die transparente Anmerkungsschicht und der darunter liegende Arbeitsbereich synchronisiert oder nicht synchronisiert werden. Der Modus für den Teilnehmer kann entweder vom Teilnehmer allein und/oder auch von den anderen Teilnehmern ausgewählt und/oder geändert werden. Bei denjenigen Teilnehmern mit der Berechtigung zur Steuerung, Beschränkung und Änderung anderer Teilnehmer kann es sich eine Untergruppe der Teilnehmer an einer gemeinsamen Arbeitssitzung handeln. Die Untergruppe kann während der gemeinsamen Arbeitssitzung geändert werden. Die Kontrolle über den Modus eines Teilnehmers umfaßt auch die Kontrolle über den Lese/Schreibzugriff des Teilnehmers im gemeinsamen Arbeitsbereich. Jeder Teilnehmer im Bearbeitungsmodus hat im gemeinsamen Arbeitsbereich Schreibzugriff, während die anderen Teilnehmer im Diskussionsmodus zumeist nur über Lesezugriff verfügen.
  • Kurzbeschreibung der Zeichnungen
  • Die vorangegangenen und anderen Ziele, Aspekte und Vorteile der Erfindung werden leichter verständlich, wenn die folgende detaillierte Beschreibung eines bevorzugten Ausführungsbeispiels der Erfindung mit Bezug auf die Zeichnungen gegeben wird.
  • 1 ist eine Darstellung zweier Bildschirme zur Anzeige eines Beispiels für die Echtzeit-Zusammenarbeit, wobei zwei Clients im gleichen gemeinsam genutzten Arbeitsbereich synchronisiert werden, und wobei es sich in diesem Beispiel um eine Tabellenkalkulation handelt.
  • 2 ist die Darstellung einer Anmerkungsschicht entsprechend der vorliegenden Erfindung, wobei eine transparente, whiteboard-ähnliche Schicht den gemeinsam genutzten Arbeitsbereich bedeckt und darauf Anmerkungen, ein gemeinsam genutzter Cursor bewegt und andere Markierungen vorgenommen werden können.
  • 3A und 3B sind dementsprechend Darstellungen der Anmerkungsschichten im Diskussionsmodus und im Bearbeitungsmodus während einer gemeinsamen Arbeitssitzung entsprechend der vorliegenden Erfindung.
  • 4 ist ein Flußdiagramm zur Darstellung der Verarbeitungslogik für Benutzereingaben in einer Implementierung der Anmerkungsschicht entsprechend der vorliegenden Erfindung.
  • 5 ist ein Flußdiagramm zur Darstellung der Verarbeitungslogik serialisierter Änderungen und Aktualisierungen in einer Implementierung der Anmerkungsschicht entsprechend der vorliegenden Erfindung.
  • 6A und 6B sind dementsprechend Flußdiagramme zur Darstellung der Verarbeitungslogik für eine Modusänderung, basierend auf Benutzereingaben und die Verarbeitung einer Modusänderung basierend auf serialisierten Steuerungsänderungen in einer Implementierung der Eingabeschicht, entsprechend der vorliegenden Erfindung.
  • 7A und 7B sind entsprechend Flußdiagramme mit der Verarbeitungslogik zur Weiterleitung von Benutzereingabesegmenten an Empfänger und Verarbeitung von Änderungen durch Benutzereingaben in einer Implementierung der Eingabeschicht entsprechend der vorliegenden Erfindung.
  • Detaillierte Beschreibung eines bevorzugten Ausführungsbeispiels der Erfindung
  • Die Zeichnungen, und hier vor allem 1, zeigen zwei Bildschirme auf verschiedenen Clients, auf denen synchronisierte Anwendungen Daten aus dem gemeinsam genutzten Arbeitsbereich zeigen. Der Arbeitsbereich in dem dargestellten Beispiel ist eine Tabellenkalkulation. Es erscheint auf jedem Client die gleiche Anzeige, da die Anwendungen synchronisiert wurden. D.h., daß jedesmal, wenn Daten in einer Anwendung geändert oder bearbeitet wurden, die Daten in der Anwendung des anderen Client aktualisiert werden, damit der Teilnehmer bei der Zusammenarbeit immer über die gleichen Daten verfügen.
  • Die Erfindung stellt einen Mechanismus für eine konsistente Echtzeit-Umgebung zur Zusammenarbeit zur Verfügung, in der jeder Datentyp im gemeinsam genutzten Arbeitsbereich verwendet werden kann. In der vorliegenden Erfindung werden Benutzer mit dem System verbunden und arbeiten in einer gemeinsamen Arbeitssitzung und in einem gemeinsamen Arbeitsbereich, der auf jedem Rechner über ein Netzwerk angezeigt wird. Bei den Daten in einem gemeinsam genutzten Arbeitsbereich kann es sich um beliebige Daten handeln, beispielsweise eine Tabellenkalkulation, eine Abbildung, eine einfache Textdatei, eine Zeichnung, ein Projektplan, eine dreidimensionale Anzeige oder andere benutzerdefinierte Daten. Der Arbeitsbereich eines jeden Teilnehmers wird mit denen der anderen synchronisiert. Dies kann entweder über Peer-to-Peer-Messaging zwischen den Clients oder über einen oder mehrere Server stattfinden.
  • In den meisten Fällen zeigen alle synchronisierten Anwendungen die gleiche Anzeige an wie in 1. Es können jedoch auch synchronisierte Anwendungen vorkommen, bei denen die Anzeigen der verschiedenen Clients syntaktische Unterschiede aufweisen, auch wenn die zugrundeliegenden Daten die gleichen sind. Das kann nützlich sein, wenn die Hardware für Clients nicht die gleiche wäre oder wenn einige Informationen auf verschiedenen Clients bewußt zurückgehalten oder hinzugefügt oder in einem anderen Format angezeigt werden sollen.
  • Ein Teilnehmer in einer gemeinsamen Arbeitssitzung ist jederzeit in verschiedenen Aktivitätsmodi tätig, je nach verbundenem Arbeitsbereich. In einem Modus diskutiert ein Benutzer die Daten des gemeinsam genutzten Arbeitsbereichs mit anderen Benutzern. Dieser Modus umfaßt die Anzeige verschiedener Bereiche des Arbeitsbereichs, der explizite Hinweis auf einige Teile des Arbeitsbereichs, Markieren eines Teils des Arbeitsbereichs mit Hilfe eines Stifts oder eines anderen Zeichentools oder das Schreiben von Anmerkungen auf einem bestimmten Teil des Arbeitsbereichs. wenn es sich beispielsweise um eine Tabellenkalkulation handelt, möchte der Benutzer möglicherweise einen Zelleneintrag ändern, wenn es sich um die dreidimensionale Darstellung eines Raums handelt, möchte der Benutzer möglicherweise einen Stuhl an einen anderen Platz verschieben. Der Modus zum Bearbeiten des Arbeitsbereichs ist datenspezifisch, d.h. der Arbeitsbereich wird von der jeweiligen Anwendung selbst verarbeitet. Der Modus zur Diskussion im Arbeitsbereich kann gemeinsam verarbeitet werden, unabhängig von den zugrundeliegenden Daten oder Anwendungen.
  • 2 zeigt eine Anmerkungsschicht entsprechend der vorliegenden Erfindung zum Arbeiten im Diskussionsmodus in jedem synchronisierten Arbeitsbereich. Die Anmerkungsschicht erscheint als transparentes graphisches Objekt, das das gemeinsam genutzte Fenster bedeckt, das die synchronisierte Anwendung und die gemeinsamen Daten anzeigt. Im Diskussionsmodus erscheint es dem Benutzer so, als wäre die Anwendung von dieser transparenten Schicht bedeckt und alle Eingaben über die Maus, die Tastatur und andere Mittel ist davon betroffen. Die Anmerkungsschicht scheint auf jede Benutzereingabe, wie etwa über Maus oder Tastatur, die entsprechende Aktion zu generieren, wie etwa Bewegen des Cursors, Auswählen des Zeichentools, und Markieren eines Bereichs oder Plazieren eines Anmerkungstexts. Alle Anmerkungseffekte erscheinen auf der Anmerkungsschicht selbst, unabhängig von der darunterliegenden Anwendung. Um die darunterliegenden, gemeinsam genutzten Daten zu ändern, muß eine Benutzer im Bearbeitungsmodus arbeiten. In den Bearbeitungsmodus kann gewechselt werden, indem entsprechend dazu das Symbol, die Taste oder das grafische Objekt gewählt wird oder indem eine bestimmte vordefinierte Eingabe, wie etwa eine bestimmte Tastenkombination, eingegeben wird. Nach dem Wechsel in den Bearbeitungsmodus wird die Benutzereingabe direkt von der Anwendung verarbeitet. wenn es sich bei den gemeinsam genutzten Daten beispielsweise um eine Tabellenkalkulation handelt, arbeitet der Benutzer durch den Wechsel in den Bearbeitungsmodus mit der Anwendung zur Tabellenkalkulation, die sich unter der Anmerkungsschicht befunden hat. Die Anwendungen werden natürlich auf allen Clients über eine Realisation der Benutzereingaben oder mit Hilfe anderer Methoden synchronisiert, so daß bei der Bearbeitung der Daten durch einen Benutzer auf dem einen Client, die geänderten Daten auf allen Clients angezeigt werden. Die Anmerkungsschicht kann noch vorhanden sein und die von den verschiedenen Benutzern vorgenommenen Markierungen anzeigen, wobei sie sich allerdings für den Benutzer im Bearbeitungsmodus im Schlafmodus befindet.
  • Die Art des Moduswechsels wird in den 3A und 3B dargestellt. 3A zeigt den Diskussionsmodus an, in dem die Eingabe eines Benutzers beispielsweise über eine Maus 31 und eine Tastatur 32 aufgenommen und auf der transparenten Anmerkungsschicht 33 angezeigt wird. Die darunter liegende Anwendung 34 reagiert nicht auf die Cursorbewegungen und Anmerkungseingaben der verschiedenen Benutzer. Die Anmerkungsschicht 33 selbst wird mit dem Arbeitsbereich darunter synchronisiert, so daß die Markierungen sich entsprechend ändern, wenn die Anwendungsanzeige bewegt oder ihre Größe verändert wird, oder wenn die innere Anzeige verschoben wird. 3B zeigt den Bearbeitungsmodus, in dem die Eingaben des Benutzers über die Maus 31 oder die Tastatur 32 direkt in den darunterliegenden Arbeitsbereich 34 eingegeben werden, um die Daten zu bearbeiten.
  • Die Anmerkungsschicht und ihr beschriebenes Verhalten sind einfach eine Eigenschaft der Benutzeroberfläche des Echtzeit-Arbeitsbereichs zur gemeinsamen Nutzung. Die tatsächliche Implementierung kann auf verschiedene Art erreicht werden. Bei der Anmerkungsschicht kann es sich um ein reales graphisches Objekt im Fenstersystem handeln, mit dem die Benutzer arbeiten. Wenn es sich bei allen Anwendungen beispielsweise um Java Applets handelt, kann die Anmerkungsschicht eine leichtgewichtige Komponente zur Bedeckung des Applets sein. Oder die Anmerkungsschicht kann in jede einzelne Anwendung integriert werden, wobei jede Anwendung die Diskussions- und Bearbeitungsmodi entsprechend selbst verwaltet und die Markierungen im eigenen Fenster auf die erforderliche Art generiert. Eine andere Implementierung könnte das Betriebssystem selbst oder verschiedene Implementierungskombinationen nutzen.
  • Die gesamte, hier offengelegte Benutzeroberfläche kann in jedem Echtzeit-Arbeitsbereich erstellt werden. Jeder Echtzeit-Arbeitsbereich kann mit den folgenden Elementen angezeigt werden:
    • 1. Ein Mittel zum Generieren einer Reihe von Front-End-Prozessen (Clients) für jede gemeinsame Echtzeit- Arbeitssitzung, unterstützt von dem System. In jeder Sitzung bieten die Clients den Teilnehmern synchronen Zugriff auf den für die Sitzung genutzten gemeinsamen Arbeitsbereich. Die Client-Prozesse können auf der nicht gemeinschaftlich genutzten Softwareanwendung für den Einzelbenutzer ausgeführt werden, die normalerweise verwendet wird, um auf den Arbeitsbereich sequentiell, isoliert und nicht gemeinschaftlich zuzugreifen. Jeder Client ist in der Lage, einen oder mehrere verschiedene Arbeitsbereiche zu unterstützen. Das System zur Echtzeit-Zusammenarbeit ist in der Lage, mehr als eine Art von Client zu generieren. Damit bilden die verschiedenen Arten von Arbeitsbereichen, die vom System zur Zusammenarbeit unterstützt werden, eine Vereinigung aller Arbeitsbereichsarten, die von den verschiedenen, vom System generierten Clients unterstützt werden.
    • 2. Ein Mittel zum Generieren eines Serialisierungsmechanismus für jede Echtzeit-Arbeitssitzung, die vom System unterstützt wird. von jedem Client einer solchen gemeinsamen Arbeitssitzung nimmt der Serialisierungsmechanismus eine vom Client generierte Sequenz von Änderungen im Arbeitsbereich als Eingabe. Der Serialisierungsmechanismus stellt einen Strom aus serialisierten Änderungen im Arbeitsbereich allen Clients im Arbeitsbereich zur Verfügung, basierend auf den Sequenzen der Eingabeänderungen, die von den Clients erhalten wurden. Der serialisierte Änderungsstrom umfaßt ein Ineinandergreifen von Änderungssequenzen, die von den Clients gesendet wurden. Der Serialisierungsmechanismus kann auf einem Server, wie etwa einen zentralisierten Server, oder auf einem Peer-to-Peer-Messagingsystem basieren.
    • 3. Ein Mittel zum Generieren des Kommunikationsmechanismus für jede Echtzeit-Arbeitssitzung, unterstützt durch das System. Für jede Sitzung dieser Art verfügt der Client in der Sitzung über ein Mittel zur Übermittlung einer Änderungssequenz zum Serialisierungsmechanismus der Sitzung. Der Client verfügt außerdem über ein Mittel zum Empfang serialisierter Änderungen vom Serialisierungsmechanismus.
  • Jeder in Element 1 oben beschriebene Client kann die Erstellung einer Änderung durch jeden Teilnehmer unterstützen, der den Client verwendet. Die Erstellung einer Änderung kommt in einem Arbeitsbereichsstatus vor, der sich während der Erstellung der Änderung verändern kann. Dies kann aufgrund einer eingehenden serialisierten Änderung vorkommen. Der Client bietet dem Teilnehmer eine geeignete Up-to-date-Anzeige des Arbeitsbereichs auf der Basis der serialisierten Änderungen, die der Client empfangen hat. in der Änderungserstellung kann der Client dem Teilnehmer die potentiellen Auswirkungen seiner Veränderungen auf den Arbeitsbereich anzeigen, während die Änderung vorgenommen wird. Bei der Auswirkung muß es sich nicht um die Auswirkung handeln, die letztlich durch die Änderung tatsächlich eintritt, da nicht erkannte serialisierte Änderungen innerhalb des serialisierten Änderungsstroms ihr zuvorkommen können.
  • Die hier offengelegte Erfindung, die Benutzeroberfläche, basiert auf einer transparenten Anmerkungsschicht. Bei der Anmerkungsschicht handelt es sich um einen bitmap- oder whiteboard-ähnlichen Arbeitsbereich, unter dem andere Arbeitsbereiche angeordnet werden können. Die Anmerkungsschicht ist transparent, so daß der Arbeitsbereich unter der whiteboard-ähnlichen Schicht ebenfalls erkennbar ist. Die Anmerkungsschicht ist whiteboard-ähnlich, da sie eine große Zahl an Markierungen unterstützt, die wie bit-by-bit oder pixel-by-pixel Markierungen wirken. Die Anmerkungsschicht ist nicht nur ein Whiteboard, da aus Effizienzgründen kein Bedarf besteht, die Kosten für einzelne Bit- oder Pixel-Einstellungen zu verursachen. Ungeachtet dessen ist es zur Erklärung der vorliegenden Erfindung einfacher und ausreichend, die Anmerkungsschicht einfach als eine Art von Whiteboard zu betrachten. Somit ist für die Anmerkungsschicht die Technologie eines Systems zur Echtzeit-Zusammenarbeit, wie sie in Whiteboard-Systemen üblich, gegeben. Diese Technologie verfügt über die Eigenschaften einer Echtzeit-Zusammenarbeit, wie im folgenden beschrieben.
  • Die auf einer Anmerkungsschicht basierende Benutzeroberfläche umfaßt Komponenten, die im folgenden unter verschiedenen Überschriften beschrieben werden. Die Komponenten werden in jedem Client gestartet, der durch ein System zur Echtzeit-Zusammenarbeit generiert wurde, welches um eine auf einer Anmerkungsschicht basierenden Benutzeroberfläche erweitert wurde.
  • Eine Live-Anmerkungsschicht
  • Diese Beschreibung geht von einem System zur Echtzeit-Zusammenarbeit aus, wie sie in whiteboard-ähnlichen Umgebungen verwendet werden, hier ein Arbeitsbereich mit einer Anmerkungsschicht. Eine kombinierte Version eines solchen Systems zur Echtzeit-Zusammenarbeit, bei dem nur der Client-Bereich des System behalten wird, und der Serialisierungsmechanismus sowie der Kommunikationsmechanismus für den Serialisierungsmechanismus entfernt werden. Die Funktionen des Clients, eine Live-Anmerkungsschicht, die von einem solchen kombinierten System geboten werden, wird den Clients mit Hilfe der auf der Anmerkungsschicht basierenden Benutzeroberfläche zur Verfügung gestellt. Die Live-Anmerkungsschicht erhält nebeneinander zwei Eingabeströme: (a) einen Strom aus Benutzereingabesegmenten und (b) einen Strom aus serialisierten Änderungen und Aktualisierungen. Von jedem Strom verarbeitet die Anmerkungsschicht jeweils eine Einheit. Da die Ströme nebeneinander existieren, kann die Anmerkungsschicht mehrere Einheiten eines Stroms verarbeiten, während gleichzeitig eine Einheit aus dem anderen Strom verarbeitet wird. Der Benutzereingabestrom ist segmentiert. Eine Einheit des Stroms umfaßt ein Benutzereingabesegment. Ein Benutzereingabesegment besteht aus einer zusammenhängenden Serie von Eingaben, die von einem Teilnehmer an die Anmerkungsschicht gesendet wird, beispielsweise: Tastatureingabe, unterbrochen von Mauseingabe. Bei einem Benutzereingabesegment ist die Anmerkungsschicht dafür zuständig, eine Sequenz zurückzugeben, in der die Eingaben in der Anmerkungsschicht erkennbar werden. Beim Prozeß des Erstellens dieser Änderungen kann die Anmerkungsschicht die potentielle Auswirkung der Änderungen auf der Anzeige für die transparente Anmerkungsschicht anzeigen.
  • Wie es bei Systemen zur Echtzeit-Zusammenarbeit üblich ist, muß die Anmerkungsschicht einen entsprechenden Up-to-date-Status des Arbeitsbereichs anzeigen, d.h. die Anmerkungsschicht mit eingefügten serialisierten Änderungen und Aktualisierungen für die Schicht. Der Strom serialisierter Änderungen und Aktualisierungen bietet entweder eine serialisierte Änderung oder eine serialisierte Aktualisierung der Anmerkungsschicht. Serialisierte Änderungen stellen serialisierte Eingaben dar, die auf der Anmerkungsschicht durch Teilnehmer der Echtzeit-Zusammenarbeit weitergeleitet werden.
  • Serialisierte Aktualisierungen geben die Auswirkung auf die Anmerkungsschicht durch die serialisierte Eingabe wieder, die an den Arbeitsbereich der Echtzeit-Arbeitssitzung, d.h. den Arbeitsbereich unter der transparenten Anmerkungsschicht, weitergeleitet wird. Es wird zu keiner Zeit eine der folgenden Handlungen durchgeführt: (a) Weiterleiten einer serialisierten Änderung an die Anmerkungsschicht, (b) Weiterleiten einer serialisierten Änderung zum Arbeitsbereich der Echtzeit-Arbeitssitzung. Die Verarbeitung einer Änderung für eine Schicht (Anmerkungsschicht oder Arbeitsbereichsschicht) kann eine Aktualisierung der anderen Schicht hervorrufen, die der jeweils anderen Schicht sofort angezeigt wird, beispielsweise durch Plazieren an vorderer Stelle des Stroms an serialisierten Änderungen und Aktualisierungen für die Schicht. Erst wenn die Änderung und jede davon betroffene Aktualisierung vollständig verarbeitet wurden, wird die nächste serialisierte Änderung zur Verarbeitung freigegeben. Wenn somit die Anmerkungsschicht eine serialisierte Änderung zur Verarbeitung erhält, kann sie eine serialisierte Aktualisierung für die Arbeitsbereichsschicht erstellen. Sie wartet bis zur vollständigen Verarbeitung der serialisierten Änderung und auf eine Bestätigung der abgeschlossenen Verarbeitung der Aktualisierung, bevor bestätigt wird, daß die Verarbeitung der serialisierten Änderung abgeschlossen ist.
  • Eine serialisierte Änderung in der Anmerkungsschicht ist nur zulässig, um Aktualisierungen aufzunehmen, die Änderungen an der Anzeige umfassen, wie etwa das verschieben oder Ändern der Größe der Arbeitsbereichsschicht. Somit wird durch das Löschen eines Teils der Anmerkungsschicht der entsprechende Teil des Arbeitsbereichs nicht mitgelöscht. Diese Einschränkung bindet die Zusammenarbeit in der Anmerkungsschicht an eine wünschenswerte Nur-Lesen-Zusammenarbeit, soweit es den Arbeitsbereich betrifft. Die Entwicklung geht zu einer Lockerung der Einschränkung, auch wenn dies nicht wünschenswert ist. Aktualisierungen der Arbeitsbereichsschicht können vorgenommen werden, indem die Bitmap oder eine andere Abbildung der Anzeige des Arbeitsbereichs mit einer Bitmap oder einer anderen Abbildung der Anmerkungsschicht vor und nach der serialisierten Änderung verglichen wird. Der Vergleich kann zur Generierung von Befehlen führen, die Aktualisierung umfassen, mit der der Arbeitsbereich und die Anmerkungsschicht aufeinander abgestimmt werden.
  • 4 zeigt die Verarbeitungslogik für Benutzereingaben in der Anmerkungsschicht. Der Prozeß für den Arbeitsbereich ist ähnlich. Der Prozeß beginnt bei Funktionsblock 401, der auf den Start eines neuen Segments wartet. Wenn ein neues Segment startet, wird eine Segmenteingabe in der Reihenfolge empfangen, in der sie in Funktionsblock 402 erfolgt. Dann wird ein Test in Entscheidungsblock 403 durchgeführt, um festzustellen, ob das Segment beendet wurde. Wenn dies der Fall ist, wird die Eingabe verarbeitet, während ihre potentiellen Auswirkungen auf der Anzeige der Anmerkungsschicht in Funktionsblock 404 angezeigt wird. Änderungen werden erstellt und an die Eingabeschicht weitergeleitet, bevor der Prozeß zum Funktionsblock 401 zurückkehrt, um dort auf ein weiteres Segment zum Start zu warten. wenn das Segment nicht beendet ist, wie in Entscheidungsblock 403 festgestellt, wird die potentielle Auswirkung in der Anzeige der Anmerkungsschicht in Funktionsblock 405 gezeigt. Geordnete Änderungen für die Eingabe werden erstellt, und dann werden die Änderungen zur Eingabeschicht in Funktionsblock 406 weitergeleitet. Der Prozeß kehrt dann zum Funktionsblock 402 zurück, um mehr Eingaben für das Segment zu erhalten.
  • Der in 4 gezeigte Prozeß tritt gleichzeitig mit dem Prozeß aus 5 auf, die die Verarbeitung serialisierter Änderungen und Aktualisierungen in der Anmerkungsschicht zeigt. Der Prozeß ähnelt dem für die Arbeitsbereichsschicht. Der Prozeß beginnt in Funktionsblock 501, der auf eine verfügbare serialisierte Änderung oder Aktualisierung wartet. wenn diese verfügbar ist, wird die Einheit, worum es sich auch immer handeln mag (Aktualisierung oder Änderung) empfangen. Dann wird die Einheit in Funktionsblock 502 verarbeitet. Diese Verarbeitung umfaßt die Aktualisierung der Anzeige der Anmerkungsschicht im Client. In Entscheidungsblock 503 wird ein Test vorgenommen, um zu bestimmen, ob es sich bei der Einheit um eine Änderung handelt. wenn dies nicht der Fall ist, wird eine Bestätigung zur Aktualisierung an Funktionsblock 504 geleitet, und der Prozeß kehrt zu Funktionsblock 501 zurück, wo er auf eine verfügbare serialisierte Änderung oder Aktualisierung wartet. wenn es sich bei der Einheit um eine Änderung handelt, wie in Entscheidungsblock 503 festgestellt, wird ein weiterer Test in Entscheidungsblock 505 durchgeführt, um zu bestimmen, ob eine Aktualisierung erforderlich ist. Wenn dies nicht der Fall ist, wird eine Bestätigung für die Änderung in Funktionsblock 506 ausgegeben, und der Prozeß kehrt zu Funktionsblock 501 zurück, um auf eine weitere verfügbare serialisierte Aktualisierung oder Änderung zu warten. Wenn eine erforderliche Aktualisierung in Entscheidungsblock 505 festgestellt wurde, wird die Aktualisierung in Funktionsblock 507 basierend auf einem Vergleich von Anzeigeabbildungen für die Anmerkungsschicht und des gemeinsam genutzten Arbeitsbereichs vor und nach der Änderung erstellt. Die Aktualisierung wird in Funktionsblock 508 an den Arbeitsbereich gegeben, und dann wartet der Prozeß auf eine Bestätigung der vollständigen Verarbeitung der Aktualisierung durch die Arbeitsbereichsschicht in Funktionsblock 509. Wenn die Bestätigung empfangen wurde, wird eine weitere Bestätigung für die Änderung in Funktionsblock 506 ausgegeben, und der Prozeß kehrt zu Funktionsblock 501 zurück und wartet auf weitere verfügbare serialisierte Aktualisierungen und Änderungen.
  • Eine Live-Arbeitsbereichsschicht
  • Eine Arbeitsbereichsschicht existiert neben und analog zur Anmerkungsschicht. Siehe 4 und 5. Die Arbeitsbereichsschicht erhält Eingaben auf eine ähnliche Art wie die Anmerkungsschicht und reagiert auf eine ähnliche Art darauf. Der große Unterschied zwischen der Arbeitsbereichsschicht und der Anmerkungsschicht ist, daß die Arbeitsbereichsschicht in der Lage ist, Aktualisierungen für die Anmerkungsschicht zu erstellen, Teile der Anmerkungsschicht löschen zu oder zu kopieren, neben der einfachen Änderung der Anzeige der Anmerkungsschicht. Es besteht keine Nur-Lesen-Bindung für die Zusammenarbeit im Arbeitsbereich hinsichtlich der Anmerkungsschicht.
  • Eine Eingabeschicht
  • Eine Eingabeschicht existiert neben anderen Schichten, nimmt Benutzereingaben auf und segmentiert diese. Alle Eingaben (Tastatur, Maus und andere Eingabegeräte, wie etwa ein Stift) für jeden Client wird zunächst von dieser Schicht im Client aufgenommen. Jeder Client verfügt jederzeit über einen bestimmten Modus für diese Schicht. Der Modus des Clients beschreibt den Empfang der Benutzereingabe, also die Anmerkungsschicht, die Arbeitsbereichsschicht und die Eingabeschicht selbst. Der Modus des Clients kann durch die Benutzereingabe verändert werden, wobei die Eingabe durch den veränderten Modus identifiziert wird. Der Modus kann unabhängig und gleichzeitig durch die vom Client empfangenen serialisierten Änderungen geändert werden. Die Benutzereingabe wird von der Eingabeschicht segmentiert, so daß jedes Segment einen möglichst langen Abschnitt an zusammenhängenden Benutzereingaben umfaßt, während deren Eingabe der Modus sich nicht geändert hat. Jedes Eingabesegment wird dem entsprechenden Empfänger zur Verfügung gestellt, während es gerade erstellt wird. Somit wird die an die Anmerkungsschicht geleitete Eingabe umgehend für die Anmerkungsschicht verfügbar gemacht. Der Modus hierfür ist der Diskussionsmodus.
  • Im Bearbeitungsmodus wird die Eingabe an die Arbeitsbereichsschicht geleitet. Die Eingabeschicht verfügt über eine Anzeigeleiste, die den Status der gemeinsamen Arbeitssitzung, einschließlich der Modi der einzelnen Clients anzeigt. Die Anzeigeleiste zeigt ebenfalls Bedienelemente (Symbole, Tasten usw.) und Menüs für die Steuerung von Modus und Zusammenarbeit. Durch Klicken auf Steueroptionen kann der Modus in einen Steuermodus geändert werden, der neben der Steuerung des Modus für den Client auch den Modus für andere Clients steuern kann. Die Änderung eines Modus kann ebenfalls durch andere Kombinationen von Benutzereingaben erreicht werden, wie etwa die Tastatureingabe. Nicht alle Steuer- und Modusoptionen stehen einem Teilnehmer zur gleichen Zeit zur Verfügung, da andere Teilnehmer ebenfalls Entscheidung treffen (weitergeleitet an den Client eines Teilnehmers über serialisierte Steuerungsänderungen).
  • Der Prozeß zum Ändern des Modus auf der Grundlage von Benutzereingaben wird in 6A gezeigt. Der Prozeß beginnt in Funktionsblock 601, wo die Benutzereingabe empfangen wurde. Es wird ein Test in Entscheidungsblock 602 ausgeführt, um festzustellen, ob im Änderungsmodus Eingaben vorgenommen wurden. Wenn dies nicht der Fall ist, kehrt der Prozeß zum Funktionsblock 601 zurück, um auf die nächste Benutzereingabe zu warten. Wenn die Benutzereingabe eine Änderung des Modus verlangt, wie in Entscheidungsblock 602 festgestellt, wird der Modus, falls dies möglich ist, in Funktionsblock 603 geändert, und der Prozeß kehrt zu Funktionsblock 601 zurück und wartet auf die nächste Benutzereingabe.
  • Die Eingabeschicht empfängt ebenfalls als Eingabe serialisierte Änderungen für den Modus und die Steuerung der Zusammenarbeit. Die Eingabeschicht empfängt und verarbeitet die Steuerungsänderungen neben der Verwaltung der Benutzereingaben (siehe 6A). Der Prozeß wird in 6B dargestellt. Der Prozeß beginnt bei Funktionsblock 604, wo eine serialisierte Steuerungsänderung empfangen wird. Es wird dann in Entscheidungsblock 605 ein Test vorgenommen, um zu bestimmen, ob die Änderung eine Modusänderung ist. Wenn dies nicht der Fall ist, kehrt der Prozeß zu Funktionsblock 604 und erwartet die nächste serialisierte Steuerungsänderung. wenn der Test in Entscheidungsblock 605 ergibt, daß die Änderung eine Modusänderung ist, wird der Modus, falls machbar, in Funktionsblock 606 geändert, und der Prozeß kehrt zu Funktionsblock 604 zurück, um auf die nächste serialisierte Steuerungsänderung zu warten. Die Ausführbarkeit einer Modusänderung in den Prozessen der 6A und 6B hängt davon ab, ob die Modusänderung zuvor durch Steuerungsänderungen deaktiviert wurde oder nicht.
  • Die Steuerungsänderungen können die verfügbaren Optionen auf der Anzeigeleiste der Eingabeschicht ändern. Die Steuerungsänderungen können die für jeden Client verfügbaren Modi ändern und/oder einschränken. Die Zuständigkeit zur Erstellung und Versendung solcher Steuerungsänderungen kann an eine Untergruppe von Teilnehmern der Zusammenarbeit übergeben werden. Steuerungsänderungen umfassen auch Änderungen, die die Untergruppe der Teilnehmer mit einer solchen Zuständigkeit betrifft. Für jedes Segment einer Benutzereingabe empfängt die Eingabeschicht eine Sequenz an Änderungen von der Empfängerschicht der Eingabe. Die Eingabeschicht markiert die Änderungen durch ihren jeweiligen Modus (beispielsweise Änderungen an der Anmerkungsschicht durch Diskussionen, Änderungen an der Eingabeschicht durch Steuerung) und sendet die Änderungen in der Sequenzreihenfolge über ein Kommunikationsmittel an den Serialisierungsmechanismus für die gemeinsame Arbeitssitzung. Das Kommunikationsmittel und der Serialisierungsmechanismus können eine Adaption sein, die durch den nicht erweiterten (durch die anmerkungsschichtbasierte Benutzeroberfläche) Teil des erweiterten Systems zur Echtzeit-Zusammenarbeit generiert wird, oder sie können separat in dem erweiterten System zur Echtzeit-Zusammenarbeit zur Verfügung gestellt werden. Der Eingabeschicht-Prozeß zur Weiterleitung von Benutzereingabesegmenten an seine Empfänger wird in 7A gezeigt, und der Verarbeitungsprozeß der Eingabeschicht entsprechend der Benutzereingabe wird in 7B gezeigt. Die beiden Prozesse 7A und 7B existieren nebeneinander und neben den beiden Prozessen aus den 6A und 6B.
  • In 7A beginnt der Prozeß durch Erhalt der Benutzereingabe in Funktionsblock 701. Es wird in Entscheidungsblock 702 ein Test ausgeführt, um zu bestimmen, ob ein neues Segment gestartet wurde. Wenn dies nicht der Fall ist, wird die Benutzereingabe an den Empfänger weitergeleitet, je nach Modus für die Eingabe im Funktionsblock 703, und der Prozeß kehrt zu Funktionsblock 701 zurück, um auf die nächste Benutzereingabe zu warten. wenn ein neues Segment gestartet wurde, wie durch den Test im Entscheidungsblock 702 festgestellt, wartet der Prozeß auf den Empfang aller Änderungen für das letzte Segment in Funktionsblock 704, bevor die Eingabe an den Empfänger in Funktionsblock 703 weitergegeben wird.
  • Der Prozeß in 7B beginnt in Funktionsblock 705, wo die durch einen der Empfänger von Benutzereingaben generierte Änderung empfangen wird. Die Änderung wird mit ihrem verknüpften Modus markiert und an den Serialisierungsmechanismus in Funktionsblock 706 geleitet.
  • Dann wird ein Test in Entscheidungsblock 707 ausgeführt, um zu bestimmen, ob alle Änderungen für das aktuelle Segment empfangen wurden. Wenn dies nicht der Fall ist, kehrt der Prozeß zu Funktionsblock 705 zurück, um die Verarbeitung des aktuellen Segments fortzusetzen, andernfalls wird eine Mitteilung über den Erhalt aller Segmentänderungen in Funktionsblock 708 erstellt, bevor der Prozeß zu Funktionsblock 705 zurückkehrt.
  • Ein Back-End
  • Das Back-End empfängt serialisierte, durch den Modus markierte Änderungen vom Serialisierungsmechanismus und leitet diese in der Reihenfolge ihres Empfangs an die entsprechende Schicht im Client weiter (durch den Markierungsmodus). Das Back-End leitet eine serialisierte Änderung nur an eine Schicht weiter, wenn es eine Bestätigung darüber erhält, daß die dieser Änderung vorangegangene serialisierte Änderung vollständig durchgeführt wurde.
  • Die auf der Anmerkungsschicht basierende Benutzeroberfläche kann wie folgt in jedem System zur Echtzeit-Zusammenarbeit erstellt werden. Die Anmerkungsschicht kann auf normaler Whiteboard-Technologie basieren, wobei eine Angleichung zur Transparenz und für die oben beschriebenen Prozesse vorgenommen wird. Die Arbeitsbereichsschicht kann einfach auf einer Verbindung zum Clientmechanismus des erweiterten Systems zur Echtzeit-Zusammenarbeit beruhen. Die Eingabeschicht und das Back-End können auf der Unterstützung für Kommunikationsmittel und Serialisierungsmechanismen beruhen, die im nicht erweiterten System zur Echtzeit- Zusammenarbeit gegeben werden. Andernfalls kann die übliche verfügbare Technologie für eine solche Unterstützung verwendet werden. Die für die Anmerkungsschicht, Arbeitsbereichsschicht, Eingabeschicht und Back-End spezifischen Prozesse, wie oben beschrieben, können entweder einzeln für eine bestimmte Erweiterung eines System zur Echtzeit-Zusammenarbeit implementiert werden, oder sie können beispielsweise als Softwarebibliothek verfügbar gemacht werden, die wiederholt zur Erweiterung mehrerer Systeme zur Echtzeit-Zusammenarbeit genutzt werden kann. Die auf einer Anmerkungsschicht basierende Benutzeroberfläche entsprechend der vorliegenden Erfindung bietet die standardisierte Anzeige, Diskussion, Markierung und Expertenänderungen für alle Arten von Arbeitsbereichen in Echtzeit-Zusammenarbeit, ohne daß die Arbeitsbereiche beeinflußt werden, die das System unterstützen kann. Die Benutzeroberfläche umfaßt eine transparente Hülle, eine Anmerkungsschicht, über die die Teilnehmer ihren Arbeitsbereich anzeigen können. Teilnehmer können den Arbeitsbereich markieren, indem sie die Hülle markieren, ohne daß der Arbeitsbereich selbst geändert wird. Eine Änderung des Arbeitsbereiches selbst setzt bei dem Teilnehmer ein gewisses Fachwissen voraus, so daß die Teilnehmer den Arbeitsbereich so nicht ohne weiteres ändern können. Die auf der Hülle zulässigen Markierungen können umfangreicher sein als das, was in dem Arbeitsbereich selbst möglich ist. Die Anmerkungsschicht kann mit dem darunter liegenden Arbeitsbereich synchronisiert werden oder nicht. Durch Verschieben eines synchronisierten Arbeitsbereichs wird ebenfalls die Anmerkungsschicht verschoben und umgekehrt, usw. Jeder Teilnehmer kann mit der Anmerkungsschicht oder dem Arbeitsbereich arbeiten, je nach Auswahl des Arbeitsmodus. Die Auswahl kann vom Teilnehmer allein oder in Abhängigkeit von den anderen Teilnehmern getroffen werden. Die Steuerung eines Arbeitsmodus für einen Teilnehmer bedeutet auch die Steuerung der Lese-/Schreib-Berechtigungen für den Arbeitsbereich. Die Autorität zur Steuerung der Arbeitsmodi anderer Teilnehmer kann während der Arbeitssitzung geändert werden.
  • Während die Erfindung unter Bezugnahme eines einzelnen bevorzugten Ausführungsbeispiels beschrieben wurde, dürfte den Fachleuten klar sein, daß die Erfindung auch mit Änderungen im Sinne der angehängten Ansprüche ausgeführt werden kann.

Claims (24)

  1. Eine vom Arbeitsbereich unabhängige Benutzeroberfläche für ein System zur Echtzeit-Zusammenarbeit, implementiert auf Rechnern, die mit einem Netzwerk verbunden sind, wobei das um die Benutzeroberfläche erweiterte System zur Echtzeit-Zusammenarbeit weiterhin jeden Arbeitsbereich unterstützt, der bereits zuvor unterstützt wurde, und wobei die Benutzeroberfläche folgendes umfaßt: Eine im System zur Echtzeit-Zusammenarbeit gemeinsam genutzte transparente Anmerkungsschicht, wobei die Anmerkungsschicht zwischen jedem Teilnehmer und dem gemeinsam genutzten Arbeitsbereich plaziert wird und die gemeinsam genutzte Anmerkungsschicht über dem Arbeitsbereich liegt, so daß der Arbeitsbereich für jeden Teilnehmer durch die transparente Anmerkungsschicht hindurch sichtbar wird, Ein Mittel zur Auswahl und Änderung des Betriebsmodus während einer gemeinsamen Arbeitssitzung vom Diskussionsmodus in den Bearbeitungsmodus, wobei im Diskussionsmodus nur die Anmerkungsschicht direkt bearbeitet und/oder geändert wird, während im Bearbeitungsmodus nur der Arbeitsbereich direkt bearbeitet und/oder geändert wird und die gemeinsam genutzte transparente Anmerkungsschicht im Diskussionsmodus den Teilnehmern der Echtzeit-Arbeitssitzung die Möglichkeit bietet, den Arbeitsbereich wahlweise anzuzeigen und zu diskutieren, einschließlich dem Markieren der gemeinsam genutzten transparenten Anmerkungsschicht auf verschiedene Arten, ohne den Arbeitsbereich zu ändern und ohne daß die Markierungen auf jene Markierungen beschränkt werden, die vom Arbeitsbereich unterstützt werden, und ein Mittel zur Unterstützung der Synchronisation zwischen jedem Arbeitsbereich und der transparenten Anmerkungsschicht über dem Arbeitsbereich, wobei für jeden Arbeitsbereich bei der Synchronisierung von Arbeitsbereich und Anmerkungsschicht ein Verschieben des Arbeitsbereichs auch ein Verschieben der transparenten Anmerkungsschicht bewirkt und umgekehrt, und ein Erweitern des Arbeitsbereichs durch Hinzufügen von Daten ein Erweitern der entsprechenden Bereiche auf der Anmerkungsschicht verursacht, ein Verringern des Arbeitsbereichs durch Löschen von Daten ebenfalls eine Verringerung der transparenten Anmerkungsschicht durch Kürzen des entsprechenden Bereichs auslöst.
  2. Die Benutzeroberfläche nach Anspruch 1, wobei die Benutzeroberfläche standardisiertes Anzeigen, Diskussionen, Markieren und Expertenänderungen in jedem beliebigen Arbeitsbereich zur Echtzeit-Zusammenarbeit bietet, wobei ein Teilnehmer auf einfache Weise eine gemeinsame Arbeitssitzung leiten und/oder an ihr teilnehmen kann, ohne dafür über Expertenwissen verfügen zu müssen, um einen gemeinsam genutzten Arbeitsbereich zu bearbeiten und/oder zu ändern, während einem Teilnehmer mit Expertenwissen die Möglichkeit geboten wird, den sitzungsspezifischen Arbeitsbereich selbst zu bearbeiten und/oder zu ändern.
  3. Die Benutzeroberfläche nach Anspruch 2, wobei die Synchronisation zwischen einem Arbeitsbereich und der sie bedeckenden Anmerkungsschicht auf einem Vergleich von Abbildungen des Arbeitsbereichs und transparenten Anmerkungsschicht beruht.
  4. Die Benutzeroberfläche nach Anspruch 1, weiterhin folgendes umfassend: Ein Mittel zur Unterstützung einer asynchronen Abstimmung zwischen jedem Arbeitsbereich und der den Arbeitsbereich bedeckenden Anmerkungsschicht, wobei in jedem Arbeitsbereich mit unsynchronisiertem Arbeitsbereich und Anmerkungsschicht ein Verschieben des Arbeitsbereichs kein Verschieben der Anmerkungsschicht und ein Verschieben der Anmerkungsschicht kein Verschieben des Arbeitsbereich mit sich bringt, und eine Änderung im Arbeitsbereich keine dementsprechenden Änderungen in der Anmerkungsschicht verursacht.
  5. Die Benutzeroberfläche nach Anspruch 4, wobei die asynchrone Ausrichtung zwischen einem Arbeitsbereich und der sie bedeckenden Anmerkungsschicht der transparenten Anmerkungsschicht ermöglicht, als statischer Filter zu fungieren, durch den der gesamte Arbeitsbereich oder ein Teil von ihm angezeigt werden kann.
  6. Die Benutzeroberfläche nach Anspruch 1, wobei im Diskussionsmodus der unter der Anmerkungsschicht liegende Arbeitsbereich optional sichtbar bleiben kann, und wobei im Bearbeitungsmodus die über dem Arbeitsbereich liegende transparente Anmerkungsschicht optional sichtbar bleiben kann.
  7. Die Benutzeroberfläche nach Anspruch 1, wobei das Mittel zur Auswahl und Änderung des Modus die Angaben zur Auswahl und Änderung von jedem Teilnehmer unterstützt.
  8. Die Benutzeroberfläche nach Anspruch 1, wobei das Mittel zur Auswahl und Änderung des Modus die Steuerung des Modus einiger Teilnehmer durch andere Teilnehmer unterstützt.
  9. Die Benutzeroberfläche nach Anspruch 8, wobei das Mittel zur Auswahl und Änderung des Modus den Teilnehmern ermöglicht, den Modus zu ändern und eine Reihe von Modi, die den anderen Teilnehmern zur Verfügung stehen, zu beschränken.
  10. Die Benutzeroberfläche nach Anspruch 1, wobei das Mittel zur Auswahl und Änderung des Modus die Änderung einer Reihe von anderen Teilnehmern unterstützt, die über eine Berechtigung zur Steuerung des Modus anderer Teilnehmer verfügen.
  11. Die Benutzeroberfläche nach Anspruch 1, wobei die Steuerung des Modus eines Teilnehmers die Lese/Schreib-Berechtigungen der Teilnehmer steuert, wobei jeder Teilnehmer im Bearbeitungsmodus in den Arbeitsbereich schreiben kann, während Teilnehmer, die auf den Diskussionsmodus beschränkt wurden, nur Lesezugriff für den Arbeitsbereich haben.
  12. Die Benutzeroberfläche nach Anspruch 1, wobei die transparente Anmerkungsschicht auf einem Clientbereich eines Systems mit Echtzeit-Zusammenarbeit für whiteboard-ähnliche Bereiche basiert.
  13. Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit, das auf Rechnern implementiert ist, die über ein Netzwerk miteinander verbunden sind, folgendes umfassend: Eine gemeinsam genutzte transparente Anmerkungsschicht, erstellt in dem System zur Echtzeit-Zusammenarbeit, wobei die gemeinsam genutzte transparente Anmerkungsschicht zwischen den einzelnen Teilnehmern und einem gemeinsam genutzten Arbeitsbereich plaziert wird, die gemeinsam genutzte transparente Anmerkungsschicht den Arbeitsbereich bedeckt, so daß jeder Teilnehmer den Arbeitsbereich durch die transparente gemeinsam genutzte Anmerkungsschicht hindurch anzeigen kann, das System zur Echtzeit-Zusammenarbeit wird um die Benutzeroberfläche erweitert und unterstützt weiterhin jeden Arbeitsbereich, der zuvor bereits unterstützt werden konnte; die gemeinsam genutzte transparente Anmerkungsschicht bietet weiterhin jedem Teilnehmer in der gemeinsamen Arbeitssitzung die Möglichkeit, den Arbeitsbereich entweder anzuzeigen oder in ihm zu diskutieren, einschließlich Markieren der gemeinsam genutzten transparenten Anmerkungsschicht auf verschiedene Arten, ohne tatsächlich den Arbeitsbereich selbst zu ändern, einen Schritt zum Anbieten einer Option zur Auswahl und Änderung eines Betriebsmodus während einer gemeinsamen Arbeitssitzung zwischen einem Diskussionsmodus und einem Bearbeitungsmodus, wobei im Diskussionsmodus nur die Anmerkungsschicht direkt bearbeitet und/oder geändert wird, während im Bearbeitungsmodus der Arbeitsbereich direkt bearbeitet und/oder geändert wird, und einen Schritt zur Unterstützung der Synchronisation zwischen jedem Arbeitsbereich und der transparenten Anmerkungsschicht auf dem Arbeitsbereich, wobei für jeden Arbeitsbereich bei der Synchronisierung von Arbeitsbereich und Anmerkungsschicht ein Verschieben des Arbeitsbereichs auch ein Verschieben der transparenten Anmerkungsschicht bewirkt und umgekehrt, und ein Erweitern des Arbeitsbereichs durch Hinzufügen von Daten ein Erweitern der entsprechenden Bereiche auf der Anmerkungsschicht verursacht, ein Verringern des Arbeitsbereichs durch Löschen von Daten ebenfalls eine Verringerung der transparenten Anmerkungsschicht durch Kürzen der entsprechenden Bereiche auslöst.
  14. Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, bei der die Benutzeroberfläche standardisiertes Anzeigen, Diskussionen, Markieren und Expertenänderungen in jedem beliebigen Arbeitsbereich zur Echtzeit-Zusammenarbeit bietet, wobei ein Teilnehmer auf einfache Weise eine gemeinsame Arbeitssitzung leiten und/oder an ihr teilnehmen kann, ohne dafür über Expertenwissen verfügen zu müssen, um einen gemeinsam genutzten Arbeitsbereich zu bearbeiten und/oder zu ändern, während einem Teilnehmer mit Expertenwissen die Möglichkeit geboten wird, den sitzungsspezifischen gemeinsam genutzten Arbeitsbereich selbst zu bearbeiten und/oder zu ändern.
  15. Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, wobei der Schritt zum Anbieten einer Option zur Auswahl und Änderung des Modus für alle Teilnehmer die Angabe der Auswahl und Änderung durch die Teilnehmer umfaßt.
  16. Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, wobei der Schritt zum Anbieten einer Option zur Auswahl und Änderung des Modus für alle Teilnehmer die Steuerung des Modus einiger Teilnehmer durch andere Teilnehmer unterstützt.
  17. Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 16, wobei der Schritt zum Anbieten einer Option zur Auswahl und Änderung des Modus für alle Teilnehmer es den Teilnehmern ermöglicht, den Modus zu ändern und mehrere, den anderen Teilnehmern verfügbarer Modi einzuschränken.
  18. Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, wobei der Schritt zum Anbieten einer Option zur Auswahl und Änderung des Modus für alle Teilnehmer die Änderung einer Reihe von Teilnehmern mit Autorisierung zur Steuerung des Modus anderer Teilnehmer beinhaltet.
  19. Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 18, wobei die Steuerung des Modus eines Teilnehmers die Lese/Schreib-Berechtigung des Teilnehmers steuert, so daß jeder Teilnehmer im Bearbeitungsmodus in den Arbeitsbereich schreiben kann, während ein Teilnehmer, der auf den Diskussionsmodus beschränkt ist, nur Lesezugriff für den Arbeitsbereich hat.
  20. Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, wobei im Diskussionsmodus der unter der gemeinsam genutzten transparenten Anmerkungsschicht befindliche Arbeitsbereich optional sichtbar bleibt und wobei im Bearbeitungsmodus die transparente Anmerkungsschicht über dem Arbeitsbereich optional sichtbar bleibt.
  21. Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, wobei die Synchronisation zwischen einem Arbeitsbereich und der ihn bedeckenden Anmerkungsschicht auf einem Vergleich von Abbildungen des Arbeitsbereichs und der transparenten Anmerkungsschicht beruht.
  22. Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, weiterhin folgendes umfassend: Einen Schritt zur Unterstützung einer asynchronen Abstimmung zwischen jedem Arbeitsbereich und der den Arbeitsbereich bedeckenden Anmerkungsschicht, wobei in jedem Arbeitsbereich mit unsynchronisiertem Arbeitsbereich und Anmerkungsschicht ein Verschieben des Arbeitsbereichs kein Verschieben der Anmerkungsschicht und ein Verschieben der Anmerkungsschicht kein Verschieben des Arbeitsbereichs mit sich bringt, und eine Änderung im Arbeitsbereich keine dementsprechenden Änderungen in der Anmerkungsschicht verursacht.
  23. Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 22, wobei die asynchrone Ausrichtung zwischen einem Arbeitsbereich und der ihn bedeckenden transparenten Anmerkungsschicht der transparenten Anmerkungsschicht ermöglicht, als statischer Filter zu fungieren, durch den der gesamte Arbeitsbereich oder ein Teil von ihm angezeigt werden kann.
  24. Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, wobei die transparente Anmerkungsschicht auf einem Clientbereich eines Systems mit Echtzeit-Zusammenarbeit für whiteboard-ähnliche Arbeitsbereiche basiert.
DE10000998A 1999-02-02 2000-01-13 Anmerkungsschicht zur synchronen Zusammenarbeit Expired - Lifetime DE10000998B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/243,084 US6342906B1 (en) 1999-02-02 1999-02-02 Annotation layer for synchronous collaboration
US09/243,084 1999-02-02

Publications (2)

Publication Number Publication Date
DE10000998A1 DE10000998A1 (de) 2000-08-17
DE10000998B4 true DE10000998B4 (de) 2006-04-27

Family

ID=22917306

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10000998A Expired - Lifetime DE10000998B4 (de) 1999-02-02 2000-01-13 Anmerkungsschicht zur synchronen Zusammenarbeit

Country Status (3)

Country Link
US (1) US6342906B1 (de)
KR (1) KR100375808B1 (de)
DE (1) DE10000998B4 (de)

Families Citing this family (251)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6911987B1 (en) * 1995-07-05 2005-06-28 Microsoft Corporation Method and system for transmitting data for a shared application
JP3546705B2 (ja) * 1998-07-10 2004-07-28 インターナショナル・ビジネス・マシーンズ・コーポレーション アプリケーション・ウインドウにアノテーション・データを対応付ける方法及び装置、システム、アプリケーション・ウインドウへのアノテーション・データの対応付けを制御するプログラムを格納した記憶媒体
US7043529B1 (en) * 1999-04-23 2006-05-09 The United States Of America As Represented By The Secretary Of The Navy Collaborative development network for widely dispersed users and methods therefor
US6687878B1 (en) * 1999-03-15 2004-02-03 Real Time Image Ltd. Synchronizing/updating local client notes with annotations previously made by other clients in a notes database
US7213061B1 (en) * 1999-04-29 2007-05-01 Amx Llc Internet control system and method
US6958981B1 (en) * 1999-05-24 2005-10-25 Ncr Corporation Synchronized web scrolling
US6657646B2 (en) * 1999-06-08 2003-12-02 Amx Corporation System and method for multimedia display
US6640241B1 (en) * 1999-07-19 2003-10-28 Groove Networks, Inc. Method and apparatus for activity-based collaboration by a computer system equipped with a communications manager
US6654032B1 (en) * 1999-12-23 2003-11-25 Webex Communications, Inc. Instant sharing of documents on a remote server
US8024661B2 (en) * 2001-10-18 2011-09-20 Autodesk, Inc. Collaboration framework
JP2003521061A (ja) * 2000-01-25 2003-07-08 オートデスク,インコーポレイテッド インターネット上で建築図面へのアクセスを提供し、処理する方法および装置
US6859909B1 (en) * 2000-03-07 2005-02-22 Microsoft Corporation System and method for annotating web-based documents
US20020056003A1 (en) * 2000-04-11 2002-05-09 Dinkar Goswami System and method for real-time multi-directional file-based data streaming editor
US6981019B1 (en) * 2000-05-02 2005-12-27 International Business Machines Corporation System and method for a computer based cooperative work system
US6721921B1 (en) * 2000-07-26 2004-04-13 Itm Associates Method and system for annotating documents using an independent annotation repository
US7363589B1 (en) * 2000-07-28 2008-04-22 Tandberg Telecom A/S System and method for generating invisible notes on a presenter's screen
JP2002073242A (ja) * 2000-08-31 2002-03-12 Internatl Business Mach Corp <Ibm> アノテーション方法、アプリケーションウィンドウに対する追加的な書き込み方法、コンピュータ装置、自動契約機、コラボレーションシステム、記憶媒体、コンピュータ・プログラム・プロダクト、およびプログラム伝送装置
US7392484B1 (en) * 2000-10-13 2008-06-24 Hewlett-Packard Development Company, L.P. Method and system for capturing, storing, sharing, and managing notes taken during a computer based meeting
US7010570B1 (en) * 2000-10-16 2006-03-07 International Business Machines Corporation System and method for the controlled progressive disclosure of information
US6897853B2 (en) * 2000-11-10 2005-05-24 Microsoft Corp. Highlevel active pen matrix
US8255791B2 (en) 2000-11-29 2012-08-28 Dov Koren Collaborative, flexible, interactive real-time displays
US7346841B2 (en) * 2000-12-19 2008-03-18 Xerox Corporation Method and apparatus for collaborative annotation of a document
US7647373B2 (en) * 2001-03-13 2010-01-12 Eplus Capital, Inc. System and process for network collaboration through embedded annotation and rendering instructions
JP2002324037A (ja) * 2001-04-24 2002-11-08 Fujitsu Ltd 連携表示プログラム
US7143100B2 (en) * 2001-06-13 2006-11-28 Mci, Llc Method, system and program product for viewing and manipulating graphical objects representing hierarchically arranged elements of a modeled environment
US7370269B1 (en) * 2001-08-31 2008-05-06 Oracle International Corporation System and method for real-time annotation of a co-browsed document
US20050160113A1 (en) * 2001-08-31 2005-07-21 Kent Ridge Digital Labs Time-based media navigation system
US7907149B1 (en) * 2001-09-24 2011-03-15 Wolfgang Daum System and method for connecting people
JP2003196242A (ja) * 2001-12-25 2003-07-11 Sony Corp プログラム、ネットワークシステム、端末装置、サーバ装置
WO2003085525A2 (en) * 2002-04-02 2003-10-16 Collabo-Technology, Inc. Method and apparatus for synchronous project collaboration
US7418664B2 (en) * 2002-04-03 2008-08-26 Microsoft Corporation Application sharing single document sharing
US7028266B2 (en) * 2002-04-05 2006-04-11 Microsoft Corporation Processing occluded windows during application sharing
US7454760B2 (en) 2002-04-22 2008-11-18 Rosebud Lms, Inc. Method and software for enabling n-way collaborative work over a network of computers
US8756513B1 (en) 2002-04-23 2014-06-17 Microsoft Corporation Document viewing mechanism for document sharing environment
US7293243B1 (en) * 2002-05-22 2007-11-06 Microsoft Corporation Application sharing viewer presentation
JP2003345764A (ja) * 2002-05-27 2003-12-05 Hitachi Ltd 備忘録端末及び備忘録管理方法
WO2004057439A2 (en) * 2002-05-31 2004-07-08 University Of Utah Research Foundation System and method for visual annotation and knowledge representation
US7356563B1 (en) * 2002-06-06 2008-04-08 Microsoft Corporation Methods of annotating a collaborative application display
US7362349B2 (en) * 2002-07-10 2008-04-22 Seiko Epson Corporation Multi-participant conference system with controllable content delivery using a client monitor back-channel
US7234117B2 (en) * 2002-08-28 2007-06-19 Microsoft Corporation System and method for shared integrated online social interaction
KR100485670B1 (ko) * 2002-08-30 2005-04-27 김덕우 대화형 쇼핑몰 시스템
US7224366B2 (en) * 2002-10-17 2007-05-29 Amx, Llc Method and system for control system software
US7392267B2 (en) * 2002-12-04 2008-06-24 International Business Machines Corporation Annotation validity using partial checksums
US7209948B2 (en) * 2002-12-20 2007-04-24 International Business Machines, Corporation Collaborative review of distributed content
US7681136B2 (en) 2003-01-08 2010-03-16 Oracle International Corporation Methods and systems for collaborative whiteboarding and content management
US7031842B1 (en) 2003-02-26 2006-04-18 3Dgeo Development, Inc. Systems and methods for collaboratively viewing and editing seismic data
US7206811B2 (en) * 2003-03-13 2007-04-17 Oracle International Corp. System and method for facilitating real-time collaborating by collapsing a queue for a slow client
US7269787B2 (en) * 2003-04-28 2007-09-11 International Business Machines Coporation Multi-document context aware annotation system
US20040236830A1 (en) * 2003-05-15 2004-11-25 Steve Nelson Annotation management system
US20040230655A1 (en) * 2003-05-16 2004-11-18 Chia-Hsin Li Method and system for media playback architecture
US20050003330A1 (en) * 2003-07-02 2005-01-06 Mehdi Asgarinejad Interactive virtual classroom
US7302274B2 (en) * 2003-09-19 2007-11-27 Nokia Corporation Method and device for real-time shared editing mobile video
US7254587B2 (en) * 2004-01-12 2007-08-07 International Business Machines Corporation Method and apparatus for determining relative relevance between portions of large electronic documents
EP1574971A1 (de) * 2004-03-10 2005-09-14 Alcatel Verfahren, hypermedia Browser, Netzwerkclient, Netzwerkserver und Computer Softwareprodukt zum Versehen gemeinschaftlicher Navigation von hypermedia Dokumenten
US7102407B2 (en) * 2004-03-31 2006-09-05 Intel Corporation Programmable clock delay circuit
US7834819B2 (en) 2004-04-01 2010-11-16 Polyvision Corporation Virtual flip chart method and apparatus
US7948448B2 (en) 2004-04-01 2011-05-24 Polyvision Corporation Portable presentation system and methods for use therewith
JP4547990B2 (ja) * 2004-05-25 2010-09-22 富士ゼロックス株式会社 情報処理装置、及び情報処理プログラム
US7005957B2 (en) * 2004-05-29 2006-02-28 Tsung-Mou Yu Mechanism for trip-free of the bimetallic plate of a safety switch device
JP2008507776A (ja) * 2004-07-23 2008-03-13 ラーニング・ツリー・インターナショナル 電子プレゼンテーションのシステムおよび方法
US20060041564A1 (en) * 2004-08-20 2006-02-23 Innovative Decision Technologies, Inc. Graphical Annotations and Domain Objects to Create Feature Level Metadata of Images
US20070118794A1 (en) * 2004-09-08 2007-05-24 Josef Hollander Shared annotation system and method
WO2006029391A2 (en) * 2004-09-09 2006-03-16 Amx Corporation Method, system and computer program using standard interfaces for independent device controllers
US20070211691A1 (en) * 2004-09-09 2007-09-13 Barber Ronald W Method, system and computer program using standard interfaces for independent device controllers
US7640502B2 (en) * 2004-10-01 2009-12-29 Microsoft Corporation Presentation facilitation
JP4151974B2 (ja) * 2004-10-19 2008-09-17 インターナショナル・ビジネス・マシーンズ・コーポレーション 文書表示装置、文書表示方法、及びプログラム
US20060106804A1 (en) * 2004-10-28 2006-05-18 Nokia Corporation Electronic equipment and method for carrying out communication with electronic equipment
US7472341B2 (en) * 2004-11-08 2008-12-30 International Business Machines Corporation Multi-user, multi-timed collaborative annotation
US7342584B2 (en) * 2004-11-18 2008-03-11 Amx, Llc Method and computer program for implementing interactive bargraphs of any shape or design on a graphical user interface
US20060125846A1 (en) * 2004-12-10 2006-06-15 Springer Gregory T Virtual overlay for computer device displays
US20060200517A1 (en) * 2005-03-03 2006-09-07 Steve Nelson Method and apparatus for real time multi-party conference document copier
US7752561B2 (en) * 2005-03-15 2010-07-06 Microsoft Corporation Method and system for creating temporary visual indicia
AU2006287639C1 (en) 2005-09-07 2012-06-28 Open Invention Network, Llc Method and computer program for device configuration
US7962847B2 (en) * 2005-10-20 2011-06-14 International Business Machines Corporation Method for providing dynamic process step annotations
US20070239839A1 (en) * 2006-04-06 2007-10-11 Buday Michael E Method for multimedia review synchronization
US8214395B2 (en) * 2006-04-21 2012-07-03 Microsoft Corporation Tracking and editing a resource in a real-time collaborative session
US20070288164A1 (en) * 2006-06-08 2007-12-13 Microsoft Corporation Interactive map application
US20080028323A1 (en) * 2006-07-27 2008-01-31 Joshua Rosen Method for Initiating and Launching Collaboration Sessions
WO2008033317A2 (en) * 2006-09-11 2008-03-20 Live Cargo, Inc. Creating, storing, transferring and manipulating electronic data layers
JP2008171166A (ja) * 2007-01-11 2008-07-24 Yokogawa Electric Corp 操作監視装置
US7853886B2 (en) * 2007-02-27 2010-12-14 Microsoft Corporation Persistent spatial collaboration
JP2008217590A (ja) * 2007-03-06 2008-09-18 Fuji Xerox Co Ltd 情報共有支援システム、情報処理装置及び制御プログラム
US20080235597A1 (en) * 2007-03-19 2008-09-25 Mor Schlesinger Systems and methods of data integration for creating custom books
US8156422B2 (en) * 2007-04-30 2012-04-10 Intuit Inc. Method and apparatus for importing data from an application into a second application
CN101315621B (zh) * 2007-05-29 2010-10-06 北京书生国际信息技术有限公司 一种实现文档共享编辑的方法
EP2160734A4 (de) * 2007-06-18 2010-08-25 Synergy Sports Technology Llc System und verfahren zum verteilten und parallelen videoeditieren, -etikettieren und indizieren
WO2009002508A1 (en) * 2007-06-25 2008-12-31 Life Covenant Church, Inc. Interactive delivery of editorial content
US20090013044A1 (en) * 2007-07-05 2009-01-08 Microsoft Corporation Techniques for managing annotation transformations for context changes
US20090055737A1 (en) * 2007-08-22 2009-02-26 Andreas Borchardt Contextual Collaborative Electronic Annotations
US9178957B2 (en) * 2007-09-27 2015-11-03 Adobe Systems Incorporated Application and data agnostic collaboration services
US8397168B2 (en) 2008-04-05 2013-03-12 Social Communications Company Interfacing with a spatial virtual communication environment
US8407605B2 (en) * 2009-04-03 2013-03-26 Social Communications Company Application sharing
US8190987B2 (en) 2007-10-25 2012-05-29 Microsoft Corporation Private views of data and local calculations during real time collaboration
US8010901B1 (en) 2007-10-26 2011-08-30 Sesh, Inc. System and method for automated synchronized co-browsing
US7941399B2 (en) * 2007-11-09 2011-05-10 Microsoft Corporation Collaborative authoring
US9420014B2 (en) 2007-11-15 2016-08-16 Adobe Systems Incorporated Saving state of a collaborative session in an editable format
US8326814B2 (en) 2007-12-05 2012-12-04 Box, Inc. Web-based file management system and service
US8028229B2 (en) * 2007-12-06 2011-09-27 Microsoft Corporation Document merge
US8825758B2 (en) 2007-12-14 2014-09-02 Microsoft Corporation Collaborative authoring modes
US20090193327A1 (en) * 2008-01-30 2009-07-30 Microsoft Corporation High-fidelity scalable annotations
US8301588B2 (en) * 2008-03-07 2012-10-30 Microsoft Corporation Data storage for file updates
CN102084354A (zh) * 2008-04-05 2011-06-01 社会传播公司 基于共享虚拟区域通信环境的装置和方法
US8352870B2 (en) 2008-04-28 2013-01-08 Microsoft Corporation Conflict resolution
US8825594B2 (en) * 2008-05-08 2014-09-02 Microsoft Corporation Caching infrastructure
US8429753B2 (en) * 2008-05-08 2013-04-23 Microsoft Corporation Controlling access to documents using file locks
US9418054B2 (en) 2008-05-12 2016-08-16 Adobe Systems Incorporated Document comment management
US9176943B2 (en) 2008-05-12 2015-11-03 Adobe Systems Incorporated Comment presentation in electronic documents
US8996621B2 (en) 2008-05-12 2015-03-31 Adobe Systems Incorporated Asynchronous comment updates
US7945595B1 (en) 2008-05-12 2011-05-17 Adobe Systems Incorporated System and method for generating an item list in electronic content
US7949633B1 (en) 2008-05-12 2011-05-24 Adobe Systems Incorporated Shared edit access of electronic content
US8893017B2 (en) 2008-05-29 2014-11-18 Adobe Systems Incorporated Tracking changes in a database tool
US8417666B2 (en) * 2008-06-25 2013-04-09 Microsoft Corporation Structured coauthoring
US10853336B2 (en) 2008-09-29 2020-12-01 Adobe Inc. Tracking database changes
US7945622B1 (en) 2008-10-01 2011-05-17 Adobe Systems Incorporated User-aware collaboration playback and recording
US8073812B2 (en) * 2008-10-15 2011-12-06 Microsoft Corporation Preserving user intention in distributed data systems
US9294291B2 (en) 2008-11-12 2016-03-22 Adobe Systems Incorporated Adaptive connectivity in network-based collaboration
US20100131836A1 (en) * 2008-11-24 2010-05-27 Microsoft Corporation User-authored notes on shared documents
AU2009319665B2 (en) 2008-11-26 2015-08-20 Calgary Scientific Inc. Method and system for providing remote access to a state of an application program
US9785914B2 (en) 2008-12-08 2017-10-10 Adobe Systems Incorporated Collaborative review apparatus, systems, and methods
US8108779B1 (en) 2008-12-16 2012-01-31 Adobe Systems Incorporated Collaborative editing operations
WO2010103540A2 (en) * 2009-03-09 2010-09-16 Balajee Rajaram Systems and methods to use collaborative mind maps
WO2010114624A1 (en) * 2009-04-04 2010-10-07 Brett Matthews Online document annotation and reading system
US8346768B2 (en) * 2009-04-30 2013-01-01 Microsoft Corporation Fast merge support for legacy documents
US20100302150A1 (en) * 2009-05-29 2010-12-02 Gerold Keith Shelton Peer layers overlapping a whiteboard
US9135599B2 (en) * 2009-06-18 2015-09-15 Microsoft Technology Licensing, Llc Smart notebook
US20110289401A1 (en) * 2010-05-20 2011-11-24 Salesforce.Com, Inc. Multiple graphical annotations of documents using overlays
AU2011295755B2 (en) * 2010-09-03 2014-11-13 Turnitin, Llc Systems and methods for document analysis
US20120078597A1 (en) * 2010-09-27 2012-03-29 Infosys Technologies Limited Mobile device with a modeling platform
US20120096345A1 (en) * 2010-10-19 2012-04-19 Google Inc. Resizing of gesture-created markings for different display sizes
US8856230B2 (en) 2010-12-14 2014-10-07 Microsoft Corporation In browser real time collaboration lists and forms
US9741084B2 (en) 2011-01-04 2017-08-22 Calgary Scientific Inc. Method and system for providing remote access to data for display on a mobile device
EP2661654A4 (de) 2011-01-04 2014-07-09 Calgary Scient Inc Verfahren und system zur steuerung einer ferngesteuerten vorrichtung in einem ferngesteuerten chirurgischen eingriff
GB2500356A (en) 2011-01-20 2013-09-18 Box Inc Real time notification of activities that occur in a web-based collaboration environment
WO2012162411A1 (en) 2011-05-23 2012-11-29 Haworth, Inc. Digital whiteboard collaboration apparatuses, methods and systems
US9471192B2 (en) 2011-05-23 2016-10-18 Haworth, Inc. Region dynamics for digital whiteboard
US9465434B2 (en) 2011-05-23 2016-10-11 Haworth, Inc. Toolbar dynamics for digital whiteboard
US20140055400A1 (en) 2011-05-23 2014-02-27 Haworth, Inc. Digital workspace ergonomics apparatuses, methods and systems
US20120317500A1 (en) * 2011-06-07 2012-12-13 At&T Intellectual Property I, L.P. System and method for data visualization and user collaboration
US9015601B2 (en) 2011-06-21 2015-04-21 Box, Inc. Batch uploading of content to a web-based collaboration environment
US9063912B2 (en) 2011-06-22 2015-06-23 Box, Inc. Multimedia content preview rendering in a cloud content management system
EP2729877A4 (de) 2011-07-08 2015-06-17 Box Inc Desktopapplikation zum zugriff und zur interaktion mit arbeitsplätzen in einem cloud-basierten inhaltsverwaltungssystem und synchronisierungsmechanismen dafür
GB2503625A (en) 2011-07-08 2014-01-01 Box Inc Collaboration sessions in a workspace on cloud-based content management system
CA2844871C (en) 2011-08-15 2021-02-02 Calgary Scientific Inc. Non-invasive remote access to an application program
WO2013046015A1 (en) * 2011-09-30 2013-04-04 Calgary Scientific Inc. Uncoupled application extensions including interactive digital surface layer for collaborative remote application sharing and annotating
US9948988B2 (en) * 2011-10-04 2018-04-17 Ricoh Company, Ltd. Meeting system that interconnects group and personal devices across a network
CN103049247B (zh) * 2011-10-11 2016-01-06 永其科技股份有限公司 在计算机屏幕上进行批注的方法
US8515902B2 (en) 2011-10-14 2013-08-20 Box, Inc. Automatic and semi-automatic tagging features of work items in a shared workspace for metadata tracking in a cloud-based content management system with selective or optional user contribution
WO2013062599A1 (en) 2011-10-26 2013-05-02 Box, Inc. Enhanced multimedia content preview rendering in a cloud content management system
US9098474B2 (en) 2011-10-26 2015-08-04 Box, Inc. Preview pre-generation based on heuristics and algorithmic prediction/assessment of predicted user behavior for enhancement of user experience
US9294572B2 (en) 2011-11-11 2016-03-22 Calgary Scientific Inc. Session transfer and suspension in a remote access application framework
US8990307B2 (en) 2011-11-16 2015-03-24 Box, Inc. Resource effective incremental updating of a remote client with events which occurred via a cloud-enabled platform
CN104040946B (zh) * 2011-11-23 2017-07-14 卡尔加里科学公司 用于协作远程应用程序共享和会议的方法和系统
WO2013082320A1 (en) 2011-11-29 2013-06-06 Box, Inc. Mobile platform file and folder selection functionalities for offline access and synchronization
US9019123B2 (en) 2011-12-22 2015-04-28 Box, Inc. Health check services for web-based collaboration environments
US11232481B2 (en) 2012-01-30 2022-01-25 Box, Inc. Extended applications of multimedia content previews in the cloud-based content management system
US9965745B2 (en) 2012-02-24 2018-05-08 Box, Inc. System and method for promoting enterprise adoption of a web-based collaboration environment
US9195636B2 (en) 2012-03-07 2015-11-24 Box, Inc. Universal file type preview for mobile devices
US9054919B2 (en) 2012-04-05 2015-06-09 Box, Inc. Device pinning capability for enterprise cloud service and storage accounts
US9575981B2 (en) 2012-04-11 2017-02-21 Box, Inc. Cloud service enabled to handle a set of files depicted to a user as a single file in a native operating system
US9413587B2 (en) 2012-05-02 2016-08-09 Box, Inc. System and method for a third-party application to access content within a cloud-based platform
GB2505272B (en) 2012-05-04 2014-07-09 Box Inc Repository redundancy implementation of a system which incrementally updates clients with events that occurred via cloud-enabled platform
US9691051B2 (en) 2012-05-21 2017-06-27 Box, Inc. Security enhancement through application access control
US9479549B2 (en) 2012-05-23 2016-10-25 Haworth, Inc. Collaboration system with whiteboard with federated display
US9479548B2 (en) 2012-05-23 2016-10-25 Haworth, Inc. Collaboration system with whiteboard access to global collaboration data
US9027108B2 (en) 2012-05-23 2015-05-05 Box, Inc. Systems and methods for secure file portability between mobile applications on a mobile device
US8914900B2 (en) 2012-05-23 2014-12-16 Box, Inc. Methods, architectures and security mechanisms for a third-party application to access content in a cloud-based platform
US9021099B2 (en) 2012-07-03 2015-04-28 Box, Inc. Load balancing secure FTP connections among multiple FTP servers
US9712510B2 (en) 2012-07-06 2017-07-18 Box, Inc. Systems and methods for securely submitting comments among users via external messaging applications in a cloud-based platform
US9792320B2 (en) 2012-07-06 2017-10-17 Box, Inc. System and method for performing shard migration to support functions of a cloud-based service
GB2505072A (en) 2012-07-06 2014-02-19 Box Inc Identifying users and collaborators as search results in a cloud-based system
US9237170B2 (en) 2012-07-19 2016-01-12 Box, Inc. Data loss prevention (DLP) methods and architectures by a cloud service
US8868574B2 (en) 2012-07-30 2014-10-21 Box, Inc. System and method for advanced search and filtering mechanisms for enterprise administrators in a cloud-based environment
US9794256B2 (en) 2012-07-30 2017-10-17 Box, Inc. System and method for advanced control tools for administrators in a cloud-based service
US8745267B2 (en) 2012-08-19 2014-06-03 Box, Inc. Enhancement of upload and/or download performance based on client and/or server feedback information
US9369520B2 (en) 2012-08-19 2016-06-14 Box, Inc. Enhancement of upload and/or download performance based on client and/or server feedback information
GB2513671A (en) 2012-08-27 2014-11-05 Box Inc Server side techniques for reducing database workload in implementing selective subfolder synchronization in a cloud-based environment
US9135462B2 (en) 2012-08-29 2015-09-15 Box, Inc. Upload and download streaming encryption to/from a cloud-based platform
US9195519B2 (en) 2012-09-06 2015-11-24 Box, Inc. Disabling the self-referential appearance of a mobile application in an intent via a background registration
US9311071B2 (en) 2012-09-06 2016-04-12 Box, Inc. Force upgrade of a mobile application via a server side configuration file
US9117087B2 (en) 2012-09-06 2015-08-25 Box, Inc. System and method for creating a secure channel for inter-application communication based on intents
US9292833B2 (en) 2012-09-14 2016-03-22 Box, Inc. Batching notifications of activities that occur in a web-based collaboration environment
US10200256B2 (en) 2012-09-17 2019-02-05 Box, Inc. System and method of a manipulative handle in an interactive mobile user interface
US9553758B2 (en) 2012-09-18 2017-01-24 Box, Inc. Sandboxing individual applications to specific user folders in a cloud-based service
US10915492B2 (en) 2012-09-19 2021-02-09 Box, Inc. Cloud-based platform enabled with media content indexed for text-based searches and/or metadata extraction
US9959420B2 (en) 2012-10-02 2018-05-01 Box, Inc. System and method for enhanced security and management mechanisms for enterprise administrators in a cloud-based environment
US9705967B2 (en) 2012-10-04 2017-07-11 Box, Inc. Corporate user discovery and identification of recommended collaborators in a cloud platform
US9495364B2 (en) 2012-10-04 2016-11-15 Box, Inc. Enhanced quick search features, low-barrier commenting/interactive features in a collaboration platform
US9665349B2 (en) 2012-10-05 2017-05-30 Box, Inc. System and method for generating embeddable widgets which enable access to a cloud-based collaboration platform
US9628268B2 (en) 2012-10-17 2017-04-18 Box, Inc. Remote key management in a cloud-based environment
US9756022B2 (en) 2014-08-29 2017-09-05 Box, Inc. Enhanced remote key management for an enterprise in a cloud-based environment
US10235383B2 (en) 2012-12-19 2019-03-19 Box, Inc. Method and apparatus for synchronization of items with read-only permissions in a cloud-based environment
US9396245B2 (en) 2013-01-02 2016-07-19 Box, Inc. Race condition handling in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
US9462037B2 (en) 2013-01-07 2016-10-04 Google Inc. Dynamically sizing chunks in a partially loaded spreadsheet model
US9953036B2 (en) 2013-01-09 2018-04-24 Box, Inc. File system monitoring in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
EP2755151A3 (de) 2013-01-11 2014-09-24 Box, Inc. Funktionalitäten, Merkmale und der Benutzeroberfläche eines Synchronisationsclient zu einer Cloud-basierten Umgebung
US9311622B2 (en) * 2013-01-15 2016-04-12 Google Inc. Resolving mutations in a partially-loaded spreadsheet model
EP2757491A1 (de) 2013-01-17 2014-07-23 Box, Inc. Konfliktlösung, Wiederversuchbedingungsverwaltung und Handhabung von Problemdateien für den Synchronisations-Client zu einer Plattform auf Cloud-Basis
US11861561B2 (en) 2013-02-04 2024-01-02 Haworth, Inc. Collaboration system including a spatial event map
US10304037B2 (en) 2013-02-04 2019-05-28 Haworth, Inc. Collaboration system including a spatial event map
US10846074B2 (en) 2013-05-10 2020-11-24 Box, Inc. Identification and handling of items to be ignored for synchronization with a cloud-based platform by a synchronization client
US10725968B2 (en) 2013-05-10 2020-07-28 Box, Inc. Top down delete or unsynchronization on delete of and depiction of item synchronization with a synchronization client to a cloud-based platform
GB2515192B (en) 2013-06-13 2016-12-14 Box Inc Systems and methods for synchronization event building and/or collapsing by a synchronization component of a cloud-based platform
US9805050B2 (en) 2013-06-21 2017-10-31 Box, Inc. Maintaining and updating file system shadows on a local device by a synchronization client of a cloud-based platform
US10110656B2 (en) 2013-06-25 2018-10-23 Box, Inc. Systems and methods for providing shell communication in a cloud-based platform
US10229134B2 (en) 2013-06-25 2019-03-12 Box, Inc. Systems and methods for managing upgrades, migration of user data and improving performance of a cloud-based platform
US9535924B2 (en) 2013-07-30 2017-01-03 Box, Inc. Scalability improvement in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
GB2518298A (en) 2013-09-13 2015-03-18 Box Inc High-availability architecture for a cloud-based concurrent-access collaboration platform
US8892679B1 (en) 2013-09-13 2014-11-18 Box, Inc. Mobile device, methods and user interfaces thereof in a mobile device platform featuring multifunctional access and engagement in a collaborative environment provided by a cloud-based platform
US10509527B2 (en) 2013-09-13 2019-12-17 Box, Inc. Systems and methods for configuring event-based automation in cloud-based collaboration platforms
US9213684B2 (en) 2013-09-13 2015-12-15 Box, Inc. System and method for rendering document in web browser or mobile device regardless of third-party plug-in software
US9535909B2 (en) 2013-09-13 2017-01-03 Box, Inc. Configurable event-based automation architecture for cloud-based collaboration platforms
US9704137B2 (en) * 2013-09-13 2017-07-11 Box, Inc. Simultaneous editing/accessing of content by collaborator invitation through a web-based or mobile application to a cloud-based collaboration platform
KR102047499B1 (ko) * 2013-09-27 2019-11-21 삼성전자주식회사 콘텐트를 공유하는 방법 및 그 장치
US10176611B2 (en) * 2013-10-21 2019-01-08 Cellco Partnership Layer-based image updates
US10866931B2 (en) 2013-10-22 2020-12-15 Box, Inc. Desktop application for accessing a cloud collaboration platform
KR20150075140A (ko) * 2013-12-24 2015-07-03 삼성전자주식회사 전자 장치의 메시지 제어 방법 및 그 전자 장치
US9716861B1 (en) 2014-03-07 2017-07-25 Steelcase Inc. Method and system for facilitating collaboration sessions
US10664772B1 (en) 2014-03-07 2020-05-26 Steelcase Inc. Method and system for facilitating collaboration sessions
KR102266869B1 (ko) * 2014-04-03 2021-06-21 삼성전자주식회사 전자 장치 및 전자 장치의 디스플레이 방법
US10530854B2 (en) 2014-05-30 2020-01-07 Box, Inc. Synchronization of permissioned content in cloud-based environments
US9380682B2 (en) 2014-06-05 2016-06-28 Steelcase Inc. Environment optimization for space based on presence and activities
US9766079B1 (en) 2014-10-03 2017-09-19 Steelcase Inc. Method and system for locating resources and communicating within an enterprise
US9955318B1 (en) 2014-06-05 2018-04-24 Steelcase Inc. Space guidance and management system and method
US10433646B1 (en) 2014-06-06 2019-10-08 Steelcaase Inc. Microclimate control systems and methods
US11744376B2 (en) 2014-06-06 2023-09-05 Steelcase Inc. Microclimate control systems and methods
US9602514B2 (en) 2014-06-16 2017-03-21 Box, Inc. Enterprise mobility management and verification of a managed application by a content provider
US10038731B2 (en) 2014-08-29 2018-07-31 Box, Inc. Managing flow-based interactions with cloud-based shared content
US10574442B2 (en) 2014-08-29 2020-02-25 Box, Inc. Enhanced remote key management for an enterprise in a cloud-based environment
US9894119B2 (en) 2014-08-29 2018-02-13 Box, Inc. Configurable metadata-based automation and content classification architecture for cloud-based collaboration platforms
US9852388B1 (en) 2014-10-03 2017-12-26 Steelcase, Inc. Method and system for locating resources and communicating within an enterprise
US20160232144A1 (en) * 2015-02-06 2016-08-11 Liang Zhou Browser extension allowing web users to draw on live web pages
US20160253606A1 (en) * 2015-02-27 2016-09-01 Rulesware, LLC Business Process Crowd Sourcing with Dynamic Group Discovery and Social Push Communications
US9910644B2 (en) * 2015-03-03 2018-03-06 Microsoft Technology Licensing, Llc Integrated note-taking functionality for computing system entities
JP6568702B2 (ja) * 2015-03-27 2019-08-28 京セラ株式会社 表示装置および共有表示システム
EP3292524B1 (de) 2015-05-06 2020-07-08 Haworth, Inc. Folgemodus eines ansichtsfensters eines virtuellen arbeitsraums in kollaborationssystemen
US10733371B1 (en) 2015-06-02 2020-08-04 Steelcase Inc. Template based content preparation system for use with a plurality of space types
US10255023B2 (en) 2016-02-12 2019-04-09 Haworth, Inc. Collaborative electronic whiteboard publication process
US11023663B2 (en) 2016-03-11 2021-06-01 International Business Machines Corporation Persisting annotations applied to an electronic hosted whiteboard
US9921726B1 (en) 2016-06-03 2018-03-20 Steelcase Inc. Smart workstation method and system
US11409952B2 (en) 2016-08-16 2022-08-09 Myscript System and method for collaborative ink management
US10264213B1 (en) 2016-12-15 2019-04-16 Steelcase Inc. Content amplification system and method
US11126325B2 (en) 2017-10-23 2021-09-21 Haworth, Inc. Virtual workspace including shared viewport markers in a collaboration system
US11934637B2 (en) 2017-10-23 2024-03-19 Haworth, Inc. Collaboration system including markers identifying multiple canvases in multiple shared virtual workspaces
CN109614178A (zh) * 2018-09-04 2019-04-12 广州视源电子科技股份有限公司 批注显示方法、装置、设备和存储介质
US10911573B2 (en) * 2018-12-28 2021-02-02 Microsoft Technology Licensing, Llc Web-based collaborative inking via computer networks
WO2020176517A1 (en) 2019-02-25 2020-09-03 Haworth, Inc. Gesture based workflows in a collaboration system
US11212127B2 (en) 2020-05-07 2021-12-28 Haworth, Inc. Digital workspace sharing over one or more display clients and authorization protocols for collaboration systems
US11750672B2 (en) 2020-05-07 2023-09-05 Haworth, Inc. Digital workspace sharing over one or more display clients in proximity of a main client
US11527329B2 (en) 2020-07-28 2022-12-13 Xifin, Inc. Automatically determining a medical recommendation for a patient based on multiple medical images from multiple different medical imaging modalities
US11880644B1 (en) * 2021-11-12 2024-01-23 Grammarly, Inc. Inferred event detection and text processing using transparent windows
KR102552898B1 (ko) 2023-02-08 2023-07-14 주식회사 한국하이맥스 돌출부와 날개를 갖는 프로파일을 이용한 강성 향상형 후렉시블 유공관과 그 성형장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5761419A (en) * 1993-03-19 1998-06-02 Ncr Corporation Remote collaboration system including first program means translating user inputs into annotations and running on all computers while second program means runs on one computer

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5920694A (en) * 1993-03-19 1999-07-06 Ncr Corporation Annotation of computer video displays
EP0622930A3 (de) * 1993-03-19 1996-06-05 At & T Global Inf Solution Teilung der Anwendungen für Rechneranordnung mit Zusammenarbeit.
US5649104A (en) * 1993-03-19 1997-07-15 Ncr Corporation System for allowing user of any computer to draw image over that generated by the host computer and replicating the drawn image to other computers
US5600775A (en) * 1994-08-26 1997-02-04 Emotion, Inc. Method and apparatus for annotating full motion video and other indexed data structures
US6240444B1 (en) * 1996-09-27 2001-05-29 International Business Machines Corporation Internet web page sharing

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5761419A (en) * 1993-03-19 1998-06-02 Ncr Corporation Remote collaboration system including first program means translating user inputs into annotations and running on all computers while second program means runs on one computer

Also Published As

Publication number Publication date
KR20000076508A (ko) 2000-12-26
KR100375808B1 (ko) 2003-03-15
US6342906B1 (en) 2002-01-29
DE10000998A1 (de) 2000-08-17

Similar Documents

Publication Publication Date Title
DE10000998B4 (de) Anmerkungsschicht zur synchronen Zusammenarbeit
DE69631808T2 (de) Konferenzsystem, Endgerätkommunikationsverfahren und Speichereinheit zur Speicherung des Verfahrens
DE60127078T2 (de) Vorrichtung für anhaltende Chatsitzungen
DE69835862T2 (de) Benutzerschnittstelle mit sofortigen Indikatoren für die Merkmale Konkurrenz, in Gebrauch, verfügbar und nicht verfügbar
DE69433567T2 (de) Rechnerkonferenzverfahren
DE602004006798T2 (de) Nachrichtenübertragung über transiente Verbindungen in einer peer-to-peer Netzwerkumgebung
US9131022B2 (en) Multi-party virtual desktop
DE60313531T2 (de) Verfahren und Gerät zur Verarbeitung von sofortigen Nachrichten
DE60029774T2 (de) Videokonferenzsystem
DE202010018484U1 (de) System für die Bearbeitung eines Gesprächs in einem gehosteten Gesprächssystem
DE10138336A1 (de) Verfahren und System zum Aufrechterhalten des Andauerns von graphischen Markierungen in einem kollaborativen Graphikbetrachtungssystem
DE19844071A1 (de) Verfahren zum Lösen von Datenkonflikten in einem gemeinsamen Datenumfeld
DE202011110895U1 (de) Echtzeitsynchronisierte Bearbeitung von Dokumenten durch mehrere Benutzer für das Bloggen
DE4434878A1 (de) Fern-Anzeige von Objekten und Cursorbewegungen in einem Konferenzsystem
DE19607149A1 (de) Verfahren zum rechnergestützten Abgleich mehrerer, in mindestens einem Rechner gespeicherten Dateikopien einer gespeicherten Datei
US20020056003A1 (en) System and method for real-time multi-directional file-based data streaming editor
DE202019106796U1 (de) Elektronisches Ereignismanagementsystem
DE19717167A1 (de) Webbrowser-basiertes Konferenzsystem
DE102011114277B4 (de) Globaler Konferenzplan für verteilte Brücken
DE69633373T2 (de) Verfahren und Gerät zur Programmierung eines Aufgabentickets in einem Dokumentenverarbeitungssystem
DE102015008619A1 (de) Verfahren und Vorrichtung zum Verfassen von elektronischen Postnachrichten beginnend von existierenden Nachrichten in einem elektronischen Postprogramm
US20230244434A1 (en) Shared screen tools for collaboration
US20230244802A1 (en) Managing permissions for collaborative shared documents
DE102022201862A1 (de) Aktualisierung der teilnehmer von besprechungseinladungen in verschiedenen kalendersystemen
Nishida et al. Lock-on-Chat: boosting anchored conversation and its operation at a technical conference

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
8328 Change in the person/name/address of the agent

Representative=s name: DUSCHER, R., DIPL.-PHYS. DR.RER.NAT., PAT.-ANW., 7

R071 Expiry of right