In today’s booming software landscape, you see highly dynamic teams quickly iterating to develop and improve their products. Yet while the world’s software creators have learned to “move fast and break things,” hardware developers are still (slowly) moving to adopt a more agile product development methodology.
Agile hardware development is about quickly iterating through prototypes to optimize your product’s aesthetic and function. You need to repeatedly test your product before it’s in your customer’s hands. By the time your product is entering production, the cost of tooling and setting up specific manufacturing processes requires a huge investment of resources. Last-minute design changes can kill you with delay and cost overruns.
As hardware companies begin to incorporate agile methodology in manufacturing, they face infrastructure and operation challenges due to the level of manpower involved. Plethora’s factory uses manufacturing software to change this by automatically deploying instructions to machines. Providing input during the design process and controlling the manufacturing process from start to finish lets us incorporate agile concepts at every step of production.
How to get there? Controlling every part of the design and production process lets companies like ours embrace agile processes every step of the way, maximizing the system’s benefits. However, even now, there are ways we can vastly accelerate the product lifecycle without needing to reinvent the entire factory in order to practice agile development.
Four ways to apply the software approach to agile to hardware:
- Real-time debugging in software is the process of rapid iteration through a continuous feedback loop. Using digital and physical tools to evaluate your design in real time lets you recognize and correct errors as fast as possible. Today, these tools are easily accessible. Plethora’s online and CAD add-in platform provides instant DFM feedback while you’re designing your 3D model. Physical simulation like finite element analysis and computational fluid dynamics also provide quick feedback in the early stages of hardware product development. System modelers like Simulink and MatLab enable engineers to start their process from high-level virtual and mathematical models so they can quickly explore and iterate within the solution space before and after the product design process.
- Automatic, or at least standardized, test logs for any given product are a simple yet highly effective way to incorporate agile. Everyone remembers a time when they did not bother to record their test and then were left trying to remember exactly what happened. Using tools from Simulink and LabView to a GoPro to record test trials can be invaluable, and even using a group chat system like Slack allows you to keep a searchable group lab notebook that you can go back later to evaluate.
- “Compiling” is as essential to a software engineer’s vocabulary as CAD is to a hardware engineer’s. Make your design-to-prototype process as automated as possible for your team. It should be painless to produce prototypes to encourage more and more refinement of your design. From an internal organization point of view, every team should have a standardized way you get things made and one person responsible for doing it. Keep the rest of your team focused on design and testing, not sourcing.
- Finally, adopting a test-driven development (TDD) mentality has dramatically improved the software industry.
In software, TDD is when you write the tests your code has to pass before you even write the code. In hardware, once you’ve finalized a general design approach for your product, spend time building testing into your engineering process and prototypes themselves. Fast testing is key to rapid iteration.
Taking a more agile approach to hardware development helps de-risk the manufacturing process by catching design problems early on.
This is where the answer to better and faster hardware development lies.