Migrating a C-Based CAD Tool to an Object-Oriented Database/C++ environment: Conversion Costs and Performance Analysis

Abstract

This paper examines the potential of object-oriented databases to support complex design applications. To do this we migrated the Magic very large scale integrated (VLSI) circuit design tool written in the C language to a new environment in which Magic's existing file management code is replaced with a C++ language interface to the commercial object-oriented database management system (OODBMS) product Object Store. In our initial implementation we found the performance of this tool as implemented on the OODBMS to be marginally faster than the tool as currently implemented with a flat file system in several critical areas. Increased functionality, including version management, multi- user concurrency control, and recovery, are now possible with the converted system. However, we found the conversion process itself time consuming and fraught with software engineering perils; the final product is not significantly more or less maintainable. We conclude that the conversion of large, complex systems should not be undertaken without experienced programmers nor without a pressing need for increased database functionality. Conversion of such systems to improve performance alone should be avoided.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Dec 06, 1991
Accession Number
ADA245182

Entities

People

  • Mark A. Roth
  • Timothy M. Jacobs

Organizations

  • Air Force Institute of Technology

Tags

Communities of Interest

  • Air Platforms

DTIC Thesaurus Topics

  • Air Force
  • Complex Systems
  • Computer Programming
  • Computer Programs
  • Computer-Aided Design
  • Computers
  • Data Management
  • Database Management Systems
  • Databases
  • Engineering
  • Environment
  • Hash Tables
  • Language
  • Object-Oriented Database Management Systems
  • Operating Systems
  • Performance Tests
  • Software Development

Fields of Study

  • Computer science
  • Engineering

Readers

  • Computer Science.
  • Life Cycle Cost Analysis
  • Parallel and Distributed Computing.