This has been solved. The solution is called DCI.
Data Context Interaction. A new paradigm where you design your software according to the end users mental model. Understand DCI and you should be able to craft software that makes more sense per usability. Trygve Reenskaug has explained why the traditional MVC is flawed.
> A new paradigm where you design your software according to the end users mental model. Understand DCI and you should be able to craft software that makes more sense per usability.
If you understand the end-user's mental model, your biggest gains will be from sales and marketing.
There is no contradiction - understanding user's mental model helps both marketing and code structure. It pays to structure code in such ways as to ease absorption of new requirements, and the DCI claim is that they have a better idea how to do this compared to MVC or other approaches. I recommend reading the linked article, it's long but worthwhile.
ref. http://www.artima.com/articles/dci_visionP.html