spagile.com https://spagile.com AI articles about Agile Thu, 12 Oct 2023 16:07:39 +0000 en-US hourly 1 https://wordpress.org/?v=7.1.3 https://spagile.com/wp-content/uploads/2022/11/cropped-favicon-32x32.png spagile.com https://spagile.com 32 32 240008236 Agile in a Traditional Organization https://spagile.com/index.php/agile-in-a-traditional-organization/ Tue, 22 Nov 2022 13:10:34 +0000 https://spagile.com/?p=44 As large companies are adapting to Agile, the mix of Agile with traditional corporate culture creates a bad mixture resulting in a lot of problems. What are the best solutions for this kind of case? Here I would like to discuss two of the best solutions I came up with.

The first one is to transform the entire way companies conduct development to fit the Agile philosophy where their whole organizational and development structure is focused on Agile and not on top-down hierarchies where the development team of all its size does not know how much the developers contribute to the company’s business, what they contribute, what’s the difference between an agile development culture and other styles, what are the ways an agile company supports its users, the business processes they provide them, etc. (The last three reasons are especially important in Agile companies because they usually are facing their biggest customers who, although they can’t understand how can it be better, want it to be, but won’t make it).

The second solution that I suggested consists in creating a framework of agile development practices for every company, that will be used as a guide defining what practices to bring into their development process and the way they should be conducted. I will call it “Agile Development Methodology”. It’s a collection, that will contain a checklist-like of about 70 agile methodologies and agile principles, and about 80-100 practices that should be conducted within the organization.

This organization will act as a base for all the projects that will follow and will contain all the practices needed in an agile development methodology. This way, instead of being a random collection of practices that the development team wants to have applied so it can deliver the requirements, Agile Development Methodology will be what the company’s users, the business leaders, etc. know and follow so that they are confident of what development is actually going on or rather, that the results of their development are trustworthy and credible.

The question is: What do you need a framework for? Let’s see what Agile Development Methodology will contain.

What practices has the Agile Methodology for every company to contain?

  1. Deciding when to evolve

This is the first practice – a practice of the Agile Methodology, although I can imagine it’s not really practiced in the organizations that follow this practice. In Agile companies it’s hard to make decisions on what’s going to be improved and added because it’s a change in the company’s strategy and a change in the context of user, user group, customer expectations etc. The idea is to avoid that too much risk is put on future users. A few examples:

What if instead of doing what you always did users will decide in favour of a new approach?

We should allow changes and improvements in the product that would benefit future users, not at the expense of other users or in the absence of such positive feedback.

We need to accept the evolution of the product in the context of the market, not only in the context of a customer or a user.

What new features will users actually want to buy in a company that, having been around for more than a year (or three), decided to change its services or add some other new features, but in such a way as to not create a negative or disruptive experience first time they log in, or only after some time?

  1. Establishing a communication channel

This is a communication channel of the Agile Methodology, although you can do it by email, by Skype, by phone etc. A communication channel could be the one that users use the most.

  1. Setting priorities and priorities

You should know who the winners are and who the losers are as a means to have a better prioritization within the team, as a way to know what have to be done and what do not have to be done.

  1. Establishing user stories

This is the practice of every Agile Methodology. What will happen after you have described the main user story? What are the user stories that must happen in order to get done? If you don’t know what will happen after describing the users stories, it doesn’t mean that you’ll not get the features, it just means that you’ll not have all the features, which is not a problem. What you need to do is to make the product evolve by adding the necessary features which is the main task during Agile development.

  1. Identifying the development team

This is also a practice of every Agilism. It is an important step to get a better team of Agile development methodologies. It is also important to avoid that people who will do one thing but who will implement another, will try to be first to implement the new solution, and not think the other one will be the best solution, as it’s often the case.

What happens if someone thinks that the implementation of a new solution will be more time-consuming than creating one the first place, which is not the case? Why is that? Is it because the development of the solution that will be implemented in the first place has already been done? Well, no actually. The person might be wrong but in that case he or she is the second to implement the most time-consuming solution. That is totally the opposite of how companies should build Agile-methodologies. They should build them in such a way they will allow them to implement them, they will do the best they can during every sprint.

  1. Creating the user stories

This is a practice of every Agile Methodology. It is important to get a team that will deliver all the feature the user stories. It is important to create the User Stories in such a way that the development is done in such a way that the product is able to be used properly and that the user has a good experience. Users should not see a lot of useless tasks but rather get a good user experience that is worth buying. It means that they should be able to complete a task in a way that ensures, he is able to get a complete, complete and clear understanding of the subject.

  1. Developing the product

The first one to achieve this. There is always some delay in the development of the product and the first thing to do is to make the right decision. Don’t make the product and the team look bad in the eyes of the users. If a user sees a lot of bugs and has many requests in the backlog, he will find it to be unprofessional and he might move to another company. Make it look professional by improving the UX and the user experience, and the users will choose you more. In fact, I think that it has not been enough to just provide bug-free and feature-complete solutions to the users. You need to be sure that users feel comfortable. You need to offer them the freedom and ability to create a new solution, a different way of presenting the same product, the same way of doing something, the same value that it’s providing to the users.

]]>
44
About Agile as a Methodology https://spagile.com/index.php/about-agile-as-a-methodology/ https://spagile.com/index.php/about-agile-as-a-methodology/#comments Thu, 18 Nov 2021 05:30:14 +0000 https://spagile.com/?p=29 Agile has changed software development. But some companies are still unsure if Agile can provide benefits for the wider business, from marketing to strategic planning. However, you have to use Agile across your entire company, even if you don't develop software. By doing so, you can see its benefits from a marketing or human resources point of view, and use it to improve collaboration in cross-company planning. When you embrace Agile across the company – from marketing to strategic planning, you will not only improve innovation, you will better meet your organizational objectives. When used along with the Scrum framework, you will create the right type of agile projects for your business. Agile is a way to build a healthy, collaborative product. Every company should use Agile as one part of an overall, integrated strategy, whether it supports the work of the Scrum framework for planning or is a software innovation strategy in itself. Agile is about the future, and every new project, each product to be re-built, every new piece of software, should be treated as such. However, not every company has the necessary bandwidth and resources for Agile, including to create a Scrum team. For many organizations Agile is just a framework around which an innovation project is built. But by embracing Agile across the organization, you will find that the Scrum framework, which should be a key part of your agile innovation strategy, can now take a leading role. To get started you will need to set the groundwork at the executive board or other organizational level. What Is Agile? Agile is not a methodology, it is a way to build something. However, the way something is built is not just by changing the tools around you, but a way to change the way you work, with much more interaction through a structured approach. In Agile there is no single set of rules to follow. What can only be done by changing the way you work, which has become much more effective thanks to the use of Agile tools that support you and support you, allowing you to meet your objectives. The Agile approach emphasizes collaboration and collaboration, both internally and with other organizations. An integrated approach, with people from different organizations, helps to collaborate more efficiently. Working in a structured framework, without getting lost in detail or missing the big picture, provides clarity for the overall strategy and gives you the benefits of collaboration with other groups as well. When used in the right context with Scrum, Agile can become a tool for improving collaboration. The Scrum framework has helped many organizations to improve collaboration internally and with other organizations better. It has also been used to develop an Agile strategy. This article looks at some of the ways that the Agile framework can help you and your teams to plan, create, deliver and collaborate better in a Scrum environment. The biggest risk for your agile strategy is the risk to fail to get the right team in place when you need one. It's also possible that not enough people have the skills to be the right people for the work. However, you can get people in place with the right skills to do agile innovation work, from marketing and strategic planning, by integrating the Agile framework and Scrum. Achieving Your Goals with an Agile Innovation Strategy The Agile framework is not a methodology: it is a set of tools and methodologies enabling you to work in an agile way. However, the way you can work with the Scrum framework and the tools available in an agile way is to create an agile innovation strategy, based on an Agile philosophy. While this might seem like a small difference, if you don't have an already set Agile strategy, the Scrum process will help create the structure and context of your project, enabling you to be flexible in responding to the needs of your organization in a way that improves collaboration in cross-company innovation efforts. The Agile framework itself has been used to drive innovation, with the outcome being that more projects are launched, creating more business value, creating and launching more business value, improving innovation and collaboration. Working in sprints is an agile approach to working in a framework that builds in a series of small steps. The team works on a given deliverable in the context of the current sprint and works with other teams and organizations to create a new, incremental phase of the product life cycle. Scrum defines three phases: Sprint: the focus on the project at hand with the other elements of the sprint are working on a small deliverable Deliver: the most important part of the sprint is that a new software product has been started Sprint is the focus, where the team takes the project on and makes it a reality. In some companies this delivery may be a product, in others an innovation project, but whatever it is, the process gives time for people to change, and to improve and to learn. People at an Agile organization can learn from being asked “How are you?” and can say “I am now a new person.” People at a traditional organization cannot come up with a new answer, they will be stuck trying to make it work. By using an Agile framework, it takes some of the pressure away. ]]> https://spagile.com/index.php/about-agile-as-a-methodology/feed/ 24391 29 Agile Relevance in Modern World https://spagile.com/index.php/agile-relevance-in-modern-world/ https://spagile.com/index.php/agile-relevance-in-modern-world/#comments Thu, 18 Nov 2021 05:22:28 +0000 https://spagile.com/?p=26 Agile is still relevant for any modern company. Its principles, which were written and implemented 20 years ago, are still the best. I've come to this realization a couple of years ago, while working at a large, established software company. But I think it has become even more relevant in recent years since it helpd teams to tackle two fundamental challenges: scaling and building a team. I’m using the terms ‘scaling’ and ‘building a team’ here as shorthand for how agile has been used to address those challenges. But for each of these challenges, there was a period where the approach was used with success. Agile takes into consideration the business needs of the organization. This allows companies to take what they consider to be the best path towards growth, whilst keeping within the limits of the technology and budget, and to remain within the confines of time and efficiency. Why you need Agile? To sum it up, here's why:
  1. Agile doesn’t require much software development. You just have to make small changes to your processes or workflows. No big changes, no fancy software, just small changes that have an immediate positive impact and get bigger after a few months.
  2. Also, there are no special requirements to work in Agile (or even Scrum). Your employees don’t have to master special jargon or understand new software architecture. You can use whatever technology you’re most comfortable with.
  3. It’s an agile methodology that is flexible, iterative and supports different types of teams. Most of all, Agile makes the development process more efficient by breaking old processes into small tasks which are easily done and easily changed.
  4. It makes communication easier and makes planning and analyzing your work much easier. No matter how complicated your processes or system, with Agile you can break them down into manageable tasks and see what they are about and where their weaknesses could be.
My story with Agile had started when I was given the opportunity to become president of a global software development team, and was faced with the difficult and daunting task of leading such a team to its potential through the implementation of Agile. Having an opportunity to grow on other areas of growth was enticing, but as I grew and moved from one project to another, I realized that many of the core benefits that had been presented to me, in this organization, were actually quite limiting, and very different from what a software development team wanted to experience.

To get a sense of the issues that needed to be addressed, I met with with my partner  to learn more about the process, and got a good idea of how he approached the Agile development. We both decided to start a new project together on this new methodology, to see how it fit with our current state of the company. We both agreed that this could potentially be a good way to start rethinking the company while helping our existing processes to grow and grow. The challenge for both of us as we developed this project, was defining some terms which were important to a few of the team members, before we had enough experience, and maturity, to use a methodology which did not require them to change their processes at that point in time.

I ended up choosing to lead a project, that incorporated Agile, which had three critical benefits:
  • Improve Team Capabilities
  • Improve Product Capabilities
  • Improve Working Environment
  • Improved Performance at the Product Level
Each of these benefits represented something that the team had asked for from me, and would have an impact on how they would interact with their customers/partners. Each of these benefits took us back to our definition of what was important to us, as a company, to have the team grow in an effective way to provide more and more value to our customers and partners. We came out of the project with the realization that any company, regardless of its size and scope, will benefit from these types of improvements. The challenge we faced was to figure out a way to give each of these benefits to the team in a way that they would be able to implement and achieve these improvements without changing their working process or their approach to their day-to-day operations.
]]>
https://spagile.com/index.php/agile-relevance-in-modern-world/feed/ 11312 26