MASTERING SCRUM: How to lead a software development team
In 1993, software development used a slow, unpredictable model called Waterfall
Model to build products with no commercial value. To solve this problem, Jeff Sutherland
and Ken Schwaber created Scrum. According to Scrum.org, it is defined as :“lightweight
framework that helps people, teams and organizations generate value through adaptive
solutions for complex problems”.
Scrum has become the path to follow for the tech industry since it implements the
scientific method of empiricism to make a relative efficacy of current management,
environment, and work techniques, so that improvements can be made.
Scrum is a way of doing things that is completely different from what most
people in the software and product development industry are used to. Less time is
spent trying to plan and define tasks, and more time is spent with the project team
trying to understand what is happening and respond accordingly.
A fundamental principle of Scrum is “the art of the possible”, think about what is
possible to be done and not about what can’t be done. The team is put in a time
box and are asked to solve the problem with the available resources and if this
problem it was trying to solve was important to the organization.
Another concept that is rooted in Scrum theory is “noise”. Noise not in a sense a
sound, but in a sense of interference, error, distraction…
Noise in system development projects used to have much less noise, the noise
functions varied regarding the three vectors of requirements, technology and
people. Nowadays, the technology is changing so rapidly that it is increasing the
level of uncertainty on a project, and therefore the noise. When the technology is
really understood the development is a straightforward line that engineers can
follow easily, very focused with little mistakes.
These preliminaries settled, he did not care to put off any longer the execution of his design, urged on to it by the thought of all the world was losing by his delay, seeing what wrongs he intended to right, grievances to redress, injustices to repair, abuses to remove, and duties to discharge.
Regarding the level of noise, there are two approaches in process control theory and managing processes:
- Defined process control model. When processes are simple with little noise. We can create a definition in order to repeat the task over and over again.
- Complex Process. We cannot repeat the task twice because the result obtained would be different .
This is when Scrum interferes to handle complex methods to have predictable outcomes. The key point of Scrum is assessing these activities, these conditions, in order to determine what is the next step to do. To obtain this, teams need to work under continuous feedback to adapt the activities to their skills.
- “I” is the input, the requirements, the technology
- “Process” is what is called Sprints
- O” the output built during the process.
- “C” the control unit that supervises the progress at Daily Scrums
Therefore, each project needs a unique template for itself.
The art of doing twice the work in half the time”: “The use of the phrase agile methodology shows how little the IG knew about Scrum […] There is no methodology”
However, it is true to say that Scrum is based on agile methodology because it was created to include the values stated in “Agile Manifesto” into practice.
- People over processes.
- Products that actually work over documenting what that product is supposed to do.
- Collaborating with customers over negotiating with them.
- Responding to change over following a plan.
In addition to these, there are other 5 fundamental key values that emerge from people when practicing Scrum.
“Be willing to commit to a goal. Scrum provides people all the authority they need to meet their commitments
Everyone has faced some problems standing up and saying that he or she will commit to something. Therefore, Scrum supports and encourages commitment. In these practices, the team has enough responsibility to decide themselves how to do the work selected.
“Do your job. Focus all of your efforts and skills on doing the work that you have committed to doing. Do not worry about anything else”
In order to develop a valuable product a lot of resources are needed as well as attention and focus: all of our time should be consumed by our attempts to solve problems. Scrum enables an environment where teams can completely focus on the work so that they can solve problems with less resources used, that is with less time and effort. It is true that breaking old bad habits is quite difficult, and not everyone does the same thing in order to stay focused.
“Scrum keeps everything about a project visible to everyone”
“Individuals are shaped by their background and their experiences. It is important to respect the different people who comprise a team”.
Management staff is a team that usually is the best people available. Scrum establishes an environment where everyone can work together. Every individual has his or her strengths and weaknesses, unique characteristics and is trained and gains skills based on a unique history of education and employment. Mixing all these people together, the result obtained will have the strengths of team dynamics. In addition to the human relationships problems, there are also problems that emerge from technical problems of today’s industry.
“Have the courage to commit, to act, to be open, and to expect respect.”
Most organizations are still reluctant to change and therefore hierarchical and authoritarian, although this is changing through the trend of empowerment from Scrum’s philosophy.
Typically, a Scrum Team includes five to eleven people who share the various tasks and responsibilities related to the delivery of the final project or product. It is a group of self-motivated individuals who work collaboratively towards a successful product delivery. A high and important level of communication is expected between the Scrum Team members to ensure they are focused on the same goal while maintaining mutual respect throughout the process. Also, they share a common set of norms and rules
“The development team is a group of professionals who do the work on delivering a potentially releasable increment of “Done” product after each sprint”. The development team doesn’t consist solely of developers. As a matter of fact, several roles, such as developers, designers, architects, QA testers and many others make up a development team.
According to the scrum guide, “the development team is a group of professionals who do the work on delivering a potentially releasable increment of “Done” product after each sprint”. A sprint review requires the “Done” increment and the development team are the only ones who can create that increment. The development team should be between three to nine people, not including the Scrum Master and the PO. The main reason is that small teams are the most efficient and the most flexible. Less than three people and the team lose productivity and interaction
The development team is structured and empowered by the organization in a way that allows them to manage, as well as organize their own work. As a result, the team is optimized to be efficient and effective at what they do. The developers are self-organizing and cross-functional, which allows them to turn backlog items into increments the way they deem the best.
“The bridge between developers and other stakeholders”. A Product Owner who owns the product on behalf of the company is a part of a Scrum team. However, a product owner has no authority over other members of the team.
They are responsible for looking after a product for an extended period of time and are accountable for achieving product success.
That means that the Scrum Product Owner has to work very closely with the Scrum Team and coordinate their activities over the entire lifecycle of the project. No one else is allowed to impose the Scrum Team to work for a different set of priorities.
Some really Important task of a Scrum Product Owner are the following
- To manage and clarify project requirements,
- To guide releases and to ensure return on investment (ROI),
- To closely work with the Scrum Team and enable it to deliver the correct work on time,
- To manage stakeholders and their expectations,
- To manage the Scrum Product Backlog.
The product Backlog is an evolving, and a business priority in which technical functionalities need to be developed into a system. And according to Ken Schwaber and Mike Beedle in their book ”Agile Software Development with Scrum-Prentice Hall’’ only one person is responsible for managing the product backlog and this is the product owner
We can look at a Scrum Master as a servant leader. The scrum master is the person on the team who is responsible for managing the process, and only the process. They are not involved in the decision-making, but act as a lodestar to guide the team through the scrum process with their experience and expertise.The Scrum Master is responsible for the success of the project, their task is to ensure that all scrum values, practices and regulations are enforced and applied.
The role of a scrum master is quite different from team leads or managers in the sense that they do not belong in a hierarchy. They are not there to give commands to the members of the scrum team. They have a more holistic approach that involves empowering the team to develop a sense of community and give them the power to make decisions collectively. But, they are the team and the project leaders, to be a scrum master you should be determined and have a lot of initiative, you can’t be shy.
Without a scrum master the whole thing would fall apart. The scrum master is the glue that holds the project together by facilitating, though not participating, in the daily standup meeting. They help the team maintain their burndown chart and set up retrospectives, sprint reviews and sprint planning sessions. And during the Sprint sessions, the scrum master conducts everything and makes sure that all decisions are quickly made. They also have the task to reduce the backlog and also to gauge the process.
Scrum events have the goal of allowing transparency and accountability, helping identifying opportunities and minimize needs for unnecessary meetings. The sprint is the main event of scrum and consists of a repeatable fixed time box in which a product of the highest possible value is created in less than a month, potentially deliverable with minimum effort if needed. It could be considered a mini-project in which the development team put all efforts in achieving the main goal defined. It has 4 main phases in which the sprint is carried out:
- Sprint planning: in this phase work to be performed for the sprint is laid out and this work is created by the collaborative work of the scrum team,most important product backlog items are discussed such as capacity, product status, constraints and how to map the product goal. Relevant topics such as, why the sprint is valuable, what can be done in this sprint and how it will be done are answered in this phase. Is timeboxed to a maximum of eight hour for a month’s sprint.
Through discussion with the Product Owner, the Developers select items from the Product Backlog to include in the current Sprint. The Scrum Team may refine these items during this process, which increases understanding and confidence.
Selecting how much can be completed within a Sprint may be challenging. However, the more the Developers know about their past performance, their upcoming capacity, and their Definition of Done, the more confident they will be in their Sprint forecasts.
- Daily scrum: it is a 15 minute daily event for developers in the scrum team, its purpose is to inspect progress toward the sprint goal and adapt the sprint backlog as necessary, adjusting the upcoming planned work.
The Developers can select whatever structure and techniques they want, as long as their Daily Scrum focuses on progress toward the Sprint Goal and produces an actionable plan for the next day of work. This creates focus and improves self-management. Daily Scrums improve communications, identify impediments, promote quick decision-making, and consequently eliminate the need for other meetings.
- Sprint review: in this phase, the scrum team presents the results of their work to key stakeholders and progress toward the product goal is discussed, its purpose is to inspect the goal of the sprint and determine future adaptations, it is timeboxed to a maximum of four hours for a one month sprint. The Sprint Review is the second to last event of the Sprint and is timeboxed to a maximum of four hours for a one-month Sprint. For shorter Sprints, the event is usually
- Sprint retrospective: the scrum team inspects how the last sprint went with regards to individuals, interactions, processes, tools and their definition of done and its main goal is increasing quality and effectiveness. Problems encountered in the last sprint are discussed as well as if the team was able to solve it and well as the most impactful improvements. It is timeboxed with a maximum of three hours for a month sprint.
The Scrum Team identifies the most helpful changes to improve its effectiveness. The most impactful improvements are addressed as soon as possible. They may even be added to the Sprint Backlog for the next Sprint.The Sprint Retrospective concludes the Sprint. It is timeboxed to a maximum of three hours for a one-month Sprint. For shorter Sprints, the event is usually shorter.
Scrum artifacts represent work and value and that is why they are designed to maximize transparency of key information. We can find the product backlog, the sprint backlog and the increment. Each of them contains a commitment to ensure that transparency and focus is provided in the information gained.
Product backlog: A list at a high level of everything that needs to be built or done to make that vision a reality. This backlog exists and evolves over the lifetime of the product; it is the product road map. “Everything that could be done by the team ever, in order of priority.” User’s stories are a way of describing a feature set that follows the: as a_____ user, I need____, so that____. This way of phrasing a user story allows the product owner to specify the right amount of detail for the team, to estimate the size of the task.
- Product goal (commitment): Describes a future state of the product which can serve as a target for the Scrum Team to plan against, think of Product Goals as a stepping stone in the river of complexity.
Sprint backlog: Composed of the Sprint Goal (why), the set of Product Backlog items selected for the Sprint (what), as well as an actionable plan for delivering the Increment (how). The Sprint Backlog is a plan by and for the Developers. When a new job comes up, the development team needs to add it to the Sprint to-do list. As tasks proceed or are completed, the estimated remaining workload for each task needs to be updated. Within Sprint, only the development team can modify the Sprint Backlog. The Sprint Backlog is highly visible, a real-time reflection of the team’s plans to complete work within the current Sprint.
Sprint Backlog will be changed for the following reasons: Over time, the development team has a better understanding of the requirements. And bugs of features are added as new tasks, which are all unfinished tasks committed previously of the Sprint.
- Sprint Goal (commitment): “What everyone wants to accomplish with this Sprint” The Sprint Goal is the single objective for the Sprint. Provides flexibility in terms of exact work needed to achieve it.
Increment: An increment is a concrete stepping stone to the goal of the product. Each Increment is added to all previous Increments and is thoroughly verified, ensuring that all Increments work together.
The work cannot be considered part of an Increment unless it meets the Definition of Done.
- Definition of Done (commitment): The Definition of Done is a formal description of the status of the Increment when it meets the quality measures required for the product. The Definition of Done creates transparency by providing everyone with a shared understanding of what work was completed as part of the Increment. If an item on the Product List does not meet the Definition of Done, it cannot be published or submitted to the Sprint Review. Instead, return to the Product Backlog for future consideration.
Jose Antonio Guerrero Moreno
As a student in Management & Technology and Finance & Accounting, I am focused on new technologies and business/finance. I am a very curious person, gritty and fast learner. I feed my curiosity by reading many business and finance books and engage in various activities that enable me to gather relevant experiences in the fields. I am also a member of associations such as Start UC3M and FACU3M. Once I have introduced myself, let me share my opinion about Scrum. This is a very good methodology that is needed in software development companies since it is able to create a perfect environment for working and building great start-ups. However, not everybody can implement this approach well. It needs a lot of expertise.
I, as a management and technology student, am very interested in technological developments and their application with a commercial purpose. Having been able to investigate SCRUM has enlightened my mind. I find it very interesting when working in a startup development as this system embraces the day to day work and the break up of activities to manage better aspects like time and transparency of information. In the future if I ever become an entrepreneur this method is what I would like to apply as it embraces flexibility, which in a startup is a basic need, as sometimes what you hope to get done in a certain time may not occur. However, I think that this system is quite inefficient in large firms. Implementing it in teams or divisions in a large firm may work, but implementing it as the system for the entire company, from my point of view, lacks many management key aspects.
Eliana Almeida Pérez
I am a second year student of Management and Technology. SCRUM is a great methodology to have in any company. It can help achieve great success in many fields. Also with Scrum you have some great benefits such as greater ability to operate change in a company, SCRUM helps also to have a better employee morale.
Robert Emmanuel Jean-Jacques
As a second year student in “Management & Tech”, I want to increase my knowledge in the business/tech world. Music and Sport are my other passions. In regards to the methodology of SCRUM, I think it’s a great framework that helps teams work better together. A company can benefit a lot from this methodology such as higher quality, higher productivity, lower cost and many other great benefits. Personally I see SCRUM as a must in the core of any company that wants to achieve success.
Jose Picazo Navarro
I am currently a student in Management and Technology. I’m learning deeper and deeper in these aspects, I really like the business world and the way that it is being combined with new technology. I have had the opportunity to understand and develop the methodology of SCRUM which from my point of view is very interesting and useful for many companies due to its focus on problems that can be done and solved in the short term, not the things that are impossible to do.
It was interesting to learn about SCRUM methodology, personally I am really interested in technology and its development, how to organize projects and the coordination with developers and this way of doing things gives me some insights and topics to think about on how I would do things if I was a product manager. Furthermore, it may be a good and effective framework for some companies I think this methodology is very focused on the development of processes and puts a lot on emphasis on them, but I think the most important thing is doing the right things and analysing what are the best decision as a first priority instead of focusing on how to do it. Also, it has a lot of complicated words and I feel it has an important learning curve which may make this methodology more difficult to implement. In addition, having predetermined timestamps may cause some problems, because it can take more than 1 month to design a product effectively.