Who Calls build_phase method of Environment or child components of the Environment?

Plesae see the UVM Cookbook for an explanation of the Testbench Build process. Please note that you should never call build_phase() [or any of the phase methods] directly. They are all called automatically once you call run_test.

Your create() question has been answered in a previous forum thread.