Is there a web or software project management that is a guarantee of success, because it meets users' expectations as closely as possible by being particularly responsive, while respecting the fixed budgets? Yes, and here is the recipe.
New innovative applications project management
Developers create new applications that do not exist yet. It’s about innovation, something entirely new that no one has done before. It’s not about repetitive, known, and reusable tasks that can be priced based on past costs. No web application is built by simply copying and pasting entire features from other existing applications.
The technical team doesn’t know yet which components they will use to build these new applications that aim to stand out in the market, nor how they will arrange these components. It’s only when they start coding, writing the first lines of algorithms, and testing various options that they realize some initially chosen tools are not suitable for certain functionalities and that the initial code organization needs modifications to ensure future maintainability.
Reactive to user expectations project management
Moreover, the company doesn’t know in advance what will be needed in a year, and often even in the coming months. That’s normal. Only the usage of the initial delivered features allows getting feedback from users. The company can then adjust its goals based on the experiences they have just gone through. The goal is user traction. The priority is to address real problems, real challenges. It’s about delivering highly valuable features to the point where users can’t do without this web application anymore.
The initially envisioned features requested by the company keep changing continuously, and their priority is constantly revised. Following user feedback from recent tests, some initially planned features are abandoned, new ones emerge, and the order in which they are developed based on their priority is constantly modified.
This is why all attempts at planning and estimation are destined to fail. No one can accurately estimate a long list of features in advance, especially since some of them might never be developed once established that they are finally not desired by the users of the application.
At Squadracer, we believe that fixed-price project management is bound to fail
Fixed-price project management is a false sense of security that inevitably backfires on the company, creating false hopes and leading to penalties for delays that degrade the relationship with the technical team: since all estimates are inaccurate, any budget and deadline based on these estimates will inevitably be exceeded.
https://www.commitstrip.com/en/2012/04/24/the-wheel-of-estimation
As a result, many IT service companies have chosen to overestimate, sometimes to an excessive extent, the fixed-price amounts to cover themselves as much as possible. Some refer to this as « contingency. »
Contingency definition and meaning | Collins English Dictionary
Several companies, after trying numerous estimation methods over the years, have come to understand this. As Agile and Craft coach Frédéric Leguedois explains: the main problem with estimation methods is that they are never reliable. Project managers estimate deadlines by repeatedly reviewing the specifications (the famous finger-in-the-wind method). Clients often present their requirements too briefly for a coherent estimate to be made. « First, we want to know the necessary budget. We’ll specify our requirements later. Try this method with your grocer, go see him and ask how much it will cost without telling him exactly what you want to buy.** This kind of approach only persists in the field of IT.** »
https://www.commitstrip.com/en/2018/02/05/it-project-estimates/
Project management with Agile method: Set budget => Adapt functional scope
The only way to guarantee the success of a project management while adhering to the initially fixed budget is to adjust the scope of developed functionalities.
The solution, therefore, is to ask the company, for each functionality or very small sets of functionalities, how much they want to allocate: what is the budget or deadline they don’t want to exceed for this set of functionalities? Hence, it is essential to break down the application’s scope into the smallest possible features. Once the budget and/or deadlines are set for a small set of features, the technical team knows how many days they have to deliver the best possible version of these features. They will ensure that, in any case, a quality product is delivered, which operates and addresses the main goal, attempting to include maximum UX/UI or other features that enhance the user experience (but whose absence wouldn’t prevent users from benefiting from the essential).
The initially set budget and deadlines will be respected. The delivered product will gather feedback from users, which, in turn, will steer the application towards new sets of prioritized functionalities that might not be the ones envisioned initially. Only tests and user experience reality can guide the company’s goals.
Agile project management allows for changing one’s mind
As no commitment is made regarding the functional scope, any changes to this scope become possible. The company enjoys a sense of freedom that enables to change one’s mind whenever necessary. It is normal to change one’s mind. The application’s responsiveness is at its maximum, entirely focused on the goal of quickly meeting user expectations and achieving user traction.
I’ll let Frédéric Leguedois conclude:
« Those who have experienced unsatisfactory fixed-price projects will understand. The adjustable variable should always be the project’s scope and not its quality, cost, or deadline. Nothing is indivisible. Everything constitutes a set of functionalities. When you start with the prioritized functionalities, when you trust developers, when you stop making promises, when you adapt to context, that’s when you are truly agile, and projects succeed. »