caveat - this is talking about as the poster requested, production deployment of web services from big companies.
The software should be able to be deployed by nearly anyone familiar. Any changes to deployment are modifications of install scripts or applications.
Actual deployment to a production environment should be able to be done by a lot of different roles.
I prefer not to have developers deploy because they have access to a lot of different possible packages.
Build should be produced by CM.
Test should be able to install on their test systems, as checking the install is part of the test process.
Once a gold build is produced, the people administering the production application servers or ESBs should probably manage the package deployment.
Please don't tell me the developers are also administering the production boxes!
But really, test is familiar, development is familiar, systems should even be familiar... It could really be any of them.
"Should" then just becomes a choice made, and someone puts it down on their time card.