ISO/IEC SC 25/WG 1 ISO/IEC : CodeBase Tag Discussion Ron Ambrosio IBM TJ Watson Research Center
2 Review of Information Model & Programming Abstraction Application-level abstraction, not device-level XML description of building blocks and types: Sensor/Actuator/Control objects XML description application graph: Binding Map Declarative, meta-Info based integration model Separation of integration/composition from component design and implementation Event Bus as basic event signaling and interaction model
3 Guiding Architectural Principles Two communities of developers being supported: Object/device/service developers (“building the widgets”) Solution builders/integrators (“composing the widgets into solutions”) Maintain separation of: Application object abstraction from application object implementation Logical application topology from physical device/network topology Maximize solution correctness and efficiency via both the development and runtime environments Treat time as a fundamental primitive in the programming model Enable higher-level abstraction and integration of Operations Domain systems and components through encapsulation Accommodate heterogeneity rather than eliminate it Minimize impact on existing Operations Domain systems and skills
4 Important to establish certain separations in the programming abstraction Separation of Object Implementation from Composition and Integration Minimizes interference between the two communities of programmers: Component Developers System Integrators Allows event flow of application to be modified with no impact on Object Implementation Separation of application topology from device topology Minimizes impact of device evolution and reconfiguration Simplifies reconfiguration of application for tuning, etc. Increases level of reusability of Objects
5 Software representations of abstract control system objects (control loops, sensors, actuators) Provide a necessary level of homogeneity across disparate control environments Allow identification and capture of meta-information (such as latency requirements, data freshness requirements, etc.) Establish data-typing framework JAVA com.ibm.idacs.algorithm.NullControlAlgorithm PIDTemperatureControl.wsdl Model Object Schemas Sensor, Control/Decision, Actuator Objects
6 XML Schema: Data Point, Type and Physical Unit
7 Data type framework to map to computing space from application domain(s) Data types are extensible through XML schema to different industries and application domains Provides data type platform for Model Object Inputs/Outputs XML Schema: Data Point, Type and Physical Unit
8 XML Schema: Control Model Object example
9 Runtime Control Model Object
10 Example Control Model Description using Java category JAVA com.ibm.idacs.algorithm.NullControlAlgorithm PIDTemperatureControl.wsdl