One thing I see as the key component to a successful project is priority. No project have sufficient funds to build everything or to meet every demand. Therefore, priority is a necessity if you want to be able to meet budget and deadlines.
In most projects, you will experience that the client/customer/product owner/boss/etc. will expect you to work miracles and deliver everything they want, in record time without spending any money… I’ll let you in on a little secret – That’s not how it works.
Therefore, you should always request your client to priorities everything – It is your task to make sure that tasks are prioritized, but you should never actually do it – Only facilitated it.
There are different ways to help the client do the priorities, but it is important that everybody agrees on the model, and that the client is the one accountable for the priority. The model that you should use depends on your client, but you need two parameters for each task to be able to do the prioritizing – Namely Cost and Value. When you do the prioritizing maneuver with you client, then the client should be able to decide whether a task is worth the effort or not. Maybe spending 50% of the budget on one task out of a hundred isn’t the right priority… However, only the customer will know this, maybe his entire business is depended on that one task.
Please see our project model for more information on priorities, specifically the phases “Idea”, “Analysis” and “Implementation”.