how to set up the scrum framework in your freelance projects

16
How to set up the Scrum framework in your Freelance projects You can find more freelancer tips on www.freelancermap.com/freelancer-tips

Upload: freelancermap-team

Post on 23-Jan-2017

36 views

Category:

Business


1 download

TRANSCRIPT

Page 1: How to set up the scrum framework in your freelance projects

How to set up the Scrum framework in your Freelance projects

You can find more freelancer tips onwww.freelancermap.com/freelancer-tips

Page 2: How to set up the scrum framework in your freelance projects

[email protected]

Yes, I know, clients are problematic. They don’t understand this or that, they aren’t tech savvy, they have UX solutions that you think are dangerous and can hurt people, and all of them want to build a new Google or Apple with $1k budget. And you can probably count dozens of situations when you ran into trouble, I’m guessing, just because of a client.

But what have you done to limit the risk of getting into conflict with clients?

Page 3: How to set up the scrum framework in your freelance projects

[email protected]

There is plenty of room to improve your way of working that will lead to developing better products in shorter time and to higher satisfaction of your clients. One of the most known frameworks for organizing projects is Scrum, and it fits well also with distributed teams. In this article I’ll try to explain shortly the steps to set up the Scrum framework in your freelance project.

But before starting this journey, I need to plant a seed in your head of something that is considered as the most important thing in Scrum. Remember these three words: transparency, inspection and adaptation. Just three simple words. In the following paragraphs I will mention them often, and you’ll see how deep they are incorporated in Scrum. If you use them, you are on a good path of implementing Scrum. Without them, there is no real Scrum.

Page 4: How to set up the scrum framework in your freelance projects

[email protected]

First, let’s define who is in your Development Team. This team consists of all specialists that are included in the development process, not just the programmers. So here we also have designers, QA testers , system administrators and all other specialists that we need to develop the product functionalities. This means that the team is cross-functional. They all work together and have a common goal: to deliver value to the product.

Development Team

Page 5: How to set up the scrum framework in your freelance projects

[email protected]

In Scrum, there shouldn’t be any hidden work and everyone in the process should be aware of who is working on what at any given moment. This transparency will also raise trust on the client side, they will be more confident knowing where their investment goes. The easiest way to make work transparent is to set up a simple “To Do” -> “In Progress” -> “Done” board and organize work there by breaking down the project into smaller tasks. All Development Team members should have all their tasks on this board.Many Scrum trainers suggest using a real board inside the office for this. But since most of the freelance projects are done remotely, you need to set up this board somewhere online. You can use various online project management tools to help you with this, like VivifyScrum.com, Trello.com, PivotalTracker.com, to name just a few. This board with the tasks the team is working on is called Sprint Backlog.You can of course make this board more complex with states and columns that fit your team’s flow. For example: “Design” -> “Html/css” -> “Development” -> “Code Review” -> “Testing” -> “Done”.

Setup Sprint Backlog

Page 6: How to set up the scrum framework in your freelance projects

[email protected]

Make tasks small enough

But again, if you create a task like “Designing and developing a spaceship”, you put it in the “In Progress” column and you work on it for a couple of years, then transparency of your work isn’t really achieved. You need to break down tasks into smaller pieces that won’t take you more than one day of work. Without this, true transparency of the team’s work doesn’t exist.

Page 7: How to set up the scrum framework in your freelance projects

[email protected]

Good, you and your team are working on tasks, everything is transparent about that. But what if someone is having some trouble with a task or there is a need for high synchronization between tasks? So you need to have a good mechanism to inspect these situations. Good communication is key for this, and to ensure that team members are communicating on a daily level, let’s set up the Daily Scrum meeting. This meeting shouldn’t last longer than 15 minutes and should be held every day at the same time. All team members should attend this meeting and speak about what they did the previous day, if they had any problems, and what they are going to work on today.

Again, because of the remote work ,this can be of course an online meeting. If your team is in different time zones, try to find the period of overlapping hours and to hold the meeting within that period.

Daily Scrum

Page 8: How to set up the scrum framework in your freelance projects

[email protected]

Once you have all tasks set on your board, you will realize how much work needs to be done. For a period of one week or two, you and your team can focus and deliver only a few of them. This is the situation when we create Sprints. We set the Timebox (from 1 to 4 weeks), take the tasks with the highest priority that we can do in that Timebox and start working on it. Your team’s obligation is to finish these tasks, you have committed to them and now it’s your responsibility to deliver them by the end of the Timebox.

Sprints

Page 9: How to set up the scrum framework in your freelance projects

[email protected]

So we took N tasks and created a Sprint, but what should we do with the rest of the tasks? They stay in the Product Backlog. In the Product Backlog, we can see all the future tasks related to our product, we can prioritize them and make a plan when the Development Team are going to work on them. The tasks in the Product Backlog are called Product Backlog Items or more commonly: User Stories. This list is again transparent, and there is a role in a team that adds new stories and manages the existing ones. This role is called Product Owner.

The Product Backlog is very helpful in estimating how long the project will last and the team and the client can share a common understanding of that. Your team will provide information to the client on how many tasks you can deliver in one sprint, and that will give the client helpful information for their future planning.

Product Backlog

Page 10: How to set up the scrum framework in your freelance projects

[email protected]

This role is usually played by someone responsible for the product vision, and that is usually the client in a freelance projects. Yes, in Scrum the client is a part of your team, you share the same goal that you are trying to achieve together. Work with your client by educating him how to play this role.

This role has the responsibility of defining functionalities and explaining them to the team. Although it is responsible for the product vision, it doesn’t have the influence on how the Development Team will organize and do their part of the work.

Product Owner

Page 11: How to set up the scrum framework in your freelance projects

[email protected]

Once the Sprint is finished, you should create and start a new Sprint. But before you start, you can make a good plan of the work that follows. In Scrum, there is a meeting made just for this purpose and it is called the Sprint Planning meeting.

It consists of two parts. In the first part, the Team is going through top priority stories from Product Backlog and estimates every one of them. There are various techniques for estimating a story, and the most popular one is Planning Poker. After stories are estimated, the Team can say how much they can finish by the end of the Sprint. They take that set of stories and create the Sprint Backlog for the next Sprint. After that, the second part of the Sprint Planning is held. The Team splits the stories into smaller tasks and makes a plan how to deliver all of them by the end of the Sprint. You can also organize this meeting online. It is good to have the client (Product Owner) in the first part of the meeting so he can explain every task if needed. Also, try to have all Development Team members at this meeting so everyone understands what needs to be done and can participate in planning the Sprint.

Sprint Planning

Page 12: How to set up the scrum framework in your freelance projects

[email protected]

After the Sprint Review and speaking about the product, the team speaks about the working process: what they did well, what went wrong, what they should continue doing and what should be changed and improved. This meeting is called the Sprint Retrospective. The team again inspects their obstacles, finds the way to deliver more value and makes adaptations by agreeing on changes that need to be implemented. It is also important to focus only on the work process, not on the product. The result of this meeting is the list of practices that should be implemented in the next Sprint with the goal to deliver more value.

Sprint Retrospective

Page 13: How to set up the scrum framework in your freelance projects

[email protected]

So, we have the Development Team and Product Owner roles. But there is another important role that has the responsibility to ensure that everything is done according to Scrum rules. This role is called the Scrum Master. It is usually some good team player, facilitator and moderator. He has the responsibility to help the team inspect the obstacles and to define the adaptation process. Scrum Master can be part of the Development Team, but can’t play the Product Owner role.

Scrum Master

Page 14: How to set up the scrum framework in your freelance projects

[email protected]

This is a short explanation on how you can start implementing Scrum. The main advantage of implementing Scrum is the focus on delivering more value to the product and its customers, and easily finding ways how to improve this process. Delivering more value to the product leads to better products and of course more satisfied clients.

Scrum is easy to understand but it is hard to implement. It’s up to the Scrum Master to explain the advantages of using Scrum, to set the common goal and to have all people included in the process on the same side. It requires also some cultural changes and usually there is some resistance to implementation. It’s up to the Scrum Master to succeed in arguing with the right arguments, if he doesn’t it’s his fault, not the client’s.

Conclusion

Page 15: How to set up the scrum framework in your freelance projects

[email protected]

Scrum can be easily implemented in remote teams. But also have in mind that it won’t play well for all projects. For example, the short projects or the projects with very frequent changes won’t be suitable for using Scrum. Projects with mid-level and high complexity will fit very well with Scrum. Do not miss out our article on when agile methods work best.

There is much more about Scrum that one can learn. The community has grown since 1995 and has developed various techniques and practices to improve Scrum usage. The starting point for learning Scrum should be the Scrum Guide official document, but a lot of new things can be learned by attending some of the Scrum courses.

Conclusion

Page 16: How to set up the scrum framework in your freelance projects

© freelancermap.com

Further freelancer tips available on http://www.freelancermap.com/freelancer-tips

Contactfreelancermap.comContact person: Natalia Campana - International AffairsMail: [email protected]: +49-911-37750286

facebook: www.facebook.com/freelancermapInternationalTwitter: freelancer_INT