Path: utzoo!attcan!utgpu!cunews!cognos!colinm From: colinm@cognos.UUCP (Colin Moden) Newsgroups: comp.databases Subject: Re: Entity Models and BCNF Message-ID: <9160@cognos.UUCP> Date: 21 Dec 90 10:04:28 GMT References: <9129@cognos.UUCP> <34942@netnews.upenn.edu> Reply-To: colinm@cognos.UUCP (Colin Moden) Organization: Cognos Inc., Ottawa, Canada Lines: 68 Aaron, I think you and I are on the same side. I too believe that Entity Modelling can be used at the "Logical" level as well as the "Conceptual", and can provide a full replacement for Normalization where Entities & Relations correspond 1-1. Anyway you asked for a real example, so here is one from a customer in Belgium. (The context of this was that I was teaching them to Model before programming). The system is Car insurance and they came up with the Entities Policy Types (Key : Policy type No) Policy (Key : License plate, Policy type No, Start_Date) Vehicle (Key : License plate) Owner (Key : Owner Reference No) I suspected there was more to it than that and asked what the Attributes of Vehicle were, they gave. License Plate, Manufacturer, Model, Engine Capacity, Date of Manufacture, Car Body type, Insurance group, ... By using normalization I was able to show them that they had missed out entities like : Car manufacturer, Model, Insurance Group Similar work on Policies identified : Claims, Payments, Quotes, Receipts etc Of course a good entity modeller would have found these anyway, but few of us are perfect, and Entity Modelling has no way of checking when you are Done. By listing attributes and dependencies & normalizing you do get an extra viewpoint and a check that you are complete. Of course if you miss attributes or dependencies nothing will save you, but you are at least internally complete & consistent. Part of my job is to train people to design systems, by using this combination of Entity Modelling and Normalization people can check their own work and learn from it. Initally people spend their time 50% on each, and find 75% of their entities when Normlizing. After a couple of years the Normalization checks become almost subconscious and they spend 90% of the time on the ERM, 5% writing down the attributes and 5% checking that it is fully normalized with a 95% success rate. But it's still a useful check and the addition of attributes at this stage is the next step anyway. Colin Moden -- Colin Moden Voice: +44 344 486668 Westerly Point Cognos Incorporated FAX: +44 344 485124 Market St uucp: colinm@cognos.uucp || uunet!mitel!cunews!cognos!colinm Brackell, Berks UK RG12 1QB