The IT industry is not that young anymore. However, there are still many never-ending projects; in addition, some projects end with low satisfaction on one or both sides – the customer and the developer side. In this and couple of forthcoming blogs I am going to share some of my experiences, which I hope readers will find useful.
The most common problem, mentioned in I guess every book and presentation about project management, is the scope of a project. Developers regularly complain on customers who increase and enlarge their requirements during the project repeatedly. I agree this is a huge problem, and the scope of a project has to be defined and followed. However, I want to say couple of words from a point of view that is not often taken.
In my experience, there are so many times when customers are not satisfied with an IT project because they can add requirements after the initial phase of functional analysis. They do not understand why it is so hard to add or change a functionality of an application, even it they explain the new functionality is crucial for them. So – why do developers assume their customers know their requirements in advance? Do the developers always know all of their needs and wishes in advance when they go shopping something? Of course they (we) do not. This is human – many times, you realize what you would want when you see what is possible. Take for an example mobile phones. I guess first, there was a general idea somewhere in the ether how nice it would be to have a phone available anywhere. Then somebody invented mobile phone. After that, people got additional ideas. For example, why would not we declare a mobile phone as an income tax relief? In most of countries, medical resources and instruments can be declared as a relief. The idea is good, and after this idea, somebody invented a mobile phone with a built-in camera. Now you can use your mobile phone for rectal analysis and thus declare it as an income tax relief.
If you are a developer, I suggest you to take your customer’s point of view. You should anticipate at least three iterations of gathering the requirements. Of course, you have to limit the number of iterations. Consider preparing a proof-of-concept project or application. Show your users what can be done before you seal the scope. If you are a customer, remember that even developers do not know everything in advance. In addition, you should still be aware that the scope has to be determined in a moderate period if you want to finish your project some day.