In the ten years I’ve been programming I’ve learned two pretty important things.
- Project success is about people and teams. No matter your process, good teams will succeed (usually in spite of your process) and bad teams will fail.
- Every time you make a rule about something, people will stop thinking about that thing and blindly apply the rule.
This sounds pretty bland, even Chinese fortune cookies usually have more interesting things to say, until you think about one of the consequences. You need good people for project success but if you give them too much rules they will stop thinking and become as smart, or as stupid as the rules. Most Methodologies seem to think that more rules is better. If a rule doesn’t benefit you it surely won’t hurt too much, just implement as much as you can and things will surely get better.