Does having separate VMs improve security?

How to run different separate Virtual Machines do improves the overall security of the server? An idea has come to my mind that if three separate Virtual machines (VMs) was use for database server, web server and the data analysis server, the overall security of the server may be improved. Is this true?
