We ALL have a tendency to solve problems with solutions that may be far from optimal. How does this tendency shape our Scientific Software Architecture? What are the long-term consequences of that? What pushes us towards sub-optimal solutions? What prevents us from reaching the optimal ones? Are there better solutions that we are missing? How could we make sure we do not miss potentially superior solutions? How those superior solutions could help us achieve our mission in a more efficient way? I will try to answer those questions in the context of an exemplary scientific software architecture which evolves over time and with the help from recently published outcomes of problem-solving experiments.