Final Report: Software Support for Programming in the Large

Abstract

The research supported under this contract concerned the design and implementation of interactive environments for computer programming. Activities were carried out in two main areas: Semantics-based program integration By program integration we mean the merging process that one has to go through when a program's source code diverges into multiple variants (e.g., supporting different features, different operating systems, or incorporating different bug- fixes). The goal of our research is to create a system that tests whether the enhancements made to two or more variants of a program interfere, and - if there is no interference -automatically integrates (combines) the variants so as to incorporate all the different enhancements in one program. This would be applied, for example, when a number of collaborators are collectively producing updates in a large programming project, Logic-based tools for programming-in- the-large The CAPITL program-development environment is an integrated collection to tools supporting cooperative development of moderate to large programs. It includes a database for storing software objects such as program source modules, executable programs, and documentation, as well as arbitrary properties and relationships among objects. The database efficiently supports multiple snapshots or versions of the objects and relationships. A sophisticated deductive query language-based on Prolog-supports configuration management.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Aug 06, 1992
Accession Number
ADA254050

Entities

People

  • Marvin Solomon
  • Susan Horwitz
  • Thomas Reps

Organizations

  • University of Wisconsin Madison Department of Computer Science

Tags

Communities of Interest

  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Algorithms
  • Application Software
  • Compilers
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Configuration Management
  • Contracts
  • Engineering
  • Language
  • New York
  • Operating Systems
  • Programming Languages
  • Semantics
  • Software Development
  • Software Development Tools

Fields of Study

  • Computer science
  • Engineering

Readers

  • Applied Combinatorial Optimization and Logic Circuit Design.
  • Artificial Intelligence
  • Database Systems and Applications