WMT why couple models

From CSDMS

Why couple models

In the world of geosciences modeling, there has been strong movement towards developing models as components within architectures and frameworks, each offering interfaces, exchange items. Components are functional units that once implemented in a particular framework are reusable in other models within the same framework, with little migration effort. One advantage of using a modeling framework is that pre-existing components can be reused to facilitate model development. Component-based modeling brings about the advantages of “plug and play” technology.

Components are generally implemented as classes in an object-oriented language, and are essentially "black boxes" that encapsulate some useful bit of functionality. A framework provides the environment wherein components can be linked together to form applications. A component differs from an ordinary subroutine, module or class, because they can communicate with other components written in a different programming language. It is possible and often useful for a single component to expose multiple, different interfaces, allowing a component to be used in a greater variety of settings.

Plug-and-play component programming benefits both model programmers and users. Within a framework model developers are able to create models within their areas own of expertise and rely on experts outside their field to fill in the gaps. Models that provide the same functionality can easily be compared to one another simply by unplugging one model and plugging in another, similar model. In this way users can easily conduct model comparisons and more simply build larger models from a series of components to solve new problems.