-
Die
vorliegende Erfindung betrifft Anwendungen im Bereich computerbasierter
Sitzungen und insbesondere ein Verfahren und ein System zum Erfassen,
Speichern, Teilen und Verwalten von elektronischen Notizen, die
in einer computerbasierten Anwendung generiert wurden.
-
Computerbasierte
Kollaborationswerkzeuge, die zwei oder mehreren entfernt voneinander
angeordneten Nutzern gestatten, Simultandaten zu betrachten und über ein
Computernetzwerk zu kommunizieren, gestatten den entfernt angeordneten
Nutzern auch, Online-Sitzungen durchzuführen. Wie auch in persönlichen
Besprechungen und Sitzungen ist es in Online-Sitzungen wichtig, Notizen zu machen,
um die Vorgänge,
Gesprächspunkte,
Fragestellungen und Entscheidungen während der Sitzung zu erfassen.
In der Vergangenheit wurden während einer
Online-Sitzung Notizen von den Teilnehmern üblicherweise individuell aufgezeichnet
und anschließend
als Papiernotizen (Memos) oder per elektronischer Nachricht (e-mail) verteilt. Die
derzeit vorhandenen Möglichkeiten
des computerbasierten Notizenmachens sind aus mehreren Gründen problematisch.
-
Zunächst erfassen
derzeitige Lösungen
häufig
nicht ausreichend Kontext, damit die Notiz verstanden werden kann
(Kontext bedeutet hierbei bspw. eine während der Online-Sitzung erörterte Problemstellung
oder eine getroffene Entschei dung). Dies resultiert teilweise aus
der Tatsache, daß Notizen
häufig
auf Text limitiert sind und wichtige graphische Informationen der
Diskussionsgegenstände (wie
bspw. den Zustand der Computeranzeige) zu dem Zeitpunkt, als die
Notiz gemacht wurde, nicht aufweisen.
-
Ein
weiteres Problem mit derzeitigen Notizenlösungen besteht darin, daß erfaßte Notizen üblicherweise
unverwaltet sind, d.h. daß keine
Möglichkeit
besteht, das System nach während
einer Sitzung gemachten Entscheidungen oder bzgl. eines bestimmten
Gegenstandes oder nach bestimmten Personen zugeordneten Aufgaben
zu durchsuchen. Es ist häufig
schwierig, den Status von Notizen, wie bspw. den Status von Aufgaben
zu verfolgen.
-
Noch
ein weiteres Problem besteht darin, daß unterschiedliche Teilnehmer
Notizen machen, die häufig
einander widersprechen. Dies trifft insbesondere in dem Fall zu,
in dem die Notizen der einzelnen Teilnehmer nicht einfach den anderen
Teilnehmern sichtbar gemacht werden können.
-
Somit
besteht ein Bedarf an einer verbesserten Lösung zum Online-Anfertigen
von Notizen, die das Erfassen, das Speichern, das Teilen, das Verwalten
und das Gewinnen von Informationen aus Notizen, die während einer
Online-Sitzung angefertigt wurden, unterstützt.
-
Aus
der Fachveröffentlichung "Adobe Acrobat 4.0
Software Bridges the Gaps in Today's Office Documentation Workflows; Adobe
System UK; 16.02.99; S. 1-4" ist
bereits ein Verfahren zum Erfassen von Herunterladen von einzelnen
Seiten bzw. "Web
Pages" aus dem Internet
bekannt, bei dem es möglich
ist, zu den aus dem Internet heruntergeladenen Seiten oder Dokumenten
eine Notiz hinzuzufügen.
-
Aus
der Fachveröffentlichung "Akin, M. D. et al;
Using Object Oriented Patterns to Develop an Interactive Command
System for a CAD Software with Úndo and Redo Support; In:
Proc. 15th International Symp. on Computer
and Information Sciences (ISCIS XV), Istanbul, Turkey, 2000; S.
410 – 417" ist ein CAD-Enwurfsverfahren
bekannt, bei dem es möglich
ist, zwischen verschiedenen Entwurfsstadien eines CAD-Modells mittels Funktionen
hin- und herzugehen, die als "Undo" bzw. "Redo" bezeichnet werden.
Man versteht unter dem "Redoing" eine Operation,
die erneute Ausführung
des letzten Befehls, der durch ein vorhergehendes "Undoing" ungeschehen gemacht
wurde, um ein gelöschtes
Objekt wieder zu kreieren. Die Bedienungsperson des Entwurfsverfahrens
kann mittels der "Undo"-Funktionalität zu früheren CAD-Entwürfen zurückkehren,
indem sie linear durch die verschiedenen gespeicherten CAD-Befehle
hindurchgeht. Durch das Zurückgehen zu
früheren
Befehlen des CAD-Entwurfs wird dieser derart modifiziert, dass ein
vorheriger Zustand des CAD-Entwurfs wieder erreicht wird.
-
Die
Erfindung löst
die oben definierten Probleme und erfüllt den oben genannten Bedarf
durch eine Vorrichtung (System) gemäß Patentanspruch 1 sowie durch
ein Verfahren gemäß Patentanspruch
6.
-
Die
vorliegende Erfindung besteht demnach in einem Verfahren und einem
System zum Erfassen, Speichern, Teilen und Verwalten von Notizen
in einer computerbasierten Softwareanwendung. Insbesondere betrifft
die Erfindung kollaborative Echtzeitsitzungsumgebungen, kann jedoch
auch in Einplatz-Computeranwendungen verwendet werden, die eine
Möglichkeit
zum Notizenmachen und Notizenverwalten benötigen.
-
Insbesondere
werden Notizen vorzugsweise zusammen mit der Entstehungszeit, dem
Autor und entsprechender Kontext-Information
erfaßt.
Beispielsweise können
auch das Diskussionsthema und die aktuelle Bildschirmanzeige bzw.
der Status der aktuellen Bildschirmanzeige erfaßt und mit der Notiz verknüpft werden.
Der mit der erfaßten
Notiz verknüpfte
Kontext gestattet es dabei einem Benutzer, die Bedeutung der Notiz
besser und umfassender zu verstehen, wenn die Notiz zu einem späteren Zeitpunkt
aufgerufen wird.
-
Die
Erfindung gestattet es Benutzern auch, Notizen entsprechend ihrem
Typ (beispielsweise Allgemein, Aufgabe, Problem, Entscheidung) und
nach bestimmten Notizenattributen (beispielsweise Zeitpunkt der
Erfassung, Autor, usw.) zu durchsuchen, um Informationen aus den
Notizen schneller aufzufinden und abzurufen. Das System beinhaltet
auch einen Mechanismus zum Aktualisieren des Status der Notizen,
wodurch es Benutzern gestattet wird, sowohl den aktuellen Status
eines Problems oder einer Aufgabe als auch den Status zu dem Zeitpunkt, zu
dem die Notiz abgefaßt
wurde, zu erkennen.
-
Das
System kann sowohl in Einzelplatzumgebungen als auch in Kollaborationsumgebungen
mit mehreren Echtzeitsitzungsteil nehmern zum Erfassen, Speichern,
Teilen und Verwalten von Notizen verwendet werden.
-
Insbesondere
umfaßt
das System ein Erfassungsmodul, ein Speichermodul, ein Abfragemodul und
ein Verwaltungsmodul. Das Erfassungsmodul stellt die Fähigkeit
zum Erfassen der Notiz zusammen mit notizenspezifischen Informationen
und dem Status der Bildschirmanzeige bereit.
-
Das
Speichermodul stellt die Fähigkeit
zum Speichern erfaßter
Information in dauerhafter Speicherung zum späteren Abruf bereit. Das Modul
zur andauernden bzw. dauerhaften bzw. beständigen Speicherung kann auf
verschiedene Art und Weise ausgeführt sein, beispielsweise mit
einer relationalen Datenbank oder einem Dokumentenverwaltungssystem.
-
Das
Abfragemodul liest Informationen aus dem Modul zur dauerhaften Speicherung
und zeigt die Resultate dem Benutzer an. Dieses Modul gestattet
es dem Benutzer, die Art von auszulesender Information zu spezifizieren.
-
Das
Verwaltungsmodul erlaubt es einem Benutzer, den Status der Notiz
zu aktualisieren und, mit entsprechender Zugriffsberechtigung, den
Inhalt von Notizen zu ändern
und/oder Notizen zu löschen.
Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich
aus der Beschreibung und der beiliegenden Zeichnung.
-
Weitere
Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der
Beschreibung und der beiliegenden Zeichnung.
-
Es
versteht sich, daß die
vorstehend genannten und die nachstehend noch zu erläuternden Merkmale
nicht nur in der jeweils angegebenen Kombination, sondern auch in
anderen Kombinationen oder in Alleinstellung verwendbar sind, ohne
den Rahmen der vorliegenden Erfindung zu verlassen.
-
Die
Erfindung ist anhand von Ausführungsbeispielen
in der Zeichnung schematisch dargestellt und wird im folgenden unter
Bezugnahme auf die Zeichnung ausführlich beschrieben.
-
1 zeigt
ein Blockschaltbild eines Ausführungsbeispieles
eines erfindungsgemäßen Systems.
-
2 zeigt
ein Objektdiagramm eines Notizobjekts, das von dem Notizendienst
der Erfindung zur Darstellung einer benutzererzeugten Notiz verwendet
wird.
-
3 ist
ein Klassendiagramm eines Ausführungsbeispieles
des erfindungsgemäßen Notizendienstes.
-
4 ist
ein Blockschaltbild eines Ausführungsbeispieles
eines Systems mit einem erfindungsgemäßen Notizendienst.
-
5 zeigt
ein Ausführungsbeispiel
einer graphischen Benutzerschnittstelle, die eine Benutzerschnittstelle
zum Zugriff auf den erfindungsgemäßen Notizendienst bereitstellt.
-
6 zeigt
einen Notizenerzeugung Dialog in einer erfindungsgemäß implementierten
graphischen Benutzerschnittstelle.
-
7 zeigt
einen Notizenanzeige Dialog in einer erfindungsgemäß implementierten
graphischen Benutzerschnittstelle.
-
8 zeigt
einen Notizenverknüpfung
Dialog in einer erfindungsgemäß implementierten
graphischen Benutzerschnittstelle.
-
9 zeigt
ein Blockschaltbild einer vernetzten Kollaborationsumgebung, die
den Notizendienst der Erfindung verwendet.
-
10(a) und 10(b) zeigen
zusammen ein UML-Schaubild (UML: unified modelling language, standardisierte
graphische Sprache für
die Spezifikation, Visualisierung und Dokumentierung von objektorientierten,
nebenläufigen
Systemen) eines Ausführungsbeispiels
eines erfindungsgemäß implementierten
Notizendienstes.
-
11 zeigt
ein Beispiel einer Notizentabelle, in der eine Notizenliste für eine spezielle,
bzw. spezifische Sitzung implementiert ist.
-
12 zeigt
ein Beispiel einer Verknüpfungstabelle,
in der eine Liste von Verknüpfungen
mit einer Liste von Notizenobjekten assoziiert ist.
-
1 zeigt
ein Blockschaltbild eines Ausführungsbeispieles
eines erfindungsgemäßen Systems. Entsprechend
der Darstellung umfaßt
das System einen Notizendienst (REPORT SERVICE APPLICATION/SERVER) 20,
der als separate Serveranwendung ausgestattet sein kann (wie dargestellt),
die mit Kundenanwendungen (CLIENTS) 15a, ..., 15n kommuniziert,
um ein Erfassen und Verwalten von Notizen bereitzustellen. In einer
alternativen Ausgestaltung kann der Notizendienst 20 in
einer anderen Anwendung, die die Funktionen des Notizendienstes 20 benötigt, integriert
sein (nicht dargestellt), oder er kann in einer sogenannten peer-to-peer-Konfiguration implementiert
sein.
-
2 zeigt
ein Objektdiagramm eines Notizenobjekts 10, das von dem
Notizendienst 20 dazu verwendet wird, eine benutzererzeugte
Notiz darzustellen. Ein Notizenobjekt (NOTE) 10 umfaßt einen Satz
notizenbeschreibender Attribute 12 und Notizendaten (+Data) 14.
Die notizenbeschreibenden Attribute 12 umfassen Informationen über das
Notizenobjekt 10 selbst, einschließlich einer Notizenidentifikation
(+NoteId) 12a, die die Notiz innerhalb des Notizendienstes 20 eindeutig
identifiziert, und einen Notizentyp (+Type) 12b. Jeder
von dem Notizentyp 12b identifizierte Typ von Notiz bestimmt
zusätzliche
(und ggf. unterschiedliche) notizenbeschreibende Attribute, die
mit einer Notiz des angegebenen Typs verbunden sind.
-
Das
Attribut „Notizendaten" 14 enthält die durch
die Notiz erfaßten
Daten (d.h. den tatsächlichen
Notizeninhalt) wie ASCII-Text, Bilddaten, Audiodaten und andere
Objektdaten. Die in dem Attribut „Notizendaten" 14 enthaltenen
Daten werden von dem Notizendienst 20 nicht interpretiert.
-
3 zeigt
ein Klassendiagramm eines Ausführungsbeispiels
des Notizendienstes (Notes Service) 20. Entsprechend der
Darstellung umfaßt
der Notizendienst 20 die folgenden Funktionen: Notiz hinzufügen (+AddNote) 22a,
Notiz löschen
(+DeleteNote) 22b, Attribute hinzufügen (+AddAttributes) 22c,
Attribute löschen
(+DeleteAttributes) 22d, Notizenattribute holen (+GetNoteAttributes) 22e,
Notiz abschließen
(+LockNote) 22f, Notiz aufschließen (+UnlockNote) 22g,
Notizen auflisten (+ListNotes) 22h, Notizendaten hinzufügen (+AddNoteData) 22i, Notizendaten
löschen
(+DeleteNoteData) 22j, Notizendaten holen (+GetNoteData) 22k und
Notiz anzeigen (+DisplayNote) 22k.
-
„Notiz
hinzufügen" 22a erfaßt eine
Notiz und fügt
sie in eine von dem Notizendienst 20 verwaltete Notizenliste
für eine
bestimmte Anwendungssitzung hinzu. Im dargestellten Ausführungsbeispiel
wird die Notiz als sogenannter XML-String versandt, wobei die Attribute
in XML kodiert sind. Die Notizenidentifikation 12a ist
ein XML-string, der dazu verwendet wird, auf das Notizenobjekt 10 zu
verweisen, wenn auf die Notiz später
zugegriffen wird.
-
„Notiz
löschen" 22b löscht ein
bestimmtes Notizenobjekt 10 (einschließlich aller notizenbeschreibender
Attribute 12 und Notizendaten 14) von der mit
einer bestimmten Anwendungssitzung verknüpften Notizenliste.
-
„Attribute
hinzufügen" 22c gestattet
das Hinzufügen
einer Liste von Attributen zu einem existierenden Notizenobjekt 10.
Mit diesen Attributen können
entweder neue Attribute zu einem Notizenobjekt 10 hinzugefügt oder
es können
existierende Notizenattribute geändert
werden.
-
„Attribute
löschen" 22d löscht bestimmte
Attribute von der Attributsliste eines einer Notizenidentifizierung 12a zugeordneten
Notizenobjekts 10.
-
„Notizenattribute
holen" 22e schickt
die einem bestimmten Notizenobjekt 10 zugeordnete Attributsliste
zurück.
-
„Notiz
abschließen" 22f schließt ein Notizenobjekt 10,
so daß es
lediglich noch von dem Nutzer geändert
werden kann, der das „Schloß" angebracht hat,
um eine Zugriffskontrolle auf die Notiz während einer Sitzung einzurichten.
-
„Notiz
aufschließen" 22g gestattet
dem Nutzer, der das Schloß angebracht
hat, oder jedem anderen mit entsprechender Berechtigung, ein Notizenobjekt 10 aufzuschließen und
so für
Modifikationen an dem Notizenobjekt 10 freizugeben.
-
„Notizen
auflisten" 22h liefert
eine Liste von einer bestimmten Anwendungssitzung zugeordneten Notizen
mit deren zugehörigen
Attributen. In dem dargestellten Ausführungsbeispiel liefert "Notizen auflisten" 22h die
Liste von Notizen einschließlich
notizenbeschreibender Attribute 12 und Notizendaten 14 als
eine Reihe von XML-Beschreibungen, die von Start- und End-Kennzeichen
umgeben sind, so daß die
Nutzer das Ende der Liste identifizieren können.
-
„Notizendaten
hinzufügen" 22i fügt Daten
zu dem Attribut „Notizendaten" 14 eines
bestimmten Notizenobjekts 10 hinzu. Die Notizendaten 14 sind
ein Strom von Bytes und werden von dem Notizendienst 20 nicht
interpretiert. Es werden jedoch die passenden notizenbeschreibenden
Attribute 12 zum Beschreiben der Daten in der Notiz gesetzt.
-
„Notizendaten
löschen" 22j löscht die
mit einem bestimmten Notizenobjekt 10 verbundenen Notizendaten 14.
-
„Notizendaten
holen" 22k liefert
die mit einem bestimmten Notizenobjekt 10 verbundenen Notizendaten 14.
Die Notizenidentifikation 12a wird an den Server des Notizendienstes 20 gesandt
und die Notizendaten 14, die mit dem durch die Notizenidentifikation 12a identifizierten
Notizenobjekt 10 verbunden sind, werden an den anfragenden
Nutzer 15a, ..., 15n geschickt. Der anfragende
Nutzer 15a, ..., 15n kennt vorzugsweise den Datentyp
(durch Suchen der Attribute 12 (wie Notetype 12b)
des Notizenobjekts 10). Entsprechend wird in dem dargestellten
Ausführungsbeispiel
lediglich der Bytestrom der Daten geliefert.
-
„Notiz
anzeigen" 221 führt zu einer
Anzeige der Einzelheiten einer bestimmten anzuzeigenden Notiz, beispielsweise
in einem sogenannten Pop-up-Fenster. In einer Kollaborationsumgebung übermittelt "Notiz anzeigen" 221 an
alle angebundenen Nutzer (Klienten) 15a, ..., 15n in
einer gegebenen Sitzung, die Einzelheit eines bestimmten Notizenobjekts 10 in
einem Anzeigefenster anzuzeigen.
-
4 zeigt
ein Blockdiagramm eines Ausführungsbeispiels
eines Systems, das die Anwendung des Notizendienstes 20 verwendet.
Wie dargestellt umfaßt
der Notizendienst 20 ein Speichermodul 24, ein
Abfragemodul 26 und ein Verwaltung-Modul 28. Eine Kundenanwendung 15 umfaßt ein Notizenerfassungsmodul 22,
das die Fähigkeit
zum Erfassen nicht nur einer Benutzernotiz, sondern auch von Kontextinformationen
wie dem Status der Bildschirmanzeige und anderer notizenbezogener
Informationen einschließlich
Verknüpfungen
(links) zu anderen Objekttypen (beispielsweise einer URL (Website-Adresse), einer graphischen
Bilddatei, einer Audiodatei usw.) bereitstellt. Das Erfassungsmodul 22 erfaßt und bündelt die
Informationen für
das Speichermodul 24 und das Verwaltung-Modul 28.
-
Das
Speichermodul 24 stellt die Fähigkeit zum Speichern von Notizen
und zugeordneter Kontextinformation in der Notizendatenbank 30 (d.h.
beständige
Speicherung) zum späteren
Abruf bereit. Die Notizendatenbank 30 kann in unterschiedli cher Art
und Weise implementiert sein, beispielsweise als eine relationale
Datenbank oder ein Dokumentenverwaltungssystem wie das von CoCreate
entwickelte WorkManager.
-
Das
Abfragemodul 26 stellt die Fähigkeit zum Abrufen und Wiedergewinnen
von Informationen aus der Notizdatenbank 30 bereit. Das
Abfragemodul 26 gestattet dem Benutzer, den Typ von Informationen
anzugeben, der unter Verwendung von Abfragen, Filtern und Sortieren
wiedergewonnen werden soll, Das Verwaltung-Modul 28 gestattet
einem Benutzer, die Notizendatenbank 30 zu verwalten. Insbesondere
gestattet das Verwaltung-Modul 28 einem Benutzer, den Status
eines Notizenobjekts 10 zu modifizieren, zu löschen und
zu aktualisieren. Das Aktualisieren eines Notizenobjekts 10 kann
entweder unter Verwendung eines Versionierungsalgorithmus (versioning
algorithm) oder durch Modifizieren der Attribute einer gegebenen
Notiz erfolgen.
-
Die
Benutzeranwendung 15 greift typischerweise auf eine Datenquelle 16 zu,
die Informationen enthält,
mit denen die Anwendung arbeitet. Zum Beispiel kann die Anwendung 15 eine
Kollaborationsanwendung wie das von CoCreate entwickelte OneSpace
sein, das dazu verwendet wird, 3D-Modelle von Entwicklungsteilen
darzustellen, die in einer Teiledatenbank als Datenquelle gespeichert
sind. Als ein anderes Beispiel kann die Anwendung 15 eine persönliche Organisatisonsanwendung
sein, die Kalender- und Kontaktinformationen in einer Datenquelldatei
mit persönlichen
Informationen speichert.
-
5 zeigt
ein Ausführungsbeispiel
einer graphischen Benutzerschnittstelle 100, die eine Benutzerschnittstelle
zum Zugriff auf den Notizendienst 20 in einer computerbasierten Sitzungsanwendung bereitstellt.
Wie dargestellt wird auch auf den Notizendienst 20 über eine
Menüleiste 102 zugegriffen, die
einen mit "Notizen" bezeichneten Menüpunkt 104 aufweist.
Bei Auswahl mittels einer Maus oder einer Funktionstaste öffnet der
Menüpunkt 104 ein
sogenanntes Drop-Down-Menü 110,
das ein Menü auswählbarer
Notizendienstfunktionen anzeigt. In dem dargestellten Ausführungsbeispiel
umfaßt
das Drop-Down-Menü 110 die
Notizendienstfunktionen „Erzeugen" (Create) 110a zum
Erzeugen einer Notiz, „Anzeigen" (Display) 110b zum
Anzeigen einer Notiz, „Löschen" (Delete) 110c zum
Löschen
einer Notiz, „Editieren" (Edit) 110d zum
Editieren einer Notiz, „Kopieren" (Copy) 110e zum
Kopieren einer Notiz, „Ausschneiden" (Cut) 110f zum
Ausschneiden einer Notiz in eine Zwischenablage und „Einfügen" (Paste) 110g zum
Einfügen
einer Notiz aus der Zwischenablage. Jede dieser Funktionen 110a bis 110g kann
durch Klicken auf den gewünschten
Menüpunkt
mittels einer Maus oder einer Funktionstaste ausgeführt werden.
-
6 zeigt
einen Notizenerzeugung-Dialog 120 der graphischen Benutzerschnittstelle 100,
der angezeigt wird, wenn der Menüpunkt "Erzeugen" (Create) 110a ausgewählt wurde.
Wie dargestellt gestattet der Notizenerzeugung-Dialog 120 die
Eingabe einer einzelnen Notiz oder einer Folge von einzelnen Notizen
durch einen Benutzer einer Benutzer- bzw. Klientenanwendung 15.
Wenn es sich bei der Anwendung 15 um eine Kollaborationsanwendung
handelt, haben alle Teilnehmer der gleichen Kollaborationssitzung
vorzugsweise die Möglichkeit,
eine Notiz zu erzeugen, die von allen anderen Teilnehmern der Kollaborationssitzung
gesehen werden kann.
-
Der
Notizenerzeugung-Dialog 120 umfaßt Benutzermöglichkeiten
zum Setzen der Attribute einer Notiz. Insbesondere ge stattet der
Notizenerzeugung-Dialog 120 dem Benutzer, den Typ der zu
erzeugenden Notiz auszuwählen.
In dem dargestellten Ausführungsbeispiel
ist der Typ der Notiz mittels eines Drop-Down-Menüs 121 auswählbar, das
dem Benutzer gestattet, den Notizentyp entweder als allgemeine Notiz
(General), als Aufgabe (Action Item), als Entscheidung (Decision)
oder als Problem (Issue) auszuwählen
bzw. zu setzen. Jeder Notizentyp hat einen Satz von notizentypspezifischen
Attributen, die in dem Notizenerzeugung-Dialog 120 bei
Auswahl des Notizentyps durch den Benutzer angezeigt werden. Die
notizentypspezifischen Attribute umfassen einen unterschiedlichen
Satz von Attributen für
jeden Notizentyp. Beispielsweise wird bei dem Typ „allgemeine
Notiz" (General)
lediglich das (ausfüllbare) Standardattribut "Verfasser" (Author) 122 und
das Attribut "Erzeugungszeit" (Creation Time) 123 angezeigt.
Diese Attribute können
von dem Verfasser der Notiz ausgefüllt werden oder können alternativ
von dem Notizendienst 20 unter Verwendung von Benutzerkonfigurationsinformationen
ausgefüllt
werden (selbstverständlich
mit der Möglichkeit
des nachträglichen Änderns bzw. Überschreibens).
Wird stattdessen der Typ "Aufgabe" (Action Item) ausgewählt, so können zusätzliche
editierbare, d.h. ausfüllbare
Attribute angezeigt werden, einschließlich eines Attributs "zugewiesen an", eines Attributs "Frist" und eines Attributs "Status". Vorzugsweise gestattet
der Notizenerzeugung-Dialog 120 dem Benutzer zusätzliche
Notizentyp-Kategorien zu erzeugen und hinzuzufügen.
-
In
jedem Notizentyp wird ein Inhaltsfeld CONTENTS 124 angezeigt.
Das Inhaltsfeld 124 kann von dem Benutzer ausgefüllt werden
und/oder eine Datei kann an die Notiz angehängt werden (mittels eines nicht
dargestellten Einfügen-Dialogs, auf
den durch Klicken eines Knopfes "Einfügen" (Attach) 125 zugegriffen
werden kann).
-
In
dem dargestellten Ausführungsbeispiel umfaßt der Notizenerzeugung-Dialog 120 einen Knopf "Verknüpfen" (Link) 126,
der dem Benutzer gestattet, das Notizenobjekt mit einem anderen
Objekt (vorzugsweise jeglichen Typs, beispielsweise einer 3D-Datendatei,
einer URL, einer Audio- oder Videodatei, einem Textdokument usw.)
zum Erzeugen einer Verbindung zu verknüpfen. Die dem Notizenobjekt
zugeordneten Verknüpfungen
werden in einem Anzeigefeld "LINKS" 124b zum
Anzeigen von Verknüpfungen
angezeigt. In dem dargestellten Ausführungsbeispiel kann der Notizendienst 20 automatisch eine
Notiz erzeugen und sie mit einem von der Benutzeranwendung 15 verwendeten
Objekt immer dann verknüpfen,
wenn das von der Benutzeranwendung 15 verwendete Objekt
modifiziert wird. Handelt es sich bei der Benutzeranwendung 15 beispielsweise um
eine CAD-Anwendung, die 3D-Modelle von Objekten erzeugt oder verwendet,
dann kann der Notizendienst 20 so konfiguriert sein, daß er automatisch ein
Notizenobjekt immer dann erzeugt, wenn das 3D-Objektmodell modifiziert
wird, unter Aufzeichnung des Verfassers bzw. Urhebers der Modifizierung
und dem Modifizierungsdatum. Der Benutzer kann über ein eingeblendetes Dialogfenster (Pop-Up-Dialog) dazu aufgefordert
werden, eine Beschreibung der an dem 3D-Modell vorgenommenen Änderungen
einzugeben. Benutzererzeugte und automatisch erzeugte Notizenobjekte
können
in unterschiedlichen Abschnitten der Notizendatenbank 30 gespeichert
und getrennt angezeigt werden, oder sie können gemeinsam gespeichert
und angezeigt werden, je nach der individuellen Implementierung.
Vorzugsweise umfaßt
der Notizenerzeugung-Dialog 120 auch ein Kontrollfeld "Bildschirm speichern" (Safe Screen Shot) 126b,
wodurch dem Benutzer die Option gegeben wird, den Status des derzeitigen
Bildschirms zum späteren
Sichten (um einen Kontext für die
derzeitige Notiz bereitzustellen) zu speichern.
-
Ein
Knopf "Neu" (New) 127 gestattet
dem Benutzer, eine neue Notiz zu erzeugen, ohne den derzeitigen
Notizenerzeugung-Dialog 120 ausblenden
zu müssen.
Ein Knopf "Unternotiz" (Subnote) 128 gestattet
dem Benutzer, eine Unternotiz zu der derzeitigen aktiven Notiz zu
erzeugen, wodurch die Erzeugung hierarchischer Verbindungen zwischen Notizenobjekten
ermöglicht
wird.
-
Ein
Knopf "Abbrechen" (Cancel) 129 gestattet
dem Benutzer, die derzeitige Notiz abzubrechen bzw. zu löschen, bevor
sie in dem Notizendienst 20 gespeichert wird. Wird der
Knopf "Abbrechen" betätigt, dann
wird das derzeit aktive Notizenobjekt verworfen, d.h. der mit dem
derzeit aktiven Notizenobjekt belegte Speicher wird frei und das
Notizenobjekt wird nicht beständig
gespeichert.
-
7 zeigt
einen Notizenanzeige-Dialog "NOTES" 130 der
graphischen Benutzerschnittstelle 100, der angezeigt wird,
wenn der Menüpunkt "Anzeigen" des Drop-Down-Menüs 110 des
Notizendienstes ausgewählt
wurde. Der Notizenanzeige-Dialog 130 zeigt von der Klientenanwendung
erzeugte Notizen in einer Notizentabelle 135 an. Handelt
es sich bei der Klientenanwendung 15 um eine Kollaborationsanwendung,
dann zeigt der Notizenanzeige-Dialog 130 die während einer
bestimmten Kollaborationssitzung erzeugten Notizenobjekte an. Diese Notizen
können
nach dem Typ gefiltert werden. Beispielsweise wird beim Auswählen bzw.
Betätigen
des Reiterfeldes "Alle
Notizen" (All Notes) 131a eine
Liste aller Notizen unabhängig
vom Typ angezeigt, beim Auswählen
des Reiterfeldes "Allgemein" (General) 131b wird
eine Liste aller allgemeinen Notizen angezeigt, beim Auswählen des
Reiterfeldes "Aufgaben" (Action Items) 131c wird
eine Liste aller Aufgabennotizen angezeigt, beim Auswählen des
Reiterfeldes "Entscheidungen" (Decisions) 131d wird
eine Liste aller Entscheidungsnotizen angezeigt und beim Auswählen des
Reiterfeldes "Probleme" (Issues) 131e wird
eine Liste aller Problemnotizen angezeigt.
-
Der
Notizenanzeige-Dialog 130 gestattet dem Benutzer, die angezeigten
Notizen nach unterschiedlichen Kriterien zu sortieren. Beispielsweise werden
beim Klicken auf die Überschrift "Erzeugungszeit" (CREATED) 132c die
Notizen in der Reihenfolge der Erzeugungszeit sortiert. Beim Klicken auf
die Überschrift "Verfasser" (AUTHOR) 132d werden
die Notizen alphabetisch nach den Verfassernamen bzw. -kürzeln sortiert.
Die anderen Überschriften "Nummer" (NUM) 132a, "Typ" (TYPE) 132b, "Inhalt" (CONTENTS) 132e und "Verknüpfungen" (LINKS) 132f können angeklickt
werden, um in ähnlicher
Weise die Notizen entsprechend den Inhalten der jeweiligen Spalte
zu sortieren. Die Notizen können
auch nach Kriterien sortiert werden, die in einem (nicht dargestellten)
Sortier-Dialog angegeben sind, auf den durch Klicken auf einen Knopf "Sortieren" (Sort) 133a zugegriffen
werden kann.
-
Der
Notizenerzeugung-Dialog 130 kann auch Filtermöglichkeiten
umfassen, wie beispielsweise die Möglichkeit, Notizenobjekte basierend
auf einem Zeitintervall für
das Attribut "Erzeugungszeit" oder "Letzte Modifikation" zu filtern. Diese
Filtermöglichkeiten
können
in einem (nicht dargestellten) "Filter-Dialog" dargestellt sein,
auf den mittels Klicken auf einen Knopf "Filtern" (Filter) 133b zugegriffen werden
kann.
-
In
dem dargestellten Ausführungsbeispiel wird
ein Notizendetail-Fenster 140 eingeblendet bzw. geöffnet, wenn
auf eine Notiz in der Notizentabelle 135 doppelgeklickt
wird oder wenn die Notiz in der Notizentabelle 135 ausgewählt und
anschließend
ein Knopf "Details" 133c geklickt
wird. Dieses (nicht dargestellte) Notizendetail-Fenster zeigt alle
Attribute und Beziehungen eines ausgewählten Notizenobjekts an und
stellt dem Benutzer insbesondere die Möglichkeit bereit, die Inhalte
der Attribute in diesem Fenster zu editieren, Objektverknüpfungen
hinzuzufügen
oder zu löschen
und/oder die Notiz vollständig zu
löschen.
Selbstverständlich
weisen unterschiedliche Typen von Notizobjekten (wie durch den Wert des
Notizentyp-Attributs angezeigt) unterschiedliche Sätze von
Attributen auf. Einige Attribute werden für zwei oder mehrere Notizobjekttypen
die gleichen sein. Des weiteren können Attribute jedes Notizenobjekts
konfiguriert werden, um ein Editieren des Attribut zu gestatten
oder nicht zu gestatten.
-
Unter
Bezugnahme auf 7 kann eine Notiz in dem Notizenanzeige-Dialog 130 mit
einer anderen Notiz oder einem Objekt eines anderen Typs verknüpft werden,
indem auf einen Knopf "Verknüpfen" (Link) 133d geklickt
wird, wodurch ein in 8 dargestellter Verknüpfungsdialog
(CREATE LINK) geöffnet
wird. Ein Knopf "Entknüpfen" (Unlink) 133e gestattet
dem Benutzer, eine einem ausgewählten
Notizenobjekt zugeordnete Verknüpfungsbeziehung
zu entfernen. Ein Knopf "Editieren" (Edit) 133f kann
angeklickt werden, um das Notizendetail-Fenster 140 einzublenden
und dem Benutzer zu gestatten, unterschiedliche Attribute einer
ausgewählten
Notiz zu editieren. Ein Knopf "Löschen" (Delete) 133g gestattet
einem Benutzer, eine ausgewählte
Notiz aus dem Sy stem zu löschen.
Schließlich
wird durch Betätigen eines
Knopfes "Abbrechen" (Cancel) 134 der
Notizenanzeige-Dialog 130 geschlossen.
-
10 zeigt ein Blockdiagramm einer letzten
Kollaborationsumgebung, die den Notizendienst 20 verwendet.
Wie dargestellt, führt
ein Kollaborationsserver 21 eine Kollaborationsfunktion 22 aus,
die eine Vielzahl von Kollaborationssitzungsanwendungen 15,
die auf jeweiligen zu einem Netzwerk 12 (bspw. im Internet)
zusammengefaßten
Klienten (clients) 15a, 15b und 15n ablaufen,
synchronisiert. Die Kollaborationsfunktion 22 gestattet
den Klienten 15a, 15b und 15n, sich zu
einer Kollaborationssitzung unter Verwendung bekannter Kollaborationsverbindungstechniken
zu verbinden. Derartige Techniken sind bspw. aus der von CoCreate
entwickelten Anwendung OneSpace bekannt. Während die Sitzung geöffnet ist,
sind die jeweiligen Sichtbereiche 18a, 18b, 18c auf
der Anzeige jedes teilnehmenden Klienten 15a, 15b und 15n derart
synchronisiert, daß die in
dem jeweiligen Sichtbereich 18a, 18b, 18c betrachteten
Daten gleichzeitig angezeigt werden.
-
In
einer Kollaborationsumgebung stellen Notizen öffentliche Informationen dar.
Wird ein Notizenobjekt erzeugt, so können alle Teilnehmer der Kollaborationssitzung
die Notiz sehen. Entsprechend können
alle Sitzungsteilnehmer beim Anzeigen einer Notiz oder bei der Durchführung einer
Suche die angezeigte Notiz bzw. die Suchergebnisse sehen.
-
Für die Notizen
können
Beziehungen zu anderen Objekten innerhalb einer Kollaborationssitzung,
wie CAD-Geometrie (Teile, Kanten, Flächen, Merkmale, Zusammensetzungen),
andere Notizen, einer Bildschirmaufnahme (statisches 2D-Bild) oder anderen
Objekten wie Markierungen, Dokumenten, und sogar mit Objekten außerhalb
der Anwendung 15 hergestellt werden.
-
Die 10a und 10b zeigen
gemeinsam ein UML-Schaubild eines Ausführungsbeispiels eines erfindungsgemäßen Notizendienstes 20.
-
11 zeigt
ein Beispiel einer Notizentabelle 200, in der eine Notizenliste
für eine
spezielle, d.h. konkrete Sitzung implementiert ist. Jede Notizentabelle 200 ist
in der Notizendatenbank 30 gespeichert. In dem dargestellten
Ausführungsbeispiel
handelt es sich bei der Notizentabelle 200 um eine relationale Datenbank,
in der jede Reihe ein anderes Notizenobjekt repräsentiert, das durch ein Attribut "Notizenkennung" (Note ID) 12a identifiziert
wird, und jede Spalte ein anderes Attribut des Notizenobjekts 10 repräsentiert.
In dem dargestellten Ausführungsbeispiel
existiert für
jedes mögliche
Attribut jedes definierten Notizentyps eine Spalte. Entsprechend
wird in der Notizentabelle 200 jeweils eine Spalte auf
jedes mögliche Notizenobjektattribut
abgebildet. Die Notizentabelle 200 des Ausführungsbeispiels
umfaßt
Spalten "Notizenkennung" 201, "Notizentyp" (Note Typ) 202, "Erzeugungszeit" (Creation Time) 203, "Verfasser" (Author) 204, "zuletzt modifiziert
am" (Last Modified
Time) 205, "zuletzt
modifiziert von" (Last
Modified By) 206, "zugewiesen
an" (Assigned To) 207, "Frist" (Due Date) 208, "Status" 209 und "Verknüpfungsliste" (Links List) 210.
-
Das
Feld "Verknüpfungsliste" jeder Notiz enthält einen
Zeiger (Pointer) auf eine verknüpfte
Liste mit zugehörigen
Notizenverknüpfungen.
Alternativ können
die unterschiedlichen Notizen zugeordneten Verknüpfungen in einer wie in 12 dargestellten separaten
Verknüpfungstabelle
implementiert sein, wobei eine Spalte der Tabelle das Feld "Notizenkennung" (Note ID) repräsentiert
und die folgende Spalte Verknüpfungen
auf andere Objekte (falls vorhanden) enthält, die dem durch die Notizenkennung
identifizierten Notizenobjekt zugeordnet sind. Beispielsweise ordnet
der Notizenkennungswert A dem Notizenobjekt in der Notizentabelle
die verknüpfte
Liste in der Verknüpfungstabelle
zu.