An Object-Oriented Database for the Display ... - ACM Digital Library

2 downloads 0 Views 804KB Size Report
save the direct measurement data to files on computer disks, without the ... the number of data files grow over months and years, the ... GemStone [MS87],. Ontos ...
An Object-Oriented

Database for the Display Measurement Yihong

Dept. of Computer

Qian, Edward

Science, Virginia Blacksburg, Willard

Dept. of Industrial&

and Analysis

A. Fox

Polytechnic Institute& VA 24061-0106

State University

W. Farley

Systems Engineering, Virginia Polytechnic Blacksburg, VA 24061-0106

Institute&

1.1 Evolution

Keywords: Object-Oriented Database, Data Model, Design, Implementation, Display Measurement Systems

State University

of Display

Initially,

display

measurement

devices used to measure

has been specified,

subsystem

ObjectStore

Display

describes development of an Display and Analysis System (DMAS). An object

data model for DMAS database

has

ODBMS,

been

using

accessed from a Windows

Analysis

researchers

systems

the luminance

soon developed

were

simple

of the dispiay.

new

tools

for

the

characterization analysis of display devices. These tools required the measurement of luminance as a function of

and a prototype

implemented

and

Measurement

Systems

ABSTRACT This paper Measurement

System

display

the

distance.

analyzed

graphical

to yield

The

luminance

unitary

metrics

profile

data

of display

could

quality.

be The

user interface. The DMAS database was designed to be fully object-oriented to support complex data modelling

early measurement systems required all data to be collected manually, The large amount of data kept these new

capabilities and easy extension. include exploring ODBMS in

techniques

from gaining

computing

hardware

engineering

application

object data model

domain

Research endeavors this unconventional

and development

and a testbed for display

of an

were developed computers.

measurement

wide use. However,

as the cost of

and software fell, automated

that

ran

on

inexpensive

systems personal

systems. Commercially measurements

1. Introduction Object-oriented increasing

databases (OODBS)

demand

for

CAD/CAM,

have been found oflice

systems, and CASE applications. We also see OODBS measurement systems in the applications field. Therefore, we have used Display Measurement and Analysis Systems Virginia

Polytechnic

Institute

new measurement speed has created new challenges. measurements can be made more quickly,

in

measurements manufacturers

automation the need for engineering one in the (DMAS) at

& State University.

Q

1993

ACM

also includes

Since more

However, commercial systems have failed to

are more than just data from The measurement data suite

data such as who made the measurement,

of measurement, information.

project

condition,

description,

data and time

and other pertinent

Most measurement systems only save the direct measurement data to files on computer disks, without the rest of the measurement data suite. The user must record all other measurement data manually in a measurement log. Manual indexing and retrieval of data is required. As the number of data files grow over months and years, the measurements become harder to access and retrieve. To overcome these limitations, several database management systems

USA

O-89791-626-31931W11

made. are measurement

what was measured, measurement

In this

Permission to copy without fee atl or part of this material is granted provided that the copies ore not made or distributed for direct commercial advantage, the ACM copyrieht notice and the title of the publication and its dote eppear, w-id notice ie given thet copying ie by permieaion of the Aesocietion for Computing Mechine~. To copy otherwise, or to republish, requiraa e fee and/or specific permission. 111931D.C.,

of

realize that measurements measurement instruments.

paper, we present an object data model for DMAS, and the architecture of a DMAS prototype on top of the ObjectStore ODBMS. Based on the experience gained in OODB development, the advantages and disadvantages of our approach are discussed at the end of the paper.

CIKM ’93-

available systems are now able to make in milliseconds that once took hours. This

. . ..$1.50

384

were

built

and

developed

such

as

~NP89,

KFB90]. have

However,

these systems are record-oriented,

difllculties

techniques,

in

evolving

and supporting

with

new

To be comprehensive

and

complex modeling

the system must adapt to changes

and work with many different hardware systems. As measurement technology advances and new analysis

measurement capabilities.

occurs, this system can be extended 1.2

Evolution

Management

of

Data

Models

and

To

Database

ensure

usability,

interacting

Systems

with

we

must

with

measurement

users,

interface from the user’s perspective. Database Management

Systems are basically

system,

computerized

and a collection

must

store

all

the

costs.

system

and

as

design

the

To be an information

information

regarding

measurement and analysis, using a database management system as a powerful tool for manipulating that information.

information systems which maintain information and make that information available on demand [Date86]. A database usually contains information about one particular enterprise,

it

minimum

consider

of data shared by many users

over a long period of time. A database system is an implementation of a data model, and a set of facilities to

The object-oriented

help

satisfies the above objectives. We selected C++ for the programming environment and the ObjectStore ODBMS

maintain

the database

captures the meaning

[KMRC90].

or knowledge

A data

comprehensive

model

of data as related to

methodology

and extensible

was chosen to provide development

the world. It is an abstraction device that allows one to focus on the information content of data as opposed to the

for persistent data storage and management.

individual

2. Overview

value of data [TL92].

2.1 Overview

Conventional data models include the hierarchical, network, and relational data models. Relational data models [Codd70] have dominated in the past decade

The

because

requirements

of

their

capabilities they

simplicity.

of traditional

are more

oriented

However,

the

modelling

data models are limited toward

record

DMAS

than

The

toward the structure of data as perceived by the user. research

and

development

efforts

architecture

represents

Data

major

components

of

the

DMAS

(DBMSS), production

architecture

as

1 are as follows:

Collection

Subsystem

be used

for

further

processing

in

the

data

analysis

subsystem.

to grow in this decade. Cpmor

the

essential

concepts and

This part collects dynamic data generated by the measurement hardware, and controls the measurement process. The collected data can be stored in the database or

database capabilities ~A91]. It has shown its power for modelling complex data structures and new data types, and

From

the

have been

dedicated to address this problem, and have resulted in new generations of data models: semantic, extendedrelational, and object-oriented data models [ZM9m. Among these data models, the object-oriented data model incorporates the useful features of object-orientation with

that will continue

Architecture

of the system, and the major

shown in Figure Increased

a

that

components of display measurement and analysis. It can be formalized as a general model for measurement systems.

because

structures

of DMAS

platform

perspective

of

relational DBMSS environment while

data

management

are well into object-oriented

H

systems

Cunmands

commercial DBMSS are

still in their infancy -C90]. There are several commercial ODBMS implementations: GemStone [MS87], Ontos, ObjectStore [0S92], VERSANT, Itastca, 02

External intafam

tayer

RePcfts& replay

m 4

I

PRV88], etc. Though not mature, these ODBMSS have shown their capabilities in complex data modelling, extensibility, and good performance.

I

Applmtlm

1.3 Approach The DMAS project is an ongoing project of Virginia Polytechnic Institute and State University’s Display and Controls Laboratory that began in January 1992. The main objective is to build a comprehensive and easily usable information system for display measurement and analysis.

I

Pelfunl Me.s.mment

M8awmmt *dwa-e n

A

~L_—_——J” 385

SW& Rtifieve -

l@@El

Hmdmm,

D*

Stmgu

layer

_D,

ta L,nl,

C...

u

Figure

1. DMAS

functions) for manipulating these data members. A class may have several subclasses. A subclass inherits all properties of its ancestors, and may refine or add new properties. Properties of a class can be further defined as instances of classes. Relationships between objects are

Architecture

typically

stored

and

managed

in

the

Data

3. Object

management

This from

from

processes the measurement the data collection

the database

Data Modeling

can derive a general picture of the DMAS data model. These clusters of objects include: users, measurements,

Subsystem

subsystem

obtained

management

data,

projects, sponsors, displays, companies, manufacturers, sites, times, dates, graphics, units, hardware, and analyses. As shown in Figure 2, a user creates a series of

either

subsystem, or retrieved subsystem,

and further

for the project he works on. A measurement

measurements

analyzes and produces related display quality metrics.

is generally This paper will focus on the design and implementation the database management DMAS.

subsystem, which

which

is the core of

The ObjectStore Object Design,

ODBMS

database management persistent

data,

fimctionalities,

non-procedural

based on transactions, Besides supports

its

product

management

models

between

from it with

shared

logging

To further

access

capabilities,

inheritance,

it

detail

and relationships

Object-Oriented

as our ODBMS

sections will describe the DMAS database

intermediate

we classi@ these

of logically

each

related classes.

aggregate

into

classes, such as Person, Phone, etc. These object classes

Address,

and

decomposed

object

among them are depicted in Figure 3.

class is the base class for various

Person

users

contact

persons.

Address,

Before the discussion of the design and implementation of the DMAS database, a quick review of the object-oriented paradigm would be helpfid. Classes are basic elements for the DMAS database. A class encapsulates all the information (or properties) regarding objects with the same

Privileged,

objects.

and

class.

The

It

Phone

is

persons, such as

made

(home,

up

work,

by

the

and Jax)

of the to each measurement user, including user id, password, a privilege level for access to the database, and a set of projects he Operator, works on. The user level can be Guest,

Paradigm

a set of methods

picture,

These base object classes can be fimther other

Person

type. Generally, it consists of members, and a set of public

and

The base subject contains the object classes common to all measurement and analysis. These include the User, Project, Sponsor, Company, Site, Data, and Time classes.

PersonName, of the

plotted

be

3.1 Base Subject

PersonName,

2.3 Overview

can

on

objects,

encapsulation,

We have chosen ObjectStore

for Windows

this general

of which represents a collection

fully

and polymorphism. ObjectStore uses a virtual memo~ mapping schema to store and manage persistent data, that can be accessed like transient data and with the same speed [0 S92]. Good performance can be achieved, especially for complex and nonrecord-oriented database applications. ObjectStore runs with MOTIF and Open Look on UNIX platforms, and Windows on PC platforms. support for DMAS. The following the design and development of management subsystem.

data

object classes into several subjects or class categories,

and archiving.

based on C++--classes,

objects,

measurement

at some time

site,

such as storage of

queries,

recovery,

database

object

relationships

is a commercial

by A

or manufacturer.

is made at a specitic The

is funded

displayed in graphics, and represented in various units. The data can be further analyzed to obtain various functions characteristics of displays by applying analysis and metrics.

ODBMS

Inc. It extends C++ and combines

which

a project,

device is the target to be measured,

is made by some company

measurement

of the ObjectStore

with

A display

sponsors.

of

involved

some day. 2.2 Overview

of classes rather than

The object data modeling of DMAS involves decomposition of the problem using object classes. Starting with identifying the most general clusters of objects, we

and easy access to these persistent data.

Analysis

by properties

and analysis are

database

subsystem which uses the ObjectStore ODBMS for persistent storage support. It stores the measurement data subsystems, and supports obtained from other manipulation

represented

separate relationships.

Database A4anagement Subsystem All information regarding measurement

It contains

User

class is a subclass

information

pertaining

or System. Guest users can navigate

the system

and make new measurements, but not save or view measurement data. Operator users perform measurement

private data (or member

and

386

analysis,

and

store

and

retrieve

their

own

data.

Privileged

users are authorized

to view

all measurement Figure 3. Base Subject Class Diagram

and analysis objects. Only the system or database administers can manipulate and manage any system data. The

class

Company

corporation, name,

address,

Manufacturer Sponsor

represents

containing

an

information

and contact person. classes are subclasses

class handles

information

organization

about

or

3.2 Measurement

The Sponsor of Company.

and The

on each sponsor who

All object classes pertinent the measurement

as User, Project,

on projects invokmi The Project class handles information with measurements, including the project id, name, a set of team members, and a set of sponsors. The Site class is a subclass of the Address class and is concerned with the location (room, building) where a measurement is taken.

,.’

sib

Site,

like

:

Temperature,

is made, such as in a dark room. The Units

Length,

Figure 2. General Clusters of Objects

number

of points

between

...... ..

.,,7... ““””’ ““””’” “’” ‘“’’’”’”’”’ ““ ~~~ .. ‘ Addrew ,. ,:,

;.?

Luminance,

Color,

of measurement. concerned

The

with

Spatial

position

in

~,..

.V.,:,; ,,>,> .;’.: ,..,.,,.-$“..“ ..Y’ ‘“L ‘. ...

measurement

is involved

with the Line

Spread Function (LSF), a spatial measurement of luminance as a flmction of the position on a line. The LSF class is thus a subclass of the Spatial class. It contains the

,,.-.. ....-w,,. ‘; Phone :

,$,

kind

measurements

The most common

.,’ ,s,

;

Volume,

and fixed include the

class handles measurements as space. The Temporal class handles the kind of finctions of time. The Spectral measurements concerned with color.

...

,, ~...,,..> ~( ;; .. ..... “?.

engineering, Units class

class also is the superclass for the and Spectral classes, each of which

a special

class handles

It

and can

classes.

Temporal,

represents

system internally,

system. The value of units may

Area,

and Angle

The Measurement Spatial,

.,. ,.

and

Condition,

class serves as abase class for all units for measurement.

Radiance,

,’

and other objects

Position,

The Position class describes the location where measurement occurs on the display device, represented by class contains the x and y coordinates. The Condition information about the condition under which a

be represented in scient$lc, formats, Subclasses of the

.:” PersonName

objects. It

Units.

be converted to the English

.. .. .

in

in the base subject, such

is represented in the S1 (metric)

.. . . .. . ... . ..

are included

class is used as

and Time,

Date,

to measurement,

measurement

............ .,,,

u~~~ ,:

to measurement A Measurement

aggregates some objects defined pertinent

,..’‘

subject.

the base class for various kinds of measurement

class handles funds projects, whereas the Manufacturer information on each manufacturer that produces devices.

............ ......

Subject

a company’s

measurement

,,.. .............,,,.-., .3,= “..,..,., ,/’,,, : :..

Dale

~

in the measurement

successive

Noise Ratio

relative (SNR),

data

points,

to the display, The number

data, the step size the

direction

of

and the Signal-to-

of points

attribute are described by the measurement

and step size Data

class. The

class and direction and SNR are ‘objects of the Direction SNR classes, respectively. The measurement subject classes and relationships 3.3 Target

among them are illustrated

in Figure 4.

Subject

This subject groups all the object classes related to the target device under measure as shown in Figure 5. These are

the

Target,

Addressability,

.. ,,.-.

387

Display,

Filter,

and Shape classes.

Lamp,

Technology,

The Target

The object schema is the imermost

class serves as the base class for all target

objects, containing the target

id,

the basic information

name,

manufacturer,

superclass of the Display, describes various the primary

of targets, such as and type.

and Filter

Lamp,

It is the

layer for the DMAS

the conceptual

schema or type

classes, which

kinds of target devices. The displays are

ObjectStore

C++ class libra~.

targets we consider in the current project. It is

technology, objects of

addressability, and shape. These attributes are Addressability, and Shape the Technology,

classes, respectively.

The Techno/o~

technology or type, which The displays with color LCD,

the number display

contains

definition of various DMAS objects. It implements the DMAS data model, as presented in Section 3, using the

associated with visual display devices viewed by people. The Display class can be described by the display

Plasma,

database, which

class defines display

of picture

devices,

aggregation of complex objects into component objects, multiple occurrences of the same attributes are eliminated,

may be color or monochrome. El, technology include CRZ

etc. The Addressability

In the discussion above of object data modeling for DMAS, we have grouped related objects together by identifying the classtilcations of class categories. Through the inheritance hierarchy between superclasses and subclasses, and the

and semantic contents are enhanced. We further formalize this object data model into a class hierarchy as illustrated

class associates with

elements or pixels addressed on the

which

can

be

pixel-addressed,

line-

addressed, or vector-addressed. The PixelA ddressed class handles displays with a grid of picture elements. The LineAddressed class handles the displays that are continuous

in one dimension and discrete in another. The class handle displays that are continous

VectorAddressed

in both dimensions. 3.4 Analysis

Subject

The analysis

subject groups the object classes related

to

data analysis. The current analysis we focus on is involved with the Modulation

Transfer

class contains the viewing for deriving characteristics LSF

measurement.

As

Function

(MTF).

The MTF

condition and transfer metrics of display devices based on the it

is

associated

with

further

processing of display measurements, we haven’t expanded it in the current version, but will detail it in later versions. 4. Design

and Implementation

Management

of the DMAS

Database

Figure 4. Measurement

Subject Class Diagram

Subsystem

The objective

of DMAS

database management

is to provide

a comprehensive

for creating,

querying,

viewing,

subsystem

and easily usable platform and manipulating

large

amounts of complex display measurement data. The DMAS database management subsystem has three layers: a persistent storage repository of display measurement and analysis objects, an object management interface for handling and accessing these objects, and a Windows

...... ......

graphical user interface for the user’s direct manipulation. These layers are depicted in Figure 6 and are named as object schema, object management interface, and user interface respectively. Other subsystems, including the

‘“.,. ,..,.

.... ....’

data collection subsystem and data analysis subsystem, are assumed to be built on top of the database management subsystem.

., 4.1 Object

‘.. .

tide

..

Schema

‘,

388

...

...!

:.,, ,

I====-l

Figure 5. Target Subject Class Diagram

is created as

in Figure 7. A object class called DataObject

the root base class for all database objects. It is abstract, which

means it will

never be instantiated

exists as a semantic properties or operations. consistent

and

placeholder to The DataObject

polymo~hic

interface

as objects but group common class providesa

for

I

manipulating

DataObj+c4

database objects.

N-=7

“’EEa D@.!+

Target

\%

Object Management Interface

Lamp

Filter Analysis

Figure 7. Object Schema Class Hierarchy Another

thing tonotice

is that the ObjectStore

C++ class

library provides several classes and functions for defining reverse relationships between data members, which can be one-to-one, one-to-may, and many-to-many. Though its definition approach is a bit complicated, ObjectStore does provide update integrity constraints for inverse relationships, which is convenient in maintaining relationships. 4.2 Object

Management

Interface

The object management Figure 6. Multilayered

DMAS

and methods

Database SubSystem

interface

for accessing

provides

a set of classes

and maintaining

the DMAS

objects stored as the object schema, using the ObjectStore C++ class library and data management scheme. It accepts triggering

messages

from

subsystems, and provides new

objects,

querying

accessing existing Database

The

the

user

interface

tools or operations the

database,

or

or

other

for creating viewing

Management

Tools

class

TDmasDatabase

provides

a set of database

management tools for initializing, opening, closing DMAS database, and creating database entry points roots) before accessing any database objects. Object

In

Groupings

DMAS,

and Database

persistent

objects

together under the class extent containing

pointers

and

objects.

the (or

Roots

of

a class

are

grouped

object, which is a collection

to all the instances

of the class. The

class extent object serves as a database enby point or root for retrieving those grouped objects. These class extent class objects are created as instances of the os —collection provided by ObjectStore.

389

5. Current

Status and Results

Transactions

All

operations

for

accessing

embedded in transactions.

persistent

objects

must be

Once started, a transaction

can

The current running

with

DMAS

prototype

the ObjectStore

The performance

ObjectStore.

than the previous measurement

and Deletion

ofPersistent

Persistent

objects

ObjectStore

new functions,

functions.

be

created

by

supplying

and deleted by supplying

The new and delete functions

the allocation memory. Object

can

Objects

and deallocation

will

the

searching condition.

take care of

of objects in the persistent

and list boxes by simple clicks.

is associated

with

the

is generally by iterations

prototype

is much better

system used in the Display

prototype takes 45 to 50 seconds, in which involved with the approximately 30 seconds are initialization of the ObjectStore and the DMAS database The creation

slower for complex

such as measurements,

applied to or queries.

of a new database object from

the user interface takes about 1-2 second; such as the creation of a measurement object. Deletion is even faster. The update of objects is a little faster for small objects, and a little

of objects whose data members satis~ a certain Since DMAS objects are grouped by collections

(class extents), the retrieval objects, either os collection

of the DMAS

and Controls Laboratory at Virginia Polytechnic Institute & State University. The following performance was achieved on the Gateway2000. The time for entering the

environment.

of database objects

on a stand-alone

DMAS

delete

Retrieval

The retrieval

Sewer

and now

Gateway2000 486DX/33, The graphical user interface is accessible to the user with windows, dialog boxes, buttons,

either be committed or aborted at any time. Changes to persistent data are made permanent by committing a transaction, or “rolled back” by aborting a transaction. Using transactions, the DMAS database maintains data integrity and concurrency control through the support of

Creation

is implemented

objects.

For complex

objects

the update takes about 2-3 seconds.

For smaller objects such as users, it just takes only about 1 second. The import seconds. Retrieval

and plotting of persistent

of data takes about objects

depends

1-2

on the

O~ectStore provides iterator objects called os_czwsor for objects, and the navigating through specified os_collection

number of objects in the database. Since we have created

direct and os—collection

bound queries objects.

just a few testing objects, the retrieval is very fast. A simple query for searching an object with a selected name

Finding

Updating

and

Object

member

fimctions

of

the

takes only 1-2 seconds. A complicated query for measurements, such as finding a set of measurements with specified users and/or projects, taking just about 2 seconds.

Properties

We provide a set of public member functions called get and set to find and update the private properties of the DMAS objects. The object properties are thus protected,

The previous

and can be accessed only by applying

XT. It has a simple

the public

methods

measurement

system runs on an IBM-PC

menu selection

interface,

and stores

provided by the object.

the measurement data to a file. It requires approximately 5 minutes to prepare for a new set of measurements.

4.3 User Interface

Entering setting

We have implemented a multi-window user interface using an object-oriented framework, Borland’s Object Windows Library, to access and query the database. The user interface contains windows and dialogs for querying and manipulating database objects, and message-driven events for triggering functions in the object management interface and invoking

executions of windows

the system takes about a minute. up a new measurement

depends

The time for

on the level

of

user, which may take 1-2 minutes for an intermediate user, and 2-4 minutes for a novel user, The graphical displaying of data takes about 20 seconds. The writing data file takes about 20-30 seconds.

of data to a

The additional measurement data are recorded in a logging file by the user. A conversion needs to be done to read data

objects.

from the data file and the logging

file and to create them

The typical sequence of interactions with the interface objects is as follows: the running of a top-level application creates and shows the main window; the user makes menu selections; the corresponding windows or dialogs are

in a standard file format. The data logging takes 30 seconds per measurements, and the conversion into standard measurement file takes 10 seconds. Retrieval of measurements are done manually on the name and

created and displayed; the user may perform queries, view objects, input new data, and open multiple the user then exits the system and the windows

date/time

database windows;

of data files. If the data tile name is remembered

or written down, a single measurement retrieval might take 30 minutes or even one hour depending on when the measurement was made. Retrieving a set of measurements

disappear.

390

requires

1 to 2 hours to determine

the correct location

of There

all files and 1 to 2 minutes per file to retrieve.

were

several

problems

with

the

ObjectStore

ODBMS: 7. Conclusions

and Future

Work 1, The database management tools are not comprehensive nor easy for use. For example, ObjectStore provides a

7.1 Conclusions

Database Browser for browsing The DMAS investigation ODBMS

prototype provides into the suitability

a testbed and vehicle for of using the ObjectStore

for object data storage support, and building

object-oriented

data

model

and

database

of an

for

display

measurement systems. The experience gained from this project suggests several “pros and cons” of 00DBS development.

semantics and is well-structured. a means of grouping

properties defined for

and

the

Schema

application schema need improvement

Designer

cannot

interact

with

the

source code. These tools definitely to enhance database management

capability.

The advantages include the following:

1. The object data model or object schema contains provide

the database and a Schema

Designer for designing the database schema. But the Database Browser lacks support for modi~ing databases,

of

ancestor

Inheritance similar

classes.

Aggregations

nonrecord-oriented

objects which

data types,

automatically

of

The

object

2. Only limited schema evolution is allowed with ObjectStore. Although it is already available for UNIX versions, the schema evolution

relationships

objects, and reusing

objects make up composite

maintained

more

for

user-

the

evolution

routine

Windows

versions.

represents

a key advantage

is still not available

Since

dynamic

schema

of extensibility,

we

think this feature cannot be forgot for an ODBMS.

allows

identities 3. The query facilities

by the system free the atomic

provided

by ObjectStore

are limited

database application system like DMAS. Since a class encapsulates all implementation details of its objects, these

to que~ strings or three-step “bound queries”. Many queries cannot be handled by query strings. The bound query can handle these queries; however, they require many steps that usually complicate the queries. If a DML interface for OSQL-like queries were provided, the queries

details can be changed without

would be more efficient.

data items required by the relational 2. The

development

are using features

cycle

its methods. mentioned

is

data model.

reduced

hurting

for

a complex

other objects which

The inheritance

and aggregation

above also simplify

the development

The above disadvantages their

cycle.

infancy

compared 3. With the support of the ObjectStore ODBMS, the DMAS achieves good performance for storage and retrieval, as discussed in Section 5. The class structures

that 00DB

can be mapped directly transformation into tables.

6.2 Future

manipulated

into the database without Thus persistent objects are

in the same way as transient

the speed of proprietary 4. The DMAS

are not limited

current development. We can build operations, with minimum cost. We also found disadvantages 1. OODB oriented may

development programming

involve

a

long

and disadvantages,

does have very promising

Having

we found

features, but that

it

Work

current

DMAS

prototype

is

not

complete.

The

and extensible.

interfaces to these objects. Planned fhture work involves:

to the level of the in new features and

1. Network

Support:

To

share the

database, a local area network

knowledge

database

learning

these advantages

still needs increased research work.

The

of

object-

techniques,

which

curve

for

will

ObjectStore running on a server running on other host nodes.

in OODB development:

assumes and

are still in

database management subsystem includes most primary DMAS database objects and the retrieval and access

system is comprehensive

The class structures

objects, and with

file systems.

are because ODBMSS

and are not as robust as RDBMSS.

2. Schema Evolution: need to be built

traditional

DMAS

node,

with

the

and the DMAS

More schema evolution

up for the DMAS

dynamic schema moditlcations

application

be required,

capabilities

database to support

and extensions.

developers. 3. Model 2. Current commercial ODBMSS are not mature yet. They are lacking in tools to help with database management and with application development.

Completion:

be extended methods.

391

to

The current

include

all

the

implementation database

should

objects

and

REFERENCES entity-relationship Chen, P. P. “The [Chen76] model: Toward a Unified View of Data”, ACM Trans. on Database pp9-36.

Systems, Vol.

1, no. 1 (January

1976),

[CODA71] 71 Report,

CODASYL Data Base Task Group April Conf. on Data Syst. Languages, ACM,

New York,

1971.

[Codd70]

Codd, E.F. A relational

model of data for

large shared data banks. Comm. ACM,

Vol. 13, 1970,

pp377-387. Date,

~ate86] systems, 1986. m89]

introduction Reading,

A. Fadda, B. Falsini,

Porciatti. visual Methods pp45-50.

to database Massachusetts,

M. Neroni

and V.

Development of personal software for a laboratory. electrophysiology Computer and Programs in Biomedicine, 28, 1989,

[GH91]

Rajiv

Object-Oriented CASE,

C.J. An

Addison-Wesley,

Gupta,

Networks,

Englewood ~A91]

Cliffs,

Ellis

Databases and

Horowitz,

with

VLSI

Edits.

Applications

CAD.

Prentice

to Hall,

NJ, 1991.

Setrag

Object-Orientation:

Khoshtilan, Concepts,

Razmik Languages,

Abnous. Databases,

User Interfaces. John Wiley & Sons, Inc., 1990. Kyle A. Klicker, David M. Fuhrman and ~B90] Donald R. Bjork. A BSDF database. SPIE 1331, 1990, pp 270-279. -C90] J. Chen.

M.A, Ketabchi, S. Mathur, T. Risch and Comparative analysis of RDBMS and

00DBMS: a case study, Digest of Papers, Thirty-Fitlh IEEE Computer Society Intl. Conf. - COMPCON Spring’90 &Rv88]

(Feb.-Mar), pp 528-535. C. Lecluse, P.Richard,

an Object-oriented data model. Conference on the Management

and F. Velex. 02, ACM International of Data. Chicago,

May 1988. [MS87] D. Maier and J. Stein. Development and Implementation of an Object-oriented DBMS in B. Shriver and P. Wegner, eds. Research Directions in Object-oriented Programming, pp. 355-392, MIT Press, Cambridge, MA, 1987. [0S92] ObjectStore Reference Manual: Release 1.2.4 For Microsoft Windows 3.1. Object Design, Inc. 1992. [TL82] Dionysios C. Tsichritzis, Frederick H. Lochovsky. Data Models. Prentice Hall, Inc. 1982. [ZM90] Stanley B. Zdonik, David Maier, eds. Readings in Object-Oriented Databases. Morgan Kaufmann

publishers,

Inc., San Mateo, CA, 1990.

392