Part of my continuous improvement process in this enterprise product lifecycle environment is to keep an eye on standards. When I started to work in PLM, mainly with Aras Innovator the first few discussions I had about standards were with Professor Pascal Morenton from Ecole Centrale de Paris. We were mainly discussing about how Aras Innovator was able to work with a datamodel which would comply with the AP214 standard regarding the Product – Part – Document section of the data-model. More recenlty I talked about some other standards in this blog like the whole collection of xml standards managed by OASIS. That was at a time I was focusing on standards to describe invoices. And as workflows and lifecycles are some of the main features of a PLM system, I was wondering if there were some standard defined. As some of you may know, I mainly focused on XML so we’ll explore standards with this description format.
Some Standard to handle Process/Workflows
I recently made some search on potential standards about workflows and lifecycles and I stumbled upon this document from 2002. As the document is almost 10 years old, I wondered if anyone have had a use out of it. So I used my tiny Twitter network with no success.
I wonder if any of the existing BPM solution or PLM solutions, is using a standard or at least a common way to describe and manage a workflow.
So, the first thing to watch is the data-model. And this document presents what is the data model of a Workflow Process Definition and also the data-model of a Workflow package containing processes, participants,…
I won’t go too much into details to talk about this models. The idea is just to show that there are some open structured definitions of a workflow which my have to be improved as the document hasen’t changed for years. Once the definition of the whole workflow model is set up, they show how they implement it with a real life example. Following is a simple order process:
If then, you read the document, you’ll see that accordingly to the workflow datamodel defintion, they define the order workflow example with an XSD schema. And this is an important element to me as XML is just everywhere on the web. And from xsd schema you can easily create robust User Interfaces which will comply to the defined model.
So, this definition exists… are there others? I don’t know and I would welcome any reference or any suggestion of such information. While functionnal consultants will work on standard process like CMII workflows for change management, we need to provide some standard basis to help the interoperability of systems and the understanding of how the system they are using works.
The Aras Innovator way
Being an active professionnal member of the Aras Community, I’ve tried to check if Aras was close to the same way of managing the workflow information. In order to do so, I’ve used our tool Aras2UML and I extracted the objects which were included in the process definition.
Some of the information we see here is close to the previous definition but there are differences that let us understand that it was not based on a standard. This is the only software I can really dive into to check that, but i’m pretty sure they all have different data-models.
A huge benefit for migrations
Migrating workflows never is an easy task and you always come up with an important loss of information from your legacy system. This is mainly because mapping these different data-models is most of the time very complicated. This is a dynamic part of the PLM mixing workflow definitions and their instanciation through workflow maps. If you have different ways of managing workflows, most of the time you’ll state that most of the instanciated workflows that are not finished will not be migrated.
It took me a while to write this article (holidays haven’t helped) and during this time, Oleg Shilovitsky made another article about Process simplification and the importance of Business Process management. This is an important topic to cover as I’ve seen during presentations that editing a workflow in front of a prospect is really one of the keypoint where he can see the software helping him on a daily basis for all his regular processes. My thought about that, and it’s just about working on a different level, we need to push editors to use standards or at least clear data-models before building new UIs and new features. I’m not sure yet about what would be the selling point for the editor by mentioning that he follows a certain standard but there must be some. I definitely miss a lot of information and experience for this article and I’m sure I’ll get back to this topic later. In the mean time, feel free to chat with me about it.