Friday, March 9, 2007

Know your data

One of the biggest 'issues' I see with developers is that they attack issues without clearly understanding the problem or data area that they are dealing with. I think it was Yourdon, Weinberg or one of those guys from the old school of programming that said 'resist the urge to code'...and Agile that pushes test driven development (TDD) - either way I think the idea of understanding the problem being addressed is one item to review the other is the data area - aka information. If someone presented a problem of 'provide a report of activity over the last 12 months based on searches by users who entered a specific ID - the ID is a text field' a developer might go off an start developing a generic approach that would potentially account for billions of rows of activity against some large non-repeatable text ID. What if the ID was a list of US states? and the potential range of user activity was 2 to 10 a month? How would the solution differ? The first would potentially be a super computer driven application estimated at 100 person years of work and the one where the data is understood, perhaps a simple spreadsheet that would take 20 person minutes.

Do Project Managers suffer the same way? Off inserting tasks into MS Project prior to understanding the problem and data area? All the time. And the excuses given are typically the same:
  • there's no time to think, they need an estimate today (one that will be way off and either put the user into sticker shock or lose the PM their job because the project went over the budget by 10,000%)
  • over complicating the matter 'gee - they said they needed to count to 10, the person could be speaking in any language, or it could be a plant that needs to count to 10 and perhaps the plant has no leaves to count on...'
  • over simplification - 'all they want to do is go to the moon - I can see it from by back deck, how hard could it be - point and shoot the rocket thingy'
  • 'we need to develop a plan for a web site where people could enter their lunch order - let's see McDonalds servers over 10 million people so......' (and the local pizza place gets an estimate of $1,000,000 for a simple web site).

No comments:

Post a Comment