It is amazing how much is spoken and written about Customer and Supplier, especially as they do not exist – they are Phantom Entities! Read more at There’s No Such Thing as Customer.
Recently, in a response to a comment on The Pathology of Business & Data Modelling I was addressing this topic once again and thought it would be useful to produce some models that show how Customer and Supplier are in fact Roles played by the entity Party.
Derivable Roles
Customer and Supplier are actually derivable Roles, that is, their existance can be determined by looking at transactional data within the enterprise and, consequently, do not have to be declared. A Customer is any Party to whom the enterprise has sold products or services. A Supplier is any Party from whom the enterprise has purchased products or services.

Because they are derivable entities, they ought never be declared, as this could cause data inconsistencies. Neither should they ever appear on a Logical Data Model!!
Declarative Roles
Some roles, such as Guarantor, Referee, Beneficiary, etc. cannot be derived and, consequently, need always be declared.

Knowing these structures will enable data modellers to aid the enterprise identify and manage their true Master Data Entities and avoid trying, and failing, to manage Phantoms.
Please Share
If you liked this post and think that it could be of value to a colleague or friend please feel free to share it by clicking on one of the social media links below
Multi-Dimensional MEM (MDM) Online Course
Online Mentoring
Information Flow Modelling eBook
Business Process Modelling eBook
Data Structure Modelling eBook

John:
Thanks for the thoughtful reply to the previous post and for sharing these models. There is such subtlety to data modeling and traps we as modelers fall into without realizing it that cause problems. I had never before considered roles could be derivable, nor had I considered that “conceptual” data model could be an oxymoron. I know I had struggled greatly with defining what a “conceptual” model is and you have helped explain why!
-Todd
Product is also a phantom entity. It includes some of the same attributes as party such as identity. A product is derived from raw materials if it is a physical object or as a set of resources if it is a service product Some products consist of both a physical object and service to maintain the object. Modeling products in this way provides the same flexibility as modeling party.
You are quite right, Richard.
One of the most difficult things for enterprises to do is the truly know what their ‘Product’ is. They think they do, until you ask them, “Which is your most profitable product?”
They then realise that ‘Product’ is quite different from what they supposed. It is usually some physical element, packaged in a particular way, under a particular brand and, often, with some service element or guarantee included.
The products of mobile telecoms companies are a point in question.
Regards
John