Why is PDM so Important?
When CAD went retail in the mid 1990’s there was suddenly a new breed of user out there. These new users had a different level of training and a different set of expectations from professional software. Starting in the mid-90’s, the average Windows user expected to be able to use CAD. It didn’t take long for file management to become a real fiasco.
I worked for a time at a company that had been using Autocad for years, and used a numbered folder system to store their files. Then they bought Solidworks and started to do exactly the same. They were very efficient – they had a separate place for drawings, assemblies, and parts. Needless to say it was a total mess. They brought me in to sort it out, and give them a new way to work that wouldn’t cause all the broken references and associativity.
The new brand of retail Windows users weren’t ready for the discipline that the corporate PTC user had been developing since Pro/ENGINEER was released in 1987. A new tool that collected and enforced all of the best practice rules that you had to follow to keep parts, assemblies and drawings linked to one another in a production setting where there turned out to be a lot of data to manage.
History of CAD
In 2006-8 a fellow named David Weisberg wrote a book-sized story about the History of CAD. This book covers the industry players from the 1940s until the early 2000s. 20 MB download. Mr. Weisberg is no longer with us, but he made this work publicly available. I don’t think it was ever really published. I’ll sit here and wait while you read the Weisberg material up to about 1995. Go ahead, I’ll wait…
Anyway, you get the idea that there were a few players. PTC, SDRC, Unigraphics, Computer Vision, and some others. With all of this CAD data being created, the need to manage all of the data it created also grew. Relationships between the files needed to be maintained. File revisions on top of these relationships complicated the file management even more. You could keep track of this kind of thing on your own, but only if your assemblies were small, not complicated, and you didn’t create a lot of revisions.
What is PDM?
PDM (Product Data Management) is just a set of best practice type rules that users have developed using manual file management, but those rules are enforced by software. The software keeps the information in a database to keep it secure and allow users to do searches and reports and many other database kind of things.
Once you start adding revisions of parts into the assemblies, and then consider revisions of drawings as possibly separate things, the logic behind all of it is still simple, but the application of the logic to the layers of relationships and associativity becomes complex, and difficult to wade through from a human perspective. The database keeps track of every transaction and every relationship. You might be able to track things like this for simple assemblies that don’t change much, but over time, the computer doesn’t forget, but I guarantee you will.
Where did all of those the rules come from? Glad you asked.
What Rules does PDM Enforce?
You would think that looking for a file referenced by another file would be a simple thing. Just look in the last place where it was saved. But you’d be wrong. Solidworks famously used to have 13 locations where it would look for any file referenced by another file. They have apparently reduced that to 7 locations:
- Uses any currently open document with the same name.
- Searches the path of the referencing document
- then searches the path where the referenced document was last saved recursively.
- Searches the path where you last opened any document
- then searches the path where the referenced document was last saved recursively.
- Searches the path where the software last found any referenced document
- Searches the path where the document was last saved without a drive designation
- Searches the full path where document was last saved with its original drive designation
- Allows you to browse for the document itself.
“Recursively” in this context means that it will search subfolders and other parallel folders.
So after all of this, if the software finds it somewhere other than where you expected to find it, it will not tell you. Which isn’t very helpful. Part of the problem with the referenced file is that it only matters what the referencing file knows about it. If you have a file open in its own window and save it to a new name or new location, the assembly or drawing that references that file doesn’t know anything about the new info unless it was open at the time you saved the changes.
With all of this, you can see that humans really can’t understand the rules, and honestly can’t be trusted to follow them. So we have to use software to understand and enforce those rules for us.
How Does PDM Work?
PDM has to “check in” your files. This essentially means that it has to rename and hide them from you so you won’t try to screw them up. Then when you want to get a copy or “check out”, it will deliver those files back to your work space in such a way that the software will be able to find them.
PDM keeps the data or at least links to the data in a database that remembers version numbers, file names, and all the meta data for each file, and then up through the subassemblies to the top drawings. Then it gives you all the information when it pulls the files out of the vault.
It all turns out to be a lot of simple transactions, but humans aren’t good enough at remembering all that detail, and following a strict set of rules on top of it all. I have seen people and companies keep large assembly data managed just on a local drive, but it takes a lot of discipline, and there is a large risk associated with doing things this way.
Solidworks “PDM”
Finally, a comment on Solidworks calling it’s PDM product PDM. This is like calling your firstborn son Boy. Or like Ford calling a new car model Car. I think it confuses a lot of people. In the end, I think Apple does something similar to this, and their customers wind up thinking that the rest of the world is named after them. It also makes it impossible to have an intelligent conversation regarding the difference between PDM in general and PDM in specific. In this article, I’m talking about PDM in general in every case. They did the same thing with Layout Sketches and probably a couple of other product or function names where they named a specific tool the same name as the general function. Infuriating.
In this day, seems PDM should be more seamless, like what Onshape has done. Maybe an integration that works with SharePoint/OneDrive in some way. When active, get rid of the standard “save” dialogue and filesystem…..you’re in PDM now and that should be all you see. There should never be an issue moving and organizing and renaming. And this goes for external references in all its forms.
As for the name, SolidWorks PDM seems fine to me, better than “Conisio”. I hate SolidWorks Manage though, feel like I’m saying something unfinished, like a run-on sentence. No different than Apple Pencil or Apple Watch…..guess iWatch and iPencil were taken, perhaps by Autodesk when Inventor was being worked on. Teamcenter is a good name, Product Center is another good one, Windchill is Ok but gives no indication as to what it is. Enovia….does that mean something? I suppose Dassault liked product names that end in the letter “a” (Catia, Enovia, Simulia, Biovia, Delmia). And of course Enovia is now the 3dexperience platform or part of it….I think Dassault’s marketing department should be sacked for that one…..along with rebranding SolidWorks World to 3DX World. We know what people are really there for.
Jason, yes I agree, PDM should be just built in. But we also need to make sure that the data you’re creating is useful where ever you need to take it. This is where I think the Onshape model misses out. If you don’t get all of your software from a single vendor, there needs to be a way to make sure that downstream apps have access to the actual data without a “save as” branch.
With the naming comments, all I was trying to say was that it’s difficult for SW users to have a general discussion about “pdm” without getting it confused with “PDM”. It was avoidable.
As for the DS “-ia”s, “novia” means girlfriend in Spanish. So E-novia would be your electronic girlfriend. I’m pretty sure this wasn’t the actual intention, just an entertaining coincidence.
And the overlapping X for cloud-based tools… I’m going to guess that DS did it before Siemens.
Not sure about Onshape’s data policies. If I were starting a business, I’d would require access to all of the raw data that defines my parts/meta. At leas with SWPDM, I can access the SQL database and extract whatever I need with the API or directly to make use of it downstream.
We did have the name PDM/Works for a while which is a little less muddy I suppose. I guess SolidWorks PDM/Works Enterprise doesn’t roll off the tongue well and repeats “works”.
I see ENOVIA was originally IBM’s “Product Manager” software. Even though I used Catia v4, I don’t recall this product, but we were a small Catia house with 5 seats at the time and Dassault/IBM barely supported or spoke with us.
Product Center, Product Manager, I guess these kind of names fell out of fashion and it became cool to make up new words by combining sometimes irrelevant ones.
Novia also coming from Nova which is a good name for a product like “the platform”……except in their case Supernova might be more appropriate. Nice car too.