I would like to understand the exact hierarchy of a block diagram.
If a block A is on top of block B does it mean that A is in some abstract manner build using B?
A concrete question:
I have a component C that calls components D,E to achieve its goal. Is C on top of D,E (since it uses them) or are these different unrelated blocks? When would be each case? aD,E are not a platform that C is build on but just something it uses.
What disturbes me is that I usually see block diagrams with a big base block and many small "roof" blocks, e.g. a framework base and many features over it. However in my example if every component is build using 2 others I would end up with a base containing many blocks and one "roof". Alternatively I would end up with unrelated (non hierarchical) blocks which seems to miss the purpose of this diagram (or does it?).