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…