A system and method for deriving a process-based specification for a
system is disclosed. The process-based specification is mathematically
inferred from a trace-based specification. The trace-based specification
is derived from a non-empty set of traces or natural language scenarios.
The process-based specification is mathematically equivalent to the
trace-based specification. Code is generated, if applicable, from the
process-based specification. A process, or phases of a process, using the
features disclosed can be reversed and repeated to allow for an
interactive development and modification of legacy systems. The process
is applicable to any class of system, including, but not limited to,
biological and physical systems, electrical and electro-mechanical
systems in addition to software, hardware and hybrid hardware-software
systems.