I am in the process of setting up new servers for an organization. What are the standards or best practices for setting up a new environment with Development, Testing, Staging, and Production (or I'm open to other levels I'm not familiar with)? Additionally, I've heard of organizations breaking out servers into SQL, Application, Web Server, etc. Where can I find good examples of possible solutions for server setup?
Is virtualizing these environments among a few physical boxes a good practice?
I've searched online for some ideas of how other organization have their environment set up, but I'm not finding anything specifically helpful. I welcome any links you can point me to that discuss building an entire enterprise solution for a small to medium company.
I just found this link: http://dltj.org/article/software-development-practice/ I'd like to find more articles like this if anyone knows of any good ones they can point me to.
Before you down-vote my question, please post comments to let me try to explain more. I may just not know enough to ask the right questions.