A collegue of mine Christian Weiss wrote a rant to the project management approach used in Ignite | IoT Methodology. His main issue is that IoT projects has to be treated agile. Why is he writing this? Is he just not familiar with bullet-proof PMI project methods or did he suffer any personal pains on classical project management? The answer is NO, it is the nature of IoT projects leading to the only correct decision to run them agile.
Some years ago I wrote an article in German about the difference between complex and complicated. My article was using the popular Cynefin Framework to show differences in problem solving approach. One of the major ideas, before you start solving problems is the so-called problem transformation – an identifiction of complex and complicated problem parts. Let try to do it for Ignite IoT. Excluding project management itself there are the following working streams: Cross-Cutting Tasks (Security, ALM, Integration and Testing), Infrastructure & Operations, Backend Services, Communication Services, On-Asset Components und Asset Preparation.
All integration subject, being executed first time and requiring people interaction and agreement are complex by definition. Development and Research is complex, since we don’t know the result of the it, until we performed the activity – thsese are all innovative workstreams: communication services, on-asset components and asset preparation. Cynefin Framework describes the most effective approach for solving such problems as Probe – Sense – Respond, which is a oversimplified Demming Cycle (Plan – Do – Check – Act).
Cross-Cutting Task, Infrastructure and Bckend Servies are usual requirement for IT Projecs. Especially building of backend services is well understood and agile methodologies proved themselves as most effective and cost-efficient.
Finally, even if a typical integrated IoT solution seems to be complicated, the project of its creation with many interrelated working streams eith many dependencies forms a complex problem statement. A broad spectrum of (unknown) technolgoies and many integration issues lead to the only reasonable approach: agile!