Entity Relationship Modeling - Generic or Specific Models?
(Page 20 of 21 )
We will look into the use of generic or specific database models in this keynote. There are many analysts who advocate for using generic ER models to build a system, while others favor building it costumer-specific. Actually, I slightly disagree with both directions.
I have studied many generic models. One common denominator is that generic models try to capture everything imaginable in a certain field of business, like financials, production, etc. If you need to cover everything imaginable, you are probably already a customer of Oracle Financials, Peoplesoft, or some other high-end ERP system.
The reason for starting a project involving ER modeling, design, development and deployment of an application, is that the business wants to build something unique; a new way of treating customers, new supply logistics, or anything else that gives it a competitive edge. A generic model will involve many entities, relationships, and probably business rules that are not relevant to the business. It means developing functions that will never be used, an extended database with tables that are never accessed, triggers that fire and execute nothing. Even this code-
begin
null
;
end;
Will have some impact on performance if it is executed often enough each day. A model specifically designed for the business sounds good. However, you have a chance of narrowing your scope too much, so that you build inflexible limitations into the system. Refer to the keynote on Analysis Trap 2. An experienced analyst brings with him into the project a perspective based on earlier experience. He is able to recognize patterns in different areas of the business domain.
The customer is an area for which a pattern can be given. There are many common questions regarding customers, which can be reflected in a recognizable pattern.
How we build a sales order is also a common pattern. At some point there is a customer involved, the order is about one or more products, it should be effectuated and delivered, someone has to pay, etc.
Next: Analysts Experience >>
More Development Cycles Articles
More By Alf A. Pedersen