6. Complete a Micro-Facturing Run
Once we’ve built our first prototype, it’s time to start replicating it in what we call a micro-facturing run. The goal is just to create enough products so that every engineer on the project has one to work with, so they’ll typically be hand-soldered and 3D-printed. From a hardware perspective, this is when we’ll start making decisions about enclosures and materials. We’ll start doing things like sending for final element analysis and running models for testing high-stress areas in the mechanical design. After those tests, we start to come up with some solutions or models to alleviate those high-stress points.
The most important part of this step is that we’re really starting to think about how this device is going to behave in the wild. We’re trying to see if there's anything fundamentally wrong at this stage. We know that we’re ready to move on when we feel comfortable that we could put something highly similar to this device and in the hands of the users in a beta launch.
7. Launch Your First Manufacturing Run
By the time you launch your first manufacturing run, you should feel confident enough with the decisions made thus far to produce around 50–100 devices, depending on the context of the project. It’s time to get a pilot group engaged, finalize the board layout, and optimize the software infrastructure.
At this point, the biggest drivers of change shouldn't be new mechanical requirements. They should be the actual users and how the product is behaving in the world. Additionally, at this stage, we take proactive steps to ensure that the real manufacturing run will go smoothly. We make estimations for the final bill of materials, check with our manufacturing partners about the volume they’ll be able to handle, and make sure we’re taking the proper steps to get the product certified by the relevant regulators.
We’re ready to move on from this stage when we’ve received robust feedback from our pilot group and have made adjustments as needed.
8. Do Your “Real” Manufacturing Run
By step eight, things are getting exciting. For a “real” manufacturing run, we recommend producing about 1,000 devices to perform initial user testing, product training, and onboarding. From a hardware perspective, when there are devices out in the world we’re able to start validating longevity issues (e.g., is the glue we used wearing out?) We start to see the real impact of temperature and environmental effects on these devices. We know that we’re ready to move on when we’ve received additional solid feedback, and probably had a couple of “aha!” moments along the way.
9. Go to Market with Your Final Manufacturing Run
When we reach step nine, the go-to-market manufacturing run, we’re ready to move forward in a big way. The software and firmware have been performing well for a while, we are confident in our hardware choices, and the idea of bringing hundreds of these devices online at once isn’t scary because we’ve accounted for potential issues ahead of time. Eliminating these worries gives us time in this stage to optimize for economies of scale.
10. Explore the Power of Digital Twins
With the product out in the world collecting data through sensors and sending it to the cloud, we have a wealth of information we can use to create a digital twin, a virtual model of the product that takes real-world conditions into account. Digital twins can be used for testing, predicting and diagnosing failure, and experimentation for the next version of the product.
Agile IoT in the Real World
One of my favorite quotes about working on IoT projects comes from Very’s own Software Engineering Practice Lead, Daniel Spofford:
"Nothing beats the real world. The real world is messy. That's why agile IoT is relevant and necessary."
When we created these steps, our focus was on getting products in the hands of testers and users as quickly as possible, then using the feedback from those cycles to inform the development process.
The key to making all of these steps actually work, though, is communication and cadence. At Very, we do monthly release planning, weekly sprints, daily standups, and weekly retrospectives where we identify what went right and what didn’t so that we can make adjustments. Every single week we are practicing finding ways that we can work better together.
Agile IoT is a journey of 1,000 tiny steps. What matters most is that everybody is taking those tiny steps together.