Coach Agile
Aug 8, 2024·13 min

How to resist the temptation of reverting to technical specifications document?

BeTomorrow provides you with key informations to resist reverting to technical specifications document when managing a project.

Introduction : navigating the crossroads of agile and traditional Approaches

Despite the growing adoption of agile methodologies, some companies still prefer traditional approaches like the V-model, citing their perceived higher level of control and detailed requirements documents. However, it's crucial to recognize that these methods may be less flexible and less tailored to the needs of end users.

While change is a common phenomenon, navigating it remains complex. In this context, agile methodologies offer tangible solutions to more easily overcome resistance to change and provide solutions tailored to the needs of end users. This is what we will delve into in this article.

I am convinced that agile methodologies are the best way to collaborate with our partners. At BeTomorrow, we have observed that transparency, flexibility, speed, and continuous involvement of everyone in the process are essential for developing quality products that meet user needs.

For this reason, we implement an agile process that enables transparent and continuous communication throughout the project. Our team of experts work closely together with our partners to deliver the final product in the most efficient manner possible.

The Agile approach allows us to respond promptly to changes and the needs of our partners and their users, all while avoiding delays and budget overruns. We believe that agile practices are essential for developing high-quality products that meet needs while maximizing satisfaction.

💡 We are aware that some of our partners may be hesitant to embrace agile methodologies. This reluctance could be influenced by the fear of losing control, the challenge of breaking old habits, or the adjustment to new work processes.

To overcome this reluctance, we elaborate on the advantages of agile methodologies and how they can contribute to a successful project. We also demonstrate how client involvement and flexibility in the process can better address user needs and allow for project adjustments along the way.

We also acknowledge that certain specific needs require more traditional methods, and if necessary, we adjust our approach accordingly.

💡 Understanding the benefits of agile methodologies permit overcoming a certain resistance and providing solutions tailored to the needs of users.

Agile methodologies have experienced increasing popularity in recent years

What are the benefits of agile methodologies ?

Agile practices have seen growing popularity in recent years, especially in the realm of digital product development. The benefits they offer are numerous and can make a difference in the success of a project.

Ongoing collaboration with the client is one of the primary advantages of agile methodologies. In contrast to traditional methods, where the client is involved at the beginning of the project and receives the final product at the end, agile methods involve the client at every stage of the development process. This ensures that the final product meets the real needs of users and avoids unpleasant surprises upon delivery. For agile methods to be effective, continuous client involvement and collaboration are necessary throughout the development process. If the client is less available or less engaged, it can slow down the process and lead to delays.

💡  The purpose of this collaboration is to avoid the tunnel effect.

Team members or stakeholders focus so much on a specific goal or project stage that they neglect other important aspects or opportunities for change. This excessive focus can lead to planning errors, delays, and additional costs. The tunnel effect can be avoided by maintaining an overview of the project and considering all important variables.

Exploring the mechanisms of the tunnel effect within project management
(source : methodo-projet.fr)
The tunnel effect in project management (source : methodo-projet.fr)
The tunnel effect in project management can manifest in various ways !
The different facets of the tunnel effect in project management (source : ITisbeautiful.fr)

Flexibility is another key advantage of agile methodologies. Indeed, these methods allow for quick adaptation to changes in demand or market conditions. Agile teams work in iterations, short periods dedicated to achieving specific objectives. At the end of each iteration, the team can reassess priorities and adjust the plan accordingly. This helps reduce the risk of budget overruns or delivery delays. However, the constant adaptation of plans can be taxing for both the team and the client. Frequent changes in direction can be challenging to keep up with, and flexibility may sometimes resonate with a lack of structure.

Rapid delivery is also a significant advantage of agile methodologies. By working in iterations, teams are naturally inclined to continuously deliver features rather than waiting until the end of the project to deliver the final product. This enables the swift collection of user feedback and its integration into the development process, leading to a final product more tailored to real user needs.

However, because they prioritize face-to-face collaboration, agile methods may result in a lack of documentation, making maintenance and scalability more challenging.

The differences between the Agile method and the Waterfall method.
Agile vs Waterfall : key differences

Finally, agile methodologies foster a culture of collaboration and accountability within the team. Team members are encouraged to make decisions collectively, work closely together, and take responsibility for their actions. This often leads to greater job satisfaction and increased motivation to achieve project goals.

Some companies may prefer more traditional methods because they offer a higher level of control over the development process.

💡 With agile methods, overall control (actions, decisions, strategy, organization, plan, etc.) is shared between the development team and the client.

The benefits of agile methodologies are numerous and can be decisive for the success of a digital product development project. Continuous collaboration with the client, flexibility, rapid delivery, and a culture of collaboration and accountability are all advantages that can help create superior-quality products that meet the real needs of users.

Challenges of agile methodologies

Agile methodologies come with numerous advantages, but they are not without challenges.

💡 Agile projects require clear communication and constant collaboration among team members and the client, which can be challenging to maintain throughout product development.

Navigating Flexibility in Agile Methodologies

One major challenge of agile methodologies is the need to work with a flexible and evolving specifications. While this can offer benefits such as flexibility and the ability to respond quickly to changes, it can also be challenging to manage due to the unpredictable nature of changes.

In agile methodologies, understanding the paradigm shift is crucial. The goal of agile methods is to deliver a functional product that adds value to users as early as possible. In traditional methods, once the contract is signed and the specifications validated, the goal is to adhere to the contract. Thus, the scope (specifications) is no longer negotiable; it is fixed and contractual. Under such conditions, the only possible variables for adjustment are time and budget. And if they, too, become non-negotiable, the only aspect left to compromise is quality.

With agile methodologies, because we all know (even if we don't always want to admit it) that few projects adhere to deadlines and budgets, we prefer to invert the pyramid. Time (number of iterations) and budget (how much we are willing to invest) are fixed, and the scope is variable, constructed gradually based on user feedback.

For example : There are 40 buttons on a typical TV remote; how many do we actually use ? There are fewer than a dozen on a Google or Apple TV remote or Fire Stick, yet isn't the service still provided ?

The operational differences between Agile and Waterfall models.
Agile and waterfall models operate through different mechanisms

Overcoming collaboration hurdles in agile projects

Another challenge is managing constant collaboration with the project sponsor. This can be difficult if the client is not sufficiently involved or has unrealistic expectations about the final results. Clear and ongoing communication with the client is essential to avoid misunderstandings and communication errors that could harm the project.

Finally, the development team may also face challenges in implementing agile practices. Agile methods often involve short and intense development cycles, which can be challenging to maintain without proper organization and careful planning. The team must be able to work efficiently as a unit, collaborate, and communicate clearly to ensure that the project progresses effectively and productively.

Certainly, agile methods present challenges, but with close collaboration between the development team and the client, these challenges can be overcome. Team members must also be willing to work together and be open to changes to succeed.

💡 Clear and continuous communication, flexibility of the negotiable scope, and meticulous organization are essential for success.

Reasons for prefering traditional methods

The sensation of lack of structure

It may happen that a client has reasons to revert to more traditional methods, despite the advantages of agile methodologies. Some common reasons include a preference for a detailed requirements document, fear of not being able to develop everything, and the perception that agile methods lack structure.

One reason explaining the preference for a detailed technical specifications document is that it provides a higher level of predictability.

💡 However, agile methods do not imply the absence of a "requirements document" but rather a more flexible approach to achieving it.

Project goals are defined at the beginning, and details are added as the project progresses. Eventually, the crafting of user stories, properly formalized and detailed, with acceptance criteria, for example, allows the construction, iteration after iteration and customer feedback, i.e., just in time, of an equivalent of a for a detailed technical specifications document. We live in a rapidly changing world, more and more rapidly. How can we predict what a product will be like in six months? ChatGPT did not exist a few months ago; could we have predicted it in our specifications document ? This excellent article explains it well: "Why Predictions Are Often Wrong (and What Lessons to Draw)".

Today, we operate in a VUCA world (Volatile, Uncertain, Complex, and Ambiguous), making product development complex and requiring an empirical approach.

We live in a world that is changing quickly, ever more rapidly. How can we predict what a product will be like in six months ?

The mirage of exhaustiveness

Another reason a client might want to revert to traditional methods is the fear of not being able to develop everything. This may stem from the perception that agile methods lack structure, and objectives are not clear. However, with agile methods, the product vision is clearly defined at the project's onset, and priorities are determined and reviewed based on needs and expected outcomes. This allows for the establishment of well-suited intermediate iteration objectives. Additionally, agile methods enable rapid and regular delivery of small increments, ensuring development aligns with the client's needs.

Some clients may perceive agile methods as lacking structure when, in reality, they require clear communication and ongoing collaboration between the development team and the client. The structure is provided by iterations and regular meetings, enabling real-time project progress tracking and informed decisions to adapt development based on needs.

All agile methods have structured processes, and contrary to the myth, it's not "Yolo ! Everyone does as they wish without constraints."

Ultimately, it's crucial for the development team and the client to work together to overcome these challenges and adapt to agile methods. This can be achieved by explaining the advantages of agile methods and collaboratively defining project goals, priorities, and communication between the parties. Furthermore, the development team must ensure client involvement throughout the project, helping address fears and preferences for more traditional methods.

Traditional product development methods have been used for decades

Traditional product development methods have been utilized for decades and continue to be employed by many companies. One of the main advantages of traditional methods is the level of control and risk management they offer. Traditional methods, like the V-model, provide a detailed project plan with clear milestones and defined stages for development. This theoretically allows for effective cost, time, and risk management.

Another advantage of traditional methods is the significance of a detailed requirements document. Detailed product specifications are defined at the project's outset, facilitating a better understanding of client and end-user needs.

Drawbacks of traditional product development methods

However, traditional methods also have drawbacks. They can be rigid and inflexible, making it challenging to adapt to changes in the development environment and user needs. Projects are often pre-planned with a detailed requirements document that must be strictly followed.

💡 Unforeseen changes or feature additions can be difficult to integrate without disrupting the entire development process.

Traditional methods may also lack transparency and ongoing communication with the client and team members, leading to development delays and a decrease in the final product's quality.

The project harmony relies on the significance of consistency and synchronization.
Misalignment can have a significant impact on a project !

Bridging the gap : integrating agile practices for enhanced product development

To create a more effective product development process, it is possible to combine the advantages of traditional methods with those of agile methods. By integrating agile practices such as continuous collaboration with the client and ongoing involvement of the end user, it is possible to enhance the final product's quality while maintaining "control" and risk management.

It is important to note that the benefits of agile methods can also offer solutions to the limitations of traditional methods. Agile methods provide greater flexibility, better adaptation to changes, and the earliest possible delivery of a product that brings value to the user.

A few figures

According to the 2020 State of Agile report, 95% of organizations have adopted agile methods for their product development. The same report also indicates that the two main motivations for adopting agile methods are:

  • The need to adapt quickly to market and customer changes (69%)

  • Increased collaboration among team members and with the client (66%)

  • Reduction of risks and costs related to projects.

  • Improvement of product quality.

  • Seeking greater transparency in the development process.

A study conducted by VersionOne in 2018 revealed that agile methods were more likely to achieve product quality goals (49%) than traditional methods (39%).

According to the "Chaos Report" survey published by the Standish Group in 2018, the average success rate of Agile projects was 52.7%, while the success rate of Waterfall projects was 39.1%. In the same Standish Group survey, it is revealed that the success rate of medium-sized Agile projects ($100,000 to $1 million) was 61.9%, while the success rate of medium-sized Waterfall projects was 47.4%. For large projects (over $1 million), the success rate of Agile projects was 44.3%, compared to 28.8% for Waterfall projects.

Another study conducted by PMI in 2017 found that the success rate of Agile projects was 62%, while the success rate of Waterfall projects was 51%.

Conclusion

Implementing methods for digital product development is a significant choice for companies. In this article, we have examined the differences between traditional and agile methods, highlighting the advantages and challenges associated with each approach.

Traditional methods have the advantage of providing control and risk management, as well as a detailed requirements document. However, these methods may lack flexibility and be challenging to adapt to changes, which can slow down the development process.

On the other hand, agile methods allow for continuous collaboration with the client, increased flexibility, and rapid product delivery. However, this can also pose challenges such as the need for clear communication and constant collaboration with the client and team members.

It is important to understand that these approaches are not mutually exclusive. The benefits of traditional methods can be combined with the advantages of agile methods to create a more efficient development process.

Ultimately, the decision to choose a digital product development method must be based on the specific needs and priorities of the company. However, it is important for the development team and the client to work together to find a process that best suits their needs.

We encourage companies to explore the benefits of agile methods for their digital product development and to collaborate with our development teams to find the process that best suits their project. This will result in greater efficiency, improved collaboration, and increased satisfaction.

13 min

Thank you for reading this article.

STAY TUNED

— OUR RESSOURCES

ARTICLE
AI Act - Europe
Oct 10, 2024·10 min

Anticipate AI Act to support your Artificial Intelligence projects

Content marketing manager
ARTICLE
Article BeTomorrow - AI - Semantics - Part 1
Oct 7, 2024·8 min

Semantics at the heart of Generative AI

Software Engineer
ARTICLE
BeTomorrow - PWA - blogpost
Sep 9, 2024·7 min

PWA: How it works and best practices

Our website uses cookies
Our website uses cookies to measure our audience, track performance during advertising campaigns and provide the best experience.