when I started as a trainee dev I was paired with a more experienced dev on my first project and one of the things he was fond of saying was our first role was to challenge the need to build anything at all. This had a significant impact on the project by identifying quite a lot of features that the requirements document had classed as necessary but the users and managers who would use the system confirmed tat they were nice to haves and would not be needed for at least 18-24 months as the functionality that was needed for them to be useful was not built. 2 years later and the functionality has still not been built and it has no time frame for making it into production. Cutting out those jobs early on saved a lot of hassle, time and money and I have carried that thought process with me as we go.<p>Do we really need to do it?