THE SQL Server Blog Spot on the Web

Welcome to - The SQL Server blog spot on the web Sign in | |
in Search

SELECT Hints, Tips, Tricks FROM Hugo Kornelis WHERE RDBMS = 'SQL Server'

Principles of Modeling: the Reproducibility Principle

This blog has moved! You can find this content at the following new location:

Published Thursday, December 22, 2011 10:48 PM by Hugo Kornelis

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS



Dm Unseen AKA M. Evers said:

Hi Hugo,

which specific vesrion of NIAM do you refer to? and what do you like specifcally about this NIAM version (binary,n-ary,nested, verbalisation) What are the deficits of current NIAM derivatives like ORM, FCO-IM and CogNIAM ?

December 23, 2011 3:30 AM

Hugo Kornelis said:

Hi Martijn,

I refer to the version Dr. Ir. Nijssen originally published in his book "Universele Informatiekunde". I don't know this version by any other name than just "NIAM". This version has its shortcomings and deficiencies (which is why I improved upon it).

The current derivatives you mention all have their strengths, but I like none of them as much as my own method, for different reasons:

* ORM - from reading Terry Halpins original book, it's clear that he does not embrace the Principles of Modeling. He does give a procedure that gives you the steps to make a model, but doesn't tell you what concrete examples to present the domain expert to find, for instance, the uniqueness constraints.

* FCO-IM - this method adds lots of extra information to the model that is only required to enable an exact reconstruction of the original verbalization of the atomic facts. I fail to see the importance of this, as verbalized atomic facts are just one of many steps between the original representation (concrete example in domain experts' jargon) and the end result (conceptual model). I don't think spending extra time to enable exact reconstruction of a representation the end users will not normally use is not a good use of my time.

* CogNIAM - this method is, as far as I know, published even less than NIAM. I haven't seen the last version; last time I spoke with Nijssen (a few years back now), he was considering moving back from grouped notation to elementary notation. That would be an improvement, since recipes for finding constraints are easier to make on elementary fact types. In the few publications I have seen on CogNIAM (and it's predecessor, Kenniskunde), I also noticed that Nijssen no longer gives recipes for the various steps, which I consider a shortcoming.

This all being said - the differences between these derivatives can be divided in two categories: differences in the procedure (recipes), or differences in the representation. But it's easy to apply the procedures for one of these derivatives and use the representation of another one. My seminar at SQLBits will focus completely on the procedure and the recipes. I use NIAM's IGD diagrams to represent the results, but you can easily use the same procedure and recipes with ORM diagrams, FCO-IM diagrams, CogNIAM diagrams, or even (if you are a bit masochistic) SBVR Structured English.

December 23, 2011 5:45 AM

Dm Unseen AKA M. Evers said:

Hi Hugo,

Thanks for the info. I'm using FCO-IM mostly. While i'm not an expert of verbalisation or all the procedures I do know partially why FCO-IM works the way it does, and that it is biased towards easy transformation and verbalisation (also after transformation!). I heavily rely on the transformation part of FCO-IM to produce all kinds of physical schema's (not just Normal Forms). I've never investigated pure NIAM because of this. Too bad I won't be at SQLBits X (I attended both 2011 spring & fall versions)

Also, I see that Universele Informatiekune is OOP. However, there is a free course book and free (for students) casetool for FCO-IM, and both are available in english. (there are even courses available in NL). Note that I currently use FCO-IM with DWH/BI projects and very little with OLTP stuff.

December 23, 2011 6:46 AM

SELECT Hints, Tips, Tricks FROM Hugo Kornelis WHERE RDBMS = 'SQL Server' said:

Almost two months have passed since my last blog post. And while it’s true that I’ve had (much) longer

February 16, 2012 2:48 PM

SELECT Hints, Tips, Tricks FROM Hugo Kornelis WHERE RDBMS = 'SQL Server' said:

In 1994, I learned a method for data modeling that is based on three principles. I immediately knew that

May 5, 2012 3:31 PM

Leave a Comment


About Hugo Kornelis

Hugo is co-founder and R&D lead of perFact BV, a Dutch company that strives to improve analysis methods and to develop computer-aided tools that will generate completely functional applications from the analysis deliverable. The chosen platform for this development is SQL Server. In his spare time, Hugo likes to visit the SQL Server newsgroups, in order to share and enhance his knowledge of SQL Server.
Privacy Statement