Why PLM needs to learn Open World Assumption?

December 6, 2012

Have you heard about OWA (Open World Assumption)? If you completed your Math 101 and Mathematical Logic time ago, refresh your memories by navigating to the following Wikipedia article. Here is the definition:

In formal logic, the open world assumption is the assumption that the truth-value of a statement is independent of whether or not it is known by any single observer or agent to be true. It is the opposite of the closed world assumption, which holds that any statement that is not known to be true is false. The open world assumption (OWA) is used in knowledge representation to codify the informal notion that in general no single agent or observer has complete knowledge, and therefore cannot make the closed world assumption. The OWA limits the kinds of inference and deductions an agent can make to those that follow from statements that are known to the agent to be true. In contrast, the closed world assumption allows an agent to infer, from its lack of knowledge of a statement being true, anything that follows from that statement being false.

The OWA approach is opposite to CWS (Closed World Assumption) used by programming languages and databases.

The closed world assumption typically applies when a system has complete control over information; this is the case with many database applications where the database transaction system acts as a central broker and arbiter of concurrent requests by multiple independent clients (e.g., airline booking agents). There are however many databases with incomplete information: one cannot assume that because there is no mention on a patient’s history of a particular allergy, that the patient does not suffer from that allergy.

PDM and PLM, as a typical database-driven applications, are following CWA approach. In many situations it makes a lot of sense. When you releasing BOM to production you want to be sure all line items in this Bill of Material are secured and released. However, it made me think that CWA might provide some limitation to PLM application development today and even more in the future. I’ve been reading Semanticweb.com blog – Introduction to Open World Assumption. Navigate to the link to read more. The article provide a good explanation about systems with complete and incomplete information. Here is the snippet of this definition.

The CWA applies when a system has complete information. This is the case for many database applications. For example, consider a database application for airline reservations. If you are looking for a direct flight between Austin and Madrid, and it doesn’t exist in the database, then the result is “There is no direct flight between Austin and Madrid.” For this type of application, this is the expected and correct answer. On the other hand, OWA applies when a system has incomplete information. This is the case when we want to represent knowledge (a.k.a Ontologies) and want to discover new information. For example, consider a patient’s clinical history system. If the patient’s clinical history does not include a particular allergy, it would be incorrect to state that the patient does not suffer from that allergy. It is unknown if the patient suffers from that allergy, unless more information is given to disprove the assumption.

Lifecycle and Incomplete information

I came to conclusion that incomplete information modeling approach (supported by OWA) can provide some advantages to the systems intensively focusing on product lifecycle modeling and lifecycle information modeling. Think about lifecycle as a information discovery. Modern PLM business problems are facing situation of information incompleteness almost every day. New regulations, changed business requirements, new product configurations, etc. All these situations require to apply changes to existing PLM systems. Flexibility is one of the key requirements. OWA approach can improve the ability of PLM system to support a change and to decrease the cost of this change.

What is my conclusion? Flexibility and cost of change are two major requirements to PLM systems today. The time when PLM development was focused on the OTB (Out of the box) approach is over. The ability to apply changes or to connect a new source of information without modification of the system code can be an interesting opportunity. PLM developers can check how to apply OWA principles and to make PLM system more robust and reliable. Just my thoughts…

Best, Oleg

Picture credit semanticweb.com article.


What is the right data model for PLM?

August 17, 2012

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…

Best, Oleg

Image: FreeDigitalPhotos.net


How to improve collaborative processes for the global supply chain?

March 17, 2009

In today’s world, more and more companies need to collaborate globally. In the supply chain, this is a result of companies wanting to optimize their operations and having more suppliers involved in all processes of their activities. There are many solutions that companies are using for the global supply chain. With the current development of online tools, internet, and services, most of these tools have established online spaces where you can share and exchange information and transmit messages.

 But something makes me feel unhappy about these tools and spaces. What I dislike is that most of them create their own eco-system. I think there will be a significant improvement if we are able to connect these solutions to organizational processes. But this is not always possible because companies today do not share their processes. In most of the cases, they use different tools to implement business process management in their organization. 

global-collab

 

How can you make this collaboration possible?  In my opinion, development of process interoperability can provide a new dimension in how company processes work together. The ultimate requirement is to keep processes separate,  but, at the same time, allow them to work together. The main problem of such integration, as I mentioned above, is that because business processes are separate, data-base schemas are different. Each company process uses its own data schema to represent information which is tightly bound to a specific process implementation.

 Today, I can observe two major ways process integration occurs: (1) mapping based approach; (2) query based approach.

 For the mapping based approach, the integration creates a map between two local schemas. By doing this, a new “federated schema” is created. In some cases, companies are trying to use one of the schemas as a federated one. This is not always possible as sub-sets of schemas are used. But whatever the final schema is, this process is complicated and requires multiple mapping operations to happen. This way is also expensive, in my view, for long term support and changes. You can see some examples of this approach here: http://www.research.ibm.com/journal/rd/485/zhu.html

 Another approach is query based. In this approach, a special interoperable query system needs to be developed. This “query” is able to establish a connection with both (or multiple systems) and extract/load information. With the latest development of SOA and Web Services, this way has become very popular. You can see example of this approach here: http://www.oracle.com/applications/pip-for-oracle-product-hub-data-sheet.pdf

 I’m thinking about different way – integrated ontology development. This ontology would place a super-set on top of both business process models. Ontology, in simple words, is a data model. So, we need technology and/or a tool that wold allow us to develop an intermediate data model. There are such technologies in today’s world developed as part of Semantic Web W3C initiative – technology based on RDF (Resource Description framework) and OWL (Web Ontology Language). 

These technologies have been developed for the past 7-10 years and, in my view, have become more and more popular. They allow you to establish a global model for content and message transfer, thereby simplifying communication. The main advantage of this collaboration is that a new level of data models will be created. These data models, represented by RDF/OWL, will allow companies to establish a connected data environment that can be used by multiple systems.

 And, to make some fun, take a look on this video. Even if content is not related to supply chain yet, the core idea of integration is the same. 

 


Follow

Get every new post delivered to your Inbox.

Join 248 other followers