OrganizationsOrganization is a unit responsible for building particular software systems. Organization has a list of software systems and settings that are kept throughout the systems. One of the major settings is definition of the platform. Platform can be a service, software or hardware system (MS SQL Server, Hadoop, AWS, Redshift, etc.) Organization is a root object for all other objects inside it. Only people registered as team members of the organization have access to any Organization properties. Team members can be ‘defined’ and ‘invited’ to join the organization.
SystemsSystem specifies a set of applications maintained together as one unit. System’s applications are deployed and then evolve as one logical unit. The system architect defines each System and its applications. System has a set of configuration settings which can be used by all the applications specified to be a part of this system. The system architect has the capability to govern a team of developers who work on system components, and define a topology of platforms required for the system to execute, as well as deployment environments.
Application represents a service or component with a well-defined functionality. Application maintains datasets and provides interfaces to gain access to data or the functionality implemented by Application. Application architects and developers can specify a complete set of metadata for the data used by the application and interfaces. Application contains built-in documentation which defines the design and architecture of an application’s components.
Developers of the particular Application can publish data and interfaces available for external applications. In order to provide access to data used by the application and functionality of the application, the developer or architect must create a “publication object,” which specifies what part of data or interfaces can be accessible by external applications.
In order to gain access to the published data or interfaces, an application must create subscription to the publication object. Approved subscription in fact establishes a ‘contract’ for accessing of the published data.
PublicationsPublication defines the datasets and interfaces accessible from other applications. The layout and set of exposed fields needs to be specified for the dataset to be published. The set of accessible functions needs to be specified for interfaces publications. A contract needs to be defined for every published layout in order to specify the way data can be accessed as well as all the settings required for contract execution. Publication is a versioned object.
SubscriptionsSubscription is required to enable each application to access the data published by another application. Subscription defines what datasets, layouts, fields and functions will be used. Each Subscription must be approved by the architect of the published application. Subscription can be created for the latest version of publication only.