As you would expect, I take whatever opportunity comes alone, with whoever is willing to listen, to explain the benefits of history-free CAD. As such I get to hear many reasons why history-free CAD will not meet a person’s particular requirements. Some of these reasons are certainly valid based on their product characteristics and/or design process. Some, on the other hand, are, well, puzzling to say the least. It is amazing what some people believe that the history tree is doing for them.
One of the frequent and more “puzzling” reasons that I hear for needing the history tree is; “I don’t want anyone to be able to change my model”.
Wow! There are so many things wrong with this statement I’m not sure where to begin.
First of all, the history tree technology (CSG) was originally leveraged into 3D mechanical CAD to make the editing of models easier and more predictable, as compared to the ridged editing capabilities of the old B-Rep CAD systems. When did it become a method for restricting edits? It is true though, you can organize the history tree and constraints to make only specific edits possible. But then if you actually have access rights to make these very specific edits, you also have the rights to reorder the tree, or even corrupt the tree? Strangely enough, you most likely also have the rights to delete the file. Whether intentional or by accident, the model can be changed. Since when did the history tree become some form of data management?
Maybe these people are simply referring to the use of the history tree to capture and somehow communicate their design intent. If this is the case, we should consider how many people within the team and throughout the enterprise need to understand this design intent. And of those, how many have the skill to properly evaluate a history tree to accurately assess the intent. Of these people, how many should have access to the native CAD data? I think the number will get real small, real quick. We have been capturing and conveying design intent via 2D drawings ever since humans have been inventing stuff, and 2D drawings will continue to be the preferred method for many years to come. Model Based Definition may catch on at some point, but MBD does not require a history tree. What unique design intent is captured in the tree? And how does it get communicated to the greater enterprise?
I suppose that there are some that would tell me that what these people really mean is that they want to make sure that IF the model is changed, i.e. a boss is moved on one part, the mating feature on another part is updated accordingly. If that is the case, they are confusing the history tree with parameters and constraints. And please don’t assume that just because these relationships exist, you don’t need to check the results. Relationships and parameters can be changed, removed and even broken - and now we are back to data management.
Maybe I am missing something here, but it seems to me that there is a tendency to believe that a nice looking, well constrained 3D CAD model with a well structured history tree somehow implies “security” and “completeness”. Bottom line: if you think the history tree is somehow protecting your model/assembly, or perhaps somehow controlling and communicating intent, you’re at risk, (in so many ways).