In reply to ridip.mandal:
All uvm objects and components should be registered with factory to get leverage of factory override features, which will help you in writing an reusable env.
Regarding your second point, I have never seen any difference in simulation behavior w.r.t. factory registration. It would help if you can post an example code or trying using same random seed for both runs to rule out any dut issue.