Disclaimer: This article describes two different approaches to software projects. Any similarity to any company living or dead is merely coincidental.
Company 1 Approach
Salesperson: “We expect, as the business owner, that you already know everything about your business, the needs of your customers, the needs of your employees, your processes, and that you know precisely what you kind of software package you want, so we are only going to need about eighty hours to investigate all of your existing processes and to discover the business requirements for the product you wish us to deliver. Afterwards, we will take a month to analyze all of our findings and compile them into a detailed, leather-bound, color coordinated document. You can then read and understand said document at your leisure so that you can sign off on that document and we can begin work on the product that you have spent the last month paying us to document. No, you won’t have any software, but you can be confident that we are the best darn documenters you have ever seen, and that document will give us all the information necessary to precisely and accurately estimate the entire time and cost of your project. Just imagine it, in six months, we are going to come back and present to you a product that you will be very happy and excited about because we have given you exactly what was in a document that you read and signed off on a mere six months ago. We all know that your business won’t change any during the next six months, and if it does, we can address it after we give you the product that you have already agreed to. How does that sound?”
Company 2 Approach
Project manager, QA/BA analyst, Developer: “Business is complex and changing. We don’t expect you to know every detail about what you want, that is why we work in short cycles call iterations, usually about two weeks. At the beginning of every cycle, we will sit down with you and get detailed information about what your highest business priorities are, and estimate only as much work as we can get done during that two week cycle. We will work very closely with you so that as your business, clients, and market change, we can react immediately to those changes, while providing you constantly with working software that meets your current needs. Let’s start working together!”