Monday, January 18, 2010
Ordering Custom Software for non-programmers
This post is a little different from most of my others. I am directing it at marketing and management types that order software developed but are not themselves actively involved in software. That might be a little unusual because by Google analytics I know that right now I only have one regular reader (Hi Joseph), but if a management type happens to come across this, more the better.
It's a sad fact that something like 80% of software projects fail (are never completed, miss their target, come in late, over budget or a combination of these). The truth is that software is hard and most (even the development team themselves) underestimate the effort required to complete a project.
The other big problem is that software is almost always a moving target, requirements change constantly. The biggest help a software customer can be is to try and limit these changes to only those necessary. Know what you really want and discuss these wants with the architect for the team doing the work. Talking with marketing is not enough you really must get to the architect or risk your vision being mangled in translation from marketing to development.
First sit down and brain storm, what is the need the software is filling. Think hard on this, figure out exactly the need is. Come up with all the features that would be nice to have, maybe even draw up some quick mock-ups of the UI (if your program needs one). Now that you have that, go back and look at what you REALLY need, tear the software down to it's core features. Those features are your 1.0 software. Go over the whole list, including the wish-list you came up with first, with the architect but set your sight on that basic functionality.
By limiting the scope of the first version you make it significantly more likely that the project will succeed and your software need be fulfilled. Now go back and start meeting with the architect about your wish-list. In subsequent versions add more and more of those features. Until you have the software you dream of. This in my opinion is the best way to get satisfaction out of the software development process.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment