Development, Scrum

Scrum, first impressions and learnings

So, this is my first post on my new blog. I am not going to write an “About me” like first post. There’s an about page which gives you some information about me.

At the end of 2007, we realized that our company have to change our development process. We were still working with some kind of waterfall model and we felt that this does not suit our needs. All of our projects are web based with some sort of social networking or dating community. Running high traffic community sites requires rapid development, flexible product planning and the ability to change or improve fast. Our traditional approach just did not work anymore and resulted in tons of specifications which had to be re-written all the time or became obsolete due to changes.

While evaluating different methods and processes we came across Scrum. Below is a short explanation of what Scrum is (from Control Chaos):
“Scrum is an Agile process that can be used to manage and control
complex software and product development using iterative, incremental
practices.”

The Wikipedia article is a good starting point should you not be familiar with Scrum.

When we decided to try with Scrum, nobody at the company had any experience with it. So the first phase was about learning Scrum and reading as much as possible about it. At this point I would like to recommend a book from Henrik Kniberg. His book is called Scrum And XP from the trenches (PDF) and is an excellent description about real world work with Scrum.

After some time of research one of our teams started using Scrum and just finished the first sprint last week. I personally did not expect too much from this first sprint but to my pleasant surprise, the results were amazing. In 15 days, the team managed to complete almost all of the user stories which they selected in the sprint planning meeting. Of course, this was the team’s first sprint and the first Scrum sprint in the whole company which means there is lots of room for improvement.

Here are some learnings:

  • Define the word ‘Done’. Scrum is all about finishing things in a specified time. In order to achieve this, you have to define what you mean with finishes/done and make sure the team understands it. While this sounds easy in theory, it’s not in practice. Define whether your definitions of ‘Done’ includes testing, copywriting, styling etc.
  • Don’t try to be perfect. Especially when you are going to start Scrum without having experience with it. Many things might be new to your developers so don’t expect that everything will run perfect right from the start. Scrum does not solve problems for you, it makes them visible.
  • Have a Sprint Goal. A sprint is a intensive experience and it helps when everybody works towards a common goal. A Sprint Goal helps your team to focus on what’s necessary to complete the sprint successfully.

I will continue writing about Scrum as our journey continues. We we’ll have another team starting with Scrum soon and I am looking forward to telling you more about our progress. In the meantime, if you are interested, check Hendrik’s book (PDF).

Popularity: 98% [?]

speak up

Add your comment below, or trackback from your own site.

Subscribe to these comments.

Be nice. Keep it clean. Stay on topic. No spam.

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>

*Required Fields