GINA™

The Global Information Network Architecture™ Environment (GINA™)

Print PDF

Interoperability and GINA
All but the smallest organizations have interoperability issues.  Although the largest organizations, such as Fortune 500 companies or the US Government, have the most difficult problem – and receive the highest payback for solving it, all organizations regardless of size require facilities that will allow access and manipulation of their data and the data of their partners, customers, suppliers.  Ideally, these facilities would have the following characteristics:

1) Ubiquitous
Organizations need an environment that provides for consistent management of any information or services on any network, whether their own or those of partners, customers, or suppliers.

2) Agnostic
This consistent management of information should apply to any information or services, regardless of type or form.

3) Support multiple uses with differing semantics
Within any large organization there are multiple groups of individuals that are looking at information with multiple intents and with differing semantics.  For instance, the US Army Reserves can look at an officer at any given time as an employee, a combatant, a civilian, or as an expert, all with differing semantics.  Organizations need information management facilities that support multiple, user-group-specific vocabularies over the same information space.


4) Accessible under multiple models for control

In practice, organizations not only classify people by group, but also by role, by organization, and even by the activity they are performing.  Each of these classifications carries their own structure for controlling access.  Moreover, when the data being accessed is that if partners, customers, and/or suppliers, the problems of access control expand exponentially.

5) Agile
In large organizations, the systems that are deployed change rapidly, and the way that they are configured and used can change every day.  If an interoperability platform cannot respond to changes quickly, then it rapidly becomes the perfect solution to yesterday’s (obsolete) problem.

GINA is a patented environment that provides a coherent, universal configurable model that allows the consistent specification and use of all of the information resources of any organization, including that of partner organizations, whether large or small.  It was designed from the ground up to be the ubiquitous, agnostic, semantically-driven, accessible under control, agile platform for universal access of information and services.

GINA Capabilities
GINA provides complete facilities for managing information and services available on accessible networks.  It can aggregate and objectify information from a virtually limitless set of information sources or service providers into a common information space.  These aggregated information objects and services can be combined, referenced, transformed, and/or presented in any way the user requires.  Finally, if the presentation desired is to a user, GINA provides configurable presentation capabilities that allow the user to access and manipulate information objects and services, either in their original format, or under some set of transformations, through standard browser facilities.

Acquisition
To bring data into the information space GINA uses “ContentServers” to interoperate with any of the information or service sources on the network.  Sources can be as varied as the output of a video camera, control over a door switch, or more common network-resident information sources like databases or Web services.  GINA brings all of these information or service resources into the common information space with common interoperability capabilities over common or differential semantics.

Relationship
One of the most important capabilities provided by GINA is the ability to navigate from one information object to another, a concept called “Vector-Relational Data Modeling” (VRDM) .  The central concept behind VRDM is that relationships between information objects can be information objects in their own right.  Although this concept is deceptively simple in its statement, it enables the information space to be a fully configured environment for managing information object definition, relationships, behavior, transformation, and presentation (to both humans and machines).

Definition
Using GINA facilities any information or service source can be configured as is required to support is use as is appropriate for any domain where its services or information are relevant. Just as VRDM is configured, information object definitions are also configured.

Transformation
Within the information space GINA information objects can be configured to specify transformations between information objects.  Standard transformations are automatically supported, such as referencing another object, addition, concatenation, lookup, etc., while programmable exits are supported for any custom transformations.  Using the GINA transformation capabilities virtually any transformation of incoming data to presentable data, either to another system or to a user, is possible.

Presentation
GINA uses presentation objects, VRDM, definitions, and presentation definitions to provide either user-oriented displays or application-appropriate interfaces to allow information to be viewed or used by users or other applications.  The information can be provided in virtually any way required.

Update and Audit
GINA provides facilities not only for presentation, but also for performing updates, and providing audit trails for those updates.  These facilities even provide for two-phase commit of transactions across multiple objects in multiple information sources.  In reality, entire applications can be configured through GINA, typically faster and more accurately than conventional approaches.

GINA Differences
GINA embodies new concepts and approaches that enable it to provide facilities that extend well beyond those that are currently offered by other interoperability environments.  Some of these differences are detailed below.
Deep Configuration for High Extensibility and Reliability

Two of the most important differences between GINA and conventional approaches are that (1) GINA is reflexive, i.e., GINA is a GINA application, and, (2) by design, everything in GINA is done by configuration, even GINA and the GINA interactive development environment (IDE) themselves.  Hence, a GINA information space is configured, but the definition of information space itself is configured, and ultimately, the definition of “definition” itself.  In practice, implementing this approach is very intellectually challenging, but it pays off in allowing virtually unlimited extensibility with greater reliability than is possible with conventional approaches, surprisingly so.  It also means that developed applications and the IDE itself operate in the same way, minimizing training costs.

Executable Configurations for Maximum Accuracy
GINA uses these configurations as the instructions to assemble GINA components into GINA applications, whether user applications or GINA or the GINA IDE.  Because these GINA applications are assembled to configuration from generalized components, user-group specific applications with user-group specific information access are now just a matter of definition, not of programming.  Moreover, these user-specific applications with user-specific access don’t hide or expose functionality or data as is true with traditional approaches – with corresponding vulnerabilities, they simply don’t have those capabilities or data!  In addition, because they are assembled, rather than programmed, they are more reliable and extensible that the traditional applications – in most cases just requiring a change in configuration to change or enhance functionality.


Model-based for Optimized Integrity under Change

GINA embraces the most modern approach to programming: model-based software engineering (MBSE).  However, GINA takes MBSE to its ultimate level because the GINA model defines GINA™ modeling.  Hence, all GINA applications are by necessity model-based, since they are just differing  configurations of components within the GINA model.  In effect, GINA specifies a vocabulary for GINA modeling!

Practitioners have embraced MBSE for its contributions to accuracy, reliability, and extensibility.  With GINA these virtues are an automatic consequence.

Bootstrapping and Layering
These advantages are possible because of the GINA multi-layered bootstrap process.  A minimal, hard-coded bootstrap is started up with just enough capability to read the initial configuration and instantiate it.  This initial configuration then reads and assembles GINA, which, in turn, assembles the GINA model for applications.  GINA then reads and assembles any user applications based on that model, and does the same thing for the GINA IDE.  Because every layer except for the first one is assembled through configuration, not only can GINA change the behavior of an application, as is true of conventional systems, but the application itself can be changed, the way all applications behave can be changed, the way GINA defines applications can be changed, and even the meaning of applications can be changed, all through configuration.

This deep configuration with bootstrapping means that (1) applications can be assembled to meet the specific arbitrarily complex access control systems required by any organization no matter how large or complex, and (2) these configurations can be assembled without any cross talk or vulnerabilities.

Network-resident
There is one more concept that enables GINA to represent the information management environment for information sources on the network: GINA resides on the network.  An instance of GINA running on a computer is dependent only on a small configuration file on that machine to tell it where to go to start assembling itself,  Hence, the instructions for assembling GINA can reside anywhere, and an infinite number of machines can run an infinite number of configurations an infinite number of times to provide unparalleled scalability.

Complete
These capabilities are combined with a model that defines a broad set of facilities: information acquisition and update, transformation, controlled access and presentation.  Hence, GINA can be used to meet any organization’s real interoperability problems.

GINA, the Network and NCT
Because GINA is network-resident and deals with information anywhere on the network, we recognized early on that integrating GINA with network control could be a valuable extension of the GINA value as an information management environment.  Just as the GINA IDE was created as a GINA application for managing GINA applications, we created a Network Clustering Technology (NCT) as a GINA application for managing the network on which GINA resided.  Since both GINA and NCT are GINA applications, we could then use relationships between GINA information sources to optimize the network for managing information access.  Moreover, because GINA is network-resident, changes can be made to the rules for managing the network to optimize information access.  The combination of GINA and NCT not only provides a very efficient way to manage the network itself, but also to make sure that the network is meeting the information requirements of its users in the most efficient way possible.