Traditional networked embedded systems architectures are being challenged as they begin to be used within IoT applications. These embedded systems are required to interoperate with sensors, devices, gateways, and cloud applications. This article provides an overview of IoT flexible framework architecture as discussed in a recent panel.
Architecture and IoT
Internet of Things (IoT) applications build on a previous generation of networked embedded systems by adding sensors, Internet gateways, and cloud applications. IoT increases the flexibility and power of networked embedded systems by providing Internet on-ramps and end-to-end access.
As more IoT applications emerge, architectures need to be flexible enough to adapt to varying requirements and feature sets where the functionality may be located anywhere along the IoT components. Can an IoT architecture hold up? Should IoT systems ignore architecture in favor of higher flexibility? Should they stick to an architecture and live with the limitations? Is there room for a mix?
These questions were posed to a panel consisting of IoT experts from Atollic, Freescale, Kontron, ThingWorx, and Wind River. Each had some unique insights, examples, and use cases that compare, contrast, and incorporate flexible framework architectures.
IoT framework, process, tools
Stephen Martin, Vice President and General Manager at Atollic (www.atollic.com) has a unique perspective on IoT flexible framework and the role development processes and tools play. Software architecture plays an important role, but where it lives should be flexible to fit the application.
“The software defines the framework you’ll be living with for a while,” Martin said. “IoT should start with a defined software development process.”
Choosing a tools platform is also a critical step. It’s important for IoT systems to have stable tools and advanced debugging capabilities. Martin mentioned that mixing open source software with in-house development can be an effective way to increase development cycles while adding differentiation to the IoT system.
Martin also warned to not forget that IoT applications involve powerful servers and storage. These elements can be used for development as well as for the application itself. IoT environments are uniquely suited for development, staging, and deployment, and taking advantage of this can effectively utilize resources and increase quality.
ARM TrustZones and Wi-Fi
Nick Sargologos, Senior Manager in the Digital Networking Group at Freescale (www.freescale.com) said that the silicon plays a significant role in IoT systems from devices and gateways. The ARM TrustZone feature can provide partitioning for privileged applications or users. Intelligent monitoring and component management are also important features to consider within the IoT architecture. Sargologos referenced Wi-Fi as an IoT application in itself. End equipment interacting and communicating with access points, which in turn provide Internet connectivity, can indeed be considered an IoT application. Sargologos also discussed important initiatives where Freescale is aggressively partnering with open source initiatives involving IoT in order to provide a more integrated solution for IoT applications.
Identify guiding philosophy and key tenants
Prem Kumar is Vice President and Head of Global Technology at Kontron (www.kontron.com). Kumar had a variety of observations. First was to identify some guiding philosophies with the IoT application being developed. Then prototype with a purpose – understand what the use case is and put together some key functional components to demonstrate the concept. Analytics is an important component of an IoT system as well. Transforming data into actions is a common theme of an IoT application – gathering sensor information, feeding devices, and communicating through gateways to a cloud application might be one implementation. Analytics processing may also be valuable closer to the edge. Flexible frameworks enable designers to make the right design decisions for the use case. Kumar also discussed security, manageability, and agility as three key tenants to IoT flexible frameworks.
IoT down on the farm
John Canosa is the Chief Strategist for connected products at ThingWorx (www.thingworx.com). Canosa had some unorthodox use cases to share in order to drive home important points about IoT flexible frameworks. John asserted architecture and flexibility is not an either/or – in an ever-changing environment it’s critical to lean on an architecture while having flexibility to adapt the solution to multiple use cases.
Canosa used coal mining equipment to the concept of the “smart cow” to illustrate his points. Cattle monitoring is one case where many sensors are used to understand how cattle movement, environment, and feeding habits can provide more effective raising of cattle. He also mentioned chicken farms where coops are monitored for a variety of factors and the data are fed back to cloud applications to identify ideal conditions for laying and chicken health. In an era of high tech, Canosa brought an interesting and different use case for IoT (For more on embedded tech on the farm see opsy.st/FoodProduction).
Corruption and rollbacks
Jeffrey Fortin is a Director at Wind River. His take on architecture was a pragmatic one. Fortin recommends developing an architecture and then validating that architecture. Of course flexibility is a must, but if designers utilize resources to prove out the architecture, developing applications and validating use cases can happen more quickly. Fortin described a home patient monitoring system that describes an overall architecture where individual patient health and monitor sensors could be applied, implemented, measured, and validated. If the architecture holds, additional features and capabilities can be added to continue to prove out the flexibility and usefulness of the architecture.
A flexible IoT
Flexible framework architectures are a key element to the successful development and deployment of Internet of Things applications. As the experts illustrate, there are a lot of moving parts in this brave new world. Development of the architecture, building in flexibility, choosing the right tools and development processes, security, and proving out the architecture iteratively are all considerations for a successful IoT deployment. From smart cows to medical monitoring, flexibility and architecture must be carefully considered.