In reply to omehed:
You could also ask "do I always need to use the UVM?" The answer to both questions is of course you don't need to.
The con is sometime later when you or someone else has to go back and fix or adopt your testbench. Is anyone going to be able to figure out what you were trying to do and why are you did it? Also, what happens when your interface starts getting a little bit more complicated as the design progresses?