In reply to gennaro:
I did not say you have to do this twice. he UVM is a phased approacg. Ther are special phases for doing certain things. The build_phase is used to construct all components in your testbench. It works top-down. The connect_phase is used to perform all connections, virtual connectiosn as well as the TLM connections. This works bottom-up.