Agile project management methodologies are the application of agile software development principles to various management processes, especially project management.
Agile project management methodologies
Imagine that we need to cross a street with heavy traffic. If we just walk forward looking at our goal, we will have high risks to life. Since the task is fairly typical, there is a simple methodology we have been taught since childhood to solve it. First look around, preferably find a safe place to cross, pay attention to traffic lights, etc. The chances of surviving in the city for someone who does not know this methodology tend to be zero.
Project management methodologies do not detail every step. You go by yourself, assessing the situation. You don’t just have to be able to recognize typical situations and apply typical solutions to them. The word “system” implies not individual techniques, but an interconnected set of actions. If you have chosen a safe place to cross but did not look at the traffic light – you have not increased your chances of success.
The project manager on the one hand does not know the future, on the other hand, it should provide a very concrete future, within the constraints of the project.
There are industry methodologies, such as MSF, exclusively for IT, and national standards such as Japanese P2M or British PRINCE2. If you want a deeper and more comprehensive mastering of project management, I recommend you to take a course based on PMBOK methodology which on the one hand is universal enough and allows you to successfully implement projects in any industry, on the other hand, is an international standard which is the basis of ISO standards.
There is also a group of methodologies, such as RUP, Crystal Clear, FDD, Kanban, etc., specifically designed for flexible (agile) project management.
The difference between the Agile project management methodologies and the rigid approach
In contrast to the agile methodologies, others are called rigid. They are often called cascading or waterfall because the development process there consists of fairly long stages that follow one another. These are such stages as requirements gathering and definition, design, development, testing, acceptance, support, etc. The useful result appears only after all the stages are completed.
The fundamental difference between agile methodologies is that the process consists of relatively short production cycle iterations (a few weeks), each of which includes all the main stages in a reduced form. Each iteration produces a useful intermediate result. After that, feedback from the customer (or the market, if we are talking about a new mass-produced product) is accepted. The next iteration further increases the value, taking into account the feedback received. Thus there is a gradual approach to the final result or the constant development of the product, taking into account the needs of the market.
A rigid approach is when the first meeting all the measures are taken, figuring out the desired color, style, and cut. Then the master sits down to work and in a month gives a ready-made suit. If the client likes it and it suits him in all the details – this is found out only in the end.
A flexible approach is trying on every week with questions and wishes of the client. Maybe the pockets are higher? Is the color of the lining darker? Here torn a little. And so on.
In your opinion, in which case it is more likely that the customer will be happy with the result? In the first case, if something turns out to be wrong, you’ll have to redo everything or even do it all over again. In the second case, this does not happen, because the agreement was reached at each step. There is no need to undo everything to lift the pocket because its marking was already transferred at the first fitting.
The second key difference between agile methodologies is the guidance of values, which were approved by the founders of Agile project management methodologies in 2001.
First value
is people and their interaction. In agile, a person is not a cog who has to put up with the existing system. If some processes and tools interfere with productive work, they should be flexibly changed.
Second value
is a working product. The need for a detailed description should not slow down the delivery of business value to the customer. In addition, changes can happen so quickly that the description of the current version of the product will be obsolete before it is even finished.
Third value
is a collaboration with the customer. Collaboration means that the product is made with the customer. The Agile team keeps the customer’s interests in focus, interacts closely with them, communicates regularly, gets feedback, and keeps them informed. Ideally, the customer representative becomes part of the team for the duration of the project. Flexibility towards the customer implies that we build a mutually beneficial relationship with him, rather than trying to “squeeze out” the maximum by waving a signed contract in his face.
Fourth value
is a readiness to change. This is a flexible attitude to plans and their change.
In this course, we will consider the question “what to do with the values” if they are not supported either by the current corporate culture or by the environment represented by the customers.
Anyway, now you know what is meant by agile and how the Agile project management methodologies approach differs from traditional methodologies.
The next article will tell you about the benefits of Agile and the conditions under which it is effective to work in Agile.