To survive, you've got to keep wheedling your way. You can't just sit there and fight against odds when it's not going to work. You have to turn a corner, dig a hole, go through a tunnel - and find a way to keep moving. - Twyla Tharp
Customer is unhappy with how the provider works. Due to some contractual and logistical reasons customer cannot change the provider so he chooses to force the provider to improve by adopting more iterative and incremental way of development together with other Agile practices.
Provider is not happy with the decision. He is risk averse and any change is considered a risk. Risk mitigation of this transformation receives bigger priority than the transformation itself. Management is so concerned with risks that it does not even try to understand what the transformation is all about. Any deviation from the Waterfall model and practices established years ago is considered unacceptable.
Transformation starts. Project is chosen. Team is assembled. Team does not know where to start nor what to do first. Management is trying to make sure that "autonomous" team does not go astray by requesting a lot of documents that will help mitigate the risk of likely failure of the project. Team would like to be autonomous but has strong dependencies on other teams and cannot complete the project without the external help.
Few are excited, some are curious, most are cautious. One month passes, mutterings increase, management is getting more uncomfortable. Talks like "we should have never allowed this to start" and "I told you so" are becoming more frequent. Team, on the other hand, is coming with ideas and improvements. Team members think that each subsequent sprint is more successful than the previous. Stable pace is established. However, those improvements are against the established processes.
Two months passed. Team is getting more confident but also more aware of the need to have the management support. Management is more vocal with "maybe we should have more control over the team".
Three months passed. Team starts getting split into two fractions. One group is trying to get more independent and is openly going against the management. The other group is slowly moving back towards the well-established "old" processes.
Conflicts are becoming more common. "Maybe we should start writing more documentation?" "When will this be over?" "I give up!" Project continues on, but painfully. Many features cannot be developed due to external dependencies. Management does not provide needed support due to incompatibilities between processes.
How will the project end? Success or failure? Is there a light at the end of the tunnel?
Two critical ingredients of an agile transformation is the management support and coaching. Without both, transformation is bound to be painful and will likely fail.
An honest and open communication is the key. It's normal that teams struggle to achieve the change. There will be failures and only through mutual understanding and willingness to improve, those failures can be turned into basis of future victories. However, no matter how good the team is, there can be no true success without the management support.
Bottom-up approach does not work. You can get some initial results but every true change requires support from the top. Without that support, initial victories will turn into failures, people will get unmotivated and will, eventually, give up.