I used some of the BMC tools at my current company, and dumped them.
Background: The infrastructure that I deploy to is 70% windows server 2008, 20% RHEL, 10% Solaris, about 1200 nodes total. We had a 'automated' deployment system built on top of Bladelogic, but frankly it was nothing but trouble. False successes were the norm, as were reliability issues, and lack of ability to paralleled tasks in the ways I needed. Also - the cost for just his product is _extremely_ high in my opinion, and to get the most value out of the product, you need to buy into a lot more of the stack - CMDB, Remedy, Runbook Automation, etc. This can run into the millions of dollars for a shop my size.
I looked at many options for replacing this, including Chef, Cfengine Nova, and Puppet Enterprise, and did trial implementations of CFEngine and Puppet Enterprise. The most constraining factor for me is the need for robust windows support; which rules out a lot of open source tools, and frankly CFengine and Puppet were extremely rough around the edges with windows - far too rough to use.
Ultimately I decided to roll-my-own based on some open source components; Jenkins as the main trigger, SVN doing file syndication to any server that needs packages libraries, Nant + Lots of Powershell + Wix for the windows targets, Ant + Bash + RPM for the linux targets, and for targets were I don't need to actual get on the end system to action them (Like Oracle or Control-M), I touch them remotely from a windows jobs via SQL plus or similar.
Its definitely missing some of the things the off-the-shelf products have, but I am very happy with my choice, because I have a team (of 3), that knows the system like that back of their hand, can address bugs immediately, and is constantly adding the exact new features that will give us the most value.
In terms of cost comparison - I takes me about 2x as much to fund this team than I was paying for Bladelogic maintenance (NOT including BL licenses), so I'm pretty comfortable I'm getting a good deal here.
-Matt