7 Things We Learned About Building Productive Teams

In a two-day course with Dr. Jeff Sutherland, we could deepen our knowledge of Scrum. Scrum is an iterative and incremental agile software development methodology that has been adopted by companies of any size to successfully deliver software products. Being one of the co-inventors of Scrum, Dr. Jeff Sutherland could tell us first-hand how we can make our team more productive.

Scrum Training with Dr. Jeff Sutherland

In a two-day course with Dr. Jeff Sutherland, we could deepen our knowledge of Scrum. Scrum is an iterative and incremental agile software development methodology that has been adopted by companies of any size to successfully deliver software products. Being one of the co-inventors of Scrum, Dr. Jeff Sutherland could tell us first-hand how we can make our team more productive.

1. INVEST in a Good Backlog

I.N.V.E.S.T. is an acronym for Independent, Negotiable, Valuable, Estimable, Valuable, Scalable and Testable. When you break down your product into individual tasks and place those pending items into your backlog, make sure each one of them fulfills the INVEST criteria. Don’t allow your backlog to be polluted by low-quality items, just because you want to get it done quickly, since you will only defer potential problems to a later date.

2. Measure the Team’s Happiness

Quantify how the team is feeling about the work it is doing. The “happiness metric” puts a number to this value which can be tracked, compared over time and improved.

3. Build Working Products

Focus on building working software, increment by increment. At any point in time you have something that is usable and that provides value to the customer, until you finish the product. These increments are called potentially shippable products.

4. Timebox Your Meetings

Define a time frame for your meetings and stick to it! If you need more time, create a follow-up meeting. Conversely, don’t get tempted to inflate meetings and to choose a time box that is too big. Experience shows how much time you really need for a given meeting – pick an appropriate value.

5. Learn To Estimate, the Agile Way

Estimating how much time a given task takes is hard. It is indeed very hard, and you will get it wrong more often than right. Try using relative values instead: determining whether a given task is more complex than another task is something that can be trained; repeating the process results in placing the tasks into buckets of varying complexities. This is referred to as the planning poker and frequently a modified sequence of fibonacci number is used to label the generated buckets: 0, 1/2, 1, 2, 3, 5, 8, 13, 20, 40, 100.

6. Decide on a Definition of Done

So when is a task done? Define what it means to for a task to be “done”, and enforce it as a rule. Does a task need documentation? A testcase? You will get more consistent results across the team.

7. Transcend the Scrum

From Japanese “Shuhari”, which translates to “first learn, then detach, finally transcend”. More simply: First learn by the book and follow the rules of the master. Then break the rules. Finally transcend the system. Don’t be afraid to change the rules of Scrum, but only after you have learned to master it well and understand the consequences of doing so.

Conclusion

Scrum is a big part of how we organize our daily work and there is something inherently motivating in working within this framework. Scrum gamifies work,  by attaching points to tasks which one can complete to contribute to the team’s goal. There is a lot of collaboration and knowledge-sharing involved. Scrum is not suitable to all kinds of tasks and projects, but for Software it works great and I encourage you to try it out if you haven’t done so already.

Read the Scrum Guide for an overview. The book below is called Scrum the Book and is Jeff Sutherland’s latest publication.

Scrum Book signed by Dr. Jeff Sutherland

“Daniel, may your teams be great! And always have working software — Jeff Sutherland”

About Us

We’re working in the Swisscom Cloud project and are a group of Pythonistas who are fanatic about software quality, great teamwork and Scrum.

Want to see what other teams are doing in the Swisscom Cloud? Read Open Source in practice or The Largest Hackathon Switzerland Has Ever Seen.