Geoforge platform plug-in model

Geoforge platform/plugins model will soon bring evolutivity and customization to the GeoTriple applications.

What is a software platform?

Definition

A platform leads in a working base for specific jobs. It provides a well-defined architecture that will support a range of jobs that are not included in the platform.

Example

Geoforge platforms allow to manage and display data. They also include an architecture that allows to querry and edit those data.

Geoforge geoscience platform - The platform

But the processing of these data is not included in the platform. It will be performed outside of the platform.
The plaftorm should then include a mecanism that enable outside applications to process data. We call this mecanism : the plug-in mecanism.

Geoforge geoscience platform - Platform plugin mecanism

What is a plugin?

Definition

A plugin is a small part of software that fullfill a platform bringing new features that are not initially included.

Example

A GeoTriple plug-in can provide data processing and fulfill the geosciences platforms that provides data management.
The plug-in only contains the processing part whereas all the data management is provided by the platfrom.

How plugins interact with a platform?

Plug-ins are plugged on a platform. The combination of platform and plug-ins provides new possibilities to the users.

Geoforge geoscience platform - Platform/plugin interaction

The platform has a plug-in mecanism, but don't know exactly what plug-ins will be installed.
The platform only knows what kind of plug-ins could be installed.
So, plug-ins must be compatible with the platform they are planned to be plugged.

What kind of plugins should be supported by Geoforge?

Geoforge platform will support two main kinds of plug-ins:

Geotriple processing plugin

Processing plugins: They contain processing libraries that allow to process data.
Those plug-ins querry platform business objects, they process them and create new business-objects.


Geotriple viewer plugin

Viewer plugins: They provide display of the data contained in the platform and pertains to Geoforge viewers.
Even if the platform already displays the data, those viewers could provide enhanced and interactive data visualization.


What are the benefits of a platform/plug-in concept?

A platform/plugin model has several advantages, they benefit to end-users, and to developpers.