Develop your own application or buy from a "PDM Vendor"?
There are a lot of PDM or LCM Vendors out there who claim that they have just the solutions to your problems whether you have defined these or not. They sometimes claim that they have the "Total PDM (LCM etc) Solution".
There is no total solution for PDM or LCM just as there is no total solution for anything else, regardless of what the big vendors say. And very often the application vendors are unable to deliver practical solutions meeting your requirements in the way you expect.
An Extended Enterprise will always have to be FLEXIBLE:
- New Companies will be purchased all the time, each with their specific portfolio of applications and some will be sold.
- New Partners will come and old Partners will disappear. They will use what PDM applications they have and they will not easily adopt the "Group Standard Applications" if and when such exist.
- The diversity of applications need calls for transfer and/or transformation of data between different applications and differen function within each company.
- The global spread of Companies and Partners calls for interfaces, transfer and transformation of data between the different companies applications and databases. Lots of interfaces!
Flexibility implies that it is more important to have good and stable definitions (information model) of your Products, Parts, Options, Engineering Changes and the processes used for the Product Development throughout the Enterprise, than that all the companies are using applications coming from the same vendor. I have seen example of two companies within the Volvo Group that both have SAP – the systems/applications were totally incompatible anyhow.
Vendors will always oversell their PDM products. They will never deliver according to expectations. Possibly they will deliver according to their interpretation of your Specification.
Once you have signed the contract, you're hooked. You will have to make the upgrades at a time when the vendor launches a new version or their software. You cannot wait with an upgrade until it suits your needs. They never guarantee a safe conversion of data from an earlier version if this is more that two revisions old.
It is practically impossible to refrain from customization due to
- lack of compatibility with your company's Information Model that has been used as Product Definition by your personnel and your customers since way back,
- the internal "political situation" within the Enterprise and
- lack of functionality in the licensed application.
Once you have customized, you're hooked again. You will, more or less, have to repeat the customization every time there is an upgrade or a " patch" released.
By political situation above, I intend a situation at a company where you have to meet requirements based "turf requirements", power or pressure rather than on functional needs.
The alternative is to develop your own in-house application. Or is it?
I believe you will have the following alternatives:
- sign up with some big vendor like SAP, IBM, Dassault or similar that "covers it all". This approach is often suggested from the CEO, CIO or VP Engineering in big Enterprises after being "had" at a convincing seminar in Cannes. This will also inevitable imply that you will be developing your applications based on the ability of the Vendor Software rather than on User Requirements. You may even ignore the risks and let the Vendor take care of most of the integration with your down-stream applications.
- develop your own applications and integration with the down-stream applications
- combine the two alternatives above which implies that you are only licensing functions that is "best of breed" and are the best solutions to specified requirements. You specify requirements on lots of open APIs and easy access from other applications and computer environments and you take care of the integration yourself.
However, I believe that it should be investigated in parallel with possible commercial applications. In-house applications will always have the advantage that you can decide which development you need and when to upgrade where.
There is also the alternative that you buy an application that seems to fulfill a function that you actually need and that is missing in your current PDM set of applications and you interface this with your existing PDM applications. With modern Windows and Broker techniques it is fully possible to mix applications from different vendors with applications you have developed on your own.
- For Extended Enterprises, solutions based on good old "Mainframes" and Central or Common Databases are coming back even if the packaging is somewhat different. This makes it easier and more feasible to develop in-house applications.
- There is a risk that should be carefully investigated and decided: Replication of databases at several installations globally, where these are frequently used by many users simultaneously and where the files accessed are large (typically CAD files).
Such solutions will
- require an enormous band width and
- have very high costs and
- will be vulnerable for operational disturbances
So, do not let PDM vendors push you into buying something you're not sure you need and never buy a solution to problems you haven't defined yourself. Do not accept their convincing argument that there are other big enterprises that have bought their "solution". Let someone neutral make investigations and calculate if an in-house application can be an alternative to a purchased commercial application.
Run a "Make or Buy" investigation each time there is a situation where somebody needs a new PDM Application!
Basic requirements within an Extended Enterprise are:
The PDM/LCM application together with the MRP applications should always support
- Ability to run Product Development anywhere and to document the Products in the PDM/LCM application or in PDM/LCM applications tha can communicate.
- Ability to support manufacturing of any of the Company's Products anywhere: transfer/transformation to any MRP application.