The old phrase "Satisfy the Customer" is true today as it was 50 years ago.
I'm working on a project for the Volunteers at the School Board. We are tasked with converting 25-30 reports from the legacy system. The new app went live three weeks ago and they need the reports ASAP.
Reporting is usually the last thing people think about during the life cycle of a project from my experience.
So how do we satisfy the customer with enormous workload and limited resources.
Well, first off, wearing the Project Manager hat, I have to meet with the customer to scope out the quantity of reports.
Then separate each report into a category of complexity: Difficult; Medium; Easy.
Each category gets a specific number of hours assigned to it, for example:
Difficult may take 16 hours
Now you have the number of reports times the number of programmer hours.
Next add in percentage of hours the Report Writer has available each week, in our case 60% of her time, or 24 hours per week.
From the total number of hours required for the project, and number of hours available per week, we can predict when the project should be complete.
Next, the customer can prioritize her reports in any order she wants.
Now to enter the info into some type of Project Manager software, Microsoft Project or Open Project.
Going forward, we can give a percentage of completion/remaining with a fair amount of precision.
Obviously some report may take longer and some may be done faster. If so, the project schedule will need to reflect.
I prefer this methodology as opposed to the tornado approach where the customer frantically throws down her wish list of must haves and demands everything get done now.
I prefer to manage the customer's expectation, manage the project and produce a quality product in order to "Satisfy the Customer".