Scrum has become a very popular and effective way to organize software development teams, and for good reason. This agile process can be a highly effective way to get the most out of a team and to allow them to innovate and adapt quickly to customer feedback. Many of the world’s leading tech companies have adopted this methodology, and we have experienced the benefits first-hand at Apperian.
Even for organizations or enterprises that have not moved their core tech development to agile, mobility projects present the perfect opportunity to use Scrum. Let’s face it, end users in your organization have already experienced the benefits of rapidly evolving mobile software in their personal lives and, like it or not, they are expecting the same rapid evolution and advancements from your enterprise mobile app projects too. In a rapidly evolving industry such as mobile, user feedback is key to success and Scrum facilitates the essential teamwork, communication and agility needed to put that feedback to use.
While the benefits of Scrum are clear, as a manager it can be difficult to know how to manage a Scrum team, and what your role should be – especially if you’re new to it. A well-functioning Scrum team needs a coach more than a manager. Here are four tips for getting your team to operate at peak performance.
Scrum is built on the concept of the self-managing team. For this to work, a manager needs to trust the team, and be able to step back and allow them the latitude to truly self-manage. That means sometimes allowing for failures, even when you can see them coming. As long as there aren’t major consequences, mistakes can be a great learning tool. Make sure the teams are holding good retrospectives, so they can reflect on each sprint and find ways to improve.
Sprints are short and intense and to complete them requires real teamwork. This isn’t always the most natural thing for engineers, especially if they have worked in more traditional development environments. How often have you heard a developer say that his work is done, and now he just has to wait for QA? In Scrum, those boundaries must be broken down. Individuals still have their specialties, but must be willing to pitch in and do whatever it takes to complete a sprint. This might mean working on unfamiliar code or having developers help with testing. I encourage team members to get out of their comfort zone and work on new things. It spreads knowledge around and makes the team more effective overall.
In Scrum, work isn’t accepted until it is really “done.” That means totally done (coded, tested, documented, etc.). Once work is done, the team shouldn’t have to go back to it unless product requirements change. As a manager, that means resisting the urge to cut corners. If you force the team to ship with bugs, or pressure your testers to reduce testing, you are creating technical debt that will either diminish product quality or require revisiting the work in the future. Resist the urge to tinker, let your teams fully finish their work, and you will have better, more maintainable software.
In many companies, the engineering department is seen as a black hole by everyone else. There is little visibility into what’s being worked on and when it might be delivered. Scrum offers the opportunity to make engineering transparent and visible to the whole company. If you open the sprint review meeting to the whole company, anyone who is interested can come, see progress, and know what is being worked on. I have found that this always makes the interaction between departments smoother. For example, if sales finds an opportunity that requires a bit of engineering work, they don’t have to light a fire to get it done. Once they know that priorities are reviewed every two weeks it becomes a much easier and more friendly conversation.
Managing a Scrum team is difficult. It requires discipline and a more hands-off approach than many managers are comfortable with. If you can master it, you will find your teams happier, more productive, and more committed. Isn’t that what a development manager wants?
Interested in learning more about how to put in place an agile framework like scrum? Our developers would be thrilled to share some tips and tricks, so give us a call