Loading…
Software Synthesis via Domain-Specific Software Architectures
Current software engineering practice concentrates on improving the process by which a programmer develops a solution from the description of a problem; we describe a new paradigm for software synthesis based on Domain-Specific Software Architectures (DSSAs) that eliminates this process entirely. A...
Saved in:
Main Authors: | , |
---|---|
Format: | Report |
Language: | English |
Subjects: | |
Online Access: | Request full text |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Summary: | Current software engineering practice concentrates on improving the process by which a programmer develops a solution from the description of a problem; we describe a new paradigm for software synthesis based on Domain-Specific Software Architectures (DSSAs) that eliminates this process entirely. A DSSA provides an overall software design that solves a whole class of problems in a broad area. It focuses on the designer's attention on the unique requirements of the current problem, suppressing those that are common to all problems of the type addressed by that DSSA. To use the DSSA approach, a software engineer provides a description of the unique requirements of a particular problem. A solution to that problem is then generated according to the DSSAs overall design by a system that implements the DSSA. Problem descriptions are checked for consistency by the system, and the generated software is guaranteed to solve the problem described. We briefly describe how we have used the DSSA approach to build Eli, a system for compiler construction. Generalizing from Eli, we identify requirements that the implementation of any DSSA should satisfy: incorporation of a manufacturing language to describe the incremental derivation of software objects with architecture-based error reporting; incorporation of an authoring language to allow on-line access to documentation and system components; and the ability to incorporate externally developed tools and export constructed programs.
and DAAL03-86-K-0100. |
---|