Why do requirements matter? I just want to build things. What we often don’t realize is that we are always working from a set of requirements, no matter how simple the project. Project requirements are a great way to suck the ad-hoc engineering FUN out of any project but they are a necessary evil and in fact save tons of time headache and embarrassment both in a hobby as well as a professional setting.
If you are on track to transition from a hobby maker to a product developer for an entrepreneurial endeavour losing time, and money due to redesign because you didn’t meet requirements, or because requirements were vague can make the difference between a successful startup and one that just didn’t quite make it and ran out of money.
Let’s take a simple hobby example. I’ve always gotten a kick of of neopixels. For those of you who don’t know what a neopixel is check them out HERE. Neopixels are low power RGB LEDs that are addressable such that you can have a long string of nearly as many as you like and control them from an FPGA, Microprocessor, Arduino, Raspberry Pi etc.
I would love to set up a strip of neopixels around the upper edges of my lab to give a fun ambiance and perhaps sync to techno music I might play. So, as an avid hobbyist I’d go to Sparkfun and buy:
FF5x 6’ neopixel light strips
1A 5V wall wart
So will my project work? Turns out it won’t. I blew it. Power supply was ridiculously small, I didn’t have enough memory on the Arduino Uno, I didn’t buy enough LED strips, and never got to the microphone.
I could have avoided having to spend too much time and money rebuilding and rebuying parts if I had simply sketched out requirements for my project:
So I never really built this project for my office. I’ve been engineering for a long time but I shot gunned my assumptions when I made the list to order and CLEARLY I blew it. Not having enough RAM and the current requirements really surprised me when I actually went through requirements and did some prelim calculations before buying parts and digging into design.
Granted this was just an exercise but it illustrates what can go wrong even on a simple project. Imagine a larger project and you can see how the errors and assumptions would multiply. This becomes even more significant with large projects or if you are working with multiple independent teams on one project.
Next time we’ll talk in more detail about types of requirements and how to differentiate between requirements and specifications.
Dr. Patrick Marcus is the President of Marcus Engineering in Tucson Arizona. Marcus Engineering is a full service electronics product development company specialized in high end technologies for the Medical Device, Military, and Industrials markets. Dr. Marcus is an adjunct professor at the University of Arizona in Entrepreneurship and Engineering, and frequently mentors startup technology companies from a technical and business perspective.
Welcome to Marcus Engineering! Electronics, Product Development, Systems Integration, Medical Instrumentation Located in Tucson Arizona, Marcus Engineering, LLC offers advanced technological design services including: Embedded Systems Design, PCB Layout, Product Development, Analog and Power Electro...