|
Wiki Home
Members
To join, please contact us. Improve MIKE 2.0
Need somewhere to start? How about the most wanted pages; or the pages we know need more work; or even the stub that somebody else has started, but hasn't been able to finish. Or create a ticket for any issues you have found.
|
Data Modelling ConceptsFrom MIKE2.0 Methodology -> You are here: Product Solution Offerings > Software Development Readiness > Category:Open Methodology Framework > MIKE2:Ways to use MIKE2.0 > Data Modelling Concepts Data Modelling Concepts described the different steps in the data modelling process for MIKE2.0 as well as a comparison of different techniques that are used.
OverviewMIKE2.0 recommends a 4-step approach to modelling:
These techniques are followed across the different approaches used for building information platform models. Conceptual ModellingConceptual Models record the broad objects / things (sometimes called ‘subject areas’) that the business interacts with and names the relationships between these. Technically these are known as Entity and Relationships and are recorded on an Entity Relationship (ER) Diagram. The purpose of the Conceptual model is to discover the big ticket items and to name them in an agreed way. Gross level business rules are discovered, challenged and verified. The Entities must be named in client / business terms for example it is important to agree that ‘Client’ is to be used rather than ‘Customer’. Abstract terms, such as ‘Party’ must be avoided. Many ER conventions are relaxed for the Conceptual Model for example many-to-many relationships are encouraged. Conceptual Models are usually simple to prepare taking no more than a day or two. Common sense is often a good guide to get started. For example, just as a consumer, one can predict that ‘Customer’ and ‘Policy’ are likely to be two entities for an insurance company. One can further suggest that the relationship will be “Customer owns many Policies” and “Policy is owned by many Customers”. At this level the business can verify the truth or otherwise of these statements. Logical ModellingThe Logical Data Model (LDM) is a more formal representation of the conceptual. Relational theory is used to normalise the data. Like objects may be grouped into super and sub types. Many-to-many relationships are resolved and so on. Additional concepts may be introduced to the business as a result of this work. (eg ask the Business ‘Do we care that employees can also be Customers?’) Similarly concepts may be dropped, usually these are self evident truths that no IT system is interested in enforcing. For example a rule such as ‘A Company must be registered before it can trade’. Greater complexity is usually added as decisions about any need for history are made along with decisions about logically unique keys. The Logical model can, and should be, ‘proven’ by playing business transactions against it. If Customers can change their Address then the model must show a connection between ‘Customer’ and ‘Address’. Physical ModellingThe Physical Data Model (PDM) should be the representation of the underlying database implementation. As a model the aim is still communication – many tool vendors concentrate on being a tool for DDL generation at the expense of this communication. In many cases the physical model flows naturally from the logical. Each entity is implemented as a Table, each relationship as a constraint etc. Often referred to as a Third Normal Form (3NF) implementation. 3NF Implementations are extremely common for enterprise ODS as they yield consistent insertion rules, the database itself enforces most of these regardless of the different sources being loaded. If however a generalised database design or packaged implementation is to be used then the physical model may bear little or no resemblance to the logical. In this case an additional layer of documentation is required that shows how and where each logical entity and relationship is to be implemented. This is critical if the business perspective is to be carried through to the physical design. The Physical model can, and should be, ‘proven’ by mapping the logical entities and relationships to the physical. Special physical / performance requirements can also be proven but must remain a secondary objective. In addition if a generalised design is used (or referential integrity is turned off in the database) then consistence of insertion etc can only be guaranteed by providing a common code interface to the data; either a message or ‘CRUD’ layer. Comparison of Modelling TechniquesComparing Logical and Physical Data ModellingExample of differences between the LDM and PDM are presented below. When the LDM is used as a basis for capturing Data Warehouse requirements, the select items may differ or be added to.
If a vendor ’ s common model (e.g. IBM FDW/BDW, NCR FSLDM, etc) is leveraged, the approach to designing the LDM may align more towards using it as a reference model to check against or as basis to start modelling from. The use of a common model can minimize the level of effort and time involved to produce a similar model if pursued without any such input. There will not always be a conceptual model as input to the logical modelling process as not all projects define a conceptual model. Comparing Relational and Dimensional ModellingThe modelling approach will be different depending on whether relational or dimensional modelling techniques are being employed. Examples of differences between the relational and dimensional modelling use and structure are presented below. It is assumed that detailed requirements have been identified regardless of the modelling difference.
Relational (normalized) Modelling ApproachExamples of activities should include the following:
Dimensional (de-normalized) Modelling ApproachExamples of tasks should include the following:
Data Warehouse Modelling ConsiderationsIf the model is used to support Data Warehouse versus operational requirements, additional considerations may need to be applied. While some of the activities listed below deviate from a pure modelling approach, they are appropriate as per the dynamics of a Data Warehouse. These considerations may apply to either relational or dimensional modelling based on requirements, schema use, where and why. Examples of these are:
Lessoned LearnedThe majority of activity related to Data Warehouse modeling is directly applicable to a dimensional model, as the use and method of access helps influence the design of the initial model schema. If similar DW considerations are applied to a relational model, there needs to be an appropriate reason for doing it ("known" performance issues, usability, etc). As the relational model scheme offers the most flexibility in a third normal form schema, de-normalizing of it may have a negative influence on its flexibility. |
Wiki asset search
Toolbox
Views
Wiki Contributors
|

