Simon,
I don't know if you wanted/expected feedback on your info but I thought I pass on some comments anyway.
Thanks for all the info. Sounds like you have a pretty good well thought out system, and your procedure is thoroughly explained. Not all places have this level of diligence on the organizational side, and even when they do they can still get it wrong. There are a lot of methods out there not all of them good, and varying opinions will be expressed about the rights and wrongs of wave linking. As always I'm keen to have the conversation about what works best, if anything procedures can tell you how to do things but seldom explain why you should do them a certain way. Like anything you can do it well and badly if you try.
We have worked similarly with left and right handed parts, as you show them it appears that they reside under the component that they are linked to, but set to reference only according to your procedure. Whereas we didn't set them to reference in NX-3, just removed them from any reference sets and placed them on a separate layer. I wonder do you use Teamcenter Visualization or JT2GO, saving .JT files of your assemblies for non-CAD users and reviews etc. We do and found that there were reportedly complaints that the lower level parent parts of the wave links showed up in the tree during some of the reviews. I guess somebody was doing something wrong, but the supposed fix for this has been to save a separate assembly just to do all the wave linking in. Another dumbing down of a perfectly good system to burden engineers with what could probably have been avoided. I wonder if the setting to reference can work better for the .JT files creation, and perhaps even operate in the absence of reference sets in your assemblies.
There is a separate debate to be had over the use of reference sets in assemblies. I'm keen to know what you do, in practice it can create some confusion where assemblies are three levels or more deep, with the reference set in the reference set problem. Means to maintain this mat have to be instituted, and new users are frequently confused by it.
Now with how and where you place the datum planes for wave linked mirroring, there is a theory that you can do it anywhere that you like, and you can wave link at any level of the tree. Usually this gives the appearance of working for a while, but may become unmaintainable if things go wrong or the links become broken. In NX-5 under teamcenter 10 the links are getting broken every time files are brought in and out from Native to work offsite. You can do things more carefully if you're well informed to avoid all this, but you could mount a good argument that you really do need to be too careful and too well informed in order to undertake certain activities with any degree of safety.
The trick with whatever you do is to make sure that you can easily remove the components and wave links from you files and reliably put them back in place and re-link or recreate the links that you may need to start again from scratch. Sometimes things go wrong, and your best remedy will approach starting again. Nobody likes to hear it and it is no fun, but experience with teamcenter has taught us to be cautious with wave links.
Promotions would be unlikely to be any less onerous in terms of managing your data, and you can't do a mirrored promotion. All they do is to make the body from a component of an assembly available at the higher level so that you can perform some additional operations on it to show post machining. Then if you create a parts list it will be added with no additional duplication of reference data to manage and you can item number the machined component with no problems. It is ideal where you want to add holes drilled on assembly, sometimes the odd line bored hole or some people may use it to add chamfers onto welded edges etc. A lot of this occurs with welded assemblies where the machining takes place after the welding so each of the parts used in the weldment has a its own part number drawn individually as delivered while the weldment itself is given a part number drawn as an assembly and promotions applied where post machining is necessary. Some organizations would express the welment pre-machining and post-machining as two different part numbers but in general engineering this is usually not the case.
At least in native it you would open the machined weldment to see the promotions, when you view the component using make displayed part, then the machining will be absent. I really don't think that they place an extraordinary burden on the system. I think your advisers were probably ill informed or relied on experience from a very long time ago having never revisited promotions to check. As I say NX-3 and up I can attest that they have their albeit limited use but perform that function with no know problems or defects in Native.
You need to enable promotions in your customer defaults in order to have them available. They are usually switched off as NX is delivered.
I have historically come from a Unix background, post DEC and even the old GE systems, and recall the slowdowns with assemblies in the past. If you hark back to the early introduction of assemblies say versions 10 and 11 of UG, then there were other reasons. Otherwise unless you have only recently adopted faceted representations and/or partial loading then the improvement is mainly down to perhaps some improvements in the software, and certainly the later hardware is better performed.
Thanks again for your replies
Best Regards
Hudson