-
HINTERGRUND
-
Eine oder mehrere in dieser Beschreibung offenbarte Ausführungsformen beziehen sich auf kollaborative Systeme.
-
Kollaborative Systeme werden in Organisationen oft verwendet, um Datenübertragung und Leistungsfähigkeit zu verbessern. Organisationen haben darüber hinaus begonnen, kollaborative Systeme für die Interaktion mit Kunden einzusetzen. Aus Sicherheitsgründen sind die kollaborativen Systeme, die innerhalb einer Organisation verwendet werden, üblicherweise getrennt und unabhängig von den kollaborativen Systemen, die für die Interaktion mit Kunden verwendet werden. Ein kollaboratives System, auf das Mitglieder der Organisation zugreifen können, kann sich zum Beispiel „hinter“ einer Firewall der Organisation befinden, während dies bei einem kollaborativen System, das für die Interaktion mit Kunden verwendet wird, nicht der Fall ist.
-
In vielen Fällen ist es wünschenswert, Informationen in zwei oder mehr kollaborativen Systemen zur Verfügung zu stellen, z.B. in einem internen kollaborativen System der Organisation, auf das nur Mitglieder der Organisation zugreifen können, und ferner in einem kollaborativen System, auf das Nichtmitglieder der Organisation zugreifen können. Zu diesem Zweck müssen die Informationen, die zur Verfügung gestellt werden sollen, manuell und unabhängig in jedes kollaborative System hochgeladen werden. Wenn sich die Informationen ändern, müssen die Änderungen in jedem kollaborativen System manuell implementiert werden. Aktuelle Informationen in mehreren kollaborativen Systemen zu verwalten, kann eine aufwändige Aufgabe sein.
-
Aus
US 2005 / 0 044 104 A1 ist ein Informationsverarbeitungssystem sowie ein Speicherplatzzuordnungsverfahren bekannt. Dabei werden Daten dupliziert, um sie dann zwischen den Speichern zu verschieben.
-
Aus
US 2003 / 0 037 175 A1 ist ein Import-/Export-Verfahren bekannt. Dabei werden Daten in eine Datenbank geladen und asynchron verarbeitet, um hinterher zur Verfügung zu stehen und einen Abschlussbericht zu speichern.
-
Ausgehend von diesem Stand der Technik stellt sich die Erfindung die Aufgabe, die Verarbeitung von Artefakten in einem gemeinsam genutzten System effektiver zu gestalten.
-
Diese Aufgabe wird gelöst durch ein Verfahren zum Verarbeiten eines Artefakts nach Anspruch 1, ein System zum Verarbeiten eines Artefakts nach Anspruch 8 und ein Computerprogrammprodukt nach Anspruch 9. Bevorzugte Ausführungsformen der Erfindung sind Gegenstand der jeweiligen Unteransprüche.
-
KURZE ZUSAMMENFASSUNG
-
Die hier beschriebenen Ausführungsformen der Erfindung beziehen sich auf kollaborative Systeme.
-
Die Erfindung betrifft ein Verfahren zum Verarbeiten eines Artefakts. Das Verfahren kann beinhalten, dass jedes kollaborative System aus einer Vielzahl von kollaborativen Systemen unter Verwendung eines Prozessors anhand von mindestens einem Attribut des Artefakts dahingehend bewertet wird, ob es zum Hosten des Artefakts geeignet ist. Auf der Grundlage der Bewertung kann ein erstes kollaboratives System aus der Vielzahl von kollaborativen Systemen ausgewählt werden. Das Artefakt kann in dem ersten kollaborativen System gespeichert werden.
-
Das Verfahren kann außerdem beinhalten, dass ein Artefakt einer Vielzahl von Benutzern zugeordnet wird und jedes kollaborative System aus einer Vielzahl von kollaborativen Systemen, für die jeder Benutzer aus der Vielzahl von Benutzern eine Zugriffsregistrierung aufweist, als ein potenzielles kollaboratives System ermittelt wird. Aus den potenziellen kollaborativen Systemen kann ein erstes kollaboratives System ausgewählt werden. Das Artefakt kann in dem ersten kollaborativen System gespeichert werden.
-
Desgleichen betrifft die Erfindung ein System zum Verarbeiten eines Artefakts. Das System kann einen Prozessor aufweisen, der so konfiguriert ist, dass er wie in dieser Beschreibung dargelegt ausführbare Operationen initialisiert.
-
Außerdem betrifft die Erfindung ein Computerprogrammprodukt zum Verarbeiten eines Artefakts. Das Computerprogrammprodukt kann ein computerlesbares Speichermedium mit einem darin enthaltenen computerlesbaren Programmcode beinhalten. Der computerlesbare Programmcode kann so konfiguriert werden, dass er die in dieser Beschreibung vorgestellten verschiedenen Operationen durchführt oder initialisiert.
-
Figurenliste
-
- 1 ist ein Blockschaltbild, das ein System zum gemeinsamen Nutzen von Artefakten zwischen kollaborativen Systemen gemäß einer in dieser Beschreibung offenbarten Ausführungsform veranschaulicht.
- 2 ist ein Blockschaltbild, das ein Beispiel eines Datenverarbeitungssystems veranschaulicht.
- 3 ist ein Ablaufplan, der ein Verfahren zum gemeinsamen Nutzen von Artefakten zwischen kollaborativen Systemen gemäß einer in dieser Beschreibung offenbarten anderen Ausführungsform veranschaulicht.
- 4 ist ein Ablaufplan, der ein Verfahren zum gemeinsamen Nutzen von Artefakten zwischen kollaborativen Systemen gemäß einer in dieser Beschreibung offenbarten anderen Ausführungsform veranschaulicht.
- 5 ist ein Ablaufplan, der ein Verfahren zum gemeinsamen Nutzen von Artefakten zwischen kollaborativen Systemen gemäß einer in dieser Beschreibung offenbarten anderen Ausführungsform veranschaulicht.
- 6 ist ein Ablaufplan, der ein Verfahren zum gemeinsamen Nutzen von Artefakten zwischen kollaborativen Systemen gemäß einer in dieser Beschreibung offenbarten anderen Ausführungsform veranschaulicht.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Eine oder mehrere in dieser Beschreibung offenbarte Ausführungsformen beziehen sich auf kollaborative Systeme. Gemäß den in dieser Beschreibung offenbarten erfinderischen Anordnungen kann automatisch ermittelt werden, welches kollaborative System aus einer Vielzahl von unterschiedlichen kollaborativen Systemen geeignet ist, um ein Artefakt zu hosten. Ein „Artefakt“ wie in dieser Beschreibung verwendet kann sich auf ein digitales Objekt oder eine Anlage beziehen. Ein Artefakt kann zum Beispiel eine Datei, beispielsweise ein Dokument, eine Textdatei, eine Präsentation oder Ähnliches, eine Multimedia-Datei, eine Audio-Datei, eine Video-Datei usw. sein.
-
Eines oder mehrere Attribute eines Artefakts, das in einem kollaborativen System gehostet werden soll, kann bzw. können bewertet werden. Eine Vielzahl von kollaborativen Systemen kann auch im Hinblick auf die Attribute des Artefakts und eines oder mehrere Merkmale jedes berücksichtigten kollaborativen Systems bewertet werden. Auf der Grundlage der Bewertung kann ein kollaboratives System ausgewählt werden, das zum Hosten des Artefakts geeignet ist.
-
Das Artefakt kann dementsprechend automatisch in das ausgewählte kollaborative System hochgeladen oder darin gespeichert werden. In einigen Fällen können Verknüpfungen (links) zu dem Artefakt in einem oder mehreren anderen kollaborativen Systemen hergestellt werden, wodurch die Rechnerressourcen verringert werden, die andernfalls durch die Bereitstellung des Artefakts in mehr als einem kollaborativen System gebraucht würden. Andere Aspekte der in dieser Beschreibung offenbarten einen oder mehreren Ausführungsformen ergeben sich aus der folgenden Beschreibung in Verbindung mit den Figuren.
-
1 ist ein Blockschaltbild, das ein System zum gemeinsamen Nutzen von Artefakten zwischen kollaborativen Systemen gemäß einer in dieser Beschreibung offenbarten Ausführungsform veranschaulicht. Wie dargestellt, veranschaulicht 1 die kollaborativen Systeme 105, 110 und 115. Jedes der kollaborativen Systeme 105 bis 115 kann eine Anwendungsprogrammierschnittstelle (API) enthalten, über die ein oder mehrere andere Benutzer und/oder Systeme interagieren können. Das kollaborative System 105 beinhaltet die API 120. Das kollaborative System 110 beinhaltet die API 125. Das kollaborative System 115 beinhaltet die API 130.
-
Ein „kollaboratives System“ bezieht sich allgemein auf eine Kombination von einem oder mehreren Datenverarbeitungssystemen, die geeigneten Computerprogrammcode, z.B. eine kollaborative Anwendung, ausführen, die es mehr als einem mit einer bestimmten Aufgabe befassten Benutzer ermöglicht, zur Erfüllung dieser Aufgabe zusammenzuarbeiten. Mit Hilfe des kollaborativen Systems kann die Gruppe der mit der Aufgabe befassten Benutzer kollaborieren, d.h. zusammenarbeiten, indem eines oder mehrere für die Aufgabe relevante Artefakte gemeinsam genutzt werden, indem Daten ausgetauscht werden und Ähnliches. In einigen Fällen kann das kollaborative System Projektmanagementfunktionen wie Aufgabenzuweisung, Zeitmanagement von Terminen und gemeinsam genutzte Kalender bereitstellen. Zu Beispielen von kollaborativen Systemen können LotusLive™ und IBM Connections gehören, die beide von der International Business Machines Corporation in Armonk, New York, erhältlich sind. Zu anderen Beispielen von kollaborativen Systemen können Wikis, Online-Treffpunkte, Online-Foren usw. zählen, bei denen die Mitgliedschaft oder der Zugang zu einem kollaborativen Raum innerhalb des kollaborativen Systems auf eine festgelegte und/oder begrenzte Gruppe von Benutzern beschränkt sein kann, die in dem kollaborativen System registriert sind.
-
Ein „kollaborativer Raum“ kann sich wie in dieser Beschreibung verwendet auf einen Bereich, z.B. einen logischen Bereich oder einen virtuellen Bereich, oder auf eine in einem kollaborativen System definierte Umgebung beziehen, in dem bzw. in der Artefakte gespeichert oder gehostet werden können. Jeder kollaborative Raum kann einem oder mehreren Benutzern zugehörig sein, die in dem kollaborativen System registriert sind, in dem sich der kollaborative Raum befindet. Benutzer, die einem kollaborativen Raum zugehörig sind, erhalten Zugriff auf den kollaborativen Raum. Jedem kollaborativen Raum in einem kollaborativen System kann eine unterschiedliche Kombination von Benutzern zugehörig sein, die unabhängig von jedem anderen kollaborativen Raum im kollaborativen System spezifiziert werden kann. Bei den Benutzern, die Zugriff auf einen kollaborativen Raum erhalten, handelt es sich üblicherweise um eine Teilgruppe der Benutzer, die in dem kollaborativen System registriert sind.
-
Ein gemeinsam genutztes System 135 kann mit jedem der kollaborativen Systeme 105 bis 115 über ein Datenübertragungsnetzwerk (Netzwerk) 140 zum Zwecke des Datenaustauschs verbunden sein. Das Netzwerk 140 kann als drahtloses Netzwerk, drahtgebundenes Netzwerk, öffentliches Netzwerk, privates Netzwerk oder eine beliebige Kombination davon umgesetzt werden. Allgemein kann ein Benutzer, beispielsweise ein Eigentümer eines Artefakts 145, das in einem der kollaborativen Systeme 105 bis 115 gehostet werden soll, mit dem gemeinsam genutzten System 135 interagieren. Das gemeinsam genutzte System 135 kann zum Beispiel eine Benutzerschnittstelle, z.B. eine grafische Benutzeroberfläche (graphical user interface - GUI), bereitstellen, über die der Eigentümer des Artefakts 145 Daten austauschen kann.
-
Bei einem Aspekt kann ein Eigentümer des Artefakts 145, z.B. ein Benutzer, dem gemeinsam genutzten System 135 das Artefakt 145 über die Benutzerschnittstelle angeben. Das gemeinsam genutzte System 135 kann so konfiguriert werden, dass es automatisch das zum Hosten des Artefakts 145 am besten geeignete kollaborative System 105 bis 115 ermittelt. Die Auswahl eines bestimmten kollaborativen Systems 105 bis 115 kann auf der Grundlage einer Bewertung der Attribute des Artefakts 145, einer Bewertung der Merkmale der kollaborativen Systeme 105 bis 115 und/oder eines Vergleichs der Attribute und Merkmale vorgenommen werden. Nach der Auswahl eines kollaborativen Systems kann das gemeinsam genutzte System 135 mit dem ausgewählten kollaborativen System über die API dieses kollaborativen Systems interagieren, um das Artefakt 145 hochzuladen.
-
Zum Zwecke der Veranschaulichung soll der Fall betrachtet werden, bei dem das gemeinsam genutzte System 135 das kollaborative System 105 automatisch auswählt, um das Artefakt zu hosten. Das gemeinsam genutzte System 135 kann in jedem der kollaborativen Systeme 105 bis 115 registriert werden, wodurch das gemeinsam genutzte System über die API 120 beliebige Objekte, z.B. Dokumente, Aktivitäten, Diskussionsbeiträge usw., erzeugen kann, die gegebenenfalls in dem kollaborativen System 105 zum Hosten des Artefakts 145 benötigt werden. Das gemeinsam genutzte System 135 kann das kollaborative System 105 zum Beispiel anweisen, einen kollaborativen Raum zu erzeugen, in dem das Artefakt 145 gespeichert wird und über Benutzer, die auf das Artefakt 145 zugreifen wollen, Zugriff erhalten.
-
2 ist ein Blockschaltbild, das ein Beispiel eines Datenverarbeitungssystems 200 veranschaulicht. Die kollaborativen Systeme 105 bis 115 und das gemeinsam genutzte System 135 können zum Beispiel jeweils wie in 2 veranschaulicht unter Verwendung eines Datenverarbeitungssystems oder einer Vielzahl von Datenverarbeitungssystemen, die zum Zwecke des Datenaustauschs miteinander verbunden sind, ausgeführt werden.
-
Das System 200 kann mindestens einen Prozessor 205 aufweisen, der über einen Systembus 215 mit den Speicherelementen 210 verbunden ist. Das System 200 als solches kann Programmcode, z.B. eine kollaborative Anwendung oder eine gemeinsam genutzte Systemanwendung, in den Speicherelementen 210 speichern. Der Prozessor 205 kann den Programmcode ausführen, auf den über den Systembus 215 von den Speicherelementen 210 zugegriffen wird. Bei einem Aspekt kann das System 200 zum Beispiel als Computer ausgeführt sein, der sich zum Speichern und/oder Ausführen von Programmcode eignet. Es ist jedoch ersichtlich, dass das System 200 in Form eines beliebigen Systems, das einen Prozessor und einen Speicher enthält, umgesetzt werden kann, das die in dieser Beschreibung dargelegten Funktionen durchführen kann.
-
Die Speicherelemente 210 können eine oder mehrere physische Speichereinheiten wie zum Beispiel den lokalen Speicher 220 und eine oder mehrere Massenspeichereinheiten 225 beinhalten. Mit lokaler Speicher 220 sind ein Schreib-Lese-Speicher oder andere nichtdauerhafte Speichereinheit(en) gemeint, der bzw. die allgemein während der eigentlichen Ausführung des Programmcodes verwendet werden. Die Massenspeichereinheit(en) 225 kann bzw. können als Festplatte oder andere dauerhafte Datenspeichereinheit umgesetzt werden. Das System 200 kann einen oder mehrere Cachespeicher (nicht dargestellt) enthalten, die ein vorübergehendes Speichern von mindestens einem Teil des Programmcodes bereitstellen, um die Häufigkeit zu verringern, mit der Programmcode aus der Massenspeichereinheit 225 während der Ausführung abgerufen werden muss.
-
Eingabe/Ausgabe(E/A)-Einheiten wie beispielsweise eine Tastatur 230, eine Anzeige 235 und eine Zeigeeinheit 240 können wahlweise mit dem System 200 verbunden sein. Die E/A-Einheiten können entweder direkt oder über dazwischengeschaltete E/A-Steuereinheiten mit dem System 200 verbunden sein. Der Netzwerkadapter 245 kann auch mit dem System 200 verbunden sein, damit das System 200 über dazwischengeschaltete private oder öffentliche Netzwerke mit anderen Systemen, Computersystemen, rechnerfernen Drucken und/oder rechnerfernen Speichereinheiten verbunden werden kann. Modems, Kabelmodems und Ethernet-Karten zählen zu Beispielen verschiedener Arten des Netzwerkadapters 245, die zusammen mit dem System 200 verwendet werden können.
-
Wie bereits erwähnt, können die Speicherelemente 210 im Fall eines kollaborativen Systems eine kollaborative Anwendung speichern, wodurch das System 200 so konfiguriert wird, dass es die in dieser Beschreibung für ein kollaboratives System dargelegten verschiedenen Funktionen und/oder Operationen durchführen kann. Bei einem anderen Aspekt können die Speicherelemente 210 im Fall eines gemeinsam genutzten Systems eine gemeinsam genutzte Anwendung speichern, wodurch das System 200 so konfiguriert wird, dass es die in dieser Beschreibung für ein gemeinsam genutztes System dargelegten verschiedenen Funktionen und/oder Operationen durchführen kann.
-
3 ist ein Ablaufplan, der ein Verfahren 300 zum gemeinsamen Nutzen von Artefakten zwischen kollaborativen Systemen gemäß einer in dieser Beschreibung offenbarten anderen Ausführungsform veranschaulicht. Das Verfahren 300 veranschaulicht ein automatisches Verfahren zum Auswählen eines bestimmten kollaborativen Systems aus einer Vielzahl von kollaborativen Systemen, um ein Artefakt zu hosten. Das Verfahren 300 kann von dem gemeinsam genutzten System 135 durchgeführt werden, wie dies mit Bezug auf die 1 und 2 dieser Beschreibung dargelegt wird.
-
In Schritt 305 kann das gemeinsam genutzte System ein Artefakt identifizieren, das von einem kollaborativen System gehostet werden soll. Ein Benutzer wie beispielsweise ein Eigentümer des Artefakts kann mit einer Benutzerschnittstelle des gemeinsam genutzten Systems interagieren, um das Artefakt zu spezifizieren. In Schritt 310 kann das gemeinsam genutzte System ein oder mehrere Attribute des identifizierten Artefakts ermitteln. Zu Beispielen von Attributen des Artefakts können der Dateityp, z.B. eine Dateierweiterung, die Dateigröße, ob die Datei eine Mediendatei ist, die über die kollaborative Site, welche das Artefakt hostet, abgespielt wird, die Anzahl der Benutzer, die auf das Artefakt zugreifen wollen usw., gehören, ohne darauf beschränkt zu sein.
-
Bei einem anderen Aspekt können Attribute des Artefakts eine Liste von Benutzern beinhalten, die Zugriff auf das Artefakt haben sollen, sobald dieses in ein kollaboratives System geladen wurde. Das gemeinsam genutzte System kann zum Beispiel einen oder mehrere Benutzer ermitteln, die Zugriff auf das Artefakt haben sollen, sobald dieses in einem bestimmten kollaborativen System gehostet wird. Der Eigentümer des Artefakts kann einen oder mehrere andere Benutzer spezifizieren, die Zugriff, z.B. einen Lese- oder Schreibzugriff, auf das Artefakt haben sollen, wenn dieses von einem kollaborativen System gehostet wird. Diese Informationen können vom Eigentümer über die zum Spezifizieren des Artefakts verwendete Benutzerschnittstelle bereitgestellt werden. Bei jedem identifizierten Benutzer kann es sich um einen Benutzer handeln, der in dem gemeinsam genutzten System und in einem oder mehreren kollaborativen Systemen registriert ist, die zum Hosten des Artefakts zur Verfügung stehen.
-
In Schritt 315 kann das gemeinsam genutzte System eines oder mehrere Merkmale jedes kollaborativen Systems aus einer Vielzahl von kollaborativen Systemen, die zum Hosten des Artefakts zur Verfügung stehen, ermitteln. Bei einem Aspekt kann das gemeinsam genutzte System eine Liste von kollaborativen Systemen beinhalten, die zum Hosten des Artefakts zur Verfügung stehen. Die Liste kann bekannte Merkmale jedes kollaborativen Systems spezifizieren. Einige Merkmale können statisch sein wie beispielsweise die Kosten zum Speichern einer Dateneinheit in dem kollaborativen System. Andere Merkmale können insofern dynamisch sein, als die Merkmale sich mit der Zeit ändern und durch eine Abfrage von Seiten des gemeinsam genutzten Systems bei dem zur Verfügung stehenden kollaborativen System ermittelt werden. Das gemeinsam genutzte System muss daher das bzw. die kollaborative(n) System(e) abfragen, um den aktuellen Status oder Wert des Merkmals zu ermitteln. Zu einem Beispiel eines dynamischen Merkmals eines kollaborativen Systems kann die Dauer (z.B. dauerhafte oder nicht vorübergehende Speicherung) gehören wie beispielsweise der verfügbare oder unbenutzte Plattenspeicherplatz.
-
Bei einem weiteren Beispiel eines Merkmals, das abhängig von dem jeweiligen kollaborativen System statisch oder dynamisch sein kann, kann es sich darum handeln, welche Benutzer in dem kollaborativen System registriert sind und darauf zugreifen können. Das gemeinsam genutzte System kann zum Beispiel jedes kollaborative System auf der Liste abfragen, um zu ermitteln, ob jeder dem Artefakt zugehörige Benutzer in dem kollaborativen System registriert ist und als solcher Zugriff auf das Artefakt hätte, wenn dieses in dem kollaborativen System gehostet wird. In einem anderen Beispiel können die Merkmale beinhalten, ob der Eigentümer des Artefakts Schreibzugriff auf das kollaborative System hat. In diesem Zusammenhang können beliebige kollaborative Systeme, auf die der Eigentümer keinen Schreibzugriff hat, ausgeschlossen werden, so dass sie nicht für das Hosten des Artefakts in Betracht kommen.
-
Betrachten wir den Fall, bei dem Benutzer, die auf das Artefakt zugreifen wollen, sobald dieses in einem kollaborativen System gehostet wird, bei verschiedenen kollaborativen Systemen unterschiedliche Rechte haben. Einige Benutzer zum Beispiel können Angestellte einer Organisation mit Zugriff auf ein intern zur Verfügung stehendes kollaboratives System sein, das durch eine Firewall oder eine andere Netzwerksicherheitsmaßnahme der Organisation geschützt wird, während andere Benutzer nicht Angestellte sind und keinen Zugriff auf das intern zur Verfügung stehende kollaborative System haben. Die Benutzer, die nicht Angestellte sind, können zum Beispiel Zugriff auf ein öffentlich zur Verfügung stehendes kollaboratives System haben, das sich außerhalb der Firewall befindet. Somit kann es der Fall sein, dass einer oder mehrere Benutzer, die Zugriff auf das Artefakt haben wollen, registrierte Benutzer der kollaborativen Systeme 1 und 3 sind, während einer oder mehrere andere Benutzer, die ebenfalls Zugriff auf das Artefakt haben wollen, in den kollaborativen Systemen 2 und 3 registriert sind.
-
In Schritt 320 kann das gemeinsam genutzte System die kollaborativen Systeme auf der Liste je nach Attribut(en) des Artefakts bewerten, das gehostet werden soll. Die Bewertung kann unter Verwendung einer Vielfalt von Techniken durchgeführt werden. Bei einem Aspekt können Scoring-Techniken verwendet werden, bei denen jedes kollaborative System auf seine Eignung bewertet wird, wobei eines oder mehrere oder alle Attribute des Artefakts und Merkmale der kollaborativen Systeme berücksichtigt werden. Ein Administrator des gemeinsam genutzten Systems kann zum Beispiel Scoring-Parameter festlegen, die verwendet werden können, um die kollaborativen Systeme in Bezug auf ihre Eignung zum Hosten des Artefakts auf der Grundlage der Attribute des Artefakts einzustufen. Bei einem anderen Aspekt können Techniken verwendet werden, bei denen die kollaborativen Systeme von der Liste ständig reduziert oder verringert werden, indem jeweils ein Kriterium angewendet oder ein Vergleich durchgeführt wird.
-
In einem Beispiel kann die Liste der kollaborativen Systeme zuerst bewertet werden, um eine Teilmenge von kollaborativen Systemen von der Liste zu ermitteln, in denen jeder dem Artefakt zugehörige Benutzer registriert ist und als solcher auf das Artefakt zugreifen kann, sofern dieses in dem kollaborativen System gehostet wird. Kollaborative Systeme, die dieses Kriterium nicht erfüllen, können außer Acht gelassen oder von der Liste der zur Verfügung stehenden kollaborativen Systeme gestrichen werden, die zum Hosten des Artefakts in Betracht kommen. Mit Bezug auf das vorherige Beispiel würde nur das kollaborative System 3 zum Hosten des Artefakts zur Verfügung stehen.
-
In einem anderen Beispiel kann durch einen Vergleich der Attribute des Artefakts mit den Merkmalen der kollaborativen Systeme eine Teilmenge von kollaborativen Systemen von der Liste ermittelt werden, die Merkmale aufweisen, die mit den Attributen des Artefakts in Bezug auf die zum Hosten des Artefakts benötigten verfügbaren Ressourcen übereinstimmen, z.B. ausreichender dauerhafter Speicher oder ausreichender dauerhafter Speicher, der am kostengünstigsten ist usw. In einem anderen Beispiel kann Lastausgleich in Betracht gezogen werden, wenn die aktuelle Arbeitslast jedes kollaborativen Systems als ein dynamisch ermitteltes Merkmal von dem gemeinsam genutzten System verwendet wird, um ein kollaboratives System auszuwählen, das zu diesem Zeitpunkt eine geringere Arbeitslast als andere aufweist.
-
Wie bereits erwähnt, kann jedes der Attribute und/oder Merkmale gleichzeitig oder jeweils einzeln bei der Bewertung berücksichtigt werden. Die Liste der kollaborativen Systeme kann zum Beispiel auf eine erste Teilmenge verringert werden, bei der jedes kollaborative System jedem Benutzer, der dem Artefakt zugehörig ist, Zugriff geben kann. Die Liste der kollaborativen Systeme kann noch weiter auf eine zweite Teilmenge von solchen kollaborativen Systemen verringert werden, die über ausreichend Rechnerressourcen zum Hosten des Artefakts verfügen. Die Liste der kollaborativen Systeme kann noch weiter auf eine dritte Teilmenge verringert werden, bei der die „N“ kostengünstigsten kollaborativen Systeme zum Hosten des Artefakts ausgewählt werden, wobei „N“ ein ganzzahliger Wert ist, der eine Einstellung des gemeinsam genutzten Systems sein kann.
-
In Schritt 325 kann das gemeinsam genutzte System unter den berücksichtigen kollaborativen Systemen dasjenige auswählen, das nach der in Schritt 320 durchgeführten Bewertung als am ehesten oder besten geeignet gilt, um das Artefakt zu hosten. Bei dem ausgewählten kollaborativen System kann es sich um das übrig gebliebene kollaborative System handeln, z.B. das b ei der Betrachtung nicht ausgeschlossen wurde, oder es kann sich um das kollaborative System mit dem besten Ergebnis der Bewertung handeln, wenn zwei oder mehr kollaborative Systeme als infrage kommend übrig bleiben, z.B. nicht ausgeschlossen wurden.
-
In Schritt 330 kann das gemeinsam genutzte System das Artefakt in dem ausgewählten kollaborativen System speichern. Durch das Speichern des Artefakts in dem ausgewählten kollaborativen System oder das Hochladen des Artefakts in das ausgewählte kollaborative System kann das gemeinsam genutzte System alle notwendigen und/oder geeigneten Objekte erzeugen, die gegebenenfalls in dem ausgewählten kollaborativen System benötigt werden. Das gemeinsam genutzte System kann zum Beispiel zuerst einen kollaborativen Raum in dem ausgewählten kollaborativen System erzeugen, z.B. einen Diskussions-Thread oder -raum, eine Aktivität, Aufgabe usw., in dem jeder Benutzer, der dem Artefakt zugehörig ist, als ein berechtigter Benutzer für den erzeugten kollaborativen Raum spezifiziert ist. Das gemeinsam genutzte System kann das Artefakt in dem erzeugten kollaborativen Raum speichern oder diesem auf andere Weise zuordnen.
-
Es ist ersichtlich, dass das gemeinsam genutzte System, das mit jedem kollaborativen System, das zum Hosten des Artefakts in Betracht kommt, über die API des jeweiligen kollaborativen Systems Daten austauschen kann, so konfiguriert werden kann, dass es die zum Durchführen der beschriebenen Maßnahmen erforderlichen Befehle oder Informationen bereitstellt. Das gemeinsam genutzte System kann die Operationen durchführen, die notwendig sind, um jedes kollaborative System zu veranlassen, das Artefakt zu hosten, und dies trotz der Tatsache, dass sich die Operationen, z.B. Befehle und/oder Syntax der Operationen, von einem kollaborativen System zum anderen unterscheiden.
-
Nach der Auswahl eines kollaborativen Systems und der Ausgabe von Befehlen, die das kollaborative System veranlassen, das Artefakt zu hosten, kann das gemeinsam genutzte System ein Verzeichnis der durchgeführten Transaktionen verwalten, das zum Beispiel das Artefakt, den Speicherort des Artefakts (z.B. einen Uniform Resource Identifier (URI) oder einen Uniform Resource Locator (URL)), die dem Artefakt zugehörigen Benutzer usw. spezifiziert.
-
4 ist ein Ablaufplan, der ein Verfahren 400 zum gemeinsamen Nutzen von Artefakten zwischen kollaborativen Systemen gemäß einer in dieser Beschreibung offenbarten anderen Ausführungsform veranschaulicht. Das Verfahren 400 zeigt ein Verfahren zum Auswählen eines kollaborativen Systems für das Hosten eines Artefakts aus einer Vielzahl von kollaborativen Systemen. Das Verfahren 400 kann von dem gemeinsam genutzten System 135 durchgeführt werden, wie dies mit Bezug auf die 1 und 2 dieser Beschreibung dargelegt wird.
-
In Schritt 405 kann das gemeinsam genutzte System den Eigentümer des zu hostenden Artefakts identifizieren. Der Eigentümer kann sich zum Beispiel in das gemeinsam genutzte System einloggen. In Schritt 410 kann das gemeinsam genutzte System das Artefakt ermitteln, das hochgeladen werden soll, z.B. indem der Eigentümer das Artefakt über eine Benutzerschnittstelle angibt. In Schritt 415 kann das gemeinsam genutzte System eines oder mehrere Attribute für das Artefakt ermitteln, z.B. Dateityp, Größe, Benutzer, die auf das Artefakt zugreifen usw.
-
In Schritt 420 kann das gemeinsam genutzte System die bestimmten kollaborativen Systeme ermitteln, auf die der Eigentümer Zugriff hat. Das gemeinsam genutzte System kann zum Beispiel so konfiguriert werden, dass es eine Liste von registrierten Benutzern beinhaltet, wobei die Liste weiterhin angibt, auf welches bzw. welche kollaborative(n) System(e) von den in dem gemeinsam genutzten System registrierten jeder Benutzer Zugriff hat sowie die Art des Zugriffs, z.B. Lesen, Schreiben usw. In einem anderen Beispiel kann das gemeinsam genutzte System die kollaborativen Systeme ermitteln, auf die der Eigentümer Schreibzugriff hat, indem jedes in dem gemeinsam genutzten System registrierte kollaborative System nach diesen Informationen abgefragt wird. Kollaborative Systeme, für die der Eigentümer Schreibzugriff hat, können als potenzielle kollaborative Systeme zum Hosten des Artefakts betrachtet werden. In Schritt 425 kann das gemeinsam genutzte System eine Liste von kollaborativen Systemen vorlegen, z.B. anzeigen, auf die der Eigentümer Schreibzugriff hat. Die Liste der kollaborativen Systeme, auf die der Eigentümer Schreibzugriff hat, kann dem Eigentümer vorgelegt werden, um eine Antwort anzufordern.
-
In Schritt 430 kann das gemeinsam genutzte System eine Eingabe von dem Eigentümer erhalten, mit der er angibt, mit welchem der in Schritt 425 vorgestellten kollaborativen Systeme der Eigentümer das Artefakt veröffentlichen möchte. Wie in dieser Beschreibung verwendet, kann „veröffentlicht“ bedeuten, dass das Artefakt über ein kollaboratives System zur Verfügung steht, das das Artefakt veröffentlicht. Das Artefakt kann, muss aber nicht, in einem kollaborativen System gespeichert oder gehostet werden, über das das Artefakt veröffentlicht wird.
-
In Schritt 435 kann das gemeinsam genutzte System die kollaborativen Systeme bewerten, die von dem Eigentümer wie oben beschrieben auf der Grundlage der Attribute des Artefakts und/oder von Merkmalen der kollaborativen Systeme ausgewählt wurden. In Schritt 440 kann das gemeinsam genutzte System ein kollaboratives System zum Hosten des Artefakts nach der in Schritt 435 durchgeführten Bewertung auswählen. In Schritt 445 kann das gemeinsam genutzte System das Artefakt in dem ausgewählten, z.B. einem „ersten“, kollaborativen System speichern.
-
In Schritt 450 kann das gemeinsam genutzte System eine Verknüpfung, z.B. eine symbolische Verknüpfung (soft link), zu dem im ersten kollaborativen System gehosteten Artefakt in einem oder mehreren, z.B. zweiten, kollaborativen Systemen herstellen oder bereitstellen. Wenn zum Beispiel kein einziges kollaboratives System jedem Benutzer, der dem Artefakt zugehörig ist, Zugriff auf das gehostete Artefakt geben kann, kann das Artefakt in einem ausgewählten kollaborativen System gehostet werden, und das gemeinsam genutzte System kann eine Verknüpfung zu dem Artefakt in einem oder mehreren anderen kollaborativen Systemen bereitstellen. In dieser Hinsicht kann das Artefakt von dem gemeinsam genutzten System automatisch in mehr als einem kollaborativen System veröffentlicht werden.
-
Das gemeinsam genutzte System kann ein kollaboratives System, z.B. ein zweites kollaboratives System, identifizieren, das einem oder mehreren oder allen Benutzern einen Zugriff bereitstellt, die auf das erste kollaborative System, das zum Hosten des Artefakts ausgewählt wurde, nicht zugreifen können. Das gemeinsam genutzte System kann eine Verknüpfung zu dem Artefakt in dem zweiten kollaborativen System bereitstellen. Durch das Bereitstellen einer Verknüpfung anstatt einer anderen Instanz des Artefakts in dem zweiten kollaborativen System wird vermieden, dass Rechnerressourcen unnötigerweise in mehreren kollaborativen Systemen verwendet werden.
-
Durch das Herstellen einer Verknüpfung kann das gemeinsam genutzte System alle notwendigen und/oder geeigneten Objekte erzeugen, die gegebenenfalls in dem zweiten kollaborativen System benötigt werden. Das gemeinsam genutzte System kann zum Beispiel zuerst einen kollaborativen Raum in dem ausgewählten kollaborativen System erzeugen, z.B. einen Diskussions-Thread oder -raum, eine Aktivität, Aufgabe usw., bei der einer oder mehrere oder alle dem Artefakt zugehörigen Benutzer als berechtigte Benutzer für den erzeugten kollaborativen Raum spezifiziert sind. Bei einem Aspekt können nur Benutzer, die im zweiten kollaborativen System, jedoch nicht im ersten kollaborativen System registriert sind, als berechtigte Benutzer für den kollaborativen Raum angegeben werden, der zum Speichern der Verknüpfung im zweiten kollaborativen System erzeugt wurde.
-
Wenn der Eigentümer zum Beispiel zwei kollaborative Systeme auswählt, in denen das Artefakt veröffentlicht werden soll, kann das gemeinsam genutzte System ein erstes kollaboratives System zum Hosten des Artefakts auswählen, z.B. das kollaborative System, das als am besten geeignet ermittelt wurde, sowie ein zweites kollaboratives System, in dem eine Verknüpfung zu dem Artefakt bereitgestellt werden kann.
-
Das gemeinsam genutzte System kann so konfiguriert werden, dass es einen Zugriff von dem kollaborativen System, in dem eine Verknüpfung zu dem Artefakt bereitgestellt wird (z.B. das kollaborative Verknüpfungssystem), zu dem kollaborativen System vermittelt, das das Artefakt hostet (z.B. das kollaborative Hosting-System). Als Reaktion auf einen Benutzer zum Beispiel, der die Verknüpfung in dem kollaborativen Verknüpfungssystem wählt, kann das kollaborative Verknüpfungssystem eine Anforderung an das gemeinsam genutzte System initialisieren, um das Artefakt abzurufen. Das gemeinsam genutzte System, das über Berechtigungsnachweise verfügt, um sowohl auf das kollaborative Hosting-System als auch auf das kollaborative Verknüpfungssystem zuzugreifen, kann feststellen, dass die Anforderung von einem Benutzer kam, der dem angeforderten Artefakt zugehörig ist, sowie von dem kollaborativen Verknüpfungssystem. Das gemeinsam genutzte System kann das von der ausgewählten Verknüpfung angeforderte Artefakt ermitteln, das Artefakt in dem kollaborativen Hosting-System lokalisieren, z.B. die in dem gemeinsam genutzten System für das Artefakt gespeicherte URI oder URL, eine Kopie des Artefakts von dem kollaborativen Hosting-System abrufen und das Artefakt dem anfordernden Benutzer bereitstellen, der die Verknüpfung von dem kollaborativen Verknüpfungssystem ursprünglich ausgewählt hat.
-
5 ist ein Ablaufplan, der ein Verfahren 500 zum gemeinsamen Nutzen von Artefakten zwischen kollaborativen Systemen gemäß einer in dieser Beschreibung offenbarten anderen Ausführungsform veranschaulicht. Das Verfahren 500 veranschaulicht insbesondere ein Verfahren zum Weiterleiten von Informationen zwischen kollaborativen Systemen im Zusammenhang mit einem Artefakt. Das Verfahren 500 kann von dem gemeinsam genutzten System 135 durchgeführt werden, wie dies mit Bezug auf die 1 und 2 dieser Beschreibung dargelegt wird.
-
Das Verfahren 500 kann in einem Zustand beginnen, in dem ein Artefakt in einem kollaborativen Hosting-System gehostet wird und eine Verknüpfung zu dem Artefakt in einem kollaborativen Verknüpfungssystem bereitgestellt wird. Ein Benutzer mit Zugriff auf das kollaborative Verknüpfungssystem hat auf das Artefakt zugegriffen und das Artefakt auf die eine oder andere Weise geändert. Der Benutzer will daher eine Rückmeldung in Form einer editierten Version des Artefakts an einen oder mehrere andere Benutzer geben, die dem Artefakt zugehörig sind und Zugriff auf das kollaborative Hosting-System haben.
-
In Schritt 505 kann das kollaborative Verknüpfungssystem eine geänderte Version des Artefakts identifizieren. Ein Benutzer kann zum Beispiel mit dem kollaborativen Verknüpfungssystem interagieren, um über eine Benutzerschnittstelle eine geänderte Version des Artefakts zu spezifizieren, die in das kollaborative Verknüpfungssystem hochgeladen wird. In Schritt 510 kann das kollaborative Verknüpfungssystem eine Kopie der geänderten Version des Artefakts in dem kollaborativen Raum speichern, in dem die Verknüpfung zu dem Artefakt bereitgestellt wird.
-
In Schritt 515 kann das gemeinsam genutzte System feststellen, dass eine geänderte Version des Artefakts in den kollaborativen Raum hochgeladen wurde. Bei einem Aspekt kann das gemeinsam genutzte System so konfiguriert werden, dass es jedes kollaborative System, das entweder das Artefakt oder eine Verknüpfung zu diesem hostet, nach Änderungen im kollaborativen Raum abfragt, in dem die Verknüpfung oder das Artefakt von Zeit zu Zeit oder in regelmäßigen Abständen gespeichert wird. Bei einem anderen Aspekt kann das gemeinsam genutzte System in dem kollaborativen Verknüpfungssystem registriert sein, z.B. als ein Benutzer des kollaborativen Raums, in den die geänderte Version des Artefakts hochgeladen wird, um als Reaktion auf Änderungen im kollaborativen Raum eine Benachrichtigung zu empfangen.
-
In Schritt 520 kann das gemeinsam genutzte System das kollaborative Hosting-System anweisen, eine Kopie der geänderten Version des Artefakts in dem kollaborativen Raum zu speichern, in dem das Artefakt gespeichert ist. In Schritt 525 kann das gemeinsam genutzte System das kollaborative Verknüpfungssystem anweisen, die geänderte Version des Artefakts durch eine Verknüpfung zu der geänderten Version des Artefakts zu ersetzen, das nun in dem kollaborativen Hosting-System gehostet wird. Die geänderte Version des Artefakts kann zum Beispiel aus dem kollaborativen Verknüpfungssystem entfernt oder auf andere Weise gelöscht werden, so dass nur eine einzige Instanz der geänderten Version des Artefakts in jedem kollaborativen System verwaltet wird, das einen irgendwie gearteten Zugriff auf das Artefakt oder geänderte Versionen des Artefakts bereitstellt.
-
Bei der Durchführung der verschiedenen hier beschriebenen Operationen kann das gemeinsam genutzte System so konfiguriert werden, dass es ein Verzeichnis der verschiedenen Transaktionen speichert, z.B. Funktionen, Operationen, Befehle usw., die zu und/oder von jedem kollaborativen System übertragen werden. In diesem Zusammenhang kann das gemeinsam genutzte System Protokollverzeichnisse von durchgeführten Maßnahmen verwalten, die wie zum Beispiel unter Bezugnahme auf 5 beschrieben eine Automatisierung von Aufgaben ohne ein Eingreifen eines Benutzers ermöglichen. Das gemeinsam genutzte System kann zum Beispiel ein Verzeichnis des bestimmten kollaborativen Systems und des kollaborativen Raums, der das Artefakt hostet, darüber verwalten, welche kollaborative Systeme und kollaborativen Räume Verknüpfungen zu jedem Artefakt hosten, und die Verzeichnisse aktualisieren, wenn neue Operationen durchgeführt werden.
-
6 ist ein Ablaufplan, der ein Verfahren 600 zum gemeinsamen Nutzen von Artefakten zwischen kollaborativen Systemen gemäß einer in dieser Beschreibung offenbarten anderen Ausführungsform veranschaulicht. Das Verfahren 600 veranschaulicht insbesondere ein Verfahren zum dynamischen, z.B. automatischen, Aktualisieren eines Artefakts als Reaktion auf Änderungen an einem oder mehreren Attributen des Artefakts. Das Verfahren 600 kann von dem gemeinsam genutzten System 135 durchgeführt werden, wie dies mit Bezug auf die 1 und 2 dieser Beschreibung dargelegt wird.
-
Das Verfahren 600 kann in einem Zustand beginnen, in dem ein Eigentümer eines Artefakts, das in einem ersten kollaborativen System gehostet wird, ein Attribut des Artefakts ändert. Der Eigentümer kann zum Beispiel einen Benutzer zu der Liste von Benutzern, die Zugriff auf das Artefakt erhalten, hinzufügen oder aus dieser Liste entfernen. Zum Zwecke der Veranschaulichung wird der Fall betrachtet, bei dem das gemeinsam genutzte System als Reaktion auf eine Änderung eines Attributs des Artefakts feststellt, dass ein anderes kollaboratives System besser zum Hosten des Artefakts geeignet ist als ein erstes kollaboratives System, in dem das Artefakt zu diesem Zeitpunkt gehostet wird.
-
In Schritt 605 kann das gemeinsam genutzte System das Artefakt in einem zweiten kollaborativen System speichern, das als besser geeignet zum Hosten des Artefakts ermittelt wurde. Wie bereits erwähnt, kann das gemeinsam genutzte System das zweite kollaborative System anweisen, beliebige zum Hosten des Artefakts notwendige Objekte zu erzeugen.
-
In Schritt 610 kann das gemeinsam genutzte System das erste kollaborative System anweisen, das Artefakt zu entfernen oder zu löschen. In einigen Fällen kann das gemeinsam genutzte System festlegen, dass das erste kollaborative System eine Verknüpfung zu dem Artefakt aufweisen sollte, um weiterhin jedem dem Artefakt zugehörigen Benutzer einen Zugriff bereitzustellen. In diesem Fall kann das Artefakt durch eine Verknüpfung zu dem Artefakt ersetzt werden, das nun im zweiten kollaborativen System gehostet wird. In anderen Fällen wird das erste kollaborative System gegebenenfalls nicht mehr gebraucht. In diesem Fall kann das gemeinsam genutzte System das erste kollaborative System anweisen, den gesamten, dem Artefakt zugehörigen kollaborativen Raum zu löschen.
-
In Schritt 615 kann das gemeinsam genutzte System mit jedem kollaborativen Verknüpfungssystem Daten austauschen, um die Verknüpfung zu aktualisieren, die im ersten kollaborativen System auf den Speicherort des Artefakts zeigte, das nun im zweiten kollaborativen System gehostet wird.
-
Die in dieser Beschreibung offenbarte(n) eine oder mehrere Ausführungsform(en) entbindet bzw. entbinden den Eigentümer eines Artefakts davon, das richtige kollaborative System zum Hosten eines Artefakts ermitteln zu müssen. Der Eigentümer braucht ferner nicht jeweils eine Vielzahl von unterschiedlichen kollaborativen Systemen mit Änderungen an den Artefakten zu aktualisieren, um weiterhin einen Zugriff auf das Artefakt oder die neueste Version eines Artefakts in der Vielzahl der unterschiedlichen kollaborativen Systeme bereitzustellen.