Re: Modelling Considered Harmful

From: paul c <toledobythesea_at_oohay.ac>
Date: Fri, 22 Apr 2005 20:20:52 GMT
Message-ID: <E0dae.1108595$6l.61481_at_pd7tw2no>


On the face of it, I'd say the referred post was asking a question about the word's etymology. On second thought, the etymology is certainly murky and I'll bet those dictionary definitions were written before Codd or the Codasyl people started typing. Besides, I've met 'database' people who called themselves modellers and proceeded from that to claim that modelling consists of whatever they happen to be doing at the moment, in other words, anything and everything. Just to prove my point, ha ha, in those shops, my observation was that they spent most of their time trying to think what to do next.

I came to avoid discussing definitions of any sort with that sort because I was usually, and uselessly, told that 'such-and-such means whatever I say it means'.

As for databases, which I'd say is a modern word, and apart from the circular blonde joke (where the model doesn't get the joke about the blonde who didn't get the joke), various uses of 'modelling' seem to have taken on a life of their own, just as adjectives become nouns, nouns become verbs and so on. More often than not, the meaning is actually diffused rather than clarified. I have seen many consultants use this phenomenon to great financial advantage but whenever I hear it done I am usually suspicious that the speaker doesn't know what he is talking about. Accordingly, nobody else does either which helps explain those long meetings.

In modern times, the OO programming people seem to have some claim on the word as it relates to simulation whence many of their techniques / languages sprung. In the DB world, I'm not sure whether Codd invented the term 'data model' but he certainly exposed it, not to mention defined it. However, he was talking about about a 'model of data', NOT a 'model of reality'. I'm not sure when the latter phrase became apropos to databases, but it certainly seems endemic maybe even epidemic. It seems an overly ambitious usage to me.

Codd's motivation appears to have been very much to mechanize the manipulation of 'records' in a formal way, much as logicians had previously systematized their statements. That's the context I'd suggest be used. If people insist on lifting the term 'modelling' from this context then I'd suggest they prefix it with some adjective that tells us what they are talking about - for example box-and-arrow modelling or uml modelling. Then we'll know they aren't talking about a data model as defined by Codd. (Aside - My understanding is that his data model was based more precisely on this than on sets per se, relations amongst the latter being rather an aid to make a vehicle out of his idea that could compete with IMS and filesystems although I suspect that if one accepts his model more or less as given, then whether I am right or wrong about this doesn't matter even though predicate logic was amended in the last two hundred years to refer to mathematical sets.)

The meanings of some words do change their meaning over time. For example, propaganda was a respected word around 1920 during the advent of the American advertising business. During the 1930's it was lifted by I don't know who to mean something quite sinister. Even the meaning of a very simple word was publicly debated by a recent US president and his prosecutor (can't quite remember the word, maybe it was 'is' - if so, that's fitting given the frequent DB confusion over 'has' as well).

Context (not who we are nor where we are nor what we think, but whatever we are talking about) is always essential for establishing meaning and my take at it is that we should take 'modelling' to mean the application of Codd's 'data model' rather than to lift the word / expand it / diffuse it to refer to other activities that are clearly subjective and lack formality and strictness. Otherwise, we might as well be talking about a fashion show. Given agreement on context, I don't see how the confusion Kenneth suggested is possible, ie. confusing a car with a horse.

Today, in the Western database world, it is surprising how many people who talk about models claim to be talking about reality when in reality it is the models that are intended to say (record if you prefer) things about reality.:)

On the other hand, maybe the very question is harmful as it may dispose us to dispose of the word. Once you start banning words it is a slippery slope to totalitarianism. However, if you are suggesting that certain people's usage of the word is harmful, ie. confusing, then I have to agree. But then much of everything certain people do is confusing and potentially harmful.

pc

Kenneth Downs wrote:
> I wonder if anybody would care to dispute the thesis that use of the term
> "modelling" with regard to databases does more harm than good.
>
> The case can also be stated that databases are NOT models of reality. They
> are rather record-keeping systems. If it can be shown that databases are
> record-keeping, that record-keeping is not modelling, then it stands that
> we would not call databases models.
>
> We need to define models and records. Leaving out the silly definitions
> like a person posing for a picture some useful definitions of model are:
>
> 1. A miniature representation of a thing
> 2. Something intended to serve, as a pattern of something to be made
> 3. Anything which serves, or may serve, as an example for imitation
> 4. Any copy, or resemblance, more or less exact.
> 5. An abstract and often simplified conceptual representation
> of the workings of a system of objects in the real world
> 6. a simplified description of a complex entity or process
>
> For "record", we leave out things like a 12" disc of vinyl, and we get some
> nice stuff. I like this first one out of Webster's for the verb record:
>
> To preserve the memory of, by committing to writing, to
> printing, to inscription, or the like; to make note of; to
> write or enter in a book or on parchment, for the purpose
> of preserving authentic evidence of; to register; to
> enroll; as, to record the proceedings of a court; to
> record historical events
>
> Here is the noun version:
>
> A writing by which some act or event, or a number of acts
> or events, is recorded; a register; as, a record of the
> acts of the Hebrew kings; a record of the variations of
> temperature during a certain time; a family record.
>
> Others:
>
> 1. That which serves to perpetuate a knowledge of acts or events;
> 2. anything (such as a document or a phonograph record or a
> photograph) providing permanent evidence of or
> information about past event
>
>
>
> It should seem almost painfully obvious that the standard examples of
> employees, sales orders, inventory activity and so forth fit far more the
> definitions for "records" than they do for "model". One could stretch a
> point and contend that a sales order fits the definition of model because
> it is "Something intended to serve, as a pattern of something to be made",
> but really it is just instructions.
>
> Taking the other side, if you are using a database to do a huge weather
> simulation, then we argue that the application is modelling reality, but
> actually this is not so either. The tables cannot run the simulation, they
> can only record the results of some other program doing so. Though the
> records are the records of a model, they are still records, and are not
> themselves a model.
>
> So where is the harm? Well, there is always a problem when you call a car a
> horse, because you risk stuffing hay down the gas pipe and you can really
> scratch the finish with those brushes. Any attempt to advance the theory
> of databases should understand them for what they are, or the theory will
> go off in the wrong direction.
>
> Nor is the meta-data a model. The meta-data for the employees table does
> not model the company, it specifies what information must be recorded to
> conform with law and policy. since meta-data is data, the meta-data is a
> record of what must be recorded. Still no model.
>
> Agree? Disagree?
>
Received on Fri Apr 22 2005 - 22:20:52 CEST

Original text of this message