What Agile users are silent about and is it possible to build the bridge using Agile?

Nowadays flexible development is experiencing the peak of its popularity - a lot of IT (and not only IT) companies are working exclusively on the Agile. And those who are behind the trend hastily hire coaches, retrain their staff, regenerate their processes and implement the Agile in one form or another.

But is Agile as good and universal as it is claimed by its adherents? Since, while misuse it can bring far more problems and disappointments because of its flexibility than benefits? Let us sort things out together...

Let's look at the most common cases and issues of managers and business owners concern when they think about the transition to flexible development:

  • Our project is very complex, it requires expertise, deep study and compliance with various industry standards. Will we be able to work using Agile and will we get any benefits from it?
  • Strict adherence to deadlines, budgets and plans is extremely important for us and our investors. Will Agile, with the requested flexibility, be able to ensure sustainability of the objectives in time?
  • We are working with a distributed team located in different countries and time zones. Will we be able to manage team members effectively and provide an effective communication process while transition to Agile? Can these changes possibly lead to the loss of the processes control?

The answers to all these questions are not so trivial and require understanding of the flexible development basics, its strengths and weaknesses.

In our articles devoted to the peculiarities of work using Agile we will disclose to you all the secrets which will allow you to make deliberate and grounded decisions.

Part 1. The use of flexible development in the complex projects.

The peculiarities of work using Agile

Agile implies:

  • A continuous changes of priorities.
  • Continuous refinement and requirements updating after each iteration of the loop.
  • A continuous delivery of the most popular features.
  • It is all conceived, sounds great and it works really cool!

On the other hand, however, this approach leads to the inability to create detailed specifications (they are becoming meaningless, as any requirements changes entail a chain of changes in such a specification and moreover, it can completely lose its relevance after few iterations).

Also, Agile ceases to work effectively with long iterations. Is there any sense in flexible designs, if we see the result of our only corrections in half a year or a year?

But what to do in such a case, with complex projects, such as: the construction of bridges, buildings, the production of aircraft, rockets or medical equipment?

Is it possible to build the bridge using Agile if after implementing and demonstrating each of the components we will have been changed requirements and priorities?

In fact, in this case, the components will be modified and delivered according to the changing customer priorities, but not as it is required from an engineering point of view. Moreover, the design changes of some of the components can lead to disastrous consequences: the components can no longer be combined or the general requirements for durability and security structures can be violated...

In IT there are also a lot of complex projects which require detailed planning. This is software for financial or medical institutions, programs for designing of the various components in the airplanes, machines, rockets... It can be listed for long.

Everything sounds like it worth getting rid of Agile in complex projects and use the dear old Waterfall, with giant specifications, clear processes and complete inability to change anything after the launch of the project...

It is early to abandon Agile...

However, we believe that, even while the realization of any super complex tasks, flexible development is still possible, and it is necessary to apply, although having some provisos. In fact, Agile will give huge advantages to any project.

Thanks to the continuous corrections and feedback at all stages, the final product will be much more modern, will better meet the needs of your customers, will be implemented, taking into account the most recent trends and technologies, which of course we will be deprived in the case of Waterfall model.

Of course, it would be rather non-trivial challenge. It will require a team of experienced managers, deep involvement of technical experts, as well as powerful tools for visualization and tasks planning.

It is impossible even to try or undertake the development processes changes, if you manage projects using only the whiteboard with stickers, or use Excel, Outlook, or some other, obsolete and inconvenient applications. It is very important to have it as a powerful modern tool (such as TBB, Jira, Azure DevOps) which possesses a wide range of opportunities for monitoring of all the critical details of the project from different angles.

Construction of the bridge using Agile

So, let's return to the bridge construction example. To be able to realize this project using Agile, first of all, a valid decomposition of the scope works on weakly dependent modules is required. (A similar scheme is applicable to any complex project)

After it is necessary to highlight:

  • stem immutable modules (core modules).
  • the modules which allow partial changes.
  • the modules which are ready for any modifications.

In the process of implementation, the project team should carefully monitor all the changes especially in the areas of interaction of modules, thoroughly test them for compatibility and also carry out periodic audit of the whole project for compliance with common standards.

For example, we may decompose the structure of the bridge on the following modules:

Supports, bridge spans, the infrastructure around the bridge and bridge decorating.

  • Supports is an immutable core, which must be designed and implemented in accordance with the strict engineering and regional standards and only Waterfall model is suitable here.
  • Bridge Spans, at a first glance, seems too immutable, however we can range their purpose and parameters (we can change the width, height, material and even a type of the overflights)
  • The Infrastructure around the bridge and the bridge decorating is the one which adds convenience, originality and visual appeal, and should be performed solely using Agile.

Perhaps these recommendations sound a bit blurry. But each project is unique in its own and everyone should look for their way for flexible implementation. In this article, we have given a simplified example of the implementation of complex projects using the advantages of flexible approaches.

Summary

  • Agile is applicable to any type of project, but there are some nuances exist.
  • The transition to Agile is clearly winning solution which will give you a huge advantage at a distance.
  • The transition to Agile, especially in complex projects, should be applied very carefully under the supervision of experienced coaches and managers.
  • For the transition to Agile to be occurred as much as possible successfully and painlessly it is necessary to use modern tools for the management of TBB, Jira, Azure DevOps or other

You can get acquainted with one of the highlighted project management tools and our other articles in more details here.

To be continued...