Issue No. 06 - June (2004 vol. 30)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TSE.2004.23
Don Batory , IEEE
Jacob Neal Sarvela , IEEE
Axel Rauschmayer , IEEE
<p><b>Abstract</b>—<it>Step-wise refinement</it> is a powerful paradigm for developing a complex program from a simple program by adding features incrementally. We present the <it>AHEAD</it> (<it>Algebraic Hierarchical Equations for Application Design</it>) model that shows how step-wise refinement scales to synthesize <it>multiple programs</it> and <it>multiple noncode representations</it>. AHEAD shows that software can have an elegant, hierarchical mathematical structure that is expressible as nested sets of equations. We review a tool set that supports AHEAD. As a demonstration of its viability, we have bootstrapped AHEAD tools from equational specifications, refining Java and non-Java artifacts automatically; a task that was accomplished only by ad hoc means previously.</p>
Specification, design notations and documentation, representation, design concepts, methodologies, data abstraction, extensible languages, program synthesis, feature-oriented programming, refinement.
Don Batory, Jacob Neal Sarvela, Axel Rauschmayer, "Scaling Step-Wise Refinement", IEEE Transactions on Software Engineering, vol. 30, no. , pp. 355-371, June 2004, doi:10.1109/TSE.2004.23