Software Project Survival Guide

Activities That Should be Included in a Project Estimate

Obvious Activities

  • Architecture
  • Detailed design
  • General planning
  • Planning for each staged release
  • Coding
  • Testing
  • Creating user documentation
  • Creating installation program
  • Creating program to convert data from old system to new one

Less Obvious Activities

  • Interacting with customers or end users
  • Demonstrating the software or prototype of the software to upper management, customers, and end users
  • Reviewing plans, estimates, architecture, detailed designs, stage plans, code, test cases, and so on
  • Fixing problems detected during reviews and testing
  • Maintaining the revision control system
  • Maintaining the scripts required to run the daily build
  • Assessing impacts of proposed changes
  • Answering questions from quality assurance
  • Answering questions from documentation
  • Supporting old projects
  • Involvement in tiger teams
  • Receiving technical training
  • Training personnel who will support the software
  • Holidays
  • Vacations
  • Weekends
  • Sick days