The close correspondence between the types of tool integration in software engineering frameworks (see, e.g., [56] [58], [57], where typical applications are compilers, linkers, editors, ...) and the types of tool integration in VISTA (where typical applications are device and process simulators) is striking, but not entirely unexpected. This is very likely a direct consequence of the similar architecture and the historical background. In both cases, applications (compilers, linkers, simulation tools) did already exist before the advent of integrated systems. The integration of existing applications is one of the main motivations for an application-framework architecture.
It has been shown in Section 8.3 that the task and data level of
VISTA
allows for the integration of batch-mode applications
with just minor effort.
As expected, the application-framework architecture is
also supporting the decomposition of
existing larger programs into smaller modules.
The sizes of new applications that were developed using VISTA
as development environment are significantly reduced, especially
when high level toolkit services are utilized [141].
Typical sizes of new applications are
in the range of 200kB
to 300kB
(approximately a fourth of the average
source code size of traditional TCAD applications)
thanks to the re-use of technology-independent
services that are provided by the framework. These smaller
applications are of course more comprehensible and
better maintainable than traditional, large multi-functional
tools.
A synergetic effect for the creation of new simulation capabilities
is exploited by the combination of
generic framework services with specific simulation modules
to synthesize new applications.
The example application clearly demonstrates that, by utilizing the VORONOI framework service, no additional efforts (except for the sole integration) are required to ensure the inter-operability of three entirely different tools. Such features can not be found among all other existing TCAD systems, independent of their capabilities and level of maturity.