Arnie Rowland
I agree with Jens. I would not remove xp_cmdshell since I find it very useful for automating maintenance tasks.
However, set the permissions so that only the sysadmin role can execute xp_cmdshell. (Unless, of course, the worst imaginable sin has been commited and the application is running under the 'sa' account.)
No one, no group, no other role, except the very small list of SQL Server administrators 'should' be in the sysadmin role -AND the sa account 'should' NOT be used at all, and it should be tightly locked down with a strong password.
Since the SQL Server administrators have access to the server, there is nothing that they could do using xp_cmdshell that they couldn't do at an OS level command prompt.
Completely removing xp_cmdshell is folly. Tightly limiting access through appropriate permissions is a 'best practice'.
But if you MUST remove it, there 'may' be little impact. Only time will tell. And you can always put it back if necessary.