Defining an IoT Architecture and Incremental Strategy
Defining an IoT Architecture and Incremental Strategy
Once you've decided to build an IoT solution, start with defining a diverse architecture that fully considers your data and make sure to include experimentation options.
Join the DZone community and get the full member experience.Join For Free
The Internet of Things (IoT) is a powerful, transformative force and cornerstone for digital businesses taking advantage of the convergence of the physical and digital worlds.
In the first two posts, I talked about the anatomy of IoT solutions, and the benefit of taking a platform approach. IT leaders face growing pressure from the business to deliver new IoT solutions that improve operational efficiency and grow revenue via connected products and services. The IoT diversity in terms of endpoints, software, and apps, however, presents challenges to establishing an IoT strategy that is secure and future proof. I made the case for selecting an IoT platform managing connected products, and a high productivity platform to build IoT apps, as it simplifies IoT solution development tremendously.
The Internet of Things (IoT) opens countless opportunities for businesses to drive smarter operations, or even change their business models. But it takes more than selecting technology to achieve success. Defining the right architecture and an incremental IoT strategy are equally important to ensure successful adoption of IoT in your business.
In this last blog of the series, I am giving some recommendations based on what I’ve seen working in practice with our clients.
Key Architectural Recommendations
The importance of defining and adhering to a solid IoT solution architecture cannot be underestimated. As many IoT initiatives are initiated in the business, enterprise architects should actively seek to get involved. If not, there’s a looming threat of ‘quick-and-dirty’ IoT solutions, with a myriad of point-to-point integrations, a lack of scalability, a future maintenance nightmare, and vulnerable security model.
Assuming a layered approach, and corresponding platforms that abstract technology and reduce complexity are adopted, the following recommendations are a guide for defining a future-proof IoT architecture:
- Plan for diversity: In the absence of industry standards, and considering the broad range of use cases and supporting OT and IT technologies, explicitly plan for, and manage, heterogeneity. Accept the fact that you’ll have to work with a variety of protocols and standards and select the right combination on a per project basis.
- Implement an API strategy: Ensure that each layer in the IoT stack is API- based and can expose and consume web services (REST, SOAP, JSON, OData). This will reduce the integration burden significantly and provide the foundation for flexibility. As IoT use cases often trigger additional creative ideas, make sure services can be enhanced easily to leverage data for multiple consumers of IoT data.
- Adopt an event-driven architecture: IoT solutions should be designed for the ability to process large and varying volumes of events in real time. This calls for a loosely coupled, event- driven architecture across the IoT software and apps layer, with capabilities such as in-memory processing to handle the load.
- Define a data management policy: As the portfolio of IoT applications grows, data management will become a challenge, as the things that produce sensor data are represented in a variety of systems (PLM, ERP, CRM) across departments and business units. Managing data discovery, reconciliation, and governance become a precondition for scaling IoT initiatives.
- Embrace flexibilityNo platform delivers everything needed to build differentiating IoT solutions. Be prepared to adopt best-of-breed technologies and domain- specific services, such as predictive maintenance algorithms and visualization techniques that help the business create solutions for competitive advantage.
- Demand openness and portability: Since the IoT space is emerging, it’s likely that today’s choices for platforms and technologies will be reconsidered in a few years. To protect current investments in IoT app development it’s critical to plan for portability and to use open standards/specifications to prevent lock-in.
- Ensure end-to-end security: Do not compromise security, especially since IoT endpoints and communication introduce new areas of vulnerability. Assess end-to-end security for IoT solutions and make sure that vendors have the right certifications in place and can prove that their platforms are secure and frequently audited.
Define and Incremental IoT Strategy
Last but not least, defining an IoT strategy requires managing and balancing four key aspects of digital execution:
Early adopters of IoT have begun to unlock significant business value by employing incremental IoT strategies. These organizations start small, using IoT to optimize current operations, and gradually expand to deliver more fundamental business model transformation. With that idea in mind, companies need the right set of tools and processes to foster low-cost, high-value experimentation.
Best Practices for Experimentation
1. Build an IoT SWAT Team
Build a cross-functional team that includes representatives from the business and professionals from IT and Operational Technology (OT). The purpose is to bring together people with ideas and the technical aptitude to bring them to life. It’s critical to have an Enterprise Architect in the team to oversee the technical implementation holistically.
2. Identify Pilot Projects
Work with the business to identify IoT pilot projects. Allocate time and resources for this type of experimentation to familiarize yourself with the domains and prove the potential value to your organization.
3. Adopt Agile, Visual Development
Adopt model-driven development to create a common language between business and IT to foster collaboration and rapid experimentation. Use agile development (SCRUM) to develop and test minimum viable products (MVPs) early in the process to ensure the ability to change direction with minimal risk based on what you learn.
4. Implement DevOps
Integrate the development, release and ops processes across the chain to enable continuous integration and continuous delivery (CI/CD) of IoT solutions.
5. Create a Feedback Loop
It is important to have a mechanism to continuously capture feedback from users to feed the process of continuous innovation.
To summarize the essence: think big, start small, learn fast and minimize time-to-value.
The Internet of Things is a driving force behind digital business, and an opportunity to drive smart operations and business model innovation. The IoT domain is nascent and supports a huge variety of use cases across industries impacting business and consumers.
The best way to discover the value of IoT is to start experimenting in close collaboration between business and IT. Involvement of Enterprise Architects is critical to ensure that solutions are secure, can scale and follow key architectural principles.
I hope you enjoyed these IoT blogs and that they are of value in defining your approach to leverage IoT for your business. For your convenience, we bundled the series in a white paper that you can download from our website. Feel free to share with your peers involved in the subject.
Published at DZone with permission of Hans De Visser , DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.