How Your Business Can Get the Software You Expect: Know What is Required, Plan Accordingly, and Manage the Process with Confidence
Your business is in need of some new software. Maybe it’s a fancy new iPhone application, a sophisticated new website, a unique Facebook application, or some custom software to streamline critical internal workflow. Maybe your whole business is new and the entire venture rests on a scalable eCommerce website or the development of an exciting new software service. Lacking any prior experience with software development, how do you determine how much it will cost? Should you hire staff or outsource to a vendor? What kind of staff will you need? And, if you outsource, how do you choose a vendor? Do you go with a local or an offshore firm? What are the costs and benefits of each option?
Regardless of the road you take for development, what kind of journey should you expect and how will you know if things are going well or poorly? What kind of planning should you expect to do and how will you manage this journey effectively? These are the questions your firm should be asking and adequately addressing before sinking tens or even hundreds of thousands of dollars into a software project.
How many businesses have lost $30,000, $50,000 or more, hiring an outside firm to develop a critical website, mobile site or software platform only to have the vendor fail to deliver a quality product, or even any product at all? Unfortunately, such occurrences are extremely common. It wouldn’t be surprising if every single business has such a story. But, the blame for this failure shouldn’t always rest with the vendor. Sometimes it begins with a client who is unprepared, who lacks focus or clarity, who is under financial or time pressure, and who is ignorant of the steps required to realize their objective.
Software development is a very complex process, similar to building a large luxury office tower, but with the disadvantage that the underlying technologies and tools are constantly evolving and changing. Every few years the landscape changes enough that new skill-sets must be cultivated, and technical expertise must be built up, even from scratch. Clients face a daunting education as the process of software development is seldom what they expect, often requiring a lot more planning, preparation and especially patience on their part.
In the following series of articles, I’ll be addressing the challenge of software development from the client’s perspective, responding to the above questions, and laying the groundwork to help your business confidently embark on building that new website, iPhone application or sophisticated platform.
(Two = 2 = 0010) < (Three = 3 = 0011)
No one has ever built a cheap Ferrari. With that in mind, I’d like to introduce you to the following paradigm. All software projects fit somewhere within the following triangle of quality, time and cost. Conventional software development wisdom says that you can only adequately address two of the three sides of the triangle, and that you must sacrifice one of the three sides in the course of any software project. Hitting the sweet spot in the center is VERY hard to do. If you need a website tomorrow and you want it to be high quality, then plan to spend A LOT of money. If you are on a limited budget but quality is still important, then you should expect development to take longer and be bumpier than normal. And if you happen to be in the camp that wants it done quickly and wants it done cheaply (God help you), then don’t expect to get a quality product for your money.