Question: Does agile typically require greater or fewer resources than a similar waterfall project?
Software development projects use some interesting terminology. Aside from drug dealing it is the only domain that refers to its customers as "Users"… well I guess there is some software that is fairly addiction. The reference to team members as "resources" is unfortunate, but somewhat telling, alluding to the tendency for some managers to view project team members as interchangeable parts.
Unfortunate terms aside, let's answer the question. Generally speaking, agile approaches require fewer team members for a couple of reasons.
- Agile approaches typically employ small teams (7 +/- 2 team members) because that number decreases the communication channels and increases the likelihood of a smoothly operating team. There are projects that have a fairly large scope in which case the overall team is broken up into many small teams all working on a subset of the features.
- Waterfall projects tend to have more people involved because of the specialization assumed when staffing the project. A developer can only do certain things, a tester can do only certain other things, an analyst can only do other things. Teams using an agile approach tend to take a more generalist approach. There are certainly people with specific skills, but they are also willing to step up and do things outside of the prescribed tasks for their role when the team needs help in that area. These teams are less likely to add an additional person to do one specific task if someone on the project team has that skill set.