One of the most painful topics in PLM is related to implementations. Let me be more specific. PLM implementation is combined from several steps – installing a system, setting up data model, importing legacy data and implementing business workflows. I want to speak about that specific last one – business workflows. This is where things are getting very complicated, in my view. But let me step back to show you a big picture.
You probably familiar with type of software – workflow applications. Surprisingly, the technology of workflow is not very sophisticated. Just think about ‘state machine’. It is easy to implement. It can be a bit complicated to scale, but good software engineers can solve that too. There are many available workflow apps available.
Things are getting more tricky when you actually need to create a specific workflow. This is where some aspect of workflow, such as friendly user interface can shine and provide you some advantages. However, the biggest effort in implementation of workflows is related to capturing of actual data and process from people (or organization) you are making workflow for.
Inflated expectations of enterprise workflow applications
Workflow technologies created significant expectations from businesses over the last decade. Actually, some vendors renamed workflow apps with a fancy marketing name – business process applications (BPM). Here is a typical sales pitch you can hear from PLM vendor selling you business process applications in a way of workflow solution:
“Product development and manufacturing are complex. It requires lot of collaboration and, more importantly, decision making. Departments and people should be aligned and work together to guarantee a timely decision process to happen. There are many examples of such applications – new product development decision (NPI), change management (CM), supplier quotation (RFQ). PLM business applications (workflows) can help you to improve speed of processes and make informative decision about your product development”
So far, it sounds great. Where is the problem? The core of the problem is laid between workflow tools and people in the organization.
Implementation workflows – devil is in details
Any workflow application (PLM is counted in the list) is selling you an idea of configurable components you can design a business workflow almost without any coding (ask more about configuration vs. customization). And the assumption is that customer itself or service provider will make it happen. Even more, software vendor will sell you “industry templates” to leverage existing best practices. And this is 90% ready out-of-the-box.
The problem is that remaining 10% will take 90% of the time and will require a lot of legwork in your organization. It will require people and time to agree about final workflows, specific details about data that you need to capture and finally some coding to get missing information from existing enterprise applications, spreadsheets and databases. And it is very-very hard to do… and it is very-very hard to use, because after all, user interface around “generic workflow” is boring and can easy create a set of unmanageable forms with data with the need to follow current status in the graphic representation of workflow.
How to kill PLM workflows dream?
I think few decades of PLM workflow experiments provided enough information to kill the idea of PLM workflow app in the form it exists today. The cost to implement workflows is high and the effort required from customer is huge. It also creates a set of inflated expectations. The trick to implement good workflows is mostly dependent on the person capturing data model and process needs from a customer. And it is hard, painful and unpredictable, which leaves almost no space to make your customer happy.
What is my conclusion? PLM is focusing on how to streamline product development and manufacturing processes. However, it doesn’t mean the best way to do so is to sell and implement workflow applications. PLM business process applications is a glorified envelope around workflow engine, which can give short productivity gain, but mostly leads to complex implementation challenges and slow ROI. Is there a better way? Robust product data management and focus on specific customer user experience can bring better results. There is a lot of space to innovate here. Just my thoughts…