Agile has some great benefits and I am an avid fan. I have been using agile for several years now, and I have also learned there are some pitfalls which you should avoid. Here are some of the ones that I have experienced:
Agile teams do a really great job of focusing on delivery. Each agile team typically has a Scrum Master, BA, Developers, and QA resources. There could be some variances to those depending on how your organization uses agile, but those are the most common. Each role typically has tasks and duties that are consistently carried out during the sprint. Here are how we currently use the agile team roles:
Scrum Master: The role is responsible for helping to keep things moving and helps to overcome obstacles
BA: The glue of the team. This role helps to keep things defined and assists providing knowledge to the team
Developer: This role helps to build the product and provide technical design and solutions
QA: This role helps to ensure the product is working properly and works to identify product defects
Inherently in the agile process, these roles help to get things done on the team. Sometimes, this can cause issues and the scrum master will need to step in and remove blockers. Most agile teams are fairly small, usually from 6-8 team members. During a sprint there might be some resources who need to take an unplanned absence or vacation. This often will require that other team members step in and perform other roles. My team does a great job in jumping into other roles when the person who normally performs the role is either busy or not available. You will typically see a BA jumping in to help with testing, a QA resource jumping in to help with BA work, and a Developer jumping in to either help the BA or QA resource. This helps to keep things running smoothly and keep the agile goals on track for a given sprint. I have also seen the other way, where a QA resource may take off during the first and second week of the sprint, and the team waits until the person returns to get everything completed in the last week. That is simply asking for trouble and it usually results in stories not getting completed on time.
Avoiding Agile Pitfall #4: Too Focused on Agile Team Roles will help set your agile team up for success!