Skip to content

IoT System Info Sources

July 6, 2015

Here are some of the most useful sources of information on Internet-of-Things (IoT) systems that I’ve run across in 2014 and 2015. When reading this, please keep in mind the key points made in my blog article “Reinventing the Wheel is Not Necessary for IoT Software Architecture”:

  1. It’s best to use an end-to-end system perspective when thinking about IoT Systems. They can be much more complex that just the internet and things.
  2. “When developing IoT Systems we can use all of the software structural (aka software architecture) knowledge we’ve gained over the past decade from developing secure, mission critical distributed systems, and Service Oriented Architectures (SOA), and Cloud Systems.”

The following info sources often apply the above perspective and techniques since they generally serve to facilitate the timely development of high quality IoT Systems.

General Info Sources

The IEEE Internet of Things web site is full of IoT articles and links. You can join the IEEE IoT Technical Community for free by clicking this link.

In June 2015 the Industrial Internet Consortium (IIC) released its Industrial Internet Reference Architecture (IIRA) document. Click to download the document. It outlines the requirements and the conceptual system architecture needed to build industrial strength IoT systems. This is about a lot more than hooking up your toaster to the internet! The 5 founding members of IIC are AT&T, Cisco, GE, Intel, and IBM. Note that most of them have deep experience in distributed systems, SOA, and/or Cloud Systems.

Looking through the Reference Architecture document, especially the diagrams, will give you an idea of the potential complexity of industrial IoT Systems and how our knowledge of the software architecture of distributed systems, SOA, and Cloud Systems can be applied to effectively manage this complexity. Figures 7-2 and 7-3 on pages 38 and 39 show the software required for an entire IoT System. Note that the “things” account for less than a quarter of the Figure 7-2 diagram! And notice the software “Architecture Patterns” listed on page 37 that can be brought to bear to manage some of this complexity.   And this is just a partial list of the potentially applicable software architecture patterns.

Please read Section 1.1 “Rationale and Context: The Industrial Internet” on page 9. It will give you an appreciation for how sweeping the “Industrial Internet Revolution” will be for our world over the next few decades. In my opinion, the Industrial IoT has the potential to produce a revolution in the way humans make things and supply basic services that have the potential to have as much, or more, impact on society than the invention of the assembly line by Henry Ford in 1913. If we can effectively deal with the security and quality issues than can unravel complex systems.

Here is a realistic, sobering view on some of the security, safety, reliability, and quality issues with software based distributed IoT systems by William Buchananhttps://www.linkedin.com/pulse/iot-your-car-get-auto-update-features-william-buchanan. When designing and developing IoT systems, and any other distributed system software, you need to have a specific actionable plan to counteract the kind of problems listed in this article. If you do not have such a plan, and the ability to carry out that plan to the letter, then these sorts of software bugs will definitely occur.

Software Oriented Info Sources

Clemens Vasters, currently Lead Architect of Microsoft Azure IoT Services, is a good source from which to learn about IoT software architecture and security. There are few people having such vast, deep experience and knowledge of the challenges and techniques of building resilient, performant, scalable distributed systems using SOA. Mr. Vasters was the leader of the team that developed Microsoft’s internal AppFabric prototype, and then turned it into a product Microsoft released in June 2010. This was the original component of what is now Microsoft’s Azure Cloud System. Development of what was AppFabric (and has become Azure) was continued with Mr. Vasters as Principal Technical Lead. Subsequently he served as Lead Architect of Azure Service Bus Messaging before his current position.

Since 2012 Mr. Vasters has published a wide variety of material on the Internet of Things, drawing on his deep experience with mission critical distributed systems, SOA and Cloud Systems. Also, he is Microsoft’s representative at the Industrial Internet Consortium, described above.

“Internet of Things — Using Microsoft Azure Service Bus for … Things!”, by Clemens Vasters in MSDN Magazine, June 2012. I consider this as required reading for understanding the basics of the message based software architecture required for industrial IoT applications.

There is an 8 part series of 15 to 30 minute videos featuring Mr. Vasters in which he gives hands-on examples of the challenges to be met in hooking up a device (a Raspberry Pi) to the cloud. The links are listed below. I found those marked with “**” to be very useful. And please don’t miss the video “Why End-to-End Security Matters”.

Part 1 – Prototyping Platforms

** Part 2 – Pattern Overview and Commands with HTTP

** Part 3 – Safer Commands via a Cloud Gateway

Part 4 – Intermediated, Service Assisted Connectivity

Part 5 – Tunnel in Tunnel in Tunnel and Other Security Witchcraft

** Part 6 – Why End-to-End Security Matters

Part 7 – The Pi in the Car

Part 8 – The Pi Code. OBDII to AMQP to Cloud

Clemens Vasters has other useful videos on IoT subjects in his Subscribe video blog and on Channel 9. He also has valuable IoT material in his written blogs as well: http://blogs.microsoft.com/iot/author/clemensvasters/ and http://blogs.msdn.com/b/clemensv/.

MSDN Magazine has published a number of informative software oriented articles on the Internet of Things and how Microsoft products enable development of end-to-end IoT Systems. For a list of such articles please Google mdsn magazine internet of things”. In particular, Bruno Terklay has written a number of articles along these lines that I have found to be most useful.

Microsoft’s IoT Blogs offer articles on Microsoft IoT techniques and products, plus examples of some of the IoT Systems their customers have built. These articles are excellent sources for ideas on how IoT may apply to your needs, and on how to build IoT Systems.

AllJoyn® – “a collaborative open-source software framework that makes it easy for devices and apps to discover and communicate with each other.” Out of the box, Windows 10 IoT versions will include software to allow apps running on it to use AllJoyn’s capabilities. Windows 10 will be released in mid-2015. AllJoyn® combined with Windows 10 may prove to be a fast way to develop some IoT capabilities.

Microsoft Build 2015 IoT Videos and Articles

Every spring Microsoft hosts a large conference for developers called Build in which it shows the latest technologies being offered and new technologies it will introduce in the next year. Build 2015 was unique since Microsoft has an unusually large number of major technology areas with significant new offerings to be introduced in 2015 and 2016 – Windows 10, Service Fabric for Azure and Windows Server 2016, the Azure IoT Suite and other related IoT software support, plus many new Azure PaaS and IaaS features. Each of the hour long sessions is videotaped and available online at https://channel9.msdn.com/Events/build/2015. Here are a few of the IoT related articles and videos from Build 2015 that I found most informative.

“Best Practices for Creating IoT Solutions with Azure” by Kevin Miller, Principal Program Manager for Azure IoT , has an excellent 2 page summary document that details 4 best IoT practices Microsoft has discovered in working with their customers. Don’t miss this little article. And the Build 2015 video of Mr. Millers presentation on this topic also lays out Microsoft’s IoT product and service strategy — It introduces the Azure IoT Suite and the new IoT Hub service that will be made available this year. The IoT Hub is a very highly integrated cloud service that supports most of the things one needs to do for IoT systems – provisioning and device management, data ingestion and analysis, security, etc. No longer will one have to build each one of these areas from scratch. This is a very significant development.

Azure IoT Security — Clemens Vasters discusses IoT security in this must see video. This article summarizes Mr. Vasters points on IoT security, plus has some good security links. But if you have the time, watch the video. It explains the key details that a short article cannot. The basic idea is “The most foundational principle for building secure IoT scenarios is to follow a defense-in-depth strategy, applying appropriate security measures at each layer – from the physical environment to digital hardware, and to the data that gets stored and collected”.

Connecting Your Devices to the Azure IoT Suite — The details of the IoT Suite and IoT Hub can be seen in this video.

I hope these info sources aid you in understanding the key technologies and issues involved in developing industrial strength IoT systems. This understanding will:

  • Speed development of your IoT Systems.
  • Avoid making unnecessary costly mistakes.
  • Increase IoT System quality, security, safety, and reliability.
  • And, create highly satisfied customers.

George Stevens

Creative Commons License

dotnetsilverlightprism blog by George Stevens is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License. Based on a work at dotnetsilverlightprism.wordpress.com.

 

Advertisements
Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: