Distributed Multimedia Databases as Component ... - Semantic Scholar

6 downloads 29311 Views 125KB Size Report
Workflow management systems (WFMS) are currently a hot topic in computer science [22, 23]. ... IBM Deutschland Informationssysteme GmbH, European Networking Center (ENC), .... We call this system the Multimedia Annotation Database.
Distributed Multimedia Databases as Component of a Teleservice for Workflow Management* Heiko Thimm 1, Ulrich Marder 2, Günter Robbert 2, and Klaus Meyer-Wegener 2 1 - GMD - Integrated Publication and Information Systems Institute (IPSI) Dolivostr. 15, 64293 Darmstadt, Germany e-mail: [email protected] 2 - Dresden University of Technology, Computer Science Department, Institute for Operating Systems, Databases, and Computer Networks Dürerstr. 26, 01062 Dresden, Germany e-mail: {robbert, marder, kmw}@is2201.inf.tu-dresden.de

Abstract In this paper, we present a concept and implementation of a largely dispersed multimedia database system which consists of several multimedia database systems. The users and applications can access the databases in various ways. Our solution also covers the administration of media object duplicates. The entire multimedia database system is a component of a teleservice for workflow management that encourages multimedia. So-called multimedia annotations are attached to workflows and stored in the database system. The annotations are automatically retrieved and transported over networks to the users who perform preassigned parts of workflows. One strength of our implementation is that it is based on the CORBA Object Broker standard which makes it open to other systems.

Keywords: Distributed Multimedia Database Systems, Multimedia Database Management Systems, Multimedia Teleservices, Multimedia Enhanced Workflow Management

1 Introduction Workflow management systems (WFMS) are currently a hot topic in computer science [22, 23]. Networks are spreading, PCs become more and more interconnected, such that data transfer is possible. This is used already to cooperate within organizations and beyond. In many cases, however, it still takes place at a very low level, typically as mail or file transfer. Thus, the users remain responsible for the decision about when to transfer what to whom. It is the issue of workflow management to delegate some propagation tasks to the system. To be able to do so, the system needs information on rules, procedures, exceptions, etc. It than saves the users from remembering all the rules [5]. Within the VORTEL project [4, 5, 6, 7, 26] we are specifying a generic platform for workflow management as a teleservice to enable interoperability between heterogeneous and largely distributed workflow management systems. This way, the growing demand for decentralized workflow management is supported. The VORTEL platform is to be generic in the sense that it is not an executable system or a set of tools itself, but it has to be instantiated by using specific systems *

This work is partially granted by DeTeBerkom GmbH, Berlin, as project ‘‘Vorgangsbearbeitungs Teleservice’’ (VORTEL) within the BERKOM II initiative.

1

to become executable. Within the framework of VORTEL we encourage the use of multimedia data within workflow management. This is motivated by the fact that multimedia data accompanying a workflow can improve the processing of workflows and enhances the traditionally strict formal nature of workflow management by an additional informal facet. For example, in addition to a textual directive which explains how to complete a specific part of a workflow an audio recording which gives further information can be provided. In order to introduce multimedia, VORTEL provides the notion of a multimedia annotation which is a piece of information attached to a step within a workflow. Multimedia annotations can be of the typical media types supported by multimedia systems, i.e., TEXT, PICTURE, AUDIO, VIDEO. Workflow management is an interesting application domain for multimedia. In this paper, we focus on the technical aspects of how to support multimedia within the framework of the VORTEL teleservice for workflow management. This support is based on a so-called Multimedia Annotation Database (MM-ANDB) which is a distributed multi-database system consisting of multimedia databases. The MM-ANDB stores and manages the multimedia annotations and provides essential services required by other VORTEL components. In designing the MM-ANDB we had to solve some interesting problems such as the management of duplicates. We present our solutions to these problems. Furthermore, we describe a concrete implementation of a demonstrator which is based on the two multimedia database management systems MOSS [10, 11, 15, 17, 18], developed at Dresden University of Technology and University of Erlangen-Nürnberg, and AMOS [1, 19, 28, 32, 33, 34, 35], developed at GMD-IPSI. The distribution and interoperability is implemented according to the Object Management Group’s (OMG) Common Object Request Broker Architecture (CORBA). More precisely, we have used an Object Broker implementation developed by DEC. The remainder of this paper is organized as follows. In section two, we give a brief overview of the VORTEL project. The role of multimedia database systems within VORTEL is explained in section three. Our concept and implementation is described in section four and five, respectively. Related work is discussed in section six and section seven concludes the paper.

2 VORTEL – Teleservice for Workflow Management VORTEL is a joint research project [4, 5, 6, 7, 26] of the Berkom Programme funded by DeTeBerkom which is a consulting company of the German Telecom. DeTeBerkom’s activities are focused towards research and development of telecommunication applications. In Table 1, the members of the VORTEL project are listed. Digital Equipment Corporation, Campus-based Engineering Center (CEC), Karlsruhe IBM Deutschland Informationssysteme GmbH, European Networking Center (ENC), Heidelberg Friedrich-Alexander-Universität Erlangen-Nürnberg, Computer Science Department, Erlangen Fraunhofer-Gesellschaft, Institute for Software and Systems Technology (ISST), Dortmund Dresden University of Technology, Computer Science Department, Dresden German National Research Center for Information Technology (GMD), Integrated Publication and Information Systems Institute (IPSI), Darmstadt

Table 1: Members of the VORTEL Consortium 2

Project Objectives The goal of VORTEL is to develop a generic platform for workflow management to enable interoperability between largely dispersed systems. The requirements to be met are summarized below: – Multi-vendor. The VORTEL platform needs to support existing platforms from different vendors which can be regarded as instances or specialization. This includes hardware and operating systems as well as applications and workflow management systems including their components. – Interoperability. The interoperation of different workflow management systems and their components needs to be supported. – Data Structures. Data structures that describe and encompass activities within a workflow need to be represented according to international standards. – Use of Existing Teleservices. The teleservices already specified and implemented in the Berkom research programme are to be evaluated and used as a basis for implementing and instantiating the VORTEL platform. – Use of Existing Teleservices. The teleservices already specified and implemented in the Berkom research programme are to be evaluated and used as a basis for implementing and instantiating the VORTEL platform. – Use of Existing Teleservices. The teleservices already specified and implemented in the Berkom research programme are to be evaluated and used as a basis for implementing and instantiating the VORTEL platform. The specified platform is partially implemented according to application scenarios. In more concrete terms, we implement demonstrators to show the applicability of workflow management as a teleservice in an open and heterogeneous environment. Architecture The objectives introduced above lead to the definition of a generic workflow management system backbone. It offers interfaces to plug in different components that provide the required workflow management functionality (e.g., editing functionality). Considering the scope of a generic workflow management system, a first coarse-grained architectural view of the system is given in Figure 1. As shown, there is a Communication Bus which provides common interfaces to the different components and a means for communication among them. It should be emphasized that the architecture is meant to define a workflow management system not as a monolithic system but as a concept that allows for incremental upgrading [5]. The role of the different components is as follows: – The Communication Bus is the backbone of the workflow management system. It implements the interoperation and interconnection of the different components in the system. The purpose of the Communication Bus is twofold. At system-build-time it is the mechanism to integrate components. At system-operation-time it has the responsibility to process and forward requests between components and to return the results. – The Workflow Definition Components allow to edit workflows to be supported by the workflow management system. 3

User Agent

Workflow Definition Component Communication Bus

Workflow Engine

Workflow Database

Workflow Analysis Component

Global Application Mediator Local Application Provider

Figure 1: A sample instantiation of the general VORTEL architecture. – The User Agent is the component that interacts with the user who is involved in the workflow. It notifies him about the activities to be performed by him and provides access to the corresponding documents and tools. Since there may be (and usually will be) numerous users involved in the workflow, there are multiple instances of the user agent, one for each user (in the figure indicated by the shadow behind the user agent). – The Workflow Engine is the executant for the workflow model that determines the activities to be performed next, allocates persons to the activities to be performed, resolves conflicts, etc. in the course of the workflow. – The Workflow Database stores the workflow models and all information about the actual workflows themselves (e.g. current state, people and resources allocated in the workflow). Furthermore, it also stores the multimedia annotations which potentially accompany the workflows. Note that, the workflow database does not contain the artifacts to be processed within the workflows (e.g. forms to be completed). – The Workflow Analysis Components are used for consistency checks on the model or for performing a workflow model validation or verification (e.g., in order to detect bottlenecks or deadlocks or for performing a resource planning on the model). – Both, the Global Application Mediator (GAM) and the Local Application Provider (LAP) serve as components to integrate external applications (e.g. word processing systems). The GAM maintains information about the services and data available within the entire system. Based on these information and actual parameter values, the GAM instructs the respective LAP to start the required application.

3 Role of Multimedia Database Systems within VORTEL In this section, we motivate to add multimedia annotations to workflow management systems in the context of VORTEL. Furthermore, we describe the functionality and design of the global Workflow 4

Database of the VORTEL architecture. From these aspects, we derive the requirements for a respective Multimedia Annotation Database System.

3.1 Multimedia Annotations within the VORTEL Workflow Model The general goal of adding multimedia annotations to workflow management systems is to make users’ lives easier. User not only means the end users, who are involved in workflow instances, but also means the workflow modelers, who define new workflow types or analyze existing ones. Such multimedia annotations are mostly used to add some explanations, instructions or something like that to any object managed by a workflow management system, e.g. a workflow type, a specific activity of a workflow instance, or a document which is used in some workflow(s). Nevertheless, multimedia annotations do not become part of the annotated objects but rather are in some sense attached to those objects. Thus, the same annotation can be used for several different objects and, obviously, each object can have attached to it several annotations. A typical employment of multimedia annotations in workflow management systems is the detailed description of workflow types. Whereas keywords and short textual descriptions can be used to search for or browse through a list of workflow types, multimedia annotations are most suitable to give more detailed information on a specific workflow type, such as: – audio comments on the purpose of the workflow type, – images of the flow of control and data between the different activities, – simulations of workflow types, – training videos, – useful hints for making decisions, and so on. Of course, in order to give users of workflow management systems the opportunity to exploit the above mentioned functionality, the User Agents must be extended to support creation and presentation of multimedia annotations as well as some localisation mechanisms (e.g. Workflow Type Browser). Within the VORTEL project some special tools for handling multimedia annotations are developed for demonstration purposes. However, we expect that the user interfaces of future workflow management systems will directly support the VORTEL global workflow database interface which covers multimedia annotations, too.

3.2 The Global Workflow Database The global workflow database has to store every globally relevant information concerning workflow types and instances. This includes – Reference Data: any useful descriptional data which may help workflow users or modelers to search for workflow types and to find out what task a specific workflow of that type will perform, which documents it creates, on which workflow engine(s) it can be instantiated etc. – Workflow Type Definitions: formal descriptions of workflow types which, among other things, consist of 5

– the definition of all activities, including the executants and external applications which must be used to carry out the activity, – the definition of the control flow between activities, such as sequences, parallel branches (AND-split), conditional execution (OR-split), reunion of parallel branches (AND-Join respectively OR-Join) etc. – Workflow Instances: this part of the workflow database keeps track of all running workflows by monitoring their actual state (e.g. the last performed activity) and, furthermore, stores all historical information on completed (or aborted) workflows. – Multimedia Annotations: the role of annotations which are also stored in the global workflow database has already been discussed in section 3.1.

   

   

    

   

Figure 2: Structure of the global workflow database for VORTEL. A simplified diagram of the global workflow database is shown in Figure 2 (using the notation of the Object Modelling Technique). According to the different roles of the workflow database mentioned above, the conceptual design of the database leads to four major components which may be developed more or less independently. These four components are the Reference Database, the Workflow Type Database, the Workflow State Database, and the Multimedia Annotation Database. For each database component the diagram of Figure 2 indicates only one entity which is the central entity of the respective component. However, every component, except the annotation database, consists of many entities and relationships between them. As stated earlier, it should be possible to attach multimedia annotations to almost every object managed by a workflow management system. This requires relationships between the entity Multimedia Annotation on the one hand and several entities belonging to other components of the Workflow Database on the other (see Figure 2). The relationship between Multimedia Annotation and the entity Workflow Type Description of the Reference Database, for example, allows a workflow modeler to provide end users with vivid and comprehensible illustrations of the workflow types. But, the workflow modeler may also want to give other workflow modelers or analysts explanations or hints concerning the formal definition of the workflow types. Thus, a relationship between Multimedia Annotation and the entity Workflow Type Definition of the Workflow Type Database is needed, too. Moreover, the acting persons of a running workflow may also sometimes wish to annotate a just 6

completed activity before handing over control to the next actor, e.g. to justify or explain an unusual decision. Such annotations have to be linked with the entity Workflow Instance of the Workflow State Database, because they are workflow instance specific rather than workflow type specific.

3.3 Requirements for a Multimedia Annotation Database System In the following, based on the previous explanations, we derive the requirements of a database system targeted at multimedia annotations. We call this system the Multimedia Annotation Database System (MM-ANDB). Referencing Multimedia Annotations from other Databases Conventional database management systems (DBMS) are not very good in managing large unstructured objects like media objects because they do not provide any type-specific functions (e.g. presentation, capture, format conversion) which can be applied to such objects. Consequently, particular multimedia database management systems (MM-DBMS) have to be used to store multimedia annotations properly. As explained above, several relationships exist between multimedia annotations and other parts of the global workflow database (which will be implemented using a relational or an object-oriented DBMS). Thus, one requirement is that multimedia annotations stored in a multimedia database system (MM-DBS) must have unique and stable identifiers (assigned and maintained by the MMDBMS) which are qualified to serve as references to them. This means, e.g., that the identifier of a multimedia annotation has to be the same as long as the annotation exists irrespective of any reorganization of the data set. Physical Distribution One fundamental assumption of VORTEL is that future workflows will be spread over several independent institutions or companies which are connected via wide-area networks (WAN). As a consequence, there exist at least two reasons to physically distribute the multimedia annotation database system: – Performance (or costs, respectively). Accessing media objects via WANs is either very dissatisfying (low quality, long response-time) or very expensive because high bandwidth must be provided. Therefore, a local part of the MM-ANDB should be accessible via local-area networks (LAN) from each workstation used by workflow participants. – Autonomy. Annotations may be somehow confidential, i.e., not be accessible for workflow participants of other institutions. Hence, the opportunity to self-responsibly manage access rights must be granted to each institution participating in a distributed workflow management system. We consider physical distribution of the MM-ANDB to be the most suitable way to do this. Of course, there are other advantages of physical distribution (e.g. high availability) and also some disadvantages (e.g. the problem of managing distributed transactions). A general discussion of these disadvantages is given in [9]. Integration and Interoperability of multiple MM-DBMS Development of MM-DBMS started only a few years ago. Therefore, until now there exist merely a handful of research prototypes which, in general, are based on different design concepts and 7

provide varying functionality (see, e.g., the brief descriptions of the MM-DBMS MOSS and AMOS given in section 5). In our approach we intend to create a more powerful MM-DBMS by combining the strengths of multiple MM-DBMS. This requires defining common interfaces and protocols in order to make multiple MM-DBMS appear as one ‘‘big’’ MM-DBMS.



            

Figure 3: A physically distributed Multimedia Annotation Database System

4 A Distributed Multimedia Annotation Database System for VORTEL According to the reasons discussed in section 3.3, we propose to have a local MM-DBS at each site (i.e., one that is installed within the respective LAN) and in addition to that several others which are not locally available but accessible via WANs. Hence, our solution provides a MM-ANDB which is physically distributed over a set of MM-DBSs. Figure 3 shows a sample configuration of such a system. The functionality to be provided by the distributed MM-ANDB must allow: (1) direct access to each MM-DBS via object identifiers, (2) queries that span all MM-DBSs, (3) the generation and administration of media object duplicates. In the following, we first describe how requirements (1) and (2) can be satisfied by introducing a so-called Annotation Database Manager (ANDB Manager). Then, we show how this solution can 8

be enhanced in order to meet requirement (3) as well by introducing so-called Duplicate Managers and by adding more functionality to the ANDB Manager. Providing the Access and Query Functionality

Reference Database

SEARCH Application

ANNOTATION DATABASE INTERFACE references to multimedia annotations

Annotation Database Manager ACCESS

ACCESS

MM-DBMS

MM-DBMS

registration data, raw data, indices

registration data, raw data, indices

Figure 4: Annotation Database Managers to support the required access and query functionality. An ANDB Manager which handles the access to the distributed MM-ANDB is introduced (Figure 4). Instead of one central ANDB Manager, each User Agent has its own ANDB Manager. The ANDB Manager enables both, a direct access (via an object identifier) and a descriptive access (via a descriptive search request, i.e., a query) to the distributed MM-ANDB. In case of a direct access, the ANDB Manager extracts the name of the MM-DBS to be contacted from the object identifier first. Then, it issues the request to this MM-DBS. In case of a descriptive search, in addition to the raw query expression, the concrete database to which the query is to be submitted is specified. Otherwise, the query is submitted to all MM-DBSs of the global MM-ANDB (spanning query). The access functionality also includes a write access, i.e., the insertion of new multimedia annotations in the MMANDB. The ANDB Manager also handles the network-based transport of the media objects from the database to the respective sites at which the multimedia annotation is to be presented as well as the other way round. Management of Duplicates For each MM-DBS there is a Duplicate Manager that handles duplicates of media objects (Figure 5). In more precise terms, the Duplicate Managers manage references between originals and copies by maintaining: – for each stored copy a reference to the corresponding original, and – for each original a list of references to all existing copies. Upon generation of a duplicate, the ANDB Manager notifies the Duplicate Managers of the MMDBS which contains the original and the one in which the new duplicate is to be stored (Notification 9

Application

ANNOTATION DATABASE INTERFACE

SEARCH and ACCESS

MM-DBMS

Duplicate Manager

registration data, raw data, indices

duplicate management data

Annotation Database Manager

SEARCH and ACCESS

NOTIFICATION DUPLICATE CREATION NOTIFICATION DUPLICATE UPDATE

Duplicate Manager

MM-DBMS

duplicate management data

registration data, raw data, indices

Figure 5: Duplicate Managers for the generation and administration of media object duplicates. Duplicate Generation). When a copy or an original of which copies have been made is modified, then the MM-DBS which contains the modified object notifies the respective other ones (Notification Duplicate Update). A MM-DBS which receives an Update Notification can react in various ways. For example, it can simply ignore the message, issue a message to the user, or automatically perform the requested update.

5 Implementation In the following, we describe our implementation of the MMANDB for the VORTEL demonstrator. As MM-DBSs we have used the two systems MOSS and AMOS which are both research prototypes. DEC’s Implementation of the CORBA compliant Object Request Broker has been employed to enable the required communication between the components.

5.1 The Systems MOSS and AMOS MOSS (Media Object Storage System) is a research prototype of a multimedia object storing system that originated at the University of Erlangen-Nürnberg and is now under development at the Dresden University of Technology [10, 11, 15, 17, 18]. Even the most advanced DBMS prototype (extended relational or object-oriented) do not provide sufficient support for the management of multimedia data. In order to develop and evaluate appropriate mechanisms in isolation, MOSS has been designed to manage only those data. The far-end goal is to identify the right mechanism that can be integrated into full-fledged DBMS prototypes. In the meantime, MOSS can be used in combination with a DBMS for standard formatted data. This lacks some functionality (e.g. no spanning query expressions), but has already been used with success in real applications. For the MM-ANDB of VORTEL, MOSS alone can do the job. 10

APPLICATION embedded conventional DBMS-interface

MOSS application programming interface

Multimedia-DBMS conventional DBMS

media object identifier

MOSS

Figure 6: Design philosophy of the MOSS system. MOSS generates a unique identifier for each media object it stores. This media-object identifier (MO-ID) can, for instance, be kept in entity attributes of a conventional DBMS (as in the case of a ‘‘photo’’ attribute of an employee; see Figure 6). In addition to the storage management of media objects, MOSS also provides means for searching, processing and format-conversion of media objects. All media types (TEXT, IMAGE, AUDIO, GRAPHIC, VIDEO) are implemented as so-called Media-specific Abstract Data Types (MADT). These MADTs provide type-safe operations for creation, retrieval, presentation and editing of media objects. All MADT functions are exported through an application programming interface. Further, it must be emphasized that format independency is another advantage of the MADT concept. This will become obvious when considering the following: – If a user stores a media object in MOSS the respective MADT automatically recognizes the format of the media object (in most cases). The media object then will be stored using an internal MOSS format which is determined by the MADT and may differ from the external format. – Now, any user is able to retrieve this media object without taking care of its original format, because MOSS allows users to specify the desired external format of the media objects (and, consequently, performs the appropriate format conversions, if necessary). Thus, users can store and retrieve media objects without having to use external format-conversion applications. MOSS preserves some of the benefits of the relational data model by supporting a concept, called search-set-concept, for contents-based searching for media objects. This search-set-concept includes the following features: – creation of search-sets with media objects as elements, – each media object can be member of arbitrary search sets, and set membership may change over time, – the semantics of a search-set are determined by a so-called dictionary which is used to analyze the colloquial content descriptions of each media object in the set (queries 11

over the set are analyzed using the same dictionary and are then matched with the descriptions), – the usual set operations (unions, intersections, difference) can be applied to searchsets, too (the dictionary of the resulting set cannot be generated automatically from the two input sets; it must be compiled and attached to the set by the user). AMOS (Active Media Object Store) is a research prototype of a MM-DBMS [1, 19, 28, 32, 33, 34, 35] under development at GMD-IPSI. Most multimedia applications involve a diversity of conventional datatypes like numbers, text, and tables combined with media data like images (bitmaps), graphics, audio, video and animations. Early research results in the area of multimedia systems have shown that object-oriented programming and the usage of object-oriented DBMS are a very promising basis to provide for the multitude of datatypes and their manipulation features. However, besides those well-known concepts several other techniques need to be employed by a MM-DBMS. Modelling features for time-dependency and synchronized presentation of multimedia data as well as runtime support must be added and integrated into the system. Furthermore, presentations and control of presentations at the user’s workstation requires a client/server architecture, specific buffering concepts, and networks supporting continuous and isochronous transport protocols. The necessary access to existing multimedia data stores (e.g. CD-ROM systems) and databases requires flexible integration techniques for heterogeneous systems. The development of the AMOS system is geared towards the above mentioned concepts. These concepts are integrated within the existing object-oriented DBMS VODAK (‘‘Verteiltes Objektorientiertes DAtenbanKsystem1’’) [2, 13, 12 20]. Our development efforts include: – an extension of VODAK’s data definition language to support temporal multimedia operations such as the simultaneous start of multiple media presentations [1], – the integration of a storage management and object management component for continuous data [19], – the integration of a transport component for continuous data, – the integration of a so-called Playout Management Service as a novel built-in database service which executes scripted multimedia presentations [32, 33, 34]. Within the framework of the Playout Management Service we investigate optimization issues for adaptations of multimedia presentations [35]. This is important for best-effort based multimedia presentation services, i.e. presentation services which are not based on end-to-end guaranteed quality of service. This research issue is jointly investigated with the Oregon Graduate Institute of Science and Technology (OGI), Portland, OR, USA. Researchers of that institute have recently proposed an interesting approach for the specification of quality of service [27]. So far, several prototypes [25] and multimedia applications including workflow management for cooperative authoring of multimedia documents [29], multimedia archives [28, 30, 31], and simulation [8] have been developed based on AMOS. Thus, the concepts and implementations are going to be constantly evaluated against user requirements. AMOS will make the VODAK DBMS a multimedia, object-oriented, and with respect to a client/server architecture a distributed DBMS. 1. This is the German term for distributed object-oriented database system.

12

5.2 Realization of Distribution and Interoperability Based on CORBA Implementation Architecture Overview

Reference-DB

Browser

Sybase 10 on SUN/Solaris 2.4

PC/Windows NT

ANNOTATION DATABASE INTERFACE references to multimedia annotations

Ann. DB Mgr. PC/Windows NT

CORBA (DEC Object Broker 2.5b)

MOSS

AMOS

SUN/Solaris 2.4 or DEC Alpha/OSF1

SUN/Solaris 2.4

registration data, raw data, indices

registration data, raw data, indices

Figure 7: Implementation architecture of the multimedia annotation database system for the VORTEL demonstrator. During the VORTEL project we have implemented a distributed MM-ANDB which is based on the concepts shown in Figure 4 and 5. The implementation architecture of the MM-ANDBS is depicted in Figure 7. In our implementation of the MM-ANDBS we used MOSS and AMOS as servers executing on different network nodes. For the client side of the MM-ANDBS we implemented a first prototype of the ANDB Manager which offers an easy-to-use API called Annotation Database Interface to client-applications. The communication between clients and servers is realized using CORBA . More precisely, we have chosen ObjectBroker version 2.5b developed by our project partner DEC. The decision to use CORBA for implementing the distributed MM-ANDBS was driven by the fact that it offers some useful advantages for rapid development of distributed applications: – easy-to-use Interface Definition Language (IDL) which is highly adequate to design and implement interfaces for client/server communication over networks, – programming on application layer (automatic generation of client and server skeletons) rather than on protocol or even transport layer, – support of heterogeneity, because CORBA (i.e., ObjectBroker) is implemented for many platforms. Unfortunately, presently available implementations of CORBA like ObjectBroker 2.5b lack in supporting continuous data streams or - which would even be more desirable - some sort of 13

module ANDB { /* type definitions omitted... */ interface ANDBIF

{

void Create( in TTypeDescr in TRawData in T_MO_Id

MO_TypeDescr, /* external format */ MO_RawData, original_MO_Id,/* specify in case of duplicate creation */ new_MO_Id

out T_MO_Id ) raises( UserException ); void Update( in T_MO_Id in TTypeDescr in TRawData ) raises( UserException

MO_Id, MO_TypeDescr, /* external format */ MO_RawData, );

void Delete( in T_MO_Id MO_Id ) raises( UserException ); void Get( in T_MO_Id in TTypeDescr out TRawData

MO_Id, MO_TypeDescr, /* external format */ MO_RawData

) raises( UserException ); void Query( in TQueryExpression queryExpression, out MO_IdList queryResult ) raises( UserException ); void Notify_Create( in T_MO_Id original_MO_Id, in T_MO_Id duplicate_MO_Id ) raises( UserException ); void GetInfo( in T_MO_Id MO_Id, out T_MO_Info MO_Info ) raises( UserException ); void GetServerProfile( out TServerProfile serverProfile ) raises( UserException ); }; };

Figure 8: CORBA Interface for the Multimedia Annotation Database System 14

multimedia network protocol. Therefore, in order to achieve high performance transport of multimedia data over network, additional communcation protocols not included in the CORBA 1.2 specification must be employed. While implementing our prototype we have put aside this task, because with future implementations of the recently released CORBA 2.0 specification probably better solutions will be applicable. Client/Server Interface Prior to the use of CORBA, the interface must be defined in the IDL. The IDL-module for our first prototype defines a minimum of eight methods which an ANDB server must be able to perform (see Figure 8). The eight methods are: – Create. This method is designated for the creation of new media objects (MO). As input parameters this method expects a type description (MO_TypeDescr), the raw data stream (MO_RawData) and – if a duplicate of a MO is created – the MO-identifier of the original MO (original_MO_Id). The type description presently consists of a media type code (e.g. IMAGE, AUDIO) and a data format code (e. g. GIF, AU) while the raw data is represented by an unlimited byte sequence. In the case of successful execution this method returns a unique MO-identifier (new_MO_Id). Otherwise, a so-called user exception is raised. Thereby, an error code and a corresponding error text is returned to the caller of the method (exception handling is the same for all eight methods). – Update. Using this method, the contents of an already existing MO (identified by its MO_Id) can be updated. Analogously to Create a type description and the raw data stream must be supplied as parameters. – Delete. This method is designated for deletion of existing media objects. As input parameter only a MO_Id is required2. – Get. This method is designated for retrieval of media objects by MO_Id. As input parameters a MO_Id and a type description of the desired external format (MO_TypeDescr) must be supplied. If the requested media object exists and the server is able to create the specified external format, the object is returned as a byte sequence. – Query. Using this method a search query can be sent to the server. If the server is capable of processing the query, a (possibly empty) list of MO_Ids meeting the search conditions specified in the query is returned. – Notify_Create. This method must be called on a server that stores a MO of which a duplicate has been created on a different server. – GetInfo. This method should be used to get information on a specific MO (e.g. a list of external formats to which the server is able to transform it) before retrieving it. – GetServerProfile. Using this method a client can get information about the capabilities of a specific server (e.g. available MO types and external formats; does the server support real-time applications?). 2. Of course, we know that this method will cause a serious problem concerning external references to MOs, because deleting a MO will invalidate all external references to it. Thus, we will have to spend some time on this in the near future.

15

Figure 9: The ANDB Client which serves as user interface to exploit the ANDB Manager.

Figure 10: Presentation of multimedia annotations using the ANDB Client. ANDB Manager and ANDB Client The ANDB Manager is implemented as a Dynamic Link Library. It is designed to perform the following tasks: 16

– CORBA-interface calls (thus making the use of CORBA transparent to applications), – presentations, e.g. playing audio, displaying images, – server selection respectively server switching, e.g. switching between a MOSS- and an AMOS-server, and – exception handling on client-side. For demonstration purposes, we currently use a simple user interface called ANDB Client which enables a user to work with the ANDB Manager. Figure 9 and 10 show two screen shots of such a demonstration.

6 Related Work The area of MM-DBS is a very active research area. Numerous research prototypes based on different architectural approaches have been proposed within the last few years. The most prominent research issues of this area include data modelling for multimedia applications [1], storage management [16] and buffer management for continuous data [19], support of distributed architectures [3], and support of multimedia presentations [32, 33, 34, 35, 27] especially the synchronization aspect [14]. To our knowledge, design concepts for distributed MM-DBS which consist of several largely dispersed, heterogeneous, and autonomous DBS connected via WAN have not been proposed before. Such concepts are not only useful for workflow management as a teleservice, but for many other purposes as well. For example, they can be used for archiving and retrieval applications [28, 30, 31] or multimedia information systems (e.g. virtual multimedia product catalog, multimedia calendar of events) which need to be provided to largely dispersed users. In comparison to the World Wide Web (WWW) the strength of our approach is that it is based on database technology. Thus, mechanisms for, e.g., access control and data security which are offered by DBMS allow to satisfy the special needs of such applications. The CORBA standard has been used before for distributed multimedia systems. For example, the Multimedia System Services architecture proposed jointly by HP, IBM and SunSoft provides multimedia service abstractions through CORBA. An overview of this architecture is given in [21]. So far, not much attention has been paid to the use of multimedia information for workflow management. Hence, there exists only little experience, e.g. [29], in this area. We hope that the VORTEL project can stimulate respective activities by developers of workflow management systems. Recently, we have started to interact with the Workflow Management Coalition (WfMC) [36, 37] which members are workflow vendors, universities, and other institutions. Currently, the WfMC is working on a specification for interoperable workflow management systems for which the VORTEL project can provide helpful hints.

7 Conclusion In this paper, we presented the requirements and a concrete approach for a distributed multimedia annotation database system as a component of a novel teleservice for workflow management. The 17

given discussion on the use of multimedia annotations for workflow management purposes provides many ideas which are relevant for workflow management in general. The main contribution of the work reported is our general concept for a largely dispersed distributed MM-DBS which itself consists of several autonomous MM-DBS. Convenient access to this system is offered to the users and application programs. We believe that the shown implementation which is based on the CORBA standard provides helpful hints for other project in this area. A teleservice for workflow management such as the one developed within the VORTEL project can provide a wide spectrum of services to enable and support workflow management within distributed organizations and among different organizations [4]. These services can cover, e.g., the provision of a respective hardware and software infrastructure such that customers need not to deal themselves with the installation and maintenance of such workflow management infrastructure. In the ideal case, the customers should be able to use the infrastructure by just connecting their computing environment to a ‘‘workflow management outlet’’ analogously to the telephony domain where users just need to connect their telephone. A further sample service that can be offered is the provision of a generic library of predefined workflows or consulting work with respect to the modelling of individual workflow types. We believe that support of multimedia data is an important factor to achieve a high user acceptance for such a novel teleservice which can be seen as a perfect application for the currently evolving global information super highway. Ackknowledgement All other members of the VORTEL project have contributed to this paper by supporting a vital discussion on the subject reported in this paper. We would like to express our deep gratitude to them and also to the DeTeBerkom for their project funding.

References 1.

Aberer, K., Klas, W.: ‘‘Supporting Temporal Multimedia Operations in Object-Oriented Database Systems”, Proc. of IEEE Multimedia Computing and Systems, Boston, USA, May 1994, pp. 352-361 2. Aberer, K., Fischer, G.: ‘‘Semantic Query Optimization for Methods in Object-Oriented Database Systems’’, Proc. of the 11th Int. Conf. on Data Engineering, Taipei, Taiwan, March 1995, pp. 70-79 3. Berra, P.B., Chen, C.Y.R., Ghafoor, A., Lin, C.C., Little, D.C., Shin, D.: ‘‘Architecture for distributed multimedia database systems’’, Computer Communications, vol. 13, May 1990, pp. 217-231 4. Böhm, M., Deiters, W., Friedrich, M., Lindert, F., Schulze, W.: ‘‘Workflow Management as Teleservice”, accepted for 7th Joint European Networking Conference JENC7, Budapest, May 13–16 1996 5. Deiters, W., Haake, J., Jablonski, S. and Meyer-Wegener, K.:‘‘BERKOM Projekt Vorgangsbearbeitungs -Teleservice VORTEL”, Coarse specification, DeTeBerkom, Berlin, 1994 6. Deiters, W., Friedrich, M., Lindert, F.: ‘‘Der Vorgangsbearbeitungs-Teledienst zur Integration von Vorgangssteuerungssystemen”, Telekooperations-Systeme in dezentralen Organisationen, Workshop of the GI-Fachgruppe 5.5.1, 22.-23. Februar 1996, Berlin, to be published 7. Deiters, W., Friedrich, M., Lindert, F.: ‘‘VORTEL– Eine Integrationsplattfrom zur Steuerung verteilter Arbeitsprozesse”, in GI Softwaretechnik Trends, Band 15, Heft 4, ISSN 0720–8928, November 1995 8. Deegener, M., John, W., Kühnapfel, B., Löhr, M., Lux, G., Wirth, H.: ‘‘A Basic Architecture for the Development of a Distributed Interactive Simulator”, in Breitenecker, F., and Husinsky, I. (Ed.) Proc. EUROSIM ‘95, Vienna, Austria, September, Elsevier, pp. 357-362 9. Gray, J., Reuter, A.: ‘‘Transaction Processing: Concepts and Techniques’’, Morgan Kaufmann Publishers, San Mateo, CA, 1993 10. Käckenhoff, R., Merten, D., Meyer-Wegener, K.: ‘‘Eine vergleichende Untersuchung der Speicherungsformen für multimediale Datenobjekte’’, in: Stucky, W., Oberweis, A. (Ed): Datenbanksysteme in Büro, Technik und Wissenschaft, GI-Fachtagung Braunschweig, 3.-5. März 1993, Springer 1993, pp. 164-180

18

11. Käckenhoff, R., Merten, D., and Meyer-Wegener, K.,‘‘MOSS as Multimedia Object Server – Extended Summary,” in Multimedia: Advanced Teleservices and High Speed Communication Architectures, Proc. 2nd Int. Workshop - IWACA ’94 (Heidelberg, Sept. 26-28, 1994), ed. R. Steinmetz, Lecture Notes in Computer Science vol. 868, Springer-Verlag, Berlin 1994, pp. 413-425 12. Klas, W.:‘‘Tailoring an Object-Oriented Database System to Integrate External Multimedia Devices’’, Int. Workshop on Heterogeneous Databases and Semantic Interoperability, Boulder, February 1992 13. Klas, W., Aberer, K., Neuhold, E.J.: ‘‘Object-Oriented Modeling for Hypermedia Systems using the VODAK Modeling Language (VML)’’, Object-Oriented Database Management Systems, NATO ASI Series, Springer Verlag Berlin Heidelberg, August 1993 14. Little, T.D.C., Ghafoor, A.:‘‘Synchronization and Storage Models for Multimedia Objects’’, IEEE Journal on selected areas in communications, 8(3), April 1990, pp. 413-427 15. Marder, U., Merten, D.: ‘‘Systempufferverwaltung in Multimedia-Datenbankverwaltungssystemen’’ in: Lausen, G. (Ed): Datenbanksysteme in Büro, Technik und Wissenschaft, GI-Fachtagung Dresden, 22.-24. März 1995, Springer 1995, pp. 179-193 16. Maier D., Walpole, J., and Staehli R.: ‘‘Storage System Architectures for Continuous Media Data’’, FOFO’93 Proceedings, Lecture Notes in Computer Science, Vol. 730, 1993, Spinger-Verlag, pp. 1-18 17. Meyer-Wegener, K.: ‘‘Multimedia-Datenbanken’’, in German, Reihe ‘‘Leitfäden der Angewandten Informatik’’, B.G. Teubner Stuttgart 1991 18. Meyer-Wegener, K.: ‘‘Database Management for Multimedia Applications’’ in Encarnacao, J.L., Foley, J.D. (Eds.): Multimedia: System Architectures and Applications, Springer Verlag 1994, pp. 105 - 119 19. Moser, F., Kraiss, A., Klas, W.: ‘‘L/MRP: A Buffer Management Strategy for Interactive Continuous Data Flows in a Multimedia DBMS’’, Proc. of the 21th Int. Conf. of Very Large Data Bases (VLDB’95), Zürich, Switzerland, September 1995, pp. 275-286 20. Muth, P., Rakow, T.C., Weikum, G., Broessler, P., Hasse, Ch.: ‘‘Semantic Concurrency Control in Object-Oriented Database Systems’’, Proc. of IEEE Ninth International Conference on Data Engineering, Washington DC, 1993, pp. 233-242 21. ‘‘Middleware System Services Architecture’’ in John F. Koegel Buford (Ed): Multimedia Systems, ACM Press, Addison-Wesley Publishing Company, 1994, pp. 221-244 22. Proceedings of the third IEEE Workshop Enabling Technologies: Infrastructure for Collaborative Enterprise (WET ICE), Morgantown, WV, 1994 23. Proceedings of the 4th International Working Conference on Dynamic Modelling and Information Systems, Noordwijkerhout, Netherlands, September 1994 24. Publications of the Workflow Management Coalition (WfMC), http://www.aiai.ed.ac.uk:80/WfMC/index.html. 25. Rakow, T.C., Muth, P.: ‘‘The V3 Video Server - Managing Analog and Digital Video Clips’’, Proceedings ACM SIGMOD ’93 Conference, Washington DC, May 1993, pp. 556-557 26. Schulze, W., Böhm, M.: ‘‘Interoperability Issues in Workflow-Management-Systems”, Proceedings of the European Business Process & Workflow Conference, Frankfurt, 6.-8. November 1995 27. Staehli, R., Walpole, J., Maier, D.: ‘‘A quality-of-service specification for multimedia presentations’’, ACM Multimedia Systems Journal, Vol.3, Number 5/6, 1995, ACM Press, Springer, pp. 251-263 28. Thimm, H., Rakow, T.C.: ‘‘A Database Management System-Based Multimedia Archiving Teleservice Incorporating Mail’’, Proc. of the 1st Int. Conf. on Applications of Databases, Vadstena, Sweden, June 1994, Springer LNCS 819, pp. 281-298 29. Thimm, H.: ‘‘A Multimedia Enhanced CSCW Teleservice for Wide Area Cooperative Authoring of Multimedia Documents’’, position paper to the ACM CSCW’94 WS on Distributed Systems, Multimedia, and Infrastructure Support in CSCW, Chapel Hill, NC, USA, October 1994, ACM SIGOIS Bulletin, December 1994, Vol. 15, No.2, pp. 49-57 30. Thimm, H., Röhr, K., Rakow, T.C.: ‘‘A Mail-Based Teleservice Architecture for Archiving and Retrieving Dynamically Composable Multimedia Documents’’, Proc. of the Int. COST 237 Workshop, Multimedia Transport and Teleservices, Vienna, Austria, November 1994, Springer LNCS 882, pp. 14-34 31. Thimm, H., Rakow, T.C., Neuhold, E.J.:‘‘Using Multimedia Archives for Hypermedia Applications in Open Networks’’, Kongress des Münchner Kreis, in Band 21, Reihe ‘‘Telecommunications’’, 1995, Herausgeber/Editor: J. Eberspächer, Springer Verlag, pp. 153-176

19

32. Thimm, H., Klas, W.: ‘‘Reactive Playout Management - Adapting Multimedia Presentations to Contradictory Constraints’’, Arbeitspapiere der GMD No. 916, St. Augustin, June 1995 33. Thimm, H., Klas, W.: ‘‘Playout Management - An Integrated Service of a Multimedia Database Management System’’, First International Workshop on Multi-Media Database Management Systems, Blue Mountain Lake, NY, USA, August 28-30, IEEE Computer Society Press, 1995, pp. 38-47 34. Thimm, H., Klas, W.: ‘‘Playout Management in Multimedia Database Systems’’, 60-pages invited book chapter, in Nwosu, K., Berra, B., Thuraisingham, B. (Editors): ‘‘Design and Implementation of Multimedia Database Management Systems’’, Kluwer Academic Publishers, to be published 35. Thimm, H., Klas, W.: ‘‘-Sets for Optimized Reactive Adaptive Playout Management in Distributed Multimedia Database Systems’’, accepted conference paper, IEEE 12th International Conference on Data Engineering, Feb. 26 - March 1, 1996, New Orleans, La., USA 36. WfMC: Glossary, November 1994 37. WfMC: Workflow Application Programming Interface (WAPI) Specification, Draft, Request for Comments, Document No. WFMC-TC-1009, February 24th, 1995

20