Integrating DevOps and continuous engineering into your IoT strategy
Smart devices for the Internet of Things (IoT) are not very smart if they are not integrated with the systems that run your business. That means you must including DevOps and continuous engineering practices in your IoT strategy.
The coolest new mobile app or the hottest new Internet-connected devices are useless if they cannot make critical data available to the user, or use data collected for business purposes. In some ways unconnected smartphones, home appliances or cars are like the dumb terminals of decades past. Without connections, they simply sat on a desk drawing power and doing nothing. Very little actual data is stored on IoT devices for a good reason: extra memory costs money, which raises the cost of the device. That means connecting to business systems is not only desired, but critical for functionality.
Sounds obvious, right? Not if you are reading about IoT today. In numerous articles, authors talk glowingly about the newest chips, emerging protocol standards and fresh open source projects leading to new IoT platforms. But the best IoT platform is the one you already have: the one that seamlessly integrates your business systems into devices, streaming data you can use to offer new products and services to the user.
Solid architecture and design for IoT means thinking about the flow of data from the device through the network to your own systems, and the round-trip back. This requires the integration of the DevOps practices that manage and update those systems, as well as the continuous engineering practices that lead to the embedded software and functionality in the devices themselves. These aren’t unrelated concepts; they are connected directly through the sharing of data between the two disciplines.
Don’t believe me? Think about an engine inside a large semitruck. It’s controlled by a computer with software that is embedded into the chips themselves. That software might monitor engine performance and emissions, and make adjustments to timing, mixture and valves to keep the truck on the road and performing well. It was all developed using good continuous engineering practices such as requirements management with integrated design, modeling and testing. If you are manufacturing the truck, you are also thinking now about how you get data from that engine, both to analyze it yourself as well as share (or sell) it to the truck fleet operator or others.
But if the engine control computer is ready to share data, where is it sent? The answer is your existing IT infrastructure. The first stop is likely a web server, followed by streaming data processing and some sort of database. The apps you build on top of that data give it context and value, and the integrations you create between those applications and existing resources such as plant and factory operations or financial systems make it truly useful. And there is the connection: all these systems are built and maintained as a result of useful DevOps practices, and they connect to devices built and maintained with valuable continuous engineering practices.
The good news is that there is nothing you need to do to create great IoT products other than ensuring effective integration between your existing DevOps systems and your product development using continuous engineering. I'll be speaking about how to make this a reality in the "Integrating DevOps and Continuous Engineering into Your IoT Strategy" session at IBM Insight 2015. Thinking of them together, as one complete IoT platform, will open up unique possibilities for what you can do with the IoT. You do not need to find magic software or protocol that will unlock IoT possibilities for your organization.