I pose this question: **How can applications (GUI) be architectural (built) to enable organisation to be clear and reasonably easy to apply new problems?**

This isn't language specific and its more general.