1
00:00:00,000 --> 00:00:04,000
Andy Smith: Would you like to introduce yourself?

2
00:00:04,000 --> 00:00:05,000
Andy Smith: Sure.

3
00:00:05,000 --> 00:00:06,000
My name is Andy Smith.

4
00:00:06,000 --> 00:00:11,000
I'm one of the developers working on the SODA project.

5
00:00:11,000 --> 00:00:15,000
SODA stands for Service-Orient Device Architecture.

6
00:00:15,000 --> 00:00:20,000
This is an open source project available through the Eclipse Open Healthcare Framework.

7
00:00:20,000 --> 00:00:24,000
These concepts were originally driven from the embedded space.

8
00:00:24,000 --> 00:00:29,000
So the embedded space introduces a number of different challenges.

9
00:00:29,000 --> 00:00:35,000
That you typically wouldn't see in the enterprise development environment.

10
00:00:35,000 --> 00:00:40,000
Typically, the enterprise, you have a little bit more control over the infrastructure and supporting that T.

11
00:00:40,000 --> 00:00:44,000
Whereas embedded systems, while they do provide a wide variety of devices,

12
00:00:44,000 --> 00:00:48,000
they also introduce a wide variety of vendors, manufacturers, and technologies.

13
00:00:48,000 --> 00:00:54,000
Andy Smith: Embedded systems basically means there's a physical piece of hardware that you're doing something with, right?

14
00:00:54,000 --> 00:00:55,000
Andy Smith: Right.

15
00:00:55,000 --> 00:01:02,000
Andy Smith: Instead of just purely software, just deploying on servers somewhere with web browsers just to contrast it from other enterprise software.

16
00:01:02,000 --> 00:01:03,000
Andy Smith: Correct.

17
00:01:03,000 --> 00:01:07,000
So adding this complexity includes running within constrained environments.

18
00:01:07,000 --> 00:01:20,000
Andy Smith: And these constrained environments can include anything from very small devices, such as temperature sensors, to cell phones or edge servers, which may control a number of different devices.

19
00:01:20,000 --> 00:01:22,000
So SODA attempts to address some of these issues.

20
00:01:22,000 --> 00:01:30,000
Andy Smith: One of the goals is to provide efforts to standardize and simplify the integration of these devices with the enterprise solutions by introducing a services-based model.

21
00:01:30,000 --> 00:01:43,000
Andy Smith: To do this, SODA attempts to leverage existing and emerging standards from the embedded and IT domains to provide well-defined interfaces for hardware devices, enabling a flow of information to and from service-oriented architectures.

22
00:01:43,000 --> 00:01:49,000
Andy Smith: This will allow developers and systems to interact with sensors and actuators just as the business services do today.

23
00:01:49,000 --> 00:01:50,000
Andy Smith: Right.

24
00:01:50,000 --> 00:01:53,000
Andy Smith: We'll take a look at the SODA stack.

25
00:01:53,000 --> 00:02:01,000
Andy Smith: The SODA stack provides a clean, logical model supporting development of interfaces to devices at the enterprise.

26
00:02:01,000 --> 00:02:04,000
Andy Smith: The SODA stack is comprised of a series of layers.

27
00:02:04,000 --> 00:02:13,000
Andy Smith: These layers include a physical device, the device interface, the agent, the application, the SOA binding, and the SOA mechanism.

28
00:02:13,000 --> 00:02:20,000
Andy Smith: So if you look at that from a conceptual view, so starting at the bottom and moving up, we take a look at the physical device.

29
00:02:20,000 --> 00:02:24,000
Andy Smith: Physical devices are typically classified as sensors and actuators.

30
00:02:24,000 --> 00:02:30,000
Andy Smith: So sensors read data from the real world while actuators actually push data down to affect something within the real world.

31
00:02:30,000 --> 00:02:37,000
Andy Smith: So an example of a sensor would be a temperature device that takes a reading for the current temperature.

32
00:02:37,000 --> 00:02:43,000
Andy Smith: Whereas something like a display device may take input from a controller and display that to an end user.

33
00:02:43,000 --> 00:02:48,000
Andy Smith: The device interface provides the low-level protocol for the device.

34
00:02:48,000 --> 00:02:55,000
Andy Smith: And this can either be an industry standard or it can be manufacturer specific depending on the requirement.

35
00:02:55,000 --> 00:03:05,000
Andy Smith: At the next layer, that agent abstracts the device into a generic device or set of messages that can interface with the application.

36
00:03:05,000 --> 00:03:14,000
Andy Smith: So an example of this would be a temperature agent that supports a standard temperature interface that may connect many different devices.

37
00:03:14,000 --> 00:03:18,000
Andy Smith: But they all provide a similar type of reading back to that temperature.

38
00:03:18,000 --> 00:03:20,000
Andy Smith: Right.

39
00:03:20,000 --> 00:03:25,000
Andy Smith: The application is typically where the business logic outside the enterprise is placed.

40
00:03:25,000 --> 00:03:32,000
Andy Smith: This is where the logic for filtering or combining events from devices is located.

41
00:03:32,000 --> 00:03:37,000
Andy Smith: The SOA binding provides the enterprise connectivity between the application and device logic.

42
00:03:37,000 --> 00:03:42,000
Andy Smith: This includes a variety of access alternatives depending on the environment.

43
00:03:42,000 --> 00:03:47,000
Andy Smith: Some examples of this could be standard web service or JMS messaging.

44
00:03:47,000 --> 00:03:54,000
Andy Smith: The SOA mechanism is used to describe the back-end infrastructure such as an application or process server or an enterprise service bus.

45
00:03:54,000 --> 00:03:56,000
Andy Smith: Right.

46
00:03:56,000 --> 00:03:57,000
Andy Smith: Right.

47
00:03:57,000 --> 00:04:02,000
Andy Smith: And so what parts of this layer are on sort of devices versus on servers somewhere?

48
00:04:02,000 --> 00:04:09,000
Andy Smith: So we'll get to that a little bit later on and how we broke that out in the Stepstone Reference Implementation.

49
00:04:09,000 --> 00:04:15,000
Andy Smith: Typically, the SOA framework down would be an edge server.

50
00:04:15,000 --> 00:04:16,000
Andy Smith: Right.

51
00:04:16,000 --> 00:04:24,000
Andy Smith: Whereas the EPC or other SOA mechanism would be at the enterprise level, so thinking more of a heavyweight application server.

52
00:04:24,000 --> 00:04:30,000
Andy Smith: We also use -- so for the Stepstone Reference Implementation, we're still leveraging OSGI from that.

53
00:04:30,000 --> 00:04:33,000
Andy Smith: But it's not directly communicating with the devices.

54
00:04:33,000 --> 00:04:35,000
Andy Smith: Right, right, right.

55
00:04:35,000 --> 00:04:36,000
Andy Smith: Correct.

56
00:04:36,000 --> 00:04:41,000
Andy Smith: So the OSGI parts are kind of at the application code on down layers, it seems like.

57
00:04:41,000 --> 00:04:44,000
Andy Smith: And of course, maybe some translation in the binding framework.

58
00:04:44,000 --> 00:04:51,000
Andy Smith: Well, so we're using the OSGI runtime for both sides in the Stepstone Reference Implementation.

59
00:04:51,000 --> 00:04:52,000
Andy Smith: All right.

60
00:04:52,000 --> 00:04:53,000
Andy Smith: Okay.

61
00:04:53,000 --> 00:04:57,000
Andy Smith: We're still leveraging the OSGI runtime, and we'll get to that a little bit later on.

62
00:04:57,000 --> 00:05:08,000
Andy Smith: So while SOA does not dictate a particular technology, the OSGI runtime provides a good complement to this architecture, enabling the layers to be represented as bundles.

63
00:05:08,000 --> 00:05:18,000
Andy Smith: So when you add existing Eclipse tooling into the scenario provided -- so adding existing Eclipse tooling into this scenario provided some of the foundation for the Stepstone Reference Implementation.

64
00:05:18,000 --> 00:05:23,000
Andy Smith: Stepstone was developed through a collaborative effort between IBM and the University of Florida.

65
00:05:23,000 --> 00:05:36,000
Andy Smith: Stepstone provides a reference implementation that delivers a patient monitoring system that demonstrates how SOA and supporting tools can be used to build wellness and healthcare systems through embedded technologies, SOA, and open standards.

66
00:05:36,000 --> 00:05:42,000
Andy Smith: So some of the core components in the Stepstone Reference Implementation are, for one, OSGI.

67
00:05:42,000 --> 00:05:51,000
Andy Smith: We also leverage DeviceKit, which enables the development of Java applications that interface with physical devices that run as OSGI services.

68
00:05:51,000 --> 00:05:58,000
Andy Smith: And then SAT provides tooling that enables easier management of dependencies and services in an OSGI environment.

69
00:05:58,000 --> 00:06:05,000
Andy Smith: And are those -- are those all open source things that you use for it, or what are the exact implementations of those things that you have?

70
00:06:05,000 --> 00:06:11,000
Andy Smith: Yeah, those -- so both of those projects are available on the Open Healthcare Framework site.

71
00:06:11,000 --> 00:06:12,000
Andy Smith: Okay.

72
00:06:12,000 --> 00:06:14,000
Andy Smith: So you guys actually made those yourself?

73
00:06:14,000 --> 00:06:19,000
Andy Smith: So that wasn't part of the Stepstone Reference Implementation.

74
00:06:19,000 --> 00:06:24,000
Andy Smith: Those were already existing, and we leveraged those.

75
00:06:24,000 --> 00:06:28,000
Andy Smith: So the Stepstone -- the Stepstone project can be broken into two sections.

76
00:06:28,000 --> 00:06:30,000
Andy Smith: There's the edge, and then there's the back end.

77
00:06:30,000 --> 00:06:37,000
Andy Smith: So the edge is the component that provides a reference implementation for a runtime that would typically reside on the edge of the network,

78
00:06:37,000 --> 00:06:41,000
Andy Smith: communicating with the devices over a variety of different protocols.

79
00:06:41,000 --> 00:06:53,000
Andy Smith: And so those protocols can be Bluetooth or serial for 802.11, for example.

80
00:06:53,000 --> 00:07:01,000
Andy Smith: In the Stepstone scenario, the edge resides in the home of the patient and provides a controller for various devices in the home.

81
00:07:01,000 --> 00:07:09,000
Andy Smith: The edge also leverages device kit, SAT and OSGI, to expose these devices as standard web services that interface with an SOA back end.

82
00:07:09,000 --> 00:07:18,000
Andy Smith: So the back end serves as a reference service-oriented architecture for the reference implementation.

83
00:07:18,000 --> 00:07:26,000
Andy Smith: The back end provides a data store allowing the events from the devices to be stored and viewed in a web application running in an OSGI environment.

84
00:07:26,000 --> 00:07:30,000
Andy Smith: Since both the edge and the back end applications are deployed in an OSGI environment,

85
00:07:30,000 --> 00:07:36,000
Andy Smith: this enables a flexible and pluggable framework to deploy and manage new devices and applications.
