Software synthesis and applications (abstract only)
Douglas R. Smith · 2000
This talk presents a mechanizable framework for software development by refinement. The framework is based on a category of specifications. One of the key ideas of Designware is representing knowledge about programming concepts, such as algorithm design and datatype refinement, by means of taxonomies of design theories.The framework is partially implemented in the research systems Specware, Designware, and Planware. Specware provides basic support for composing specifications and refinements, and generating code. Specware is intended to be general-purpose and has found use in industrial settings. Designware extends Specware with taxonomies of software design theories and support for constructing refinements from them. Planware builds on Designware to provide highly automated support for requirements acquisition and synthesis of high-performance scheduling algorithms.I will also discuss how synthesis technology is being used to develop and deploy the next-generation transportation scheduling system for the Air Mobility Command at Scott AFB.