My company recently implemented Scrum on a large team developing an enterprise product. Three factors were responsible for our success: customer ownership, management commitment, and the cooperation of the development team.
Our development was an internal initiative. We had a US-based business unit that was the sponsor and the direct customer for the product. We also had an Indian development arm. The end users were also involved with development in some cases. The enterprise product was targeted at hospitals worldwide.
The directive to use Scrum actually came from the US-based business unit (the sponsor and direct customer for the development unit.) This turned out to be a tremendous advantage. After all, one of the major components of Scrum is customer involvement; if the customer is not fully involved it is difficult for them to fully own the product features and prioritize and review the backlog every increment. Even when the customer is committed, some of them are not fully aware of how release management happens in Scrum. This was definitely not the case for us. Our customers not only understood Scrum, they were the first to get educated about Scrum and spread its use to the development team. Having customers that are well-informed Scrum proponents was instrumental in our success.
The second key to our success was the complete commitment of the Indian management to the Scrum process. Not only did they have a basic understanding of Scrum, the also clearly saw the need for proper infrastructure, training, and tools. Their commitment made it easy for the development teams to properly implement Scrum.
It often is relatively easy for a small team (ten to fifteen members) to successfully implement new methodologies. But our development team was large (several hundred members). This required a high level of coordination and cooperation among team members. Our large team had to work together as a single team, where previously we had independent design, development, test, and quality teams. The mix of skills in each Scrum team introduced new challenges. The scaled Scrum structure brought with it additional process needs. Team members were involved in more meetings and discussions, which required them to collaborate much more. All of these changes were implemented quite smoothly because of the development team’s enthusiasm and willingness to learn.
Naturally, there were many other factors that helped us in making Scrum implementation successful, but customer involvement, management commitment, and the cooperation of the development team contributed the most.