A key characteristic of IoT projects is that these projects tend to combine multiple, very different disciplines into a single project, including product design and manufacturing, embedded hardware and software, local and remote communication, enterprise application development and integration, cross-domain security, etc.
There are currently only a limited number of experts available with the required deep experience in this kind of multi-disciplinary project management (e.g. people who successfully managed Telematics and Machine-2-Machine projects, who now start to apply these skills to IoT projects). However, in order for IoT to gain more widespread acceptance, it will be necessary to make this experience available to a broader audience. This is the goal of the Ignite|IoT methodology. We aim to provide a high-level methodology that bridges these different required IoT disciplines, and then collaborate with experts from the different disciplines to capture their experiences and best practices and integrate them to the methodology.
The development of the Ignite|IoT methodology is closely related to the Enterprise IoT book, which is currently co-authored by the contributors of this project. Enterprise IoT will also contain a number of M2M and IoT case studies. The analysis of these case studies is the foundation for the identification of the best practices and expert recommendations for Ignite|IoT release 0.8 (see roadmap below).
The Ignite|IoT methodology is for IoT product managers, project managers, solution architects and other IoT stakeholders. The goal is to make IoT best practices available in the form of a technology independent, reusable, open source methodology which supports IoT solution design as well as IoT project set-up and management by providing project templates, checklists and solution architecture blueprints.
The Ignite|IoT methodology has two main perspectives:
- IoT Strategy Execution: This perspective looks at IoT strategy from an enterprise perspective, including IoT strategy definition, IoT opportunity identification, IoT business case and IoT programme management.
- IoT Solution Delivery: This perspective looks at the individual IoT solution and the related project. Note that it defines the interfaces to the related asset and its organization, but usually excludes design and manufacturing of the asset itself.
The Ignite|IoT solution delivery perspective is currently the more detailed one and can be broken down as follows:
- IoT Solution Lifecycle: This perspective focuses on planning, building and running IoT solutions.
- IoT Building Blocks: This perspective contains re-usable artifacts from successful projects, including Project Dimensions, Architecture Blueprints and Technology Profiles.
- IoT Project DB: This is a database of reference projects that have been analyzed in order to extract best practices for the IoT building blocks and the Solution Lifecycle Perspective.
The IoT Solution Lifecycle contains the following elements:
- Initial Project Design: This design blueprint builds on the elements defined as part of the generic IoT Building Blocks, including project self-assessment using Project Dimensions, solution architecture leveraging Architecture Blueprints and technology selection leveraging Technology Profiles.
- Project Work streams: This blueprint defined the top level Work streams typically found in an IoT solution project. A checklist for each Work stream is provided, plus a list of common dependencies between the Work steams.
The IoT Building Blocks consist of the following elements:
- Project Dimensions: This is a precursor of formal project requirements. Project dimensions are used for project self-assessment, project comparisons, architecture and technology selection, etc.
- Architecture Blueprints: Building on existing architecture blueprints (e.g. Service Oriented Architecture), this adds new architectural perspectives required for IoT project and provides a superstructure to integrate the different required architectural perspectives.
- Technology Profiles: Identifies and describes the most important technologies usually required for IoT projects. Leverages IoT architecture perspectives to describe where in the overall IoT architecture these different technologies fit in. Attempts to link back to project dimensions to support technology selection.
The Eclipse IoT Working Group as an active community of organizations with a strong interest in promoting and validating IoT technologies and deployments seems like the ideal home for a framework that aims to add the solution design and project management perspective to the equation.
While Ignite|IoT is technology agnostic, it relies on the emerging IoT middleware stack for its solution designs. Working closely with an open source community which is currently developing and deploying one important version of this emerging IoT middleware stack will help to validate the assumptions made in the Ignite|IoT framework and put them to the test.
- Since this project only contains documentation and no source code, we propose to use the CC BY 3.0 lisense (Creative Commons Attribution 3.0 Unported). See also Eclipse board directive for Non-Code projects: https://eclipse.org/legal/noncodelicenses.php
- There are currently some photos included in the material for which we need to clarify the legal situation or replace them with photos / diagrams that can be used with the Creative Commons license.
We are currently aiming for the following schedule:
March 2015: Release 0.8
- This release will be included in the Enterprise IoT book
- It should include a full mapping of Eclipse standards to the Ignite|IoT Technology Profiles
Q1 - Q3 2015
- Beta-Programme, continued validation of Ignite|IoT framework in projects
- Q4 2015: Release 1.0
The main focus will be on refining and validating the current methodology elements by building a user community around it, getting feedback from users in the community, adding additional case studies that look at specific aspects of the methodology, etc.