Scrum, XP or any other agile method does not solve problems -- it exposes them. Here are some typical issues that agile brings up to the surface:
- Hmm, our code quality is not what it should be. I thought we were better than this?
- We are pressured to release before we feel it's complete. This results in a huge amount technical debt which we must handle!
- Our team is spread across several locations! That sucks since we don't know what the other guys are doing, so we are seeing lots of misunderstanding, wasted time and quality issues.
- Why do we spend time with all those meetings? It is obvious they are just wasting our time
- We are constantly interrupted by our manager who changes stuff every day. This slows everything down and we never get anything done!
- Programmers are afraid to speak up and share their ideas. This makes us spend lots of time on fixing bad decisions!
- Our project manager guy is planning everything for us. This kills all creativity and commitment to our work!
These are issues or problems, but we lets call them for what they are: impediments to our work. Impediments that stop us from performing at our best and makes it harder for us to compete. This list above stretches from pure technical impediments (code quality, environment) to deeply personal (lack of trust, command and control leadership). Some are easy to fix and some are much harder to deal with, especially those relating to people and attitude.
Agile can help you find impediments that used to be swept under the rug, but it is only you who can deal with them. And only by confronting them can your team improve and deliver more value and better products. Only by getting better and better all the time can they deliver real measurable value for your clients.
But it takes lots of courage and determination for the organization to face up to and deal with these problems. The are two paths to choose between: One is the path that contributes more value today and one that does not. You must look at all the things you are doing and decide which path you are going to choose today.
So set a high bar for yourself and your team and expect them to perform to that high level. Give them your trust. Allow them to stumble, fail and get up again. Allow them to learn from their mistakes so they may become stronger and perform even better.