If we are going to do Agile project management, then there are two real strategies to fulfill Agile values and principles that we need to be aware of.
- Adopt a formal Agile approach that is designed, customized and proven to work to achieve desired outcomes.
- Every project is different, so implement changes to project practices that are contextual to the project at play, so that you achieve progress on a core value or principle.
So we’re talking about the fundamentals of agile about the core part of agile really understanding in embracing agile.
So we want to first off adopt a formal agile approach that’s designed and proven to achieve desired results.
We write certain rules and draw some boundaries and strategies about how we will do Agile. And then the second part here is we implement changes to the project practices in a manner that fits the project context to achieve progress on a core value or principle.
So what we’re talking about is that we allow changes at any given time to our project practices. And for every single project, it is done for the project in context, so that the changes we do remain in the boundary that we lay out with the principles. For example, let’s say that we embark on a project to configure and retrofit a COTS product. And we run another project which is developed from the scratch. In both the projects, we will remain open to the possibility of changes happening at any point in time, and be open to explore options that are available to put customer first. These will ensure that no matter what the project is, we adhere to the principles set forth.
So sometimes we can flex, and sometimes we follow a very standardized approach to Agile.
Our goal is to create some boundaries or create an environment that gives us some structure and framework but, to not be so rigid and predictive that we can’t flex and adopt and see opportunities for change or to do things better.
And that’s one of the things that we’ll talk about and agile as we do retrospectives and Sprint reviews about what worked and didn’t work and how can we adapt our approach to be more efficient and to be more effective.
Utilizing Agile of course is we’re getting away from this Waterfall approach and the Waterfall is very predictive driven that we have to predict everything that happens in the project.
In Agile, it’s just the opposite. We work in short iterations. We have uncertainties and of course an uncertainty is a risk that risk is an uncertain event or a condition.
If we were to try to do a software development project using a Waterfall approach, it will be very difficult to nail everything down upfront and exactly how we’re going to tackle that piece of development. In Agile, we have a set of requirements and we prioritize and we also account for risk in this prioritization of our backlog.
So the uncertainty is part of Agile and change of course is part of agile.
So those are some themes and common themes that we’ll need to know as we think about an Agile mindset.