Hello, thanks for providing a detailed question which many members don't bother to do. However, your question is more towards the basics and I would recommend you start by reading about cloud computing and virtualization. Just start with some free videos on youtube and read some blogs. There are plenty of them out there. In your case you would most likely go with an PaaS or IaaS by the mentioned vendors unless your company has a data center of its own - which means a private cloud. In theory, a SaaS application isn't something magical compared to a general app that you would build. Just that it is hosted on a cloud (yes on a VM mostly) and is being marketed to multiple customers. Whether to have your own cloud or use MS, Amazon, Rackspace - it depends on how much money you want to spend vs how much money you can make.
Braj http://coderpanda.blogspot.in http://pandaxp.wordpress.com [If you find the articles or solutions useful then please up-vote or recommend them to encourage participation]