Research
The research mentioned here was designed to support my nine month dissertation project which was part of the three year Master of Science Degree in Information Systems Management at the University of Liverpool.
For my project, I designed a scientific experiment to test the hypothesis that "ORM is at least 25% more effective than ER and UML" and my experiment did not falsify the hypothesis.
To the best of my knowledge, this was the first ever scientific investigation into the effectiveness of UML and ER.
Since all good experiments should be repeatable, I have provided details of the experimental procedure which you can read about by clicking on the links in the following text.
------------------------------------------------
The Experiment aimed to test the hypothesis that Object-Role Modeling is at least 25% more effective than approaches based on either ER or UML. The experiment was managed via this website but the people who did the experiment had an average of 4.7 years experience in modeling techniques.
The experiment uses a standard input text of just 331 words which describes some functions of an imaginary airline. The experimental procedure requires each participant to convert the 331 words into a UML "data only" class diagram using one of the three methods described in the briefing packages.
The experiment requires that the person who does the experiment knows UML well enough to be able to design a "data only" class model in UML The experiment uses three different procedures. The first procedure uses the standard UML "Use Case" approach, the second procedure uses Entity-Relationship method and the third procedure uses the Object-Role Modeling method. Each of the three packages is explained below:
UML briefing package: This package is for people who have UML skills. This procedure asks that you use the "standard UML approach" defined at
http://www.ibm.com/developerworks/rational/library/5383.html.(Nov 2014 note: Since 2008, IBM has changed its website and broken the link. I have recently asked IBM to provide an updated link.)
The standard UML approach requires that you begin by creating UML use case(s) and then use the UML use cases to create a UML "data only" class model.
Click for the UML briefing package
ER briefing package: This package is for people with both ER and UML skills. This procedure asks that you use any ER technique to create an ER model and then convert the ER model to a UML "data only" class model.
Click for the ER briefing package
ORM briefing package: This package is for people with skills in Object-Role Modeling and UML. This procedure asks that you choose one of three popular ORM tools (VisioModeler, VEA or NORMA) to create an object-role model and then convert the object-role model to a UML "data only" class model. The briefing document contains a summary of the ORM to UML conversion procedure that is explained on page 389 of Terry's "Big Brown Book" (Information Modeling and Relational Databases: Second Edition, Halpin & Morgan 2008). However, any ORM-to-UML conversion method may be used.
Click for the ORM briefing package
During the experiment, each of the foregoing procedures had a link to an online questionnaire that allowed participants to post their results directly into an online database.This link is no longer active.
All results were anonymised. No personal details were revealed in my dissertation document nor will they be revealed to any third party.
14 November 2008: Dissertation Results
In November 2008, two independent assessors graded my work as "A". The University of Liverpool Board of Examiners gave my MSc an overall grade of "distinction."
I would like to thank those persons who contributed to my experiment.
Ken Evans