Scrum
lastmod 2026-03-24created 2015-03-0416 edits
Scrum is an interactive, incremental development methodology for project management, and one of the agile software engineering methods. Although Scrum was devised for software development projects, it can also be applied to software maintenance teams or to general project/program management.
Scrum is a framework that uses an agile mindset to develop, deliver, and sustain complex products. It initially focused on software development, but it has also been used in other fields, including research, sales, marketing, and advanced technologies. It is designed for teams of ten or fewer members, and breaks work into goals that can be completed within time-boxed iterations, called sprints, of no more than one month and most commonly two weeks. The Scrum team assesses progress in time-boxed daily meetings of 15 minutes or less, called daily scrums. At the end of the sprint, the team holds two further meetings: the sprint review, which demonstrates the work done to stakeholders to elicit feedback, and the sprint retrospective, which enables the team to reflect and improve.
Concepts
The Scrum process Scrum process Scrum backlog
Agile-scrum-diagram.jpg
Scrum does not depend on any particular language or methodology. It is a development technique with a broad range of application, unrelated to development languages and even to object-oriented languages. As one of the agile software development processes, Scrum has the following characteristics.
- Assign priorities to the features/improvements to include in the solution.
- Keep the development cycle to about 30 days, and deliver a result that actually works at the end of each cycle.
- Provide a list of features or improvements to apply in each development cycle.
- Hold a meeting of about 15 minutes every day.
- Always think as a team.
- Keep an open space without partitions for smooth communication.
How Scrum proceeds
In Scrum, development proceeds by building a product that actually works in 30-day cycles. The following are the key elements that appear when running Scrum.
The generally recommended length is 30 days, but it can flexibly range from 1 to 4 weeks depending on how well the team has adapted to Scrum and on progress.
- Product Backlog
- Writing a list of requirements for the product to be developed. Assigns priorities to the features/improvements to include in the solution.
- Sprint
- An iterative development cycle (the iteration set by the company becomes the development cycle. The period from the planning meeting to the day of the product review is one sprint)
- Sprint Planning Meeting
- A meeting to plan the sprint goal and the sprint backlog
- Sprint Backlog
- A list of tasks needed to reach each sprint goal
- Daily Scrum Meeting
- A meeting held every day (sharing what was done yesterday, what will be done today, impediments, etc.)
- Developing a Shippable product
- The shippable product that comes out as the result of a sprint
- Finished Work
- Check and review the shippable product that comes out as the result of the sprint.
- If the work is not finished, move it to the next sprint and repeat.
Scrum is run by using the elements above in the following order.
- Define the features the product requires and their priorities as the product backlog.
- Coordinate with the team on how far down the product priorities set by the PO to work. The product backlog items selected through this coordination become the goal of this sprint.
- The team writes the sprint backlog so that the sprint goal can be implemented, then assigns the tasks.
- During the sprint, hold a daily scrum meeting every day at a set place and time, attended by all development team members.
- At the end of each sprint, learn about and understand the product that was built through a sprint review meeting.
- After learning about and understanding the product, take time to improve the team's development process through a sprint retrospective.
- During the sprint, the PO and the necessary people get together to prepare the backlog for the next sprint.
Along with this way of proceeding, the following positions (roles) are defined besides the development team members.
- Product Owner
- Defines the product backlog and sets its priorities.
- Scrum Master
- Project manager (coach)
Unlike project managers who perform general management, the Scrum Master coaches team members and resolves problems in the project. The product owner is the senior manager at the center of decisions such as the sprint goal and the backlog; however, the product owner does not decide the goal alone, and the customers, managers, and team members get together to set the goal.
After this process, the development team members take the lead in defining the tasks needed to achieve the sprint goal. Usually, each task is sized to take about 4 to 16 hours. Of course, defining and assigning tasks is done autonomously by the team members, independent of the customer or the product owner. Through this autonomous activity, team members actively exchange opinions and build a close-knit system of collaboration.
Agile processes value self-organization, built by the team members themselves, over order imposed from outside. However, because of this, agile processes look disorderly, which creates friction with traditional process improvement.
Tools
- iceScrum
- Orangescrum
- Trello
- Wekan
- Taiga
- Tuleap
- OpenProject
- Kanboard
- Restyaboard