Agile Event Session

MicroServices, IoT, and Agile… Seriously!

This video content is for Agile Alliance members only

If you’re already an active member, please log in now.

To view this content, and gain access to many more valuable resources, conference discounts, and invitations to exclusive networking and learning events, please consider becoming an Agile Alliance member.

Abstract/Description

IoT, the prevalence of specialized interconnected devices, has invaded business and home. The myriad of devices, hubs, and APIs has created a Tower of Babel that makes the Android phone scene seem mild. Such devices are inherently less network-reliable than previous products, primarily due to the casual attachment (convenient outlets). Add to this heterogeneous soup the security exposure that has already been exploited in DDoS attacks, and you have an environment begging for technical solutions.

We propose Asynchronous MicroServices as a solution.

Borrowing a page from historical J2ME thinking and more recent implementations using IFTTT, we introduce small bridging MicroServices for the various devices.

Further, also consistent with MicroServices, we keep these services very simple: They broadcast device status to an event bus, or listen for action commands to relay to the devices from the same bus. Interaction among the various IoT devices is delegated to yet another set of MicroServices.

One exemplary composite application would accept signals from motion detectors to turn on appropriate lights, or alternatively alerting the owner of unauthorized intrusion. Using the same motion detectors, lights can be dimmed and eventually turned off. Room temperatures and even audio/video gear could be adjusted as well.

Using Asynchronous MicroServices, we can also set up controlled access from the outside world, rather than exposing each device with its own vulnerabilities.

Finally, we discuss our implementation in my own flat, following all the Agile principles, and almost none of the “standard” practices.

We wrap up talking about the challenges of this using my IoT technology of Hue lights, Amazon Alexa, and 4th generation Apple TV. We run these MicroServices in local containers attached to the same home network. Docker support of ARM devices enables low cost redundancy as well.

Additional Resources

Add to Bookmarks Remove Bookmark
Add to Bookmarks Remove from Bookmarks
Add to Bookmarks Remove from Bookmarks

Speaker(s) may be willing to present this session at local group meetings and other events.

Agile Technical Conference
Slides, Video
Practicing

More Agile Event Session Videos

FP vs. OOP: Beyond the Bikeshed
In object-oriented languages like Ruby, people often say that “everything is an object”—but first-class functions have become standard for object-oriented languages too. C# has had them and other related features for years, and even Java is in the ga…
Testing Without Mocks: A Practical Guide
Are your tests slow or brittle? Do you get a sinking feeling when you need to refactor? Do you worry your unit tests aren't actually testing anything important? If so, you could benefit from exploring a mock-free approach to TDD. This session is a c…
Building Your Team to Last
Hiring and on-boarding new team members is an expensive and risky process. It's crucial to hire people who mesh well with the existing team and get them up to speed in a timely manner. Balancing this while minimizing the initial impact on productivit…
FP vs. OOP: Beyond the Bikeshed
In object-oriented languages like Ruby, people often say that “everything is an object”—but first-class functions have become standard for object-oriented languages too. C# has had them and other related features for years, and even Java is in the ga…
Testing Without Mocks: A Practical Guide
Are your tests slow or brittle? Do you get a sinking feeling when you need to refactor? Do you worry your unit tests aren't actually testing anything important? If so, you could benefit from exploring a mock-free approach to TDD. This session is a c…
Building Your Team to Last
Hiring and on-boarding new team members is an expensive and risky process. It's crucial to hire people who mesh well with the existing team and get them up to speed in a timely manner. Balancing this while minimizing the initial impact on productivit…

Have a comment? Join the conversation

Discover the many benefits of membership

Your membership enables Agile Alliance to offer a wealth of first-rate resources, present renowned international events, support global community groups, and more — all geared toward helping Agile practitioners reach their full potential and deliver innovative, Agile solutions.

Not yet a member? Sign up now