Software Architecture for Simultaneous Process Control and Software Development/Modification

A software architecture is described that allows modification of some application code sections while the remainder of the application continues executing. This architecture facilitates long term testing and process control because the overall process need not be stopped and restarted to allow modifications or additions to the software. A working implementation using National Instruments LabVIEW{trademark} sub-panel and shared variable features is described as an example. This architecture provides several benefits in both the program development and execution environments. The software is easier to maintain and it is not necessary to recompile the entire program after a modification.