I use it at work. We bought it initially to get simulations to work properly as the older version had issues. In the end, we do use it for simulations but it does have a lot of advantages over many other packages. If it's worth the $10k price, that's another matter.
It does support VHDL design and that sort of thing, for FPGA's. We don't use FPGA's at all, and when I do need any kind of PLD, it's usually just an Atmel GAL chip (22V10 or 750C) and for those I just use CUPL which I'm familiar with. So we don't use that bit.
It supports making multiple BOM's from one PC board - optional populations. Also if you are doing parts substitutions and using your internal part number, you can do that. But understand, if you do that, you'll have lots of build variants. What we do, and I had to argue to do it because 'yet another build variant' seems too easy but it becomes way to hard to manage. What I do is keep a build variant matched up for a feature set. Then when there are parts subs, the purchasing/manufacturing engineer sends me a list of part number subs and if the change is to be permanent or temporary. In any case, I modify the variant, make the build files (pick+place, etc), then remove the part number substitutes if it's a 'this build'. Then *he* archives the build files but I don't have a record of it in the design file. But if I try to archive everything, I find that having all fifty different times we've built the same board but substituted a panasonic cap for the original nichicon....
I do use the external database - you essentially make an XLS file that cross-references a PC board footprint, schematic symbol, simulation model (if you are using the simulation features), a 3D model, our internal part number, and a 'generic' part description. It still is 'your problem' to use a company database as that is still difficult. What I did was start with a copy of the company database, and massaged it. Now I grab the latest parts from the company database and graft them in at the end of the file.
The schematic, PC board, and netlist entry is pretty decent, though 'annotate' has an annoying habit of wanting to re-order resistor packs and multi-part op-amps and stuff. You need to edit the part once annotated and tell it to lock the subpart number after you annotate it. I always optimize my layouts of packs, so I find that a bit annoying. I think it's not supposed to do that.
When doing global editing, you need to remember that to get out of the selected parts, you need to 'Clear Filter', as opposed to the old Protel 99SE which had a separate 'global edit' feature that just went away when you were done. It takes some getting used to.
I don't use 'rooms' in my boards since they are pretty tight layouts and I just manually place everything. So when I update PC board from schematic I always find the line that says 'Add Room' and uncheck it.
Auto-place is hopeless, but no worse than any other CAD package I have tried. Auto-route might be ok, but I don't use it. I manually route all of the time. There's a PC board rule directive available from the schematic so you can take a net and add a width requirement, for example, for power handling. This is a bit of a PITA though, if you need to run a power line to the top of a current sense resistor and also a sense line to a little TSSOP comparator. It tries to run the same trace width the whole way. The solution is something called a 'net tie' which is essentially a short-circuited component. It allows two different net directives.
Making manufacturing files is a breeze. You can make BOM's to your heart's content. I have a standard file format that I use. I make a grouped BOM for purchasing, and a single combined pick/place and part-by-part BOM for the CM and everyone else. That is the master because it includes all parts subs and stuff like that. We used to have to send several files and hope that nobody screwed it up. Now everything is in one place.
Exported 3D models are huge, since they are in IGES or that kind of thing. Note that the 3D model import and export isn't glitch-free, or at least wasn't on the last version. I think they are fixing it. There's a new release and it might be fixed already.
-Dale