Informatik-Lexikon

M

Memory, Organizational
MPEG-7
Modeling Language, Unified - UML
Modeling Language,Virtual Reality - VRML

Organizational Memory

Erläuterung

Das Management von Wissen ist ein wichtiger Erfolgsfaktor in Unternehmen. Dabei hat Wissensmanagement eine soziokulturelle, betriebswirtschaftliche und informationstechnische Dimension; gemeinsames Ziel ist die optimale Nutzung der „Ressource Wissen" für Lernen aus Erfahrung, kontinuierliche Prozeßverbesserung und den Ausbau kreativer Unternehmenspotentiale. Wissen als Unternehmensressource ist Wissen in Dokumenten, undokumentiertes Wissen wie Mitarbeiterkenntnisse und -fähigkeiten, sowie Wissen in Prozeduren und Produkten. Es geht z.B. um Entwurfsentscheidungen im Designprozeß („design rationals", s. Shum in [5]), um Projekterfahrungen („lessons learned", s. van Heijst et al. in [4]), die für nachfolgende Projekte wiederverwendet werden sollen, oder gute Vorgehensweisen („best practices" s. [7]). Informationstechnische Beiträge zum Wissensmanagement lassen sich nach zwei Sichtweisen klassifizieren:

  • Die prozessorientierte Sicht unterstützt die Zusammenarbeit einer Gruppe von Personen mit dem Ziel, verteilt vorliegendes, aktuelles Wissen und Fähigkeiten optimal einzusetzen. Basistechniken stammen aus der Computer Supported Cooperative Work (CSCW) und dem Workflow Management.
  • Die produktorientierte Sicht untersucht die Erhebung, Wartung, Wiederverwendung und Nutzung von Wissen in informationstechnisch verarbeitbarer Form. Basistechniken stammen aus den Bereichen Dokumentenmanagement, Wissens und Informationssysteme.

Das Organizational Memory wird technisch durch ein Organizational Memory Information System (OMIS, auch: Corporate Memory) unterstützt. Ein OMIS entsteht durch die Integration von Basistechniken zu einem Computersystem, das in der Organisation Wissen und Informationen fortlaufend sammelt, aktualisiert, strukturiert und für verschiedene Aufgaben möglichst kontextabhängig, gezielt und aktiv zur Verbesserung des kooperativen Arbeitens zur Verfügung stellt. Für Sammlung, Nutzung und Wiederverwendung von Wissen muß ein OMIS folgende drei Hauptaufgaben lösen:

1. Wissenserfassung & -pflege

Wissenserfassung und -pflege sind wie bei wissensbasierten Systemen kritische Erfolgsfaktoren eines OMIS. Analog zur Position des Knowledge Engineers bei wissensbasierten Systemen wird die Installation eines Knowledge- oder Experience-Managers vorgeschlagen,der Wissen aufbereitet, in eine nutzbare Form bringt und geeignete Metadaten zum Retrieval hinzufügt. Da dies bei einem größerem Nutzerkreis zu erheblichem Aufwand führt, sind Akquisitionswerkzeuge und automatische Verfahren zur Unterstützung gefragt. So wird in AnswerGarden [1] das OMIS selbständig erweitert und benötigt nur geringe Wartung. Hier sind Metadaten der Pfad durch einen Fragenbaum,den ein Benutzer interaktiv mit dem System erstellt. So werden Metadaten oft entweder durch (semi-) automatische Verfahren (z.B. Textanalyse) aus den zu speichernden Objekten gewonnen oder explizit angegeben. Generell sind Erhebung und Wartung von formal repräsentiertem Wissen schwieriger und daher kostspieliger als von informell repräsentiertem. Daher setzen viele Ansätze auf existierenden informalen Wissensquellen (z.B. Texten) auf und nutzen formale Strukturen nur für stabile Sachverhalte (z.B. zur Indexierung einer Best-Practice Wissensbasis).
 

2. Wissensaufbereitung und -integration:

Ziel des OMIS ist es, vielfältigen Such- und Nutzungskomponenten einen einheitlichen und effektiven Zugang zum Wissensspeicher zu ermöglichen. Nun ist dieser aber sehr heterogen auf mehreren Ebenen:

  • Auf der Inhaltsebene unterscheiden wir verschiedene Wissensarten im Unternehmen: Produkt- und Prozeßwissen, Ursachen für Entscheidungen, individuelle Kompetenzen und Erfahrungen etc. Existierende Systeme repräsentieren i.a. nur einen einzigen Typ von Wissen, ihr Zusammenspiel ist kaum untersucht (ein Gegenbeispiel sind die Issue-Based Information Systems, die zur Dokumentation von Entwurfsentscheidungen eines Design-Teams die entstehenden Dokumente – Texte, Protokolle, Zeichnungen – eingebettet in die graphische Darstellung des Diskussion- und Entscheidungsprozesses ablegen). Notwendig zur Integration ist eine Unternehmensmodellierung aus der Wissenssicht, d.h. eine Methodik zur Analyse und Darstellung von Informationsflüssen, Wissensbedürfnissen und -ressourcen, s. z.B. Daniel et al. in [6].
  • Auf der Repräsentationsebene stellt sich das Problem, daß Text und Hypertextdokumente, E-Mails, Grafiken usw. oft bereits vorhanden und für menschliche Nutzer besser geeignet sind als formalere Darstellungen. Andererseits sind wissensbasierte Systeme auf formale Repräsentationen zur Steuerung von Problemlösungsmethoden und Workflows, zur semantischen Suche, zur aktiven Präsentation von Wissen etc., angewiesen, so daß man auf die Formalisierung von Wissensteilen nicht verzichten kann.

Ansätze, um Formalisierungen und deren Wartbarkeit zu vertretbaren Kosten zu erreichen, sind z.B. die inkrementelle Formalisierung, bei der informale und formale Repräsentation durch Hyperlinks verknüpft werden oder die Einbettung der formalen in die informale Repräsentation: [3] annotieren Texte bezüglich einer Ontologie redundanzarm mit Hilfe neuer HTML bzw. XML-Attribute, so daß daraus automatisch eine formale Darstellung extrahiert werden kann. Auch die Informationsextraktion mit Methoden der Dokumentanalyse / -klassifikation bzw. zur Wissensakquisition aus Texten werden hierfür untersucht. Ferner stellt sich die Frage des homogenen Zugriffs auf existierende Informationssysteme,welche Aussagen über dieselben Sachverhalte des Objektbereichs unterschiedlich formulieren und strukturieren. Im Datenbank- und Wissensbankbereich ist dies Gegenstand der Intelligenten Informationsintegration (I³). Hier helfen Ontologien,in denen eine verbindliche gemeinsame Terminologie spezifiziert wird, und Wrapper/Mediator-Architekturen, die verschiedene Quellen kapseln und deren Inhalt bzgl. einer gemeinsamen Ontologie übersetzen (Wrapper) bzw. Anfragen bzgl. dieser gekapselten Quellen beantworten (Mediator).
 

3. Wissensnutzung & -suche:

Generell sollte ein OMIS die Lösung verschiedener wissensintensiver Aufgaben durch aktive, kontextsensitive Informationslieferung erleichtern. Dabei benötigen passive wie aktive Ansätze geeignete Metadaten, die Aussagen über den Kontext, in dem das abgelegte Wissen verwendbar ist, erlauben. Dazu kommen,abhängig vom Grad der Formalisierung und der konkreten Anwendung unterschiedliche Verarbeitungstechniken sowohl für das abgelegte Wissen als auch für die Metadaten in Frage. So verwenden Expertensysteme Problemlösungsmethoden, um zusammen mit formalisiertem Wissen aus der Anwendungsdomäne den menschlichen Benutzer bei der Lösung von speziellen Aufgaben im betrieblichen Umfeld (z.B. Konfigurierung und Diagnostik) zu unterstützen. Für weniger stark formalisiertes Wissen bieten sich Inferenzmethoden wie das Fallbasierte Schließen (CBR), z.B. für Fälle in Best-Practice Wissensbasen an. Beim ontologiebasierten Retrieval sind informale (bzw. semiformale) Dokumente mit formalem Wissen verknüpft, indem in Dokumenten Wissen identifiziert und durch Annotierung bezügl. einer Ontologie gekennzeichnet wird. Auf unstrukturierte Dokumentsammlungen hingegen kann z.B. mittels Textsuchmaschinen zugegriffen werden.

Aktive Hilfe ist angesichts der Informationsflut wesentlich, jedoch i.a. noch ungelöst. Beiträge zur aktiven Informationsbereitstellung erweitern z.B. Geschäftsprozeßmodelle um Dokumentflüsse und Expertiseverwendung; intelligente Suche basiert dann z.B. auf CBR oder Agententechnologie.

Systeme,die alle oben skizzierten Aufgaben lösen, sind noch nicht verfügbar. Allerdings gibt es bereits eine Reihe von Systemen, die einzelne Aspekte bereits gut umsetzen, z.B.:

  • Das BSCW-System [2] bietet eine WWW-basierte Plattform für kooperatives Arbeiten in Büroumgebungen. Notizen,Dokumente und Diskussionen können abgelegt und kooperativ bearbeitet werden. Strukturierte Dokumente und Metadaten zu Inhalten in BSCW werden allerdings nur eingeschränkt gesammelt, so daß auch keine situativ angepaßte Wissenspräsentation oder komplexere als Schlüsselwortsuche möglich ist.
  • Im AnswerGarden [1] tauschen Benutzer und Experten Fragen und Antworten aus, die danach allgemein zur Verfügung stehen. Dies vermeidet die Wiederholung gleicher Fragen und entlastet die Experten. Fragen und Antworten sind hierarchisch indiziert, die Indexstruktur kann je nach Benutzeranforderungen geändert werden. Weitergehende CSCW- und Workflowkonzepte sind nicht verwirklicht.
  • Der Prototyp EULE2 (s. Reimer in [6]) unterstützt Sachbearbeiter bei der Bearbeitung von Versichungsvorgängen in der Schweizerischen Rentenanstalt durch eine deklarative Modellierung von Geschäftsprozessen, Weisungen und Gesetzen. Diese dienen der Workflow-Steuerung, der automatischen Datenbeschaffung für offene Vorgänge,und der teilautomatischen Überprüfung der Einhaltung von Weisungen und Gesetzen. Der Benutzer kann Erklärungen verlangen,warum ein Vorgang gerade so abzuwickeln ist, und wird bei Bedarf bis hin zu den betreffenden Stellen in den Weisungen und Gesetzestexten geführt. Das System kombiniert formale Methoden und informale Texte zur aktiven Unterstützung.
  • Wargitsch et al. (in [6]) stellen ein flexibles Workflowsystem vor, dessen Workflows die Benutzer zur Laufzeit auswählen und ändern können. Die Änderungen steuern das Workflowsystem und können ebenso von allen Benutzern im OMIS wiederverwendet werden. Auch CSCW-Techniken wie Diskussionsgruppen werden unterstützt.
  • Das Tool QuestMap (s. Shum in [5]) ist ein Issue-Based Information System. Es ermöglicht z.B. die Suche nach allen Argumenten, die für eine bestimmte Entwurfsentscheidung relevant sind oder findet bei geänderten Voraussetzungen die davon betroffenen Entscheidungen.
  • Der Ontobroker [3] zur intelligenten Suche in Webdokumenten ist ein Beispiel für ontologiebasiertes Retrieval: Annotiertes Wissen wird aus den Dokumenten herausgefiltert und steht mitsamt der zugehörigen Ontologie einer Inferenzmaschine zur Verfügung. Diese beantwortet Anfragen, die durch die Verwendung des annotierten Wissens mehrerer Dokumente über den Inhalt einzelner Dokumente hinausgehen.

Durch die pragmatische, problemgetriebene Integration von Basistechniken entstehen nützliche Systeme,die verschiedene der angesprochenen Aufgabenfelder abdecken. Dennoch bieten diese noch Herausforderungen für anwendungsorientierte Forschung auf vielen Gebieten, z.B. weitergehende Integration von informalen und formalen Repräsentationen,Textanalyse, Ontologieerstellung und -verwendung, weitergehende CSCW-Techniken u.v.m. Für einen dahingehenden, weiteren Einstieg liefert z.B. [7] nützliche Hinweise.

                   Artikelanfang  Seitenanfang

Literatur

  1. Ackerman M.S., and Malone T. W.: Answer Garden: A Tool for Growing Organzational Memory. In: Proceedings of the ACM Conference on Office Information Systems, pp. 31-39, 1990
  2. Bentley R.,Appelt W., et al.: Basic Support for Cooperative Work on the World Wide Web. In Int. J. of Human-Computer Studies 46(6): Special issue on Innovative Applications of the World Wide Web, p. 827-846,June 1997
  3. Fensel D., Decker S., Erdmann M,Studer R.: Ontobroker: The Very High Idea. In: 11th Florida Artificial Intelligence Research Symposium (FLAIRS-98),Florida, May 1998.
    www.aifb.uni-karlsruhe.de/WBS/broker
  4. 10th Banff Knowledge Acquisition for Knowledge-based Systems Workshop, Banff, Canada,1996.
    http://ksi.cpsc.ucalgary.ca/KAW/KAW96/KAW96Proc.html
  5. Journal of Universal Computer Science 8(3), Special Issue on Information Technology for Knowledge Management, Springer 1997.
    www.iicm.edu/jucs_3_8/
  6. Kl-97 Workshop on „Knowledge-Based Systems for Knowledge Management in Enterprises", Freiburg 1997.
    www.dfki.uni-kl.de/km/ws-ki97.html
  7. Dan O’Leary: Enterprise Knowledge Management. IEEE Computer 31(3), pp. 54-61, March 1998

                   Artikelanfang  Seitenanfang

Autor & Copyright
Andreas Abecker¹, Otto Kühn¹, Stefan Decker²

¹DFKI GmbH,
Postfach 2080,
67608 Kaiserslautern,
Andreas.Abecker@dfki.de
Otto.Kuehn@dfki.de

²Universität Karlsruhe,
Institut AIFB,
76128 Karlsruhe
Stefan.Decker@aifb.uni-karlsruhe.de

© 1998 Informatik Spektrum, Springer-Verlag Berlin Heidelberg

                   Artikelanfang  Seitenanfang

MPEG-7

Kurzinfo MPEG-7 wurde von der Moving Picture Experts Group (MPEG) im März 2002 als Internationaler Standard verabschiedet. Nach der erfolgreichen Einführung der Standards MPEG-1/2/4 zur audiovisuellen Kodierung von Inhalten ist MPEG-7 ein Standard, der ein Austauschformat für Beschreibungen von multimedialen Inhalten festlegt.

Erläuterung

Die Moving Picture Experts Group, eine Arbeitsgruppe der ISO SC29, ist seit 1988 aktiv und hat mit ihren MPEG-1/2/4 einen entscheidenden Einfluss auf die Multimedia-Industrie genommen. Mit der Verabschiedung von MPEG-1 im November 1992 stand erstmals ein integrierter Standard zur Verfügung, der die Kodierung von Bewegtbildern und zugehörigem Audio für die Speicherung auf einer CD bei einer Datenrate von etwa 1,5 Mbit/s ermöglichte. MPEG-2 (1994) baute auf der MPEG-1-Systemspezifikation auf und ergänzte sie insbesondere um die Möglichkeit zur Kodierung von zeilenverschränkten Video bei verschiedenen Auflösungen, bis hin zum HDTV-Format. Erstmals wurde auch die Möglichkeit einer skalierbaren Kompression der Bilddaten eingeführt. MPEG-2 liefert auch die Basistechnologie für die DVD zur Speicherung und Wiedergabe von hochqualitativem Video und Mehrkanal-Audio im Heimbereich. MPEG-2 Audio Layer 3 war auch die Basis für das populäre MP3-Audioformat, das als industrielle Weiterentwicklung entstand. MP3 ist nicht mit MPEG-3 zu verwechseln, denn MPEG-3 war für HDTV vorgesehen und wurde in MPEG-2 integriert. MP3 ermöglicht eine hohe Kompression von Audiodaten bei sehr geringem Qualitätsverlust durch Entfernen von überlagerten Tönen und solchen, die praktisch unhörbar sind. Mit MPEG-4 wurde 1998 erstmals eine Kodierung vorgestellt, welche die Aufteilung einer Szene in einzelne audiovisuelle Objekte ermöglicht. Die separate Beschreibung dieser Objekte in einem Datenstrom erlaubt es, den Szeneninhalt durch Benutzerinteraktion zu manipulieren. Ein weiteres Merkmal ist die individuelle Konfiguration des Leistungsumfanges von MPEG-4 durch spezielle Profile. Seit der ersten Version wurden MPEG-4 mehrere Ergänzungen hinzugefügt. Zurzeit wird vom Joint Video Team (JVT), das sich aus Experten der ITU h.264 und der MPEG-Standardisierung zusammensetzt, der hinsichtlich der Kodierungseffizienz verbesserte Advanced Video Codec verabschiedet.

Im Jahre 1997 begann MPEG an dem neuen Standard „Multimedia Content Description Interface" (kurz „MPEG-7") zu arbeiten, der im März 2002 in Version 1 verabschiedet wurde. MPEG-7 stellt eine sinnvolle Ergänzung zu den Standards MPEG-1/2/4 [1] dar, der mit Inhaltsbeschreibungen einen gezielten Abruf von audiovisuellen Daten ermöglicht und deren Verwaltung unterstützt.

Die in MPEG-7 definierten Beschreibungen setzen sich aus Deskriptoren und Beschreibungsstrukturen zusammen. Die Deskriptoren beschreiben die Merkmale der audiovisuellen Daten. Um die Deskriptoren in einer Beschreibung interpretieren zu können, weisen die Beschreibungsstrukturen, in denen die Deskriptoren eingebettet sind, diesen Deskriptoren einen Kontext bzw. eine Bedeutung zu. Die Definition von MPEG-7-Deskriptoren und Beschreibungsstrukturen (DSs, Description Schemesdurch eine auf XML-Schema [2] basierende, strukturdefinierende Sprache ermöglicht es, MPEG-7 Beschreibungen für die Anforderungen in den jeweiligen Applikationen anzupassen. Durch diese Flexibilität und ein effizientes Format zur synchronen Übertragung können Beschreibungen in unterschiedlichen Applikationsfeldern, wie Rundfunk oder Informationsabruf, im Internet eingesetzt werden, ohne den mitunter aufwendigen Prozess der Beschreibungsgenerierung neu zu durchlaufen.

MPEG-7 wird die Indizierung von Multimediamaterial homogenisieren. Bisherige Multimedia-Beschreibungsstandards, wie das Dublin Core Model, stellten Metadaten nur für einen kleinen Teil des Metadaten-Lebenszyklus (z.B. für die Erstellung) zur Verfügung. MPEG-7 ermöglicht die Indizierung mit einem einheitlichen Framework, von der Erstellung über die Suche bis hin zum Transport der Beschreibungen. Neben der Suche wird auch die Navigation durch große audiovisuelle Datenbestände erleichtert, da das zugrunde liegende XML eine breite Unterstützung in Programmier- und Datenbanksprachen, wie z.B. XMLTypes in Oracle 9i oder Java XML, erfahrt [3].

Die Nachteile einer XML-basierten Beschreibung, wie beispielsweise der hohe Speicherbedarf oder die fehlende Unterstützung Beschreibungen inkrementell zu übertragen, wurden auf Systemebene behoben. Hierzu enthält MPEG-7 Werkzeuge zur effizienten Kodierung und inkrementellen Übertragung (Streaming)von XML-basierten Dokumenten [4].Die Interaktionsmöglichkeiten von MPEG-4,gekoppelt mit MPEG-7,eroffnen neue kommerzielle Anwendungen im Bereich des digitalen Fernsehens — z.B. liefert die Auswahl eines Produktes in einer Werbesendung die Inhaltsinformation in MPEG-7 und ermöglicht die Navigation zu weiteren Informationen wie Preis, Vorrat und Bestellung.

MPEG-7-Teile

Der MPEG-7-Standard ist in 8 Teilen organisiert (ISO/IEC 15983:1-8:2002).

  1. Systems beschreibt Formate, in denen MPEG-7-Dokumente gespeichert und über ein Kommunikationsnetzwerk transportiert werden können. Ein wichtiger Bestandteil von Systems ist der BiM-Codec (Binary Format MPEG-7 encoder und decoder), der es ermöglicht, MPEG-7-Dokumente zu komprimieren. Das Dokument wird dabei in Fragmente zerlegt, die in einzelne Pakete („Access Units") gruppiert werden. MPEG-7-Ströme werden getrennt oder synchronisiert mit denen von ihnen beschriebenen Medienströmen (z.B. MPEG-2/4) übertragen.
  2. Data Definition Language (DDL) beschreibt die Syntax der MPEG-7-Beschreibungsstruktur und baut auf die von W3C standardisierte XML-Schema-Sprache auf [2]. Zusätzlich zu dieser wurden hauptsächlich Datentypen zur Beschreibung von Zeitmarken und Matritzendimensionalitäten definiert, die in audiovisuellen Deskriptoren genutzt werden. Die Verwendung der DDL zur Definition der MPEG-7-Deskrip-toren und DSs ermöglicht es dem Anwender, basierend auf dem Standard eigene, applikationsspezifische Erweiterungen zu definieren.
  3. Grundlegende visuelle Deskriptoren decken vor allem den automatisch erfassbaren Teil der Beschreibungen für Merkmale der Bilder und Videos ab. Typische visuelle Deskriptoren sind die Formdeskriptoren von Regionen, Deskriptoren, die dominante Farben in Bildern oder Bildregionen spezifizieren, Deskriptoren für lokale oder globale Farbverteilungen, für Texturen und für Bewegungsbeschreibungen in Bildsequenzen.
  4. Grundlegende Audiodeskriptoren spezifizieren beispielsweise die Merkmale von Audiosignalen, die Sprache oder Musik enthalten. Dazu gehören beispielsweise Beschreibungen von Merkmalen der Melodie oder Phonemnetzen. Es können aber auch die Eigenschaften der Erzeugerinstrumente beschrieben werden, wie z.B. die Klangfarbe einer Violine.
  5. Die Multimedia Description Schemes (MDS) spezifizieren eine Bibliothek an Beschreibungsstrukturen, aus denen Teile für eine Beschreibung instantiiert werden können. Die generisch aufgebauten Beschreibungsschemata ermöglichen semantische Beschreibungen von Medieninhalten und bilden einen Beschreibungsrahmen, in den die audio-visuellen Deskriptoren eingefügt werden können.
  6. Die Referenzsoftware enthält Beispielimplementierungen für die Erzeugung und Verarbeitung der MPEG-7-Deskriptoren und DSs. Die Software wurde im Standardisierungsprozess zur Validierung der standardisierten Technologien eingesetzt. Die Referenzsoftware ist unter http://www.lis.e-technik.tu-muenchen.de/research/bv/topics/mmdb/e_mpeg7.html verfügbar.
  7. Konformität definiert Vorschriften für Konformitätstests der MPEG-7-Beschreibungen. Hierzu wurde ein Profilkonzept [1] und die Definition von Komplexitätsstufen (sog. levels) von MPEG-7-Beschreibungen erarbeitet.
  8. Extraktion und Benutzung stellt informative Beispiele für Instantiierung von Beschreibungsschemata und Ansätze für die Extraktion von Beschreibungen aus Medienströmen zur Verfügung. Zudem wurden auch Beispiele für den Gebrauch von Beschreibungen entworfen.

MPEG-7-Codec

Der MPEG-7-BiM-Codec stellt Werkzeuge zur Komprimierung und Übertragung von MPEG-7-Dokumenten zur Verfügung [4].Diese Werkzeuge sind nicht auf die Verwendung für MPEG-7 beschränkt, sondern können generell für XML-Schema-basierte XML-Dokumente verwendet werden.

Bei der Standardisierung des MPEG-7-BiM-Codecs wurden Anforderungen von Applikationen an die Übertragung von Metadaten berücksichtigt, die von der textuellen XML-Repräsentation nicht erfüllt werden, wie beispielsweise die inkrementelle Übertragung.

Diese Anforderungen werden von dem MPEG-7-BiM-Codec unterstützt. Neben einer hohen Kompression kann beispielsweise der MPEG-7-BiM-Codec die Baumstruktur von XML-Dokumenten in kleinere Subbäume fragmentieren. Durch eine während der Übertragung persistente Kodierung der Position des Subbaumes im gesamten Dokumentenbaum des XML-Dokumentes ist es auch möglich, XML-Dokumente inkrementell in beliebiger Reihenfolge zu übertragen. Zudem ist es möglich, durch entsprechende Befehle bereits übertragene Subbäume nachträglich zu verändern und somit auf der Empfängerseite dynamische XML-Dokumente aufzubauen. Im Rahmen von MPEG-7 ist dies, insbesondere bei Beschreibungen von „Life"-Sendungen, erforderlich. Auf der anderen Seite ist es für Metadatenempfänger notwendig, empfangene Daten schnell filtern bzw. durchsuchen zu können. Aufgrund der Strukturierung der Fragmente ist es möglich, die Fragmente so zu codieren, dass der Inhalt der Fragmente auf Bitpatternebene klassifiziert werden kann, ohne die Fragmente hierfür decodieren zu müssen.

So unterstützt der MPEG-7-BiM-Codec viele Anwendungsszenarien, die für die Übertragung von MPEG-7-Daten, im Speziellen aber auch von XML-Daten, im Allgemeinen relevant sind. Die Integration des MPEG-7-BiM-Codecs in bestehende XML-Übertragungsstrecken erfordert zudem nur geringen Aufwand, da der generische Codec mit XML und XML-Schema bereits verwendete, standardisierte Informationsformate nutzt.

Ausblick auf MPEG-21

Der Standard MPEG-7 spezifiziert ein Austauschformat für Beschreibungen von multimedialen Inhalten. Für die Übertragung von Medien und Metadaten relevante Aspekte, wie beispielsweise die der Kompatibilität von Wiedergabesystemen oder die rechtlichen Befugnisse des Senders und Empfängers, wurden in MPEG-7 nicht berücksichtigt, da diese Metadaten vor allem Relevanz für die Steuerung der Kommunikation besitzen.

Ein so genannter Framework-Standard, der diese Aspekte aufgreift und spezifiziert, wird innerhalb von MPEG mit MPEG-21 bearbeitet. Hierzu werden Digital Items betrachtet, die zunächst einen Container für digitale Information zur Verfügung stellen. Solche Digital Items können neben den multimedialen Inhalten und deren Beschreibungen beispielsweise auch Charakterisierungen hinsichtlich Anforderungen an Übertragungskanäle, rechtliche Befugnisse bzw. Wahlmöglichkeiten, beinhalten, um die bestehenden Rahmenbedingungen zur Handhabung des Digital Items mit den Anforderungen abzugleichen.

Hauptbestandteile von MPEG-21 sollen bis Ende 2003 verabschiedet werden. Weiterführende Informationen sind auf der MPEG-Homepage aufgeführt (s. unten).

Ausgewählte Links

                   Artikelanfang  Seitenanfang

Literatur

  1. Kaup, A.: MPEG-Standards: Techniken und Entwicklungstrends. Fernseh- und Kinotechnik 55(6), 352–362 (2001)
  2. Hansch, M., Kuhlins, S., Schader, M.: XML-Schema. Informatik Spektrum 25(5), 363–366 (2002)
  3. Kosch, H.: MPEG-7 and multimedia database systems. SIGMOD Records, ACM Press 31(2), 34–39 (2002)
  4. Niedermeier, U., Heuer, J., Hutter, A., Stechele, W., Kaup; A.: An MPEG-7 tool for compression and streaming of XML data. IEEE International Conference on Multimedia and Expo, August 2002, Lausanne, Switzerland, pp. 521–524

Hinweis: Die URLs entsprechen dem Stand bei der Veröffentlichung des Artikels und werden nicht aktualisiert.

                   Artikelanfang  Seitenanfang

Autor & Copyright
H. Kosch
Institut für Informationstechnologie,
Universität Klagenfurt,
Universitätsstraße 65–67,
9020 Klagenfurt,
Österreich
harald.kosch@itec.uni-klu.ac.at

J. Heuer
Corporate Technology Netze und Multimediakommunikation,
Siemens AG,
München
Joerg.Heuer@mchp.siemens.de

© 2003 Informatik Spektrum, Springer-Verlag Berlin Heidelberg

                   Artikelanfang>  Seitenanfang

UML - Unified Modeling Language

Erläuterung

In den letzten zehn Jahren entstand eine Vielzahl von Methoden zur objektorientierten Modellierung von Software-Systemen. Diese benutzen Diagramme zur graphischen Darstellung der entworfenen Modelle und wurden bereits frühzeitig von CASE Werkzeugen unterstützt. Mit dem praktischen Einsatz kam der Wunsch nach Standardisierung der mittlerweile mehr als 30 verschiedenen Methoden auf. Mit großem Interesse wurde deshalb der Wechsel von OMT-Begründer James Rumbaugh [6] und Ivar Jacobson [3] zur Firma Rational Software Inc. beobachtet, in deren Diensten mit Grady Booch bereits ein weiterer Begründer einer verbreiteten objektorientierten Entwurfsmethode [1] stand. Im Laufe des Jahres 1996 spezifizierten die „drei Amigos", wie sie sich selbst nennen, die Unified Modeling Language (UML) als visuelle Diagrammsprache zur Modellierung, Konstruktion und Dokumentation von Software-Systemen. Die UML liegt seit September 1997 in der Version 1.1 [5] vor und wurde im November 1997 von der OMG (Object Management Group) als Standard verabschiedet [4]. Damit wird die UML künftig als Industriestandard eine wichtige Rolle in der Software-Entwicklung spielen.

Die UML ist eine graphische Sprache, die sich im gesamten Software-Entwicklungsprozeß, von der konzeptionellen Analyse bis zur Beschreibung der Implementierung einsetzen läßt. Die UML enthält allerdings kein Vorgehensmodell, das die methodische Entwicklung der Software angibt.

Für den Software-Entwickler ist die UML eine Beschreibung mehrerer Diagrammtypen, die zur Spezifikation der statischen Struktur und des dynamischen Verhaltens der Objekte sowie zur Dokumentation von Implementierungsdetails benutzt werden können. Abb. 1 zeigt die Hauptanwendung der einzelnen UML-Diagramme.

Abb. 1 Die verschiedenen Aspekte eines Software-Systems
werden in den einzelnen Phasen der Software-Entwicklung mit UML-Diagrammen
beschrieben

Die Anforderungen des Systems können durch eine Anzahl verschiedener Anwendungsfälle (Use Cases) ermittelt werden. Anwendungsfalldiagramme halten diese Anwendungs-Szenarien fest und beschreiben so den Funktionsumfang der Software aus der Sicht des späteren Benutzers. Anwendungsfälle bilden die Kommunikationsgrundlage mit dem Auftraggeber und sollten zum Entwurf von Testfällen herangezogen werden.

Mit Hilfe von Aktivitätsdiagrammen läßt sich ein Vorgang (Work Flow) veranschaulichen. Die verschiedenen Phasen oder Zustände eines z.B. Geschäftsprozesses werden dabei durch Transitionen miteinander verbunden. Dabei wird der Kontrollfluß in Form von Bedingungen und Verzweigungen, und der Datenfluß mit der Weitergabe von Objekten veranschaulicht. Die Verantwortung der einzelnen Objekte wird durch Aufteilen des Diagramms in mehrere Spalten, den sogenannten Schwimmbahnen, verdeutlicht.

Das zentrale Element eines UML-Modells ist das Klassendiagramm (Abb. 2). Darin werden die Klassen und ihre unterschiedlichen Beziehungen dargestellt, wobei die Klassen als Rechtecke und die Beziehungen als beschriftete Verbindungslinien gezeichnet werden. Im Verlauf des Entwicklungsprozesses nimmt der Detaillierungsgrad dieser Darstellung zu, d.h. die Modelle werden immer präziser, bis sie schließlich implementiert werden. Zu den Klassen können die Attribute und Operationen angegeben werden. Die UML betont die detaillierte Modellierung von Assoziationen zwischen Klassen, zu denen Kardinalitäten und Rollennamen der beteiligten Objekte angegeben werden. Eine Aggregation ist eine spezielle Assoziation zwischen zwei Klassen, in der eine Klasse ein Bestandteil der anderen ist. Eine Komposition ist eine Aggregation, bei der eine Klasse ein Attribut einer anderen ist. Vererbungsbeziehungen werden durch Pfeile symbolisiert.

Abb. 2 Klassendiagramm

Zu den Klassen in einem Diagramm kann der Entwickler Bedingungen (Constraints) angeben. Diese Bedingungen können grundsätzlich in jeder beliebigen Sprache formuliert werden. Die UML enthält zu diesem Zweck eine objektorientierte formale Modellierungssprache OCL (Object Constraint Language), die IBM in die UML eingebracht hat.

Mit sogenannten Stereotypen lassen sich Diagrammelemente kategorisieren. Mit einem Stereotyp ist eine spezielle Semantik und möglicherweise eine eigene Darstellung verbunden. Die Definition eigener Stereotypen eröffnet neue Möglichkeiten zur Anpassung und Erweiterung der UML, läßt aber auch die Entstehung von UML-Dialekten zu.

Die UML sieht die Modularisierung von Systemen in Paketen vor. Ein Paket faßt Modellelemente zusammen und regelt die Sichtbarkeit auf die Bestandteile. Die Abhängigkeit der einzelnen Pakete untereinander wird durch Paketdiagramme veranschaulicht.

Das dynamische Verhalten von Komponenten kann übersichtlich in Sequenzdiagrammen (Abb. 3) veranschaulicht werden, die den MSC-Diagrammen (Message Sequence Charts) sehr ähnlich sind. Der Nachrichtenaustausch der Objekte wird durch Pfeile angezeigt. Bedingungen, z.B. für Echtzeitsysteme, können angegeben werden. Die Kooperationsdiagramme (Collaboration Diagrams) berücksichtigen zusätzlich noch die strukturellen Beziehungen. So kann z.B. der Einsatz von Entwurfsmustern dokumentiert werden.

Abb. 3 Sequenzdiagramm

Mit Zustandsdiagrammen wird das dynamische Verhalten von Objekten in der Form eines erweiterten Zustandsautomaten [2] beschrieben. So wird das dynamische Verhalten einzelner Objekte präzise spezifiziert. Aus dieser Beschreibung lassen sich leicht Testfälle für die entsprechende Klasse ableiten. Auch Aktivitätsdiagramme können die Funktionsweise von Methoden veranschaulichen.

Durch Komponenten- und Verteilungsdiagramme wird die Architektur des Software-Systems und dessen Implementation in einer verteilten Rechnerumgebung (z.B. Client/Server-Systeme) beschrieben.

UML selbst wird durch ein Modell definiert, das aus vier Abstraktionsschichten aufgebaut ist. Auf der untersten Stufe stehen die vom Entwickler gezeichneten Diagrammelemente als Instanzen von UML-Modellelementen. Diese Modellelemente sind in einem UML-Metamodell beschrieben, dessen Elemente wiederum Ausprägungen eines sehr allgemeinen Meta-Metamodells sind.

Fazit

Zusammenfassend läßt sich feststellen, daß die Modellierungssprache UML vielfältige Möglichkeiten zur objektorientierten Beschreibung von Software-Systemen zur Verfügung stellt, die in den meisten Fällen nur teilweise genutzt werden müssen. Daher ist in der Praxis ein entsprechendes Tailoring der Entwicklungsmethode sinnvoll. Für die Hersteller von graphischen CASE-Werkzeugen hat die Standardisierung der UML einen einheitlichen Markt geschaffen und nicht zuletzt deshalb dazu beigetragen, die objektorientierte Modellierung in allen Bereichen der Software-Entwicklung schneller zu verbreiten.

                   Artikelanfang  Seitenanfang

Literatur

  1. G. Booch: Object-Oriented Design, Benjamin/Cummings Publishing, 1991
  2. J. Harel: On Visual Formalisms, in: Communications of the ACM,31(5):514-530, Mai 1988
  3. I. Jacobson, M. Ericson, A. Jacobson: The Object Advantage, Addison-Wesley, 1994
  4. Object Management Group (OMG),
    www.omg.org/news/pr97.html, November 1997
  5. Rational Software Corporation: The Unified Modeling Language, Version 1.1., www.rational.com, September 199
  6. J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, W. Lorenson: Object-Oriented Modeling and Design, Prentice-Hall, 1991

                   Artikelanfang  Seitenanfang

Autor & Copyright
Jochen Seemann
Jürgen Wolff von Gudenberg
Universität Würzburg
Lehrstuhl für Informatik II
Am Hubland
97074 Würzburg
Tel 0931/888-5517, Fax 0931/888-4602
wolff@informatik.uni-wuerzburg.de

© 1998 Informatik Spektrum, Springer-Verlag Berlin Heidelberg

                   Artikelanfang  Seitenanfang

VRML - Virtual Reality Modeling Language

Erläuterung

Durch die immer bessere Hardware ist es heute nicht mehr nötig, für anspruchsvolle 3D-Grafiken spezielle Grafik-Workstations zu verwenden. Auf modernen PCs kann jeder durch dreidimensionale Welten fliegen. Um solche Welten zu definieren und sie über das Internet zu verbinden, wurde die Sprache VRML entwickelt. In diesem Beitrag geben wir einen Überblick über die grundlegenden Konzepte der Version 2.0 von VRML.

Geschichte von VRML

Im Frühling 1994 diskutierte auf der ersten WWW-Konferenz in Genf eine Arbeitsgruppe über Virtual Reality-Schnittstellen für das WWW. Es stellte sich heraus, daß man eine standardisierte Sprache zur Beschreibung von 3D-Szenen mit Hyperlinks brauchte.

Diese Sprache erhielt in Anlehnung an HTML zuerst den Namen Virtual Reality Markup Language. Später wurde sie in Virtual Reality Modeling Language umbenannt. Die VRML-Gemeinde spricht die Abkürzung gerne „Wörml" aus. Basierend auf der Sprache Open Inventor von Silicon Graphics (SGI) wurde unter der Federführung von Mark Pesce die Version 1.0 von VRML entworfen.

Im Laufe des Jahres 1995 entstanden eine Vielzahl von VRML-Browsern (u.a. WebSpace von SGI) und Netscape bot schon sehr früh eine hervorragende Erweiterung, ein sogenanntes PlugIn, für seinen Navigator an. Die virtuellen Welten, die man mit VRML 1.0 spezifizieren kann, sind zu statisch. Zwar kann man sich mit einem guten VRML-Browser flott und komfortabel durch diese Welten bewegen, aber die Interaktion ist auf das Anklicken von Hyperlinks beschränkt. Im August ’96, anderthalb Jahre nach der Einführung von VRML 1.0,wurde auf der SIGGraph ’96 die Version VRML 2.0 vorgestellt. Sie basiert auf der Sprache Moving Worlds von Silicon Graphics. Sie ermöglicht Animationen und sich selbständig bewegende Objekte. Dazu mußte die Sprache um Konzepte wie Zeit und Events erweitert werden. Außerdem ist es möglich, Programme sowohl in einer neuen Sprache namens VRMLScript oder in den Sprachen JavaScript oder Java einzubinden.

Was ist VRML?

Die Entwickler der Sprache VRML sprechen gerne von virtueller Realität und virtuellen Welten. Diese Begriffe scheinen mir aber zu hoch gegriffen für das, was heute technisch machbar ist: eine grafische Simulation dreidimensionaler Räume und Objekte mit eingeschränkten Interaktionsmöglichkeiten. Die Idee von VRML besteht darin, solche Räume über das WWW zu verbinden und mehreren Benutzern gleichzeitig zu erlauben, in diesen Räumen zu agieren. VRML soll architekturunabhängig und erweiterbar sein.

Außerdem soll es auch mit niedrigen Übertragungsraten funktionieren. Dank HTML erscheinen Daten und Dienste des Internets im World Wide Web als ein gigantisches verwobenes Dokument, in dem der Benutzer blättern kann. Mit VRML sollen die Daten und Dienste des Internets als ein riesiger Raum, ein riesiges Universum erscheinen, in dem sich der Benutzer bewegt – als der Cyberspace.

Grundlegende Konzepte von VRML 2.0

VRML 2.0 ist ein Dateiformat, mit dem man interaktive, dynamische, dreidimensionale Objekte und Szenen speziell fürs WorldWideWeb beschreiben kann. Schauen wir uns nun an, wie die in dieser Definition von VRML erwähnten Eigenschaften in VRML realisiert wurden.

3D Objekte

Dreidimensionale Welten bestehen aus dreidimensionalen Objekten, die wiederum aus primitiveren Objekten wie Kugeln, Quadern und Kegeln zusammengesetzt wurden. Beim Zusammensetzen von Objekten können diese transformiert, d.h. z.B. vergrößert oder verkleinert werden. Mathematisch lassen sich solche Transformationen durch Matrizen beschreiben und die Komposition von Transformationen läßt sich dann durch Multiplikation der zugehörigen Matrizen ausdrücken. Dreh- und Angelpunkt einer VRML-Welt ist das Koordinatensystem. Position und Ausdehnung eines Objektes können in einem lokalen Koordinatensystem definiert werden. Das Objekt kann dann in ein anderes Koordinatensystem plaziert werden, indem man die Position, die Ausrichtung und den Maßstab des lokalen Koordinatensystems des Objektes in dem anderen Koordinatensystem festlegt. Dieses Koordinatensystem und die in ihm enthaltenen Objekte können wiederum in ein anderes Koordinatensystem eingebettet werden. Außer dem Plazieren und Transformieren von Objekten im Raum, bietet VRML die Möglichkeit, Eigenschaften dieser Objekte, etwa das Erscheinungsbild ihrer Oberflächen festzulegen. Solche Eigenschaften können Farbe, Glanz und Durchsichtigkeit der Oberfläche oder die Verwendung einer Textur, die z.B. durch eine Grafikdatei gegeben ist, als Oberfläche sein. Es ist sogar möglich MPEG-Animationen als Oberflächen von Körpern zu verwenden, d.h. ein MPEG-Video kann anstatt wie üblich in einem Fenster wie auf einer Kinoleinwand angezeigt zu werden, z.B. auf die Oberfläche einer Kugel projiziert werden.

Abb. 1 VRML 2.0 Spezifikation eines Pfeils

VRML und WWW

Was VRML von anderen Objektbeschreibungssprachen unterscheidet, ist die Existenz von Hyperlinks, d.h. durch Anklicken von Objekten kann man in andere Welten gelangen oder Dokumente wie HTML-Seiten in den WWW-Browser laden. Es ist auch möglich, Grafikdateien, etwa für Texturen, oder Sounddateien oder andere VRML-Dateien einzubinden, indem man deren URL, d.h. die Adresse der Datei im WWW angibt.

Interaktivität

Außer auf Anklicken von Hyperlinks können VRML-Welten auf eine Reihe weiterer Ereignisse reagieren. Dazu wurden sogenannte Sensoren eingeführt. Sensoren erzeugen Ausgabe-Events aufgrund externer Ereignisse wie Benutzeraktionen oder nach Ablauf eines Zeitintervalls. Events können an andere Objekte geschickt werden, dazu werden die Ausgabe-Events von Objekten mit den Eingabe-Events anderer Objekte durch sogenannte ROUTES verbunden.

Ein Sphere-Sensor zum Beispiel wandelt Bewegungen der Maus in 3D-Rotationswerte um. Ein 3D-Rotationswert besteht aus drei Zahlenwerten, die die Rotationswinkel in Richtung der drei Koordinatenachsen angeben. Ein solcher 3D-Rotationswert kann an ein anderes Objekt geschickt werden, das daraufhin seine Ausrichtung im Raum entsprechend verändert. Ein anderes Beispiel für einen Sensor ist der Zeitsensor. Er kann z.B. periodisch einen Event an einen Interpolator schicken. Ein Interpolator definiert eine abschnittsweise lineare Funktion, d.h. die Funktion ist durch Stützstellen gegeben und die dazwischenliegenden Funktionswerte werden linear interpoliert. Der Interpolator erhält also einen Eingabe-Event e vom Zeitsensor, berechnet den Funktionswert f(e) und schickt nun f(e) an einen anderen Knoten weiter. So kann ein Interpolator zum Beispiel die Position eines Objekts im Raum in Abhängigkeit von der Zeit festlegen. Dies ist der grundlegende Mechanismus für Animationen in VRML.

Abb. 2 Browserdarstellungen des Pfeils

Dynamik

Vorreiter der Kombination von Java und Java Script-Programmen mit VRML-Welten war Netscape’s Live3D, bei dem VRML 1.0 Welten über Netscape’s LiveConnect-Schnittstelle von Java-Applets oder JavaScript-Funktionen innerhalb einer HTML-Seite gesteuert werden können. In VRML 2.0 wurde in die Sprache ein neues Konstrukt, der sogenannte Skriptknoten, aufgenommen. Innerhalb dieses Knotens kann Java und Java Script-Code angegeben werden, der z.B. Events verarbeitet. Im VRML 2.0 Standard wurden Programmierschnittstellen (Application Programming Interface API) festgelegt, die den Zugriff auf VRML-Objekte von Programmiersprachen aus erlauben, nämlich das Java API und das JavaScript API. Das API ermöglicht es, daß Programme Routes löschen oder hinzufügen und Objekte und ihre Eigenschaften lesen oder ändern können. Mit diesen Programmiermöglichkeiten sind der Phantasie nun kaum noch Grenzen gesetzt.

VRML und dann?

Eines der ursprünglichen Entwicklungsziele von VRML bleibt auch bei VRML 2.0 ungelöst: Es gibt immer noch keinen Standard für die Interaktion mehrerer Benutzer in einer 3D-Szene. Produkte, die virtuelle Räume mehreren Benutzern gleichzeitig zugänglich machen, sind allerdings schon auf dem Markt (Cybergate von Black Sun, CyberPassage von Sony). Des weiteren fehlt ein Binärformat wie etwa das QuickDraw 3D-Metafile-Format von Apple, durch das die Menge an Daten reduziert würde, die über das Netz geschickt werden müssen, wenn eine Szene geladen wird. Gerade in Mehrbenutzerwelten spielt der sogenannte Avatar eine große Rolle. Eine Avatar ist die virtuelle Darstellung des Benutzers. Er befindet sich am Beobachtungspunkt, von dem aus der Benutzer die Szene sieht. Bewegt sich der Benutzer allein durch die Szene, dann dient der Avatar nur dazu, Kollisionen des Benutzers mit Objekten der Welt festzustellen. In einer Mehrbenutzerwelt jedoch legt der Avatar auch fest, wie ein Benutzer von anderen Benutzern gesehen wird. Standards für diese und ähnliche Probleme werden derzeit in Arbeitsgruppen des Ende 1996 gegründeten VRML-Konsortiums ausgearbeitet.

                   Artikelanfang  Seitenanfang

Literatur

  1. San Diego Super Computing Center: The VRML Repository.
    www.sdsc.edu/vrml/. Enthält Verweise auf Tutorials, Spezifikationen, Tools und Browser im WWW
  2. Diehl, S.: Java & Co. Addison-Wesley, Bonn, 1997
  3. Hartman, J.; Wernecke, J.: The VRML 2.0 Handbook – Building Moving Worlds on the Web. Addison-Wesley, 1996
  4. VAG (VRML Architecture Group): The Virtual Reality Modeling Language Specification – Version 2.0, 1996.
    http://vag.vrml.org/VRML2.0/FINAL/

                   Artikelanfang  Seitenanfang

Autor & Copyright
Stephan Diehl
FB-14 Informatik,
Universität des Saarlandes,
Postfach 15 11 50,
D-66041 Saarbrücken
diehl@cs.uni-sb.de

© 1997 Informatik Spektrum, Springer-Verlag Berlin Heidelberg

                   Artikelanfang  Seitenanfang