This image is AgileReloaded’s.
This image illustrates the differences of the two approaches mentioned above: the Waterfall model on the top, and the incremental one in the lower part.
Given the above and the strong diffusion and effectiveness that the Agile methodology can now boast, we can define some benefits deriving from the adoption of this approach:
- Cost reduction: being able to continuously check the evolution of the project allows you to implement the necessary changes when you are still running and avoid having to make large, and expensive, changes only once the project has been completed
- Greater collaboration: this methodology encourages continuous dialogue both within the team and between team and customer;
- Greater trust: the possibility of carrying out continuous tests and being able to actively and consciously participate in all the steps of the project, allows all the people involved to have greater confidence in the work of their colleagues or, in the case of the customer, in the work of their supplier;
- Greater flexibility: the goal of the agile methodology is not to give a definitive answer on the management of a project, but to give precise rules on how to act in contexts of continuous change, to derive value from them.
Scrum: the most widespread Agile framework
Scrum, according to the official guide, is a framework for developing and sustaining complex products.
It is, in fact, a framework, which makes it more flexible than other methodologies, and therefore more easily applicable to many contexts. It is for this reason that Scrum is the most widespread framework among the Agile methodologies.
Scrum, literally, is the scrum of Rugby. It is therefore from the world of sports that this term has been borrowed. The term identifies that game situation in which players compact to push in the same direction.
There are several aspects that characterize Scrum, we can list some of them:
- Roles. The Product Owner is the person who is responsible for the implementation and evolution of the product in a given project and who interfaces with the customer; the development team; the Scrum Master is the process manager, who could belong also to the development team, and who knows how to best apply the Scrum methodology.
- Artifacts. The Product Backlog is the list of team activities which are necessary for the realization of the product. This list of activities is then recalled from time to time in the Sprint Backlog, which collects the activities to be carried out in a given period.
- Events. These are the moments of the Scrum such as Sprint Planning, when the team plans the activities of the next period – the sprint – which can last one or several weeks. At the beginning of the day, there is the Stand-up, a 15-minutes meeting in which people participate to promote follow-up conversation as well as to identify issues before they become problems. The retrospective is a moment of in-depth discussion on how a particular project went or how the team is generally doing.
Agile culture as an engine of internal and external digital transformation
We have seen so far the values and principles of Agile and how these have stood in opposition to more traditional methods such as the waterfall one.
At Mia-Platform we have adopted the values and principles of Agile, and used the Scrum framework, right from the company’s first steps. We started doing retrospectives in a company of only 5 or 6 people, up to having more than 60 people organized in different teams.
We will therefore tell you some examples of how we apply this approach internally and how this has supported us in a very rapid growth (context of great change) and rich in complexity (risk factors).
We have already talked about how the Agile approach is based precisely on continuous adaptation and continuous improvement both individually and at team level.
Continuous improvement is a concept that has its roots in the distant past. It comes from Japanese Kaizen: the commitment to make small and continuous changes to all aspects of a business organization. These small changes allow us to bring about profound innovation in all areas of the company.
There are various ways to carry out moments of training and discussion within the team and cross team. Let’s see some of them.
It is a moment, typically a few hours, in which a group of people work simultaneously using a single computer. Mob programming can be carried out within the team or cross-team.
There are no fixed rules for mob programming but, usually, you can:
- Review something that has already been developed
- Improve a piece of code that has already been written
- Study something new
- Solve a problem together that has arisen
This is also an activity for developers, that boosts their skills and competencies with programming exercises. Kata can also be done in pair programming sessions.
Continuous improvement for Scrum Masters
Continuous improvement activities can also be carried out cross-team, and an example are activities aimed at scrum masters. In this case, meetings are organized, each on a specific topic linked to a moment of the Scrum. An example can be the retrospective: in this case the scrum masters meet and share their experiences on the retrospectives conducted within the various teams; on this occasion, they can learn good practices and guidelines to share with everyone.
Continuous improvement for Product Owners
This activity is similar to the previous one. Also in this case, the meetings among POs are structured as to cover a specific theme each time, in order to find common guidelines between teams. The goal is that these guidelines can then be declined in each working group, which will take into account the different internal needs, and which can vary in number, type of project and much more. Some of the topics to be covered include: improving user story writing, how to make meetings more effective, new management models and frameworks, and much more.
The continuous improvement of the product
Meeting among different roles is very effective; especially when we have to evolve not only practices and processes, but also products. A useful moment to pursue product improvement is the meeting between the tech leaders of the various teams and the R&D team. Thanks to this meeting, the R&D team can collect requests and needs from the teams and update them in detail about the development plans.
The retrospective is a key moment of the Agile methodology. It is an opportunity for the t team to reflect and analyze their general processes or the progress of a specific project. Retrospectives enable change: they highlight virtuous behaviors as well as practices that would be better to stop.
The Agile Manifesto dedicates an entire principle to the retrospective, the twelfth: “At regular intervals the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly”
There are several ways to conduct a retrospective. Below we propose 5 steps to manage the team retrospective:
- Set the stage: it is the starting phase and it is very delicate, because it is in these first minutes that it is essential that everyone feels involved so that they bring value for the entire duration of the retrospective. One of the techniques used in this phase is to describe the project with a word;
- Gather data: in this phase you get to the heart of the project, and you go to collect everyone’s opinions. There are various ways to do this, one is the “start, continue, stop”: participants can express their ideas which will be placed in one of the three options available.
- Generate insight: this is the moment in which you can deepen the information gathered in the previous phase. One technique for doing this is with “the five whys”.
- Decide what to do: once the comparison and study phase is over, it is time to decide what to do with all the observations that emerged. In this phase, therefore, a plan of actions, and its assignees, is created to be started immediately.
- Close the retrospective: in conclusion, there is a short passage, similar to the one we started with, where we wonder if the retrospective was useful or not. This will allow us to organize ourselves even better for the next one.