The goal of software architecture is to minimize the amount of knowledge you need to have in order to build a system.
It is a common experience that a problem difficult at night is resolved in the morning after the committee of sleep has worked on it.