Welcome to PremierAgile! Chat with our learning advisor to avail Upto 15% discount across all Scrum Alliance courses Recognised as “Best Agile Consulting and Transformation companies - 2022” by BusinessConnect Magazine Avail Zero Interest EMI No Credit Card Required Mega offer! Save upto INR 22,000 when you buy our Advanced course combo packages

PremierAgile

With an objective to enable continuous learning and progression for our learners, PremierAgile curated several learning articles. Out of a wide range of topics, you can choose to learn from the real-world experiences by practitioners in the areas of Agile, Scrum, Product Ownership, Scaling, Agile Leadership, Tools & Frameworks, latest market trends, new innovations etc.

How to Scale Agile

The emergence of technology and the increasing level of its adoption have helped us to stay connected all day with our cell phones, cables, palmtops, etc. The world is not static, it is dynamic and changes every day. Just as the world is continually changing, so too is the art of software engineering as its engineers attempt to keep up with the rapid change to create processes and enhance customer satisfaction in a customer-driven market. To meet up with these changes, organizations, firms or companies need to be Agile. 

What is Agile?

Agile is a set of management principles relevant to software development with Software Developers as its advocates. Agile has largely contributed to increasing teams, companies, or organizations’ performance. Agile came into existence to help fuel creativity which in turn will help improve products and services. 

A brief history of Agile

With the quest for improvement and efficiency to meet up with the increasing customer demands, in 1990 some software practitioners took it upon themselves to uncover new and effective ways to keep up with the trend and also give maximum satisfaction to customers. Each practitioner brought their idea, value, technique, and methods to bring a method or model that can be more effective, adapt to changes, and as well surpass the previous software model "waterfall". The waterfall model is the first software used to assess and build for the users' needs or requirements. It started with a complete analysis of the user's requirements. This model takes time before the user requirements are made available, as all the requirements are analyzed before development. Sometimes, requirements tend to change during development and it is difficult to stop the impulse of the ongoing development to accommodate the changes. Different software models were made such as incremental and iterative techniques, spiral model, and capability maturity model (CMM) but all could not satisfy and stand the changes of requirements. However, due to these changes, the practitioners came to the full realization that they need to be Agile to be able to deliver maximum satisfaction and production.

In 2001, seventeen Agile proponents gathered to discuss the new software development methods and they also came up with a product development manifesto. The manifesto reads as follows.

We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

  • Individuals and interactions over process and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan
How do you scale Agile?

Over the decades, Agile has continued to be adopted by organizations and teams. It helps to fuel collaboration and creativity which in turn improves services. In Agile, the team is small in size, unencumbered by rules, commands, and processes to ensure a fast and effective way of responding to changes. Each team member has the autonomy to make and implement decisions and they also work closely and collaborate with the stakeholders. This process speeds up and enhances innovation. 

However, as the popularity of Agile has grown, firms, teams, and organizations resort to using it to execute larger and more complex projects. Therefore, increasing the number of teams from small to large brings the need for scaling Agile.  Scaling Agile simply means increasing the number of a few Agile teams to multiple Agile teams working together, bringing ideas, value, and opinion in a coordinated way.

There are a good number of ways you can scale Agile. Here are a few:

1. Choose the right team: When choosing a team for Agile, choose a team that has good experience of how Agile works. Choose motivated, collaborative, communicative, and great minds who have an idea or experience in business and IT. Choose a team that is well oriented on how to deal with customer requirements and changes.

2. Apprentice: You can recruit new people to join the already existing small team and they get trained on the job. After a few times when they are fully acquainted with the job, they form a new team bringing about innovation and efficiency. Here the advantage is that the original team stays together and as well helps to train and educate the new members so they have good chances of staying productive and stable. This process will speed up services and maximum customer satisfaction.

3. Scatter and Grow: Here the original team members with Agile experience are scattered across new teams with little experience in Agile. They explain architecture, share domain-specific knowledge, and also rotate across teams.

4. Facilitate cultural change: There is a need to facilitate cultural change if the existing working environment is bureaucratic and rooted in traditional approaches like a waterfall. To easily and quickly adapt to changes and development, you need your team to change from being strict or rigid with requirements specifications to being more flexible. There is a need for all teams to collaborate and communicate effectively and be Agile. Changing an old habit is more difficult than starting fresh, so plenty of support and training must be given to those entrenched in old ways of working.

5. Knowledge acquisition: Inadequate knowledge and lack of skill create poor implementation and chaos. However, there is the need for adequate training and coaching programs on Agile values and processes. It is good to provide a regular Agile training opportunity for teams. Agile coaches or practitioners with deep understanding and experience in Agile should be consulted to help coach and train the teams. You can spread awareness through conferences and seminars.

6. Tools and infrastructure: Organizations ought to invest in modern tools to support fast Agile deliveries and services. 

It is important to note that whatever way or step of scaling Agile you use, it is important to keep track of the value that your teams deliver cause sometimes you might notice there is an overhead in working together and every new team delivers less and less value. Therefore, to be able to correct this, you will have to introduce changes that would help foster development and create different teams well experienced in Agile software to help improve production and innovation. Scaling Agile cannot be thought of as a one-step process, It requires one to also scale its subsidiaries to get an effective effect and one of the most important of them is Scrum.

Scrum is a flexible way of working in a rapidly changing world. It is frequently used in IT projects. It is a framework of Agile development methodology. Scrum is an adaptable, flexible, fast, and effective framework of Agile, designed to deliver products and  services. The primary aim of Scrum is to ensure customer satisfaction through an environment that is safe, transparent, and effective to deliver services. Scrum can also be used to develop new products, compile a budget and annual reports, organize events, or even set up a completely new company. With Scrum, you write your projects and you do more in short cycles called Sprints which usually range from 2-3 weeks. A Sprint is an actual period when the Scrum team works together to finish an increment. Two weeks or more is a typical length for a Sprint to deliver an increment. In a Sprint, you take action and the feedback you receive will be used for making improvements. However, to improve development, innovation, and customer services in a customer-driven market, you scale Scrum.

Scaling Scrum is to enhance or increase the number of teams to ensure fast delivery of services and quickly adapt to changes in requirements.

Here are simple ways to scale Scrum, in addition to the ways described above:

  • Hiring: The hiring process for Scrum should be strict and be based on merit. Proper tests and interviews should be conducted to hire the best with good Agile skills. Also look for people who have the right attitude to scale and work in complex environments. Also those who have experience in Scrum will be of a great asset.
  • Sprint length: The length of the Sprint can be expanded to 3-4 weeks to get a better result.
  • Values instead of rules: Agile development is a set of 4 core values and not a set of rules. Therefore, commitment, cooperation, and transparency should be put into consideration rather than processes or rules.
  • Continuous improvement: Team members are expected to be creative and of a great mindset to contribute positively to improve services.
Conclusion

Conclusively, the primary aim of scaling Agile is to increase and provide the number of resources, structure, and cooperation needed to facilitate the expansion, development, and fast delivery of products and services.

In scaled Agile, there is the addition of members to the already existing small team and the addition of tasks with the sole purpose of resolving overlapping issues and adapting to changes easily.

References 
  1. https://www.infoworld.com/article/3270942/how-to-scale-Agile-6-keys-to-success.html
  2. https://techbeacon.com/app-dev-testing/agility-beyond-history-legacy-Agile-development
  3. https://medium.com/serious-Scrum/assessment-of-6-approaches-to-scale-Scrum-46319fcbca1a


Author

Paula

Is a passionate learner and blogger on Agile, Scrum and Scaling areas. She has been following and practicing these areas for several years and now converting those experiences into useful articles for your continuous learning.