SEDRIS Version Numbering FAQ

What is the reasoning behind SEDRIS version numbering and how does this affect software compatibility?

Each of the five SEDRIS technology components, DRM, EDCS, SRM, API and STF, contain a version number. These version numbers are composed of three dot-separated numbers. With the numbers referred to as major, minor, and maintenance, respectively. Thus for an API version 3.1.0, the version number represents major version 3, minor version 1, and maintenance version 0.

Along with each technology component, each software implementation of the technology component gets a version number as well. Thus, for example, with Release 3.1.1, the STF had a version number of 3.1.0 (with the final 0 usually ommitted), but the STF implementation was version number of 3.1.1.

  • The major version number is incremented if changes involve a major usage paradigm shift or redesign. This design change requires a redesign of user software or the architecture of user software. For example, the introduction of Stores for memory management, or the split of the <Synthetic Environment> into the API construct SE_Transmittal and an SE_Object of DRM class <Transmittal Root>.
  • .
  • The minor version number is incremented if there is any interface change. This change is associated with changes to the existing functions such as their signature or names, as well as name changes in types. It also could account for some minor functionality change. This type of upgrade typically requires minor changes in user software, but no redesign is necessary. Renames are a typical example of this change.
  • .
  • The maintenance version number is incremented when there are bug fixes, added functions, performance enhancements, or added functionality. This upgrade is, in general, confined within the body of the code to fix bugs, enhance performance, and add new functionality (these do not impact the use of the existing functions). In some cases, it could account for minor API additions; for instance, adding a function. This type of upgrade does not require modification of user software.

Therefore, if the major and minor version numbers for a given SDK match the major and minor version numbers of another SDK, then the two SDKs are compatible. Thus, for example, an SRM SDK 4.1.1 is compatible with a SEDRIS SDK 4.1.0.

Return to: Top of this Page
Last updated: July 27, 2007