In reply to Danil:
Hi Danil,
the factory and the configuration database are two different mechanisms for customizing UVM testbenches.
The macro `uvm_component_utils registers a UVM component with the factory.
With uvm_config_db you are making an entry in the configuration data base. This is a way to make data available across the whole testbench hierarchy.
The factory allows you to replace components of the same type in a testbench.