Scrum
(→Product Owner) |
|||
Line 39: | Line 39: | ||
====Scrum Development Team==== | ====Scrum Development Team==== | ||
+ | The Development Team is a cross functional group of people that are self organized [12]. The Development Team job is to create the product [5] that the PO has planned, by every sprint they try to make a functional increment that is potentially shippable [12], only the ones that are part of the Development Team create the increment. The team is built up of people that in total have all the necessary requirements to be able to create the increment. They are self-organizing managing that they have the sole responsibility to how they turn the product backlog into increments [9]. | ||
+ | The Development Team do not have individual titles, other than Developer [9], and it is an important factor that the Team can count on each other [12] to be able to realize the Increments each sprint. If the same team is kept together over a longer time and they learn how to work together it is assumed that they will increase productivity [12]. The Development team members can have specialized skills, but the whole team is help responsible for the project, following Scrum rules sub-teams are not allowed [9]. | ||
+ | |||
+ | The Development Team can have different sizes, but a minimum of two people are set [9]. The optimal size is set to 4-9people [12]. If the team is to small they might encounter problems with not being able to complete sprints because there might be a lack of skills in the team[5]. When the team becomes to big other issues might occur for example that the complexity increases and organizing difficulties. There can be several Scrum development teams working on different aspects of the proudct [5], but with close coordination between them. | ||
====Scrum Master==== | ====Scrum Master==== | ||
Revision as of 21:53, 30 November 2014
Scrum is a framework [2] for dealing with Agile Project Management
Contents |
Background
History
The creator of The Scrum development process have been a frequent topic of debate, but from the Scrum Paprers [5] by Jeff Sutherland the start of Scum has been dedicated to the Godfathers; Hirotaka Takeuchi and Ikujiro Nonaka, they where the ones that came up with he name Scrum and came up with the initial concept in the paper [The New Product Development Game] [10] in 1986 [1]. While Jeff Sutherland was the one to apply the concept and tweak it for then introducing it together with Ken Schwaber at the OOPSLA 1995 conference.
Scrum was later introduced by Schwaber and Mike Beedel in the book first book about Scrum: Agile Software Development with Scrum in 2001. From the Scrum Papers [5] it becomes clear that there have been many contributors in forming the Scrum framework. A Scrum community stated emerging, and a platform to unite the community was created with the name Scrum Alliance (SA) [6] and Certified ScrumMaster (CSM) certification. But over the time since SA was created there became an dispute about their stands and trancparency [7] and the result was that Schwaber created Scrum.org[8]. In 2013 Schwaber and Sutherland published the latest version of The Scrum GuideTM [9].
Takeuchi and Nonaka realized that in the "fast-paced, fiercely competitive world of commercial new product development, speed and flexibility are essential" [10], and that the old way of developing product by following a in sequential order was not sufficient. Takeuchi and Nonaka therefore introduced a holistic approach with six characteristics "built-in instability, self-organizing project teams, overlapping development phases, "multilearning", subtle control, and organizational transfer of learning" [10] when used as a whole become a flexible and powerful tool and named it Scrum.
Sutherland believes that Scrum is a framework based on a set of best practices during the past 50 years of software development. And it is not a development method or a formal process[1][5], he gets support from Schwaber in his claim. Sutherland also says that "Scrum is used as an agile practice that delivers software to the end user faster, better and cooler". [5]
Overview of Scrum
What is Scrum?
According to the Scrum Alliance: [6]
“Scrum is an agile framework for completing complex projects. Scrum originally was formalized for software development projects, but works well for any complex, innovative scope of work. The possibilities are endless. The Scrum framework is deceptively simple.”
Scrum is a framework that enforces a set of rules for how teams can collaborate and work together efficiently and effectively to develop complex projects to develop a product, it provides a structure that enables the team to focus on projects that might otherwise seem extremely challenging.The framework can be used and to scale any size of project [11], and also in programs and portfolios, but for this article the focus will be on using Scrum in projects. Scrum is best suited for projects that change rapidly and have frequent emerging requirements. The framework is also a way of supporting the employees in having focus on the human accept by creating a sense of belonging to the team and that they are needed. It focuses on learning, creativity and the interaction with others, since this is essential for the projects success.
Scrum is not using Gantt charts, but using sprints that last no longer than 30 days. Every sprint tries to create a working increment even if it starts out small, for then continously developing on it. At the core of Scrum are the three roles; the Product Owner, the Scrum development team an the Scrum Master, which all have their specific roles which will be described below. Next important aspect of the Scrum framework are the Artifacts; the Product backlog and the Sprint backlog also to be explain below.
Roles
In Scrum there are three main roles that need to be implemented there needs to be a Product Owner, a Scrum development team and a Scum Master, collectively they are called The Scrum Team
Product Owner
The product owner (PO) is a single person that has the responsibility of getting the maximum return on investment (ROI), this is done by that the PO manages the Product Backlog. [5][12] At the very beginning the PO gathers all the necessary requirements given to achieve the goals and mission. The a a set of user stories are created either alone or in collaboration with the Development team. Then the stories are prioritized by using different techniques for example Planning Poker or T-shirt sizes [13] for then being added to the Initial Backlog arranged after what is most important based on the complexity and not on the effort and time.
The PO has the responsibility of creating a transparent product backlog that shows all the necessary items, but this not necessarily mean that the PO will give a detailed requirements upfront. The PO is the one that decides what needs to be done during the next sprint, but again might still not give all the details. The focus is more on the what than the how of the project.
The PO makes sure that the Development team understands the Product backlog to the extent needed. Because it might not make sense to make up all the details upfront, since there might be high uncertainty for the future, but the PO needs to have the vision. The PO also have the responsibility for the optimizes of the what the development team does and also the value of the work.
It is important that the PO is respected ant that what the PO decides is what goes, the development team is not allowed to take orders from other parties and are not allowed to overrule the PO and act as they please. If anyone wants something from the development team they will need to ask the PO, and the PO decides if it is important to the project.
The PO can sometimes be the customer and other times the customer might be millions of people all having different needs. The PO can sometimes have a similar role as a Product manager, but the product owners role is somewhat different from a Product Manager, because the PO's role is to actively be in contact with the development team, and review each sprint as they finish, for then creating the next sprint backlog.
Scrum Development Team
The Development Team is a cross functional group of people that are self organized [12]. The Development Team job is to create the product [5] that the PO has planned, by every sprint they try to make a functional increment that is potentially shippable [12], only the ones that are part of the Development Team create the increment. The team is built up of people that in total have all the necessary requirements to be able to create the increment. They are self-organizing managing that they have the sole responsibility to how they turn the product backlog into increments [9].
The Development Team do not have individual titles, other than Developer [9], and it is an important factor that the Team can count on each other [12] to be able to realize the Increments each sprint. If the same team is kept together over a longer time and they learn how to work together it is assumed that they will increase productivity [12]. The Development team members can have specialized skills, but the whole team is help responsible for the project, following Scrum rules sub-teams are not allowed [9].
The Development Team can have different sizes, but a minimum of two people are set [9]. The optimal size is set to 4-9people [12]. If the team is to small they might encounter problems with not being able to complete sprints because there might be a lack of skills in the team[5]. When the team becomes to big other issues might occur for example that the complexity increases and organizing difficulties. There can be several Scrum development teams working on different aspects of the proudct [5], but with close coordination between them.
Scrum Master
Example
Framework
what scrum values
Sprints Challenges
Meeting Daily scrum [4]
Daily scrum is a meeting that is held at the same time for everyday of the sprint. All team members participate, it as held at the same location everyday and should max last for 15 min. During the meeting three topics are discussed: 1.
Sprint goal Sprints What does Done mean
Rules
Artifacts Product backlog initial backlog releas backlog stories Sprint backlog Burndown chart [3] Sprint burndown chart release burndown chart
Implementation advice When to use scrum what makes scrum work When not to use scrum what makes scrum not work
Reflections
See also
References
Further readings
Extrenal links
[1] http://www.techwell.com/2012/10/brief-history-scrum
[2] http://c2.com/cgi/wiki?ScrumProcess
[3] http://www.methodsandtools.com/archive/scrumburndown.php
[4] https://www.scrumalliance.org/community/articles/2009/november/daily-scrum-merely-a-status-report
[5] http://jeffsutherland.com/ScrumPapers.pdf
[6] https://www.scrumalliance.org
[7] https://agileanarchy.wordpress.com/2010/10/12/the-scrum-compliance/
[8] https://www.scrum.org
[9] The Scrum Guidelines, The Definitive Guide to Scrum: The Rules of the Game, Ken Schwaber and Jeff Sutherland, July 2013, Scrum.Org and ScrumInc
[10] "New New Product Development Game". Harvard Business Review 86116:137–146, 1986. January 1, 1986. Retrieved March 12, 2013.
[11] http://www.scrumstudy.com/blog/scaling-scrum-to-program-and-portfolio-level/
[12] http://scrummethodology.com
[13] http://juanbandaonscrum.blogspot.dk/2009/09/what-po-does-during-scrum.html
• Overview – Application Context • Type of decision – Necessary data, information, people, resources to execute – Summary of output • Description of steps – Summary of steps – Description of steps (input, action, output) • Application example • Metrics • Work material (templates) – Order of magnitude 3500 words – What counts is „quality density“. If you can say it in 2000 words, say it in 2000 words.