The value generate revolution
Disclaimer: this is a Brazilian software developer point of view.
I lived the process of changing from formal process to agile one. Before that time we was wondered about the "precision" that those practices gave to us, we plan ahead every detail as we were build a house, soon later we discover that those kinds of plans was the mistake in software development field. In that time, was usual to see dozens of UML Diagrams, MS Project's plans, or Specs that show in details how our system will behave but in practice we don't have any usable system, just papers. In that time a group of skilled software developers get together and wrote the Agile Manifesto. Then we start to see a changing, managers was struggling to understand the movement and the developers had their power increased and they become to claim better work conditions and a honest software development process. We were focus on how to do things instead of how we can deliver our products. Unfortunately we take a bunch of time to comprehend that we need to focus on deliver a minimal viable product. Once we finally take a glance of the power of value delivery, I start to see a real changing in traditional companies, new ones was born with this concept and unfortunately we haven't saw this changing in Government Projects.
Even if this statement "Our highest priority is to satisfy the customer through early and continuous delivery of valuable software." is the first one of twelve agile principles, we take a long time to change our ecosystem and embrace this concept.
I took a very long path to learn TDD, CI and CD. All of this concepts guide us to improve our delivery's pace, delivering valuable software rapidly and with good quality, although with a reasonable maintenance cost.
All of this improvements are useless when you need to come back to a traditional process when you need deploy a software in production. Then we began to see another changing to reach the valuable software delivery path. It's usual to see a formal process, full of authorization steps to finally deploy a software, and we are seeing a changing again, many companies broke its organization to put together SW DEV team with DBAS and ADMINS. The DEVOPS process is above this article's objective, but it's important to illustrate another change guided by the need to improve the pace of valuable software delivery.
Nowadays we are seeing again another change, because its not enough to deliver a huge monolith in production, actually we need to break this monolith to increase the delivery pace and also to facilitate the integration between business. The Air line company need to notify your Google calendar, a Chatbot need to book a flight or a hotel, a retail company need to order products to its partners, and so on.
Again we have some new buzz words API Gateway, Service Discovery, Service Mesh and Side Car. That guarantee security and less bureaucracy, to facilitate the integration process, delivery and again valuable software delivery.
This is just a sort of changes that have happened in a field which the result is a product that tried to improve the peoples life or business process.
This is indeed the Goal to follow and every time we face an doubt about which steps we need to take, you will be sure and confident about your choice if its based on value delivery and remember software development field change completely in that reason.