Data Capture in IBM WebSphere Premises Server - Aldo Eisma, IBM
1. June 10-11, 2008 Berlin, Germany
Data Capture in IBM WebSphere
Premises Server™
Aldo Eisma, IBM
2. 2
IBM Sensor and Actuator Solutions
SOA Foundation
Sensors
Controllers
Actuators
Networked
devices
deliver new
data & act
upon
insights
Enabling process and
business transformation
from new operational
insights
New Data ! New Insight ! Process Innovation
S&A
Solutions
Framework
3. 3
The IBM Sensor & Actuator Solutions Framework
Systems Management Domain
XML
MQ
Dock
Door
Reader
Conveyor
Belt
Reader
Handheld /
Portable
Reader
RFID
Label / Tag
Printers
Visual
Indicators
Switches
and
Sensors
Sensor Domain
IBM
WebSphere
Premises
Server
Data Capture
Domain
Premises Domain
DB2
IBM
WebSphere
Premises
Server
Sensor events
Enterprise & Business
Application Domain
Business Process
Integration Domain
Business
events
IBM
Integration
Server
ERP
WMS
SCM
Portal
Server
Product
Information
Services
EPC, WPC
Object Directory Domain
End to End Reliable Messaging Ensures Data Integrity
Persistent Data Flexible Integration
Open platform
for extensible
device
integration;
Flexible
Distributed or
Centralized
Topology
Sensor Events:
What, When, Where,
Why;
Business Context &
Process Context;
Enterprise - IT class
platform
4. 4
Some Solution Proof Points in 2007
Gerry Weber
Retail Supply Chain & Logistics
for High Value Goods Tracking
Metro
Retail Supply Chain & Logistics
For Supply Chain Visibility
Airbus
Industrial Tracking & Visibility
for Supply Chain Manufacturing (JIT/JIS)
McLane
Distribution Supply Chain & Visibility
For Reusable Asset Tracking
Honda Italia
Industrial Tracking & Visibility
for Manufacturing WIP Visibility
Baxter
Pharmaceutical Track and Trace
for High Value Drugs
"IBM definitely is ahead of the others, because they're
actually out there co-inventing with the customers."
Michael Liard, ABI Research October 2007,
InternetNews.com. August 13. 2007
“…IBM is a leader in the RFID middleware and software
market. The Sensors and Actuators division offers a full
stack software and services solution for RFID.
Comprising middleware, local, and networked server and
enterprise-wide software, IBM's WebSphere RFID
Premises Server 6.0 provides a service-oriented
architecture, enabling strong automation capabilities that
maximize the value of RFID."
Frost & Sullivan quote - North American RFID
Middleware and Software Markets, June 2007
5. 5
SOA Foundation
New SOA
Business
Processes
Enterprise Applications
WebSphere RFID
Information Center™
UseCaseScenarios
WebSphere Premises
Server™
Distributed Data
Collection &
Device Control
(Data Capture)
Eclipse + OSGi
•! Enable a flexible,
scaleable, manageable
and extensible integration
model for data capture.
•! Extend the solutions
ecosystem with device
manufacturers and ISVs.
IBM WebSphere Sensor Software
Using OSGi to turn data into new operational insights
6. 6
SODA - Service Oriented Device Architecture
Exposing device interfaces as SOA services over a network
See “SODA: Service Oriented Device Architecture”
in IEEE Pervasive Computing
7. 7
What does Data Capture do?
1.! Provides a common service
oriented interface to sensor
devices.
2.! Manages communication
protocol and data format
mapping.
3.! Establishes a communication
bus to Premises Server.
Device Premises
Server
Data Capture
Use Case Applications
Device Kit
Device Agent
Use Case Profiles IBM Micro Broker
Eclipse SODA
OSGi/Minimum-1.1 JRE
OSGi R4.1
provisioning
messaging
8. 8
Where is Data Capture deployed?
•! Deployed on distributed devices (smart devices or controllers).
•! Can also be deployed on the Premises Server OSGi runtime.
•! Supported environments are independent of runtime hardware.
•! Runtimes + applications are in the range of 50 to 100 bundles.
9. 9
The Eclipse OHF SODA technology
project
•! Open Healthcare Framework.
•! Addresses interoperability between applications and
systems within and across healthcare organizations.
•! IBM contributed SODA to Eclipse OHF in March
2007:
•! Device Kit.
•! Service Activator Toolkit (SAT).
10. 10
What is the Device Kit?
•! Enabling technology for Data Capture.
•! It provides a framework for developing
device agents.
•! Eclipse tooling for generating the
components required to interface with a
hardware device.
•! Generated code is “built out” to provide a
fully functional device agent.
•! Provides a uniform method of interfacing
to hardware devices.
•! A set of runtime components.
•! Installed as an Eclipse feature.
Pub / Sub
commands measurements signals
reader, printer,
controller, sensor, etc.
Device
Device
Agent
Connection Layer
Device Layer
Transport Layer
Profiles
GPIO Control Inventory More…
Application Agents
11. 11
Component interaction
Device
Application
Pub / Sub
1
11
6 7
2
12
Device I/O
Connection
Transport
Profile
Device
MeasurementCommand Signal
MessageMessage Value
3 10
4 9
5 8Byte stream
Messages
3 10Invocations Callbacks
Profile
12. 12
Layers are loosely coupled and can be used
independently
Pub / Sub
Profile P1
device
Connection C1
Device D1
Transport T1
Application Agents
device
Connection C2
Device D2
Transport T2
device
Connection C3
Transport T3
device
Connection C3
Connection Service
Transport Service
Device Service
Notification Service
13. 13
Distributed messaging in the Device Kit
•! Device Kit provides a publish/subscribe notification service.
•! An application registers itself specifying the topics in which it is interested
and publishes.
•! Micro Broker bridges messages between Data Capture and Premises
OSGi runtimes.
OSGi Event Service
Agent
Devic
e
or
Profile
OSGi Event Service
Agent
AgentMicro
Broker
Micro
BrokerMQ Telemetry Transport
Notification
Service
publish subscribe
14. 14
The Device Kit Markup Language (DKML)
•! XML markup language that defines the device controls, messages
and configuration settings used by the device agent to
communicate with and control the hardware device.
•! Transports, devices, adapters and profiles all have associated
DKML files.
•! Device Kit tooling generates transport, device, adapter and profile
code from their respective DKML files.
DKML Bundle
Projects
DKML to Java
Generator
15. 15
Adding a temperature sensor to a tag read
location
•! Example: USB dongle from EclipseCon Device Kit tutorial:
•! Temperature sensor.
•! 2 LEDs.
•! Push-button.
•! Access via serial port.
•! Command specification:
•! Send ‘i’,device will reply ‘id: usb-gpio-v1’.
•! Send ‘t’, device will reply with ‘temp: 25.23’.
•! Send ‘b’, device will reply with button state: ‘button: 0’ or ‘button: 1’.
•! Button will send asynchronous button: messages above.
•! etc.
16. 16
Using the Device Kit tooling to develop a new
adapter
1.! Generate skeleton bundle projects using Device Kit
wizards.
2.! Write DKML device and profile specification.
3.! Regenerate and complete transport and profile
implementation.
•! Generated transport and profile require manual coding, device
code does not.
4.! Test the new adapter for profile compliance.
5.! Export, publish and then deploy feature on Premises
Server for provisioning to Data Capture.
21. 21
Step 4: Test the new adapter for profile compliance
Pub / Sub
Device
Profile
Profile Validation Test
Test Tooling
remote test protocol
22. 22
Step 5: Deploy and provision the new adapter (and
application)
Device
Management
Server
Bundle
Repository
Premises
Server
Data
Capture
Eclipse
Feature
1. Initial provisioning
2. Bundle install
3. Configuration
Bundles Configuration metadata
23. 23
Service are dynamically created and configured using
the OSGi ManagedServiceFactory concept
•! Premises Server and Device Kit test tooling
generate create, update and delete actions for
ConfigAdmin.
•! Service Activator Toolkit supports a declarative
services and factories.
Data Capture
OSGi
ConfigAdmin
Service
Data Capture
Configuration
Agent
Agent
Managed
Service
Factory
Agent
Profile
Managed
Service
Factory
Profile
Device
Managed
Service
Factory
Devicecreate
Transport
Managed
Service
Factory
Transport
config update
Configuration
persist
config updates
1
2
3
4
5
24. 24
New
Insights
New
Data
Process
Innovation
Summary
•! Build upon an service oriented platform for flexible
business process innovation:
•! OSGi.
•! Web Services + Business Process Execution Language.
•! Leverage open standards across the end to end
solution:
•! Eclipse, Apache, OSGi.
•! Dynamic partner value network provides the domain
expertise and differentiating capabilities that can be
leveraged to meet specific solution needs.
25. 25
Links and references
•! IBM WebSphere Premises Server
http://www.ibm.com/software/integration/premises_server/
•! Open Healthcare Framework (OHF) Project SODA, Device Kit, & Service Activator
Toolkit
http://www.eclipse.org/ohf/components/soda/
•! SODA Update Site for Eclipse 3.3.1.1
http://download.eclipse.org/technology/ohf/soda/dk/update-site/weekly/
•! Building Service Oriented Bundle Architectures
http://www.eclipsecon.org/2007/index.php?page=sub/&id=3630
•! Where's the Data? A Device Kit Tutorial
http://www.eclipsecon.org/2008/index.php?page=sub/&id=285
•! SAT Blog
http://eclipse-sat.blogspot.com/
•! SODA Forum http://sensorplatform.org/soda/forum/
•! SODA: Service Oriented Device Architecture,
IEEE Pervasive Computing, Vol. 5, No. 3, July–September 2006.