IoT Application Prototype

Creating Business Value with the IoT, Part 2

Plan Ahead to Leverage Existing IT Investments

In this video, Ken Johnson, Senior Director of Product Management at Red Hat, talks about the IoT architectural shift that developers should consider early in the project lifecycle in order to make the best use of existing IT investments.

Learn more at Have a question? Email us here.

Watch the first video in this series here.


Adrian Bowles: I’m here with Ken Johnson of Red Hat. We’re talking about IoT this morning and one of the issues that comes up is people look at IoT as something fundamentally different from what we’ve done in the past. Now, we’ve been in the business a long time and if you trace some of the major phases, it used to be we have a waterfall. You build one to thrown away. You know that whatever you built it first, by the time it reached production it was probably going to be very different. Some of the things that we’ve talked about at various times are the multitier architecture for IoT, how you cut things at the edge. You’ve got your gateway.

Tell me what you’re seeing, or what you’re doing, or what people are telling you about differences when you know that you’re going to be dealing with data sources from the IoT? How do you build? Are you building prototypes? Are you building things to throw away?

Ken Johnson: I think a lot of what we’ve learned over time applies here, as well. You’re going to do prototypical development. You’re going to adopt agile methods. All the benefits we’ve learned and gained over time, that doesn’t get thrown away here. The IoT is not a fundamental shift in the way we build, but it is an architectural shift in the way we think about the application. Most applications that have been built over time tend to be, I’ll call it monolithic, not in the microservices versus monolith way. They tend to be an application that runs in a data center in a cloud and is sort of self-contained.

Adrian Bowles: I’ve got a problem. You’re going to build something for me and it-

Ken Johnson: Yeah. It’s pretty bounded. In an IoT realm, the systems tend to be distributed. The applications are distributed. You’re breaking application logic over multiple tiers and you need to think about that early in the process, not that you have to have a waterfall approach. I’ve had it in exactly the specified end state, but you have to consider where the components are going to run, what your distributed architecture looks like. You’re bringing more physicality into your application.

It’s not just I’m running software on a server or on a computer but I’m running in tiers of architecture which may be very highly distributed, may be physically constrained, may be on mobile assets. I do have to think about what my physical topology is going to look like and start my prototyping with that in mind. The technology selections you’re going to make up front to prototype need to
support, or have a path to support, the eventual deployment architecture you’re envisioning. If you go, say, with a complete cloud only backend with a simple device to cloud model and you anticipate needing to have a mid-tier, a gateway tier, on a mobile asset, how are you going to retrofit that in later without rearchitecting your application?

You need to think about that up front and as you start prototyping, whether you virtualize that, or do a simplistic multitier model, start with that. You can understand how you’re going to divide your logic, understand the network considerations, the device communication patterns, and things that are going to exist in the real end state you’re envisioning. If you oversimplify in the prototype stage, when you get closer to reality you’ll have a problem on your hand in terms of going to refit your simplified prototype to the actual reality. Have the end state reality in mind, but simplify that as much as you can.

Have it be representative of the real world that you’re going to be deploying this in so you can be sure you have the right software selected, the right skills, the right tools to build the right functionality at each of the tiers, and be able to distribute it, be able to manage it, be able to run it effectively.

Adrian Bowles: Okay, great. Thanks. If you want more information about how Red Hat is working with the IoT go to For more videos in this series you can go to

Show less
Show more

Creating Business Value with the IoT video series

Connect with Red Hat

About Red Hat

Red Hat, the world’s leading provider of open source software solutions, delivers reliable and high-performing cloud, Linux®, middleware, storage, and virtualization technologies that help you collect, communicate, transform, store, and act on critical data generated by the Internet of Things (IoT). Red Hat offers a single, extendable, and secure foundation to support the end-to-end life cycle of IoT solutions—from development to production.

Red Hat brings intelligence to the edge, bridging the gap between IT and operational technology for connectivity and interoperability between IoT devices, gateways, datacenters, and the cloud.

Learn more at