Single source data model tables to support multi-platform and multi-versions of the same application
Original Publication Date: 2005-Dec-19
Included in the Prior Art Database: 2005-Dec-19
Described is a solution using single source data model tables to support multi-platforms and multi- versions of the same application.
Single source data model tables to support multi -platform and multi-versions of the same application
Consider an application which is used to support more than one operating system and more than one version of the same application, for example WebSphere* MQ which is supported on Windows**, AIX*, Linux***, Solaris****, iSeries* and z/OS*. WebSphere MQ has been around for many years and older versions are still in service, for example, v5.3 and v5.2. Special service contracts could also be in place for supporting older versions.
WebSphere MQ has objects, like queues and channels, which have associated attributes of various types, for example, strings, integers, ranges, enumerations, byte arrays, etc. Some of the attributes for an object (and even the object itself) will only be valid for some platforms, and maybe some versions.
Typically an application that supports all the various combinations of platforms and versions would need customized code to determine which objects and attributes to display. Extra checking may also be needed, for example, where an attribute could have different enumeration values based on the running environment.
Using a markup language (like XML) to define the various types of attributes allows various data tables to be generated to support a multi-version, multi-platform application. A data table contains just those attributes for a specific version/platform. The calling application can load one or more tables and concurrently support many versions/platforms using the same level of code.
The objects and type of objects can be defined using xml keys in a text file. The various XML keys define the type of attribute, its possible values (for example enumeration and range values), whether it can be updated and how the attribute value is to be formatted and displayed.
Other XML keys are used to define
A display group
A display sequence within the display group
Which platform is supported...