Why is the build() phase in UVM executed in a Top - Down fashion and the other phases in Bottom - Up fashion?

In reply to srbeeram:

Generally, I avoid using the terms parent/child when talking about inheritance. I use parent/child when referring to a tree structure of individual objects. The uvm_component hierarchy is such a tree structure. It is separate from the inheritance hierarchy of classes.