Creating and Manipulating a Domain-Specific Formal Object Base to Support a Domain-Oriented Application Composition System

Abstract

This research investigated technology which enables sophisticated users to specify, generate, and maintain application software in domain-oriented terms. To realize this new technology, a development environment, called Architect, was designed and implemented. Using canonical formal specifications of domain objects, Architect rapidly composes these specifications into a software application and executes a prototype of that application as a means to demonstrate is correctness before any programming language specific code is generated. This thesis investigated populating and manipulating the formal object base required by Architect. This object base is built using a domain- specific language (DSL) which serves as an interface between the user and a domain model. The domain model describes primitive domain object classes and composition rules and is formalized via a domain modeling language. The packaging of the objects into components is defined by an architecture model which was part of a separate thesis. The Software Refinery environment was used to develop a methodology for defining DSLs for Architect and for manipulating the resulting populated object base.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Dec 01, 1992
Accession Number
ADA259018

Entities

People

  • Mary Anne Randour

Organizations

  • Air Force Institute of Technology

Tags

Communities of Interest

  • C4I
  • Energy and Power Technologies

DTIC Thesaurus Topics

  • Application Software
  • Artificial Intelligence
  • Automatic Programming
  • Computer Program Reliability
  • Computer Programming
  • Computer Programs
  • Computers
  • Database Management Systems
  • Databases
  • Debugging
  • Digital Circuits
  • Formal Languages
  • High Level Languages
  • Language
  • Operating Systems
  • Software Design
  • Software Development

Fields of Study

  • Computer science
  • Engineering

Readers

  • Computational Linguistics
  • Software Engineering.