> Building simple open software solutions means you should at least: Make a simple conceptual model. This model should cover all aspects, so also the key business aspects.
Well there's the rub right there.
The model can be simple or it can cover all aspects.
It can virtually never do both, because all the aspects the software is needed for is always complex.
In fact, the aspects are so fiendishly complicated that we usually can't even understand them entirely in advance, let alone simplify them.
This is why agile has become so popular: it eschews "cover all aspects", acknowledging the impossibility of this, and aims for complexity to evolve gradually as it is demonstrably needed, rather than up-front.