Scrum is an agile method for the effective implementation of software projects. By using Scrum, small teams have the opportunity to implement projects in a very flexible and adaptable manner.
The aim of Scrum is the constant increase in productivity, which can be achieved through targeted and continuous communication. Scrum does define clear responsibilities, roles and events within a software project – but, as is so often the case, the devil is in the details. Therefore, the following eight practical tips offer ideal assistance for successful implementation.
Communicate Your Scrum Meetings
Regular and targeted exchange in Scrum meetings can counteract the unnecessary loss of time. It is advisable to send email invitations with the specific meeting content to all parties to achieve this. So everyone has an overview of when the meeting is taking place and which plan is being discussed. The sessions must be held regularly and always at the same time to avoid coordination risks.
Establish A Definition Of Ready
The so-called “ready to develop” definition (definition-of-ready) is often forgotten. It is easy to understand but not always easy to implement. The trick is not to plan any undefined user stories or those with dependencies in a sprint. These user stories are delayed in the following implementation process and are not ready for release. This produces poor sprint results that result in an inferior end product.
Sprint planning deals exclusively with user stories that have the highest priority at the respective planning point. User stories are always estimated and planned in terms of their complexity.
The following problems creep in and should be avoided at all costs:
- Estimates are made in units of time rather than complexity.
- There is no estimate at all, and it is only estimated according to the rule of thumb.
- Stories that do not meet the definition of ready are scheduled in sprints.
Establish A Definition Of Done
The assessment of the term “finished” is always a challenge for teams. Using a definition-of-done, teams can reliably decide whether something is finished or not.
The contents of a good definition of done are, for example:
- ECT loop: Edit-compile-test loop carried out by the developer.
- Unit tests: Unit tests were written for the functions of the respective feature.
- User acceptance tests: Defined acceptance criteria for the user story are met.
- Code review: Code review of the relevant components was carried out, and any improvements were incorporated.
- Commissioning on staging: Commissioning of the feature in a test environment (staging system) and the user acceptance tests were preferably carried out here.
To ultimately avoid unstable and faulty systems, in addition to establishing a definition-of-done, it is also essential to implement this consistently over the entire duration of the project.
Live The Scrum Roles Consistently
The consistent division of the Scrum roles is essential for the entire process. This means that areas of activity in the project are assigned, clear responsibilities are defined, and conflicts of interest are reduced. The smaller the teams, the more difficult it is to adhere to, as the roles can be mixed up. It is, therefore, the responsibility of the Scrum Master to ensure that all those involved in the project adhere to their roles and implement them carefully.
Form Two Pizza Teams
The concept of the two-pizza team was coined by Jeff Bezos, who spoke about team organization in an interview with the Wall Street Journal. At Amazon, the size of a development team depends on whether you can get enough of two large pizzas. Usually, the teams are four to six people.
In the research, the optimal team size was determined with 4.6 people – essential factors for determining the optimal team size are the number of communication channels created by each team member and the perceived sense of responsibility, which changes with the size of the team.
Deliver Early And Often
“Deliver early” is one of the main goals for Scrum teams. Unfortunately, it is often prevented by unfinished business and over-full sprints. If the sprint planning was consistently estimated, the number of story points to be completed in the coming sprint can be determined from the number of story points completed in the previous sprints using the “Yesterday’s Weather” principle.
“Deliver often” is the second important part, which is made possible in the first place by eliminating manual work processes in the development process, for example, by using automation solutions such as Jenkins. Therefore, automation is a decisive factor in delivery frequency and the basis for ongoing quality assurance.
Keep Going – Stay Tuned
The high level of transparency that Scrum can create – especially in established corporate structures – is not always in the interests of those involved. The scrum master is responsible for ensuring that the scrum rules are constantly implemented and adhered to. If something does not go as desired, he is responsible for showing clear procedures and directing the team in the right direction.
As many prominent examples show, in the actual implementation of Scrum, it pays to remain persistent over the long term and thus pave the way for successful team culture.
The challenge of using Scrum is not understanding the individual definitions but in their clear and continuous implementation. Constant and targeted communication with maximum transparency is the top priority. If a company implements Scrum correctly, a productivity increase of up to 400 percent is possible. Who doesn’t want that for their own company?