Can express inheritance relationships
Posted: Wed Jan 22, 2025 4:09 am
Database data models use ER diagrams, but PIM products have a mechanism for hierarchically expanding product information, so expressions like Java inheritance relationships are more convenient.
For example, when dividing "Products" into "Standard Products," "Custom-made Products," "Set Products," and "Software," the attributes common to all products are included why you need this database in the "Product," and the attributes required for each product are defined in the data model derived from that.
about-datamodel.png
In the extreme, it is possible to express this using an ER diagram, but in the end, it would require consideration of the internal structure of the PIM product, making the diagram complicated and making it difficult to notice inconsistencies in the structure.
Therefore, I personally recommend expressing it using a UML class diagram.
Thinking chronologically
You need to consider the lifecycle of adding, updating, and deleting data.
Specifically, consider the following points:
Registration
What is the minimum set of attributes required for registration?
Is there a relationship between the release date, publication date, or other date-specific information and the timing of registration?
Is there any data that needs to be registered at the same time or prior to the registration?
update
Which attributes of a product can be updated and which cannot (e.g., code cannot be updated)?
Are there any attributes that should be automatically updated by updating the product (public flag, approval status, etc.)?
Is there any other data that needs to be reflected when updating the product (relationship with images, set configuration, etc.)?
For example, when dividing "Products" into "Standard Products," "Custom-made Products," "Set Products," and "Software," the attributes common to all products are included why you need this database in the "Product," and the attributes required for each product are defined in the data model derived from that.
about-datamodel.png
In the extreme, it is possible to express this using an ER diagram, but in the end, it would require consideration of the internal structure of the PIM product, making the diagram complicated and making it difficult to notice inconsistencies in the structure.
Therefore, I personally recommend expressing it using a UML class diagram.
Thinking chronologically
You need to consider the lifecycle of adding, updating, and deleting data.
Specifically, consider the following points:
Registration
What is the minimum set of attributes required for registration?
Is there a relationship between the release date, publication date, or other date-specific information and the timing of registration?
Is there any data that needs to be registered at the same time or prior to the registration?
update
Which attributes of a product can be updated and which cannot (e.g., code cannot be updated)?
Are there any attributes that should be automatically updated by updating the product (public flag, approval status, etc.)?
Is there any other data that needs to be reflected when updating the product (relationship with images, set configuration, etc.)?