Abstract

This paper advocates a new paradigm for software development in which validation, modification and enhancement are performed at the level of abstract specifications. An implementation is derived from a system's specification by a process of stepwise refinement that is largely automated. We describe the RefineTM system which supports this new paradigm including automatically compiling specifications into code. We present as an example the development of a communication system, showing in detail support for the process of producing abstract specifications from requirements.