Environmental Engineering Reference
In-Depth Information
automated documentation processing utilities, such as those available for the .NET
development environment, can generate the documentation reports.
Component Public Interface
One of the key elements for component adoption by third parties is simplicity of
default usage cases via the Application Programming Interface (API). The usage
model for component-oriented design follows a pattern of instantiating a type (a class)
with a default or relatively simple constructor, setting some instance properties,
and finally calling some simple instance method. This “Create-Set-Call” pattern
(Cwalina and Abrams 2006) has been implemented in the APES components.
The component API contains one method for each of the strategies using the
same signature (see the paragraph Model granularity in components). Each of the
strategies uses the same signature. Domain classes and strategy inputs, parameters,
and outputs can be found using the Model Component Explorer application
described below.
Technology Used
The technology used is based on the Object Oriented Programming (OOP)
paradigm as implemented in the Microsoft .NET 2.0 framework. However, the
object model of.NET allows easy migration to the Sun Java platform. Such
migration has been realized for some of the components referenced. Most of the
components have been made available as discrete units inclusive of a software
development kit with example projects in which to use the component by desktop
clients, by web services and applications, so that components can be extended
independently of their source code.
Model Component Diagram
Each of the model components represented in Fig. 4.2 is actually a package
of discrete units. Figure 4.6 shows the component diagram of a generic APES
model component.
If a component implements models to simulate agro-management, then it
must have a dependency on the components CRA.AgroManagement and CRA.
AgroManagement.Impacts. A component may have dependencies also on other
components, such as numerical or statistical libraries, but must have no dependency
on any modelling framework. Descriptions of model architecture are available in
Search WWH ::




Custom Search