Automated Interface for Retrieving Reusable Software Components

Abstract

The Computer Aided Prototyping System (CAPS) software base contains software components described by formal specifications written in the Prototype System Description Language (PSDL). One problem addressed by this thesis is to develop a retrieval mechanism for extracting components that match user-provided PSDL specifications. Another problem addressed is the integration of a retrieved component into a software prototype. The approach taken was to match specifications by comparing operations and parameter types to include indirect subtype relations. Integrating a selected software base component required generating mappings to account for different operation and parameter orderings and, for generic components, automatic instantiation. The result was a tool which implements automated assistance for finding reusable components in a large software repository. Methods were developed for parameter and operator mapping, parameter type matching, and ensuring instantiation of a generic was possible. Upon receipt of a PSDL specification query, these methods are employed to automate the retrieval of all matching components and the integration of the selected component into the software prototype. This has been fully implemented for operator components and partially implemented for type components. The retrieval mechanism, a potential processing bottleneck, is extremely accurate and reasonably fast. A query on 1,000 component repository retrieved all 50 possible matches in under 3 minutes. Software reuse, Component retrieval, Type matching, Generic instantiation, Syntactic matching, Type hierarchy, Prototype system description language.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Sep 01, 1993
Accession Number
ADA275004

Entities

People

  • Scott J. Dolgoff

Organizations

  • Naval Postgraduate School

Tags

Communities of Interest

  • Engineered Resilient Systems
  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • C Programming Language
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Databases
  • Graphical User Interface
  • High Level Languages
  • Language
  • Military Research
  • Operating Systems
  • Programming Languages
  • Prototypes
  • Software Development
  • Software Development Tools
  • Software Prototyping
  • Standards

Fields of Study

  • Computer science
  • Engineering

Readers

  • Applied Combinatorial Optimization and Logic Circuit Design.
  • Database Systems and Applications
  • Software Engineering.