I agree to the use of cookies in accordance with the Sourcefabric Privacy Policy.

Support our media development efforts

Please note: due to the quarantine measures required by the coronavirus outbreak, we are unable to answer the phone in our Prague office. Please send an email to contact@sourcefabric.org and someone will get back to you as soon as possible.

Who, what, when, where and why

Get the latest news about Sourcefabric software, solutions and ideas.

BACK TO BLOG OVERVIEW

Everything you wanted to know about Scrum but were afraid to ask

Centralized location of the meetings helps the team start on time I Photo by Đorđe Đoković (CC BY-SA 2.0)
Centralized location of the meetings helps the team start on time I Photo by Đorđe Đoković (CC BY-SA 2.0)

Two years ago we realised that we needed a change in the development process for one of our projects. We had been practicing an iterative process based on client releases but were not satisfied with the results.

The decision to change the agile development process came to us naturally. In the beginning of 2013, the percentage of companies that were running at least one project using agile methodology was very high, around 80%.

We started with a team of about 8 developers who were located in Prague, Belgrad, Toronto and Cluj. Together we were developing Live Blog, a web based live blogging platform. At the time I didn’t have too much experience with agile, but I had a good amount of experience as a Project Manager. I started to learn more about Scrum using a number of resources. The one that I used the most was Essential Scrum: A Practical Guide to the Most Popular Agile Process.

The way we use Scrum has evolved over time. We have gradually tried to improve our agile practices and the way we use different tools. As Sourcefabric team members are distributed across different countries and even time zones, adjustments have been made to the way we run Scrum, especially because we need to employ more asynchronous communication for which a number of software tools are pretty important (e.g. GitHub, HipChat, JIRA, etc.).

Here is a list of changes that we made over time:

  • From the beginning we selected “Jira Agile” (former Greenhopper) as a tool to manage the agile development process. We were already using Jira for our project, so after a little research we decide to also use it to manage the development process.

  • We started with 4 week sprints, but eventually we switched to 2 week sprint lengths. At a certain point, we also tried a few 1 week sprints, but we quickly shifted  back to 2 weeks sprints.

  • The main reasons why we are running two week sprints are:

    • the team is a bit too big for Scrum standards

    • some time ago when we tried one week sprints, the team didn't have much experience in Agile, pretty much all members were new to it, and such short iterations proved to be overwhelming. Two weeks length feels like a perfect fit, so far.

  • We started using Skype as a communication tool, but switched to Google Hangouts after a couple of our initial sprints because it proved to be more reliable, had better sound quality and was integrated with the Google calendar application.

  • In the beginning we used Git as a code management system, but after a period of time we started to use GitHub which allowed us to improve the way we do code review.

  • We also made the decision to use Travis to run all tests on every pull request.

  • We started describing the backlog items using use case or IEEE 830–style requirements statements (“The system shall…”) and later we adopted user stories to describe the backlog items.

  • We started to have sprint reviews and sprint planning in the same day. After a few sprints we also added a sprint retrospective. We now perform sprint planning on the first day of the sprint, and sprint review and sprint retrospective on the last day of the sprint.

  • After a few sprints we established a test server. Recently we started using Bamboo tool to automatically update the test server on every pull request merge.

  • After one year of using scrum, we also started to adopt behaviour tests for both backend and front-end.

After two years of practicing Scrum, the results are excellent, both the speed of development and the quality of software are high. We’re still trying to improve how we do Scrum and are constantly in the process of trying new techniques, new tools or discovering new ways to use them.

Do you want to become a part of the Sourcefabric team and help us build open source tools for journalists? We'd like to hear from you, have a look at our job openings.



BACK TO TOP