The true Agile is a value delivery that never stops
The software can be shipped by deadlines. In that case, it has some value that does not grow over time. To make the app great, it must be continuously upgraded. This is what the true Agile is about.
“The definition of done” is a complex problem for many software development companies. How to know when there are enough features? Is it worth the time to implement a functionality nobody might ever use? How to know if we develop a thing the end users will adore? Do we stop at MVP or should we continue to work on the product?
We think the only correct answer to these questions is following the Agile principles by heart and even more — executing them daily through DevOps workflow.
DevOps — continuous design, delivery and feedback loops
The whole concept of MVP and “shipping” the product is faulty today. It worked 20 years ago, when the developers were given 20 pages of Waterfall product specifications, had to meet the deadline and almost never met their software in production. Today we live in a highly-connected world, where software development teams are in nearly constant contact with their customers and even end users, so they face the consequences of their choices immediately.
There are no deadlines for DevOps engineers. Well, not in a traditional sense. They do not ship the software by the deadline and throw it over the wall to be someone else’s concern. They live by “you build it, you run it” principle, so monitoring the software in production is still their personal concern.
Truly Agile developers have to provide maintenance, answer customer’s questions and gather feedback on the app’s performance and functionality. Then, they are again the people that process this feedback and have to apply it to designing and provisioning new features, or by adjusting/removing the unnecessary ones. Thus said, the true Agile software development is a continuous design process, followed by continuous feedback loops.
Why is this better? Because this leads to much more than “shipping” a product within the deadline and under budget. This product gets the job done and the team gets paid… and forgets about the product until the next update is needed. Then they get the next task for the next batch of features, complete it on time… and forget about the product once more.
Such an approach is predictable, reliable… and limited. It excludes iteration, communication, collaboration, permanent purchase of higher efficiency, the feeling of belonging and, ultimately — the customer loyalty. This latter is, undoubtedly, the most valuable part of success for any business.
When the customers see their questions answered, their feedback implemented in new features, their suggestions appreciated — they grow the feeling of being a part of the team themselves, where everyone is a designer. This leads to building a continuously expanding network of value that is not limited to products but incorporates the customer relations.
Final thoughts on the true Agile
The developers interacted with the end users through the sales representative 20 years ago, via a mobile app today, will be doing this via Alexa or Siri tomorrow … and maybe via an AI in a decade? The point is the developers should be in constant touch with the end users of their products and improve the design continuously.
Design. Build. Test. Deploy. Monitor. Gather feedback. Repeat.
Sounds familiar? Yes, this is the DevOps paradigm.
What about you? Do you listen to your customers? Do you design continuously? Do you want to experience it firsthand? Give us a nudge — we can make it work for you!