In reply to ridip.mandal:
All UVM components, i.e. units which are building your UVM environment should be registered with the factory and also all transient objects. There are 2 exceptions:
(1) there is no need to register configuration objects with the factory.
(2) Components like analysis_ports, exports, tlm_fifo need not be registered with the factory. These are components which are not intended to be replaced.