Version Object Framework for Process Control Software Compatibility

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Process control systems face challenges in seamlessly integrating and upgrading software applications to accommodate evolving specifications, particularly in handling different versions of device descriptions and protocols, which can lead to compatibility issues and increased complexity.

Innovation Solution

A software framework is developed that utilizes version objects, class factories, and a parser to instantiate the appropriate version objects for processing inputs, allowing for backward and forward compatibility by creating a linked list of class factories and using a last version object to handle unsupported versions, thus simplifying upgrades and tolerating changes in unsupported versions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If software applications are upgraded to accommodate evolving specifications, then the system can support new features and address known problems, but compatibility issues arise with existing field devices and prior specification versions

Engineering Contradiction:
Improvecompatibility with evolving specificationsVSAvoidcompatibility with existing field devices
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The software framework segments the specification handling into distinct version objects, each representing a specific specification version. This segmentation allows the system to maintain multiple version implementations simultaneously and select the appropriate one based on the field device being accessed, thereby resolving the contradiction between supporting new features and maintaining compatibility with existing devices.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The framework introduces an intermediary layer (the version object selection mechanism) between the software application and the field devices. This intermediary automatically selects the appropriate version object based on the device's specification version, allowing the application to work with evolving specifications while maintaining seamless compatibility with existing devices without requiring application-level changes.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If multiple version objects are implemented to support different specification versions, then backward and forward compatibility is achieved, but the device complexity and software structure increase

Engineering Contradiction:
Improvesupport for multiple specification versionsVSAvoidsoftware structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The framework implements a universal version object interface that can handle multiple specification versions through a common structure. Each version object follows the same interface contract, allowing the selection mechanism to work uniformly across different versions without requiring version-specific selection logic, thereby reducing the perceived complexity despite supporting multiple versions.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The framework performs preliminary action by pre-defining version objects for different specification versions and establishing the selection mechanism in advance. This allows the system to handle version compatibility issues automatically without requiring complex runtime decision-making or configuration, simplifying the overall software structure despite the presence of multiple version implementations.

Inventive Principle:
Principle #10Preliminary action

3Manufacturing precision

If a rigid specification versioning system is implemented, then precise control over version compatibility is achieved, but the system becomes inflexible and difficult to maintain when new versions are introduced

Engineering Contradiction:
Improveversion compatibility controlVSAvoidease of upgrading to new versions
Core Design Contradiction:
Manufacturing precisionVSEase of manufacture

Solution Approach 1:

The framework implements a dynamic version object selection system that can adapt to new specification versions automatically. When a new version object is introduced, the selection mechanism dynamically recognizes and incorporates it without requiring system reconfiguration or rigid version mapping rules, thereby maintaining precise version compatibility control while enabling easy introduction of new versions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The framework uses parameter changes in the version object interface to maintain compatibility control. By defining version-specific parameters within a unified object structure, the system can precisely control which parameters are version-dependent while keeping the overall structure consistent, making it easy to introduce new versions by simply updating the relevant parameters rather than restructuring the entire system.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8019724B2Software framework for evolving specifications in process control system
Publication Date: 2011.09.13 HONEYWELL INTERNATIONAL INC
  • US8019724B2 patent drawing
  • US8019724B2 patent drawing
  • US8019724B2 patent drawing

AI summary

A software application architecture based on object oriented concepts. According to an aspect, upgrading the application to support newer versions of a standard describing device description is simplified. According to another aspect, the application is designed to be tolerant to changes (additions or modifications) introduced by future/later versions not yet supported by the application. In an embodiment, the approaches are applied in the context of a parser designed to parse device descriptions of different versions.