Having a system that meets all requirements is not enough. Even if a perfect system was ever developed it would have to change with new technologies, channels, and expectations. Project methodologies have always been challenged by change. Scope creep has long been blamed for project failure. Yet, it really is a symptom of project solutioning.
The long history of IT methodologies (waterfall, client server, n-tier, structured programming, object-oriented, service oriented, agile, microservices, serverless) can be seen as attempts to harness change. Success is still elusive. These methodologies and tactics help, but they are not the answer.
There are two primary reasons for the misalignment - understanding change (points of agility) and solving the wrong problem.
All change is not the same. There are changes that have been traditionally challenging (as laid out in the Methodology - Points of Agility) and changes that are new or unanticipated.
Before undertaking a major transformation, we did an analysis of all changes (performed, requested, analyzed) over the last 20 years. It showed by far the two most difficult requests are two of the most common. Changes in database and "state" (codified) are two types of change where organizations were most challenged. The problem is they have a great scope. The coding is easy; the analysis and testing are the issues. Even when this is mastered (or handled with AI), transformation requires enterprises to simplify change through configuration and empowerment. This requires an expanded SDLC where configuration changes migrate as part of organizational response or release management.
As pointed out with the Anti-patterns (Silos -Shadow -Silver Bullets - Shiny Objects) there is an issue in the way technological problems get defined. It is focused on general short-tern functionality, not consumption or outcomes.
There needs to be a reason to use technology. Technology doesn't get used without purpose. Even the most superfluous usage (watching videos of a plant growing in real time) can be improved. The reason to use technology is The Right Time. Either an event occurs (I now want to be entertained) or a process has reached a step where an intervention is needed. (An event can start a process or sub-process so the first case can be thought of as a process of one step),
In the Right Strategy there are only two super-classes of consumers. Technology is accessed either by a person using a tool or a machine (bot , IoT, cyborg may be coming, where cyborg components may be a highly integrated tool). The underlying assumption is that technology is used to help accomplish an outcome.
A tool in this context (The Right Tool) is a collection of capabilities (UI/API/Services) that are combined to facilitate an outcome. All any consumer wants is to be successful. This simplifies and "personalizes" the business analysis. It makes analysis descriptive. Could you do brain surgery if given an advanced tool? Can you describe what capabilities the tool would need to make you successful? To build this tool, would require the acquisition or construction of all the capabilities required and then integrate them into an intuitive user interface (tool).
This reveals the common problem of applying capabilities either within a tool or through an automation. There is no other use case. It puts the focus on problem solving at the point of consumption.
Since we are solving a common problem, then there is a "common" solution - The Right Strategy. The Universal Enterprise Architecture allows for a consistent implementation for unique change. It isolates an enterprises unique capabilities into functional domains and processes. All domains in the EA are products whose roadmap allows and aligns capabilities to achieve its strategic objectives.
The current state of any organization can be accomplished by mapping an enterprise's capabilities (many currently implemented in anti-patterns) into the appropriate products. The model is highly configurable to add new products (domains, processes, consumers, channels).