In reply to vickydhudashia:
Unfortunately a interface design unit or virtual interface does not fit into the OOP inheritance model to allow factory overrides.
Since you say you don’t want to touch any of your testbench code I have to assume that these additional signals have no functionality that your testbench has to be aware of. Otherwise you need to explain how these additional signal will impact your test.
One way of handling this is parameterizing your agent with the virtual interface name and passing that parameter down to the monitor and driver classes.
Another way that might also handle functional changes in the interface is creating an accessor class registered with the factory and each override can deal with the particular interface as needed. See Doulos