Most of the people commenting here haven't used those tools.
In a modern CAD system, like SolidWorks and Autodesk Inventor, the systems retain much more than geometry. There's lots of structure. "This is a round hole" (STL doesn't even have that.) "This part is a 6/32 screw, pan head, 3/4 inch length". "This edge of this part aligns with this other edge of this other part" "This part is made of mild steel". "This subassembly is made of these parts and is used in these larger assemblies". "The holes in this part are projected downward from the larger assembly so the holes will line up".
All the serious CAD systems today understand those kinds of things. An object is represented as a series of operations in constructive solid geometry, not a mesh. Relationships between parts are modeled. Many parts are parametric - some dimensions depend on other dimensions, and you can change one and have the others change appropriately. ("Appropriately" means this is more than scaling; making the thing longer doesn't turn round holes into ellipses.)
Capturing all that structure is complicated. Open Cascade doesn't do any of that stuff; it's just a geometry library.
Revision control for models is available. Autodesk has Autodesk Vault. Solidworks has Workgroup PDM. Revisions can be compared visually. It's a hard problem, and errors tend to have serious consequences, which is why most engineering shops have a rather rigid workflow.
Over in the animation world, there's Alienbrain, a very expensive revision control system for big animation and game projects. There, you have many different formats to coordinate - video, background art, motion capture data, textures, etc., with different people working on each.
These tools are expensive because the market isn't that big but the value they add is large.
I'm curious if you could recommend a way to do parametric design with SolidWorks.
The way my friend was doing it, the system ended up chugging like a pig and he had a rather impressive machine.
I'd prefer a system involved with a programming language. I get the impression that SW isn't geared to do that because the market they serve doesn't care for that level of control.
In a modern CAD system, like SolidWorks and Autodesk Inventor, the systems retain much more than geometry. There's lots of structure. "This is a round hole" (STL doesn't even have that.) "This part is a 6/32 screw, pan head, 3/4 inch length". "This edge of this part aligns with this other edge of this other part" "This part is made of mild steel". "This subassembly is made of these parts and is used in these larger assemblies". "The holes in this part are projected downward from the larger assembly so the holes will line up".
All the serious CAD systems today understand those kinds of things. An object is represented as a series of operations in constructive solid geometry, not a mesh. Relationships between parts are modeled. Many parts are parametric - some dimensions depend on other dimensions, and you can change one and have the others change appropriately. ("Appropriately" means this is more than scaling; making the thing longer doesn't turn round holes into ellipses.)
Capturing all that structure is complicated. Open Cascade doesn't do any of that stuff; it's just a geometry library.
Revision control for models is available. Autodesk has Autodesk Vault. Solidworks has Workgroup PDM. Revisions can be compared visually. It's a hard problem, and errors tend to have serious consequences, which is why most engineering shops have a rather rigid workflow.
Over in the animation world, there's Alienbrain, a very expensive revision control system for big animation and game projects. There, you have many different formats to coordinate - video, background art, motion capture data, textures, etc., with different people working on each.
These tools are expensive because the market isn't that big but the value they add is large.