I think the agreement about importance of the data model among all implementers of PDM / PLM is almost absolute. Data drives everything PDM / PLM system is doing. Therefore, to define the data model is the first step in many implementations. It sounds as something simple. However, there is implied complexity. In most cases, you will be limited by the data model capabilities of PLM system you have. This is a time, I want to take you back in history.
Spreadsheet Data Model
Historically, it became the most commonly used data model. And the reason is not only because Excel is available to everybody. In my view, it happened also, because tables (aka spreadsheets) is a simple way to think about your data. You can think about table of drawings, parts, ECOs. Since almost everything in engineering starts from Bill of Material, to think about BOM table is also very simple. The key reason why in many cases spreadsheet model became so wide-accepted are simplicity and absolute flexibility. Engineers love flexibility, and this data model became widely popular.
Relational Data Model
This data model was developed by Edgar Codd back more than 50 years ago. Database software runs on top of this model, and we got what known today as RDBMS. Until second half of the last decade, it was the solution all PDM /PLM developers were relying. First PDM systems were developed based on RDBMS. However, they had low flexibility. Because of rigorous rules of this model, making changes was considered as not a simple task. One of the innovations of late 1990s was to develop a flexible data model as an abstraction on top of RDBS. Almost all PDM/PLM systems in production today are using object abstractions developed on top of the relational data model.
The challenges of Spreadsheets and Relational Databases
Despite these technologies are proven and used by many mainstream applications, it is far from perfection. One of the product development demands is flexibility. Spreadsheet model can deliver that, but gets very costly within the time. Relational data model can combine flexibility and support manageability of data. However, it becomes to make a change in these models is costly. Identification, openness and expandability is problematic in relational data models opposite to some other web-based solutions.
Future data models – NoSQL, RDF, etc.
Thinking about what comes in the future, I want to spell to buzzwords – NoSQL and Semantic Web. I can see a growing amount of solutions trying to adopt a variety of new data platforms. NoSQL comes to the place as an alternative solution to Relational Database. If this is a first time you’re hearing this buzzword, navigate to the following Wikipedia link. NoSQL is not all the same. It combined the whole group of solutions such a key-value stores, object databases, graph databases, triple store. Semantic web is collaborative movement led by W3C. The collection of Semantic Web technologies (RDF, OWL, SKOS, SPARQL, etc.) provides an environment where application can query that data, draw inferences using vocabularies, etc. Part of these standards something called Linked Data – a collection of data set in open formats (RDF) that shared on the web.
What is my conclusion? Many of the technologies used by PLM companies these days are outdated and came from the past 20-25 years. There is nothing wrong in these technologies. They are proven and successfully used for many applications. However, in order to achieve the next level of efficiency and embrace future of PLM, new horizons need to be explored. Data flexibility, openness and interoperability – these elements are absolutely important in the future of PLM. Options to use future data models coming from past 10 years of web experience need to be explored. Important. Just my thoughts…