Agility is the latest fashion trend. If you are not using it, it is worth a try. But before you start, you 'd better confirm that you are ready. Next I will share my personal experience.
- 1.
Why agile introduction?
This is a problem of target setting. Just because agility is very popular, I hope to learn it, or because agility is another "Silver Bullet ". A simple standard. If there is no target, how can we confirm the success? Therefore, before implementing agility, ask why it is very helpful to you.
1) Your project has no problems.
It's impossible to have such a project. The initial goal of agile implementation is to identify problems. Introducing iterations and defining "completion" can help you to bring problems to the fore.
2) Your project has one or more clear questions.
This or several identified problems are often difficult to solve and have existed for a long time. They can be used as the goal of agile implementation. Use agility to resolve problems and solve them gradually. (See agile problem solving)
3) Your project has many problems, but you do not know how to solve them.
When there are many problems, it is often difficult to clarify the clues. Agile Methodology is also very helpful for this situation. Introducing iterations and defining "completion" gives us a clear small goal (relative to the overall goal ). In order to ensure the completion of these small goals, the clue will become clear and it is easy to determine the solution.
For example, the question "How to ensure that the project is completed by quality and pay-as-you-go this year ?" "How to ensure that this function is completed by quality and quantity in this iteration ?".
- 2.
When to introduce agility?
It is better to answer at what time it is not suitable for introducing agility. For teams that are preparing to use agility at the beginning, agile requires learning and practice, and the time is not short. Therefore, if the team's project is about to end and the Team will be disbanded after the end, it is best not to introduce agility at this time.
- 3.
What kind of team is agile and easy to succeed?
I personally think that experienced agile coaches can greatly increase the chance of successful agile implementation. Relatively less experienced teams and experienced agile coaches have more obvious effects.
1)
Experienced teams
Let the team do it on their own. Unfortunately, I have never met such a team.
2)
Inexperienced team + experienced agile coaches
A recent attempt is to make the team agile. Teams work in Agile ways, but do not spend much time learning what agility is. The agile coach is responsible for assisting the team in improving and introducing agile practices or other engineering practices step by step. In this way, the goal of the team is to completely put on the output.
3)
Experienced team + experienced agile coaches
This cooperation is good. A relatively easy problem is that it is easy to fall into a dispute about what is better and agile, and such a dispute severely hinders the achievement of the team's goals.
4)
Experienced teams
After successful development, many experienced Members can be created, but the failure rate of such teams is still quite high. In the case of insufficient experience, it is difficult to overcome the ideological and organizational barriers in the implementation process, such as formalism, silver bullet ideas, and organizational barriers.
5)
Inexperienced team
This is still common at present, and teams have little or no experience in agile. We recommend introducing experienced agile coaches. Common failures include: one-time implementation of excessive agile practices, beyond the team's endurance; Target offset, agile for agility; cannot be improved when implementing agile practices. Pay attention to asking why during implementation.