Error-prone modifications of procedural program representations are avoided. Production systems for new platforms are accomplished by compiling the application specification to the new software architecture. Error-prone ports of procedural programs to new platforms are avoided. Each software development task is accomplished by an appropriate expert. Application experts construct the executable specification of the application.
Software designers develop the software architectures.
The software architecture can often used for multiple projects with little or no change, particularly in the common case of a family of software products with similar characteristics.