Why versioning is complicated in PDM?

by Oleg on March 7, 2013 · 6 comments

After 20+ years of CAD and PDM development, the issue of versioning is not solved. How about that? I hope, I’ve got your attention :) . Versions, revisions, changes, CAD models, drawings, parts… My experience is that as soon as it comes to engineers, revisions are getting messy. I touched it in my previous posts few times. If you want to refresh your memories navigate to Revisions in CAD, PLM, ERP: old problems or new challenges? A bit old (from 2010), but still very relevant post – Future CAD-PLM and Assembly Version Management. As a confirmation that topic is alive and not solved, I just read Minerva blog – Versioning, different meaning from one activity to another by Yoann Maingon. It is short a sweet, so take few minutes and have a read. Yoann is speaking about “difference in intentions”. Here is the main point of the writeup:

…it is sometimes hard for people to have a common way to think about versioning. For the software development oriented person, versionning means saving or tagging. It means that the actual work has to be saved because we want to keep a state of the actual work. “I want to keep a state, I make a version, this version is stored”. In my view, related to main PLM concepts, versioning is creating something new. “I want to start a new work or I want to change a document, I version it. my new version is my working copy”.

If I speak about CAD/PLM software, here is the root of the problem. PDM systems create too many options in the mechanism of versions by implying “creation of something new” in place where it is absolutely unnecessarily. It was done by so many PDM systems in so many different ways with one common mistake – try to capture the intent of change and related dependent changes. The right answer to me is different. Versioning (and PDM is not different from software development and just Microsoft Word) is only about making “change” in the content (3D model, drawing, source code, assembly, configuration, etc). The role of PDM software is to capture the change and make it available for history tracking. You can ask me what about Parts, Revisions and other configuration management aspects? In my view, the answer on this question in the context of PDM/PLM is straightforward – use Parts, Part Numbers and Part Revisions (if needed).

What is my conclusion? Versioning is a mechanism that helps people to capture a change. Not the intent of change, but the change. It must be flexible and configurable, but at the end of the days, simple and reliable. I don’t want to miss my changes and I don’t want to run as a dog in order to find a right change.  Most of PDM/PLM software created a complicated versioning systems. I don’t see much difference between PDM and software. With the amount of software code we have in products, these two options will come together sooner than later. Just my thoughts…

Best, Oleg

Share
  • Gregory Perasso

    I think Versionning is complicated because many companies used it exclusively to capture a change(and may be more precisely “content change”). Even on non “released” datas. without thinking of the whole downstream lifecycle information chain …And it not possible to manage change with only versionning

    There’s lot of other way to track different types of change.

    -basically checkin/checkout which provide the same level history of a “content change”
    -lifecycle state change (maturity / signature change)
    -effectivity change … (applicability in production, support)

    -one off or derived study … (explore ideas , change analysis before implementing the “real” new Revision)

    all is turning around Configuration Management (If I revise a component, should I revise the father … until the top of the BOM ?) depending of interchnageability, need of trackability in production or support …Minor or Major change … impact on souricng sub contractors if a drawing revision is changed…

    regards

  • Vic

    Perhaps the question we should be asking re versioning is: why do we need it? In my opinion, it’s only a matter of time before PDM/PLM manage docs on the cloud the same way Google Docs (aka Drive) work: there is just one “current” document everyone works off of… versions are automatically tracked and archived for anyone to access as needed. Until that day, I think versioning is not going to be solved.

  • beyondplm

    Vic, thanks for the comment! It is hard to disagree. To me is less question of Google-like or not. However, simplicity always wins… Today it is complex. Best, Oleg

  • beyondplm

    Gregory, thanks for your comments and insight. Here is why I see it differently. Configuration management and many other aspects of “changes” and “type of changes” are taking me to change management processes, ECO/ECN/ECRs, interchangeable and non-interchangeable parts, configurations, etc. All this is beyond “CAD data management” (PDM) changes, which is simply capturing modifications of files. Does it make sense? Thanks, Oleg

  • Loïc

    Hi Oleg,

    I actually see lot of confusion with the difference terms used: version (eventually major , minor), revision, iteration, sequence, branch (software), etc. They all have different meaning, but are also confused the one for the other.
    You explain that user wants to trace the changes, but do not forget that developments of alternatives can also be represented by different revisions of the same design.
    I would say it often does not make sense to store every change as a single object: too many information would be saved (cost) without added-value.

    You get even more fun, when you want to combine this thematic with the configuration management but it would be an other thema.
    Moreover, you have to deal with each specific possibilities of the PLM system. Teamcenter, Enovia, Windchill, etc. all have different ways to treat them.

    Maybe a datamodel based on STEP (PDM Schema) would provide a common und unambiguous description of revisions/views on each product, but I fear it would then be a little too complex for most of the users.
    Regards, Loïc

  • Jean-Francois PLUSQUELLEC

    Hi Oleg,
    thank you for all your posts on the PLM and these mechanisms.
    I’ve also a little experience in the mechanical industry and in the PLM. And I
    would like to add a comment about this one and your conclusion. In fact, I
    don’t know if the word “Version” is the same in french or a
    “false friend” – we share drawings with English teams. However,
    all does not seem to apply the same rules.

    In mechanical industry, we use two notions to distinguish the intent of
    change. The first one is the version of the part (in french “Indice”)
    to able to track the product history through time and therefore to have full
    traceability (successive transformations of the part). The second one is the
    revision of a document (a drawing for example) – also revision in french. The
    document is simply the support of the caracterisation of the part. We take a
    new revision to clarify a plan or correct an error.

    In conclusion :
    - a version of a part for traceability of its evolution
    - a revision of a document to add a precision or correct an error, an ambiguity

    Best, JF

Previous post:

Next post: