Product development typically refers to all of the stages involved in bringing a product from concept to customer release.
Aspects
Product development encompasses several aspects:
- Requirements
- Software Engineering
- Electrical Engineering
- Mechanical Engineering
- Manufacturing Devices
- Responsible Design, which considers aspects such as power efficiency, repairability, and recycling in the design
- Security
- Creating a Security Plan is a key input step in product development
- Safety
- Creating a Safety Plan, if relevant for the product, is a key input step in product development
- Documentation
Managing Components and Documents
Considerations
- Plan to Replace Your Product, and recognize that even the software will age
- Making Build vs Buy Decisions
- When temperature is a concern from a user perspective, it is worth reading “A New Approach to Defining Touch Temperature Standards“.
- System Response Time Guidelines
- The Embedded Software Development Maturity Model describes several device-side and infrastructure capabilities that should be factored into product development
References
- Embedded System Engineering Economics by Philip Koopman
- Learning to Learn: A New Look at Product Development – The Systems Thinker
- Patterns in the Machine : A Software Engineering Guide to Embedded Development by John Taylor and Wayne Taylor
All software resists shipment. No matter what your release date, there are always last-minute features that become critical and last-minute bugs that are uncovered. All of these things will reset your release timeline. Additionally, there can be noncode, nontechnical activities that slow things down like licensing reviews and export control paperwork. And the bigger the project is, the more people there are that can come up with reasons and roadblocks that force a reset of the release timeline. Don’t be fooled into thinking, then, that after the last line of code has been written, the hard part is done. You have to beat software out the door with a stick.
