in

The ORM Foundation

Get the facts!

Expressiveness of conceptual modelling languages and using it, or not

Last post Fri, Aug 22 2008 13:08 by Ken Evans. 15 replies.
Page 1 of 2 (16 items) 1 2 Next >
Sort Posts: Previous Next
  • Wed, Aug 20 2008 6:45

    Expressiveness of conceptual modelling languages and using it, or not

     

    Dear All,

     

    One of those recurring topics is ORM being more expressive than, say, EER and UML, and, moreover, that such expressivity is necessary for good conceptual modelling. Another argument in the discussion is that “most modellers don’t use the additional modelling options anyway” so that one could, in most cases, do with a less expressive language so as to reap more benefits from computation. Aside from [1], does anyone have hard data to back up either one of the claims, or has an x amount of models that could be made available for analysis?

     

    Note that even [1] has some methodological gaps so that it does not entail the conclusion of the latter (using a less expressive variant of ORM), because there is still the main question why did the modellers not, or to a very limited extent, use the ‘fancy’ features of ORM. For instance, was the tool not intuitive and too cumbersome to add the more complex constraints, what was the background of the modellers, did they know such constraints were available, did they understand those un(der)used constraints, what was the quality of the models and the resulting software?


    [1] see section 5, table 2 in Smaragdakis, Y., Csallner, C., Subramanian, R. Scalable automatic test data generation from modeling diagrams. In: ASE'07, Nov. 5-9, Atlanta, Georgia, USA. 4-13.

     

    Best regards,

    Marijke

     

  • Wed, Aug 20 2008 6:58 In reply to

    • Ken Evans
    • Top 10 Contributor
      Male
    • Joined on Sun, Nov 18 2007
    • Stickford, UK
    • Posts 805

    Re: Expressiveness of conceptual modelling languages and using it, or not

    Hi Marijke,

    "does anyone have hard data to back up either one of the claims, or has an x amount of models that could be made available for analysis? "

    Right now, as part of my MSc dissertaion project, I'm conducting an experiment that partially addresses this issue by comparing the use of UML, ER and ORM for a "standard text" of just 331 words.

    The details are on the Surveys page.
    Please feel free to do either the ER, the UML or the ORM experiment.
    Right now, I have more ORM's than I have ER & UML so if you and maybe some of your colleagues could do the experiment this would help to improve the statistical significance of my results. By making a contribution you would be contributing to the "hard data" that you seek (and which I agree is sorely needed to combat the hype)

    Just one point, the deadline for my Dissertation is 28 August so to be included in the experiment, I need input within the next 5 days.

    Ken

     

     

  • Wed, Aug 20 2008 7:17 In reply to

    Re: Expressiveness of conceptual modelling languages and using it, or not

    Hi Ken,

    The survey, for as far as the announcement goes, doals with, to quote, "comparing the effectiveness" of the modelling languages, which is not exactly the thing I'm after. Basically, I'm facing an uphill battle with the DL people who are convinced most people use, and have been using, much less than is possible, hence warranting using a 'simpler' DL language at the back-end of a conceptual data model so as to do efficient satisfiability checking (the three papers I've found on reasoning over UML or ORM go the same direction, but then with special purpose reasoners) and, as novel addition, so-called "Ontology-Based Data Access" [1], which, liberally translated and simplified into ORM parlance, amounts to a niftier version of QonQuer. But, alas, for the latter, which is in theory a really nice feature, the DL language used (DL-LiteA) is rather limited (e.g., it only permits existential but not universal quantification over the relations, qualified munber restrictions have elaborate rewritings where feasible, etc.).

     

    [1] see the informal summary with links to the main papers

     

    Marijke 

     

  • Wed, Aug 20 2008 13:52 In reply to

    Re: Expressiveness of conceptual modelling languages and using it, or not

     Hello Marijke,

    Based on anecdotal evidence, I find there's nothing but anecdotal evidence (and little enough of that), regarding the effectiveness, utilization, efficiency or any other  aspect or characterization of Object Role Modeling or any other Fact-based approach.   Not being an academic, I don't have access to the resources available to those that are - but unless these are being kept as closely guarded secrets, I doubt there is much to be had.

    When Ken mentioned his attempt to gather statistically significant data for his project, I voiced my opinion on how difficult that would be (I did, and still do wish him well with that).  My feeling is that looking for such statistical confirmation may be "barking up the wrong tree."  The problem, as I see it, is to overcome the general disinterest, or even distaste for all modeling by the IT industry - at least those parts of it that are tasked with practical implementation.  Some have been so disappointed in attempts to implement modeling, that you might as well ask them if they prefer mosquitoes to horse flies.

    Anecdotal evidence is not scientific proof; but you have to work with what you have, or can get.  A common complaint I've heard is that a good deal of investment was made, but the effort was abandoned for one reason or another.  Gathering up these causes of failure would probably provide better insight than feature comparison - is that part of the point you were making?  Finding the causes of failure, and examining how an approach like ORM can avoid and overcome them would be very useful.  I've been putting what I've been able to gather in my pockets to examine later.  Wish I had more to go on, but enough to make a start

    Ken has an "ORM Experience"  forum here.  Wonder if there's any way we can get those that have at least tried to implement ORM or other similar approaches share their war stories?  Not like having a double blind study, but while we're waiting for that....

    Interesting thread,  thank you for starting it.

    BRN..

     

  • Thu, Aug 21 2008 2:59 In reply to

    Re: Expressiveness of conceptual modelling languages and using it, or not

    Hi Maria, Ken, Brian,

    I go with Brian's take on this one. I'd really like to know the answer to your question too Maria. Please let us know if you find any good data. It's kind of the 'marketing' take on Ken's thesis....one is scientific, the other is 'but what are the consumer drivers'.

    That's why I hear Brian's take loudly. At a personal level, I rejected the use of InfoModeler and Visio's ORM tools because they were too hard to use. I feel kinda bad, because Dr Halpin donated the first, and got me a copy of Vision Enterprise for zip (quite by accident). I've still got them, but I don't use them. From a consumer's 'ease of use' perspective....I found that they were really wanting. But nORMa on the other hand is a very very good piece of software (in my opinion). It does just about everything I want to do with ORM, it does it quickly and efficiently and somewhat intuitively.

    I'm happy to go on record to say that the only reason I started Richmond was to provide competition to nORMa, so that nORMa get's better!! nORMa's open-source licencing allows for a brilliant competition/benefit model.

    By way of lively chat and reflection. I'm currently staying in a hotel surrounded by 3 dormitories (close to a university), each building is some 15 stories high. I can see in all their windows, and they can see in mine. At night, and can see all these students sitting at their desk, working on their laptops. Wow!!! When I went to uni there was one guy with a computer. I remember being mesmerised. It was the first IBM clone I had ever seen.

    So, maybe it is a timing thing too. We expect revolutions in IT, but in the scheme of things...ORM, ER, UML are babies. One day, kids of 12 will walk up to teachers and ask "Are we going to do any conceptual modeling this year?" and 'that' won't be a strange question.

    Best regds

    Victor

  • Thu, Aug 21 2008 5:02 In reply to

    Re: Expressiveness of conceptual modelling languages and using it, or not

     

    Hi All,

     

    Thank you for you thought on this. It does not help me much in finding the answer, but possibly to phrase the scope more clearly.

     

    Victor, you say “It's kind of the 'marketing' take”, which, however, I disagree with, because answering the questions that I asked is, I think, part of the requirements analysis for conceptual modelling languages and their CASE (OBDA, and so forth) tools. To be able to make good, useful, modelling tools, one would need to know which gaps (yes, plural) it is, or should be, filling.

    While there are the obvious requirements of having a software-supported, graphical and textual interface for the modelling, and, ideally, some (semi-)automated translation to the design level and implementation code, there are other ‘add-ons’ (or essential…), such as having the option to go from examples/facts to the type-level or other guidance with decision diagrams, modelling patterns, ontology-inspired modelling, and whatnot. But if one does not know why people do not use all features or abandon conceptual modelling altogether, then any extra ‘add-on’ to improve the modelling experience is a random shot in the dark at worst and a bright hunch at best.

     

    Maybe it is neither the tools nor the modelling methodology. Listing some alternative options, in random order:

    (i)                   The ‘average modeller’ has had insufficient training and does not know about all the features available in the language;

    (ii)                 Option (i) + the ‘average modeller’—say, an vocational, industry, or BSc-level trained person—is, well, him/herself just not intelligent enough to grasp the complexities of conceptual analysis (implicitly saying it requires at least MSc-level insights);

    (iii)                The education is up to scratch, so that young graduates actually do have a clue about modelling and would use a language to the full, but the old guys with little conceptual modelling experience think they know it better anyway (hence, it would just be a matter of time until they finally retire);

    (iv)                The subject domain is not that complex at all, so we can do with a more restrictive language;

    (v)                  The subject domain is complex, and one would need most, if not all, of the features in each conceptual model;

    (vi)                The subject domain is complex, but for the prospective application such details can safely be omitted without disrupting desired functionality;

    (vii)               Option (vi) but the customers do not realise one can put much more in an application, hence, in the conceptual model.

    a.       As a variation: would the onus be on the modeller to inform the customer, or the customer should think a little deeper?

    (viii)             Option (iv) or (vi) holds ‘in most cases’ compared (v).  

     

    So, lots of hypotheses that precede marketing by a large margin. I am not an expert in investigating these matters (imho, it would be crazy if there has not been done extensive research on such themes).

    As for anecdotal evidence, I have come across (i), (ii), (iii), (v), (vi), and (vii), leading me to the idea that statistical evidence eventually will have to be produced to uncover tendencies toward one or the other.

    On the other hand, if we look at (E)ER, UML, and ORM as languages irrespective of the modelling methodologies, tools and other factors, then up until about two years ago it was only in the direction of more features and greater expressiveness, whereas only in the last two years I’ve come a few papers where it was claimed that ‘in most cases’ we could do with less features. Invariably, those papers focussed on online usage of the conceptual model as opposed to a static thing it has been for most of the times over the past three decades. In that respect, the well-known debate on ORM vs. ER/UML has gotten an extra argumentation-dimension, i.e., for going for, or staying with, ‘simpler’ languages due to computational limitations—but now there are actually demonstrable advantages of doing so (conceptual querying, satisfiability checking, among others), which were not there in the ‘classical’ ORM vs. ER/UML debate.

     

    Best regards,

    Marijke

     

  • Thu, Aug 21 2008 5:46 In reply to

    Re: Expressiveness of conceptual modelling languages and using it, or not

    Hi Marijke,

    Thanks. I mean no disrespect when i say 'marketing'. The common misconception is that marketing is adverstising...when in reality is it closer to 'analysis'....the type of analysis you speak of. So I meant studying the 'consumer behavior' in the way you speak of. I see analysts as consumers of methodologies.

    So if you can accept that is what I meant...then definitely I see what you are asking. At any rate, you provide more information as well.
    I believe that a future convergence of 'awareness' and 'easy to use tools' being a tipping point for methodologies, but I see the other obstacles that you intimate.

    To be very brave, consider this: Visionaries within the industry, including academia, are generally quite smart people. Those that understand complex methodologies might be seeing something as easy that is also, in general, difficult subject matter for other people. In this way, less sophisticated methodologies win out because of a bell curve of eduction and aptitude to adapt to new and complex methodologies. e.g. early resistance to automobiles with suspicions that speeds greater than a horse may lead to brain damage. i.e. paradigm shifts don't come easily.

    I think yours is a great thesis. I would dearly like to know the answers. I guess what you are asking is 'who has really gone for broke on this and gathered statistics? maybe based on interviews of perceptions/industrial experiences'.

    best regds

    Victor

     

     

  • Thu, Aug 21 2008 7:21 In reply to

    Re: Expressiveness of conceptual modelling languages and using it, or not

     

    Hi Victor,

     

    Ok, then I had misunderstood your use of the term “marketing”.

     

    On your 

    VictorMorgante:

    I would dearly like to know the answers. I guess what you are asking is 'who has really gone for broke on this and gathered statistics?

     

     

    two months ago, we have been trying to get some data from the user base who work on domain ontologies, although what they mean most of the times is that they need a conceptual data model, not an ontology…We had set up a “sneaky” survey that asks for desired modelling constructs---well, the options you can choose are limited to those that are available in one DL language or another…

    If you, or other readers, would like to add your opinion to it, please feel free to do so. For me to add that additional dimension from the real conceptual modeller perspective, please mention it in the “comment” box of question 4 so that I can distinguish types of respondents to some extent at least. The whole survey will not take more than 5 minutes and can be accessed here: https://www.inf.unibz.it/phpsurveyor/index.php?sid=10.

     

    Best regards,

    Marijke

     

  • Thu, Aug 21 2008 8:22 In reply to

    • Ken Evans
    • Top 10 Contributor
      Male
    • Joined on Sun, Nov 18 2007
    • Stickford, UK
    • Posts 805

    Re: Expressiveness of conceptual modelling languages and using it, or not

    Hi Folks - time for me to chip in I think.

    1. What is marketing?
    There are lots of websites that answer this question. Here is one of them.  http://www.managementhelp.org/mrktng/mrktng.htm

    Quote: "Basically, you might look at marketing as the wide range of activities involved in making sure that you're continuing to meet the needs of your customers and are getting appropriate value in return"

     2. Where do we start?  (with any endeavour)
    My favourite reference is Polya (1957:xvi) who defined the four steps for solving ANY problem.
    1: Understand the problem
    2: Devise a plan
    3: Execute the plan
    4: Check your result.

    Polya (1957:6) also asserts that "It is foolish to answer a question that you do not understand"

     3: So "What is "a problem"
    During my 15 month initial training course after joining IBM in 1974, I was taught that:

    1: A problem is something that prevents you from achieving an objective.
    2: A well formed statement of an objective requires a defined result, metrics to measure the "conformance" of your result to a pre-defined set of requirements, and a specific date by when the objective must be achieved.
    Thus, If you have not established a set of metrics to measure your objective AND if you don't have a date by when the objective is to be achieved

    Then: You cannot possibly have "a problem".

    Now to your discussion

    What on earth is a "domain ontology"?
    What are the properties to which a "domain ontology" must conform?
    (Personally I think its just a fancy name for a conceptual model - expressed in a formal language such as ORM.)

    "We had set up a “sneaky” survey that asks for desired modelling constructs"
    My interpretation of this statement is as follows:
    1: "Modeling constructs" are a solution to a problem.
    * I see this as the result of Polya stage 3 so what about Polya stages 1 & 2?

    2: "What does "desired" mean ?
    Well it seems to me that this word implies that someone has a "problem" and they "desire" a solution.

    But what is this "problem" to which the "solution" is a "A DL language"
    So we are led to the idea that "A DL language" is a solution to one of the problems in achieving some kind of objective.

    So my next question is:
    What is (are) the objective (s) to which a DL language is a candidate solution?

    And my final questions (in support of Victor's point about marketing) are:
    Who is it that has a "need" that might be satisfied by a DL language? (AKA a problem that might be solved)  
    How do these people express their needs?
    And what benefits would they get by using a DL language to solve their problem instead of whatever else it is that they are using today?

     

    Ken

    PS - I left out the "meta" stuff of "Requirements" - but that is also part of the equation.

    Reference
    Polya, G 1957, How to Solve It, Second Edition, Doubleday Anchor Books, New York 

     

  • Thu, Aug 21 2008 12:24 In reply to

    Re: Expressiveness of conceptual modelling languages and using it, or not

     

    Hi Ken,

     

    I can imagine it raises questions, because I did not want to give away too much information lest it would bias the answers too much.

     

    Language “features” or “modelling constructs” is an ongoing discussion in the DL community, and, e.g., a group within that community is busy setting the next W3C standard for, what is now dubbed, “OWL 2”, which also shall include “OWL 2 fragments” that are less expressive, but computationally much nicer. The OWL 2 “full” is a relatively more expressive language, developed in no small part because the ontology developer community wanted, among other things, qualified number restrictions to represent things like “Each BenzeneRing isConstitutedOf exactly 6 CarbonAtoms”, which you cannot do in the current W3C standard OWL.

    Some of the things that the survey tries to figure out is what developers say they need [“desired” functionality] compared to what they actually use in their ontology (and what they want to use the ontology for), and, as a side-issue, if they actually know which features are available and if they understand the modelling features. So, the survey is about what you mention as Polya stage 1: given that there are trade-offs when choosing one DL language over another, currently there is only anecdotal evidence on mismatches both regarding features of a language and the developers’ expectations and the survey is about getting data to chart that gap in understanding what is really going on. And, as indicated in my previous post “A DL language” may not necessarily be the solution, even though it asks only about  features that are in one Dl language or another (there’s none that has all of them). It depends on the combination of features one chooses if there is actually a language and implementation at present, or not, and if there is really a mismatch, what exactly, and how to bridge the gap(s), i.e., Polya’s points 2 and 3 in due course.

     

    “So my next question is:
    What is (are) the objective (s) to which a DL language is a candidate solution?... And what benefits”

    I am not going to tell you that now in detail, but afterwards. For instance, you can think in the direction of satisfiability checking of a conceptual model so that inconsistencies can be fixed before designing the database (I can send you examples, if you are interested), querying a database through a conceptual data model is another, and some solutions can give you more query ‘power’ beyond SQL whereas some other DL-based solutions cannot.

     

    How do these people express their needs?

    Many sources over the past umpteen years. Some recent ones are the healthcare and life sciences Interest Group of the W3C [1], another one can be checked in [2] (and references therein) and other OWLED papers that report on bumping into limitations that they do not want to bump into.

     

    [1] http://www.w3.org/2001/sw/hcls/ 

    [2] Keet, C.M., Roos, M. and Marshall, M.S. A survey of requirements for automated reasoning services for bio-ontologies in OWL. Third international Workshop OWL: Experiences and Directions (OWLED 2007), 6-7 June 2007, Innsbruck, Austria. CEUR-WS (ISSN 1613-0073) Vol-258. http://www.meteck.org/files/OWLED07_KRM.pdf

     

    Best,

    Marijke

     

  • Thu, Aug 21 2008 13:09 In reply to

    Re: Expressiveness of conceptual modelling languages and using it, or not

     Hi Marijke,

    This is a fascinating thread.  You are touching on a number of concepts and concerns, each of which deserves its own thread.  I'm afraid that if this thread develops in its present form, we'll see the effects of a combinatorial explosion.  As you kicked things off, you're best positioned to delineate the topic into more limited (and so more manageable), threads.  Given the richness of the subject matter, the process may need to be repeated.  Of course, some summary posts will be useful to gather the threads back at some point.

    I see no harm in distributing some of these child issue threads, into other forum/sub-forums on this site, as appropriate.  I'll leave that call to you and the site administrator. 

    BRN..

  • Fri, Aug 22 2008 6:44 In reply to

    • Ken Evans
    • Top 10 Contributor
      Male
    • Joined on Sun, Nov 18 2007
    • Stickford, UK
    • Posts 805

    Re: Expressiveness of conceptual modelling languages and using it, or not

    Maria (Marijke) Keet:
    So, the survey is about what you mention as Polya stage 1:

    Hi Marijke,

    I'd just like to ensure that the main message in my earlier post has been well received.
    From your post (See the quote) I think maybe not - but I could be wrong so here goes.

    Yes - I agree that your survey is related to Polya stage 1 "Understanding the problem"
    However, by implication from my earlier post, the task of "Understanding the Problem" requires defining the context for making a "Problem Statement"
    In (simplistic) ORM tems:

    FACT TYPES
    Person has Objective
    Objective has Metrics
    Objective has Problem
    Problem has Description
    Problem has Solution

    OBJECT TYPES
    Person = A Legal or Natural person.
    Objective =  A desired outcome
    Metrics = The properties that you use to measure whether or not a proposed Solution solves The Problem
    Problem = Something that prevents you from achieving The Objective
    Description = An explanation of the reasons why "The Problem" is preventing the achievement of The Objective
    Solution = A way of overcoming The Problem.

     ====================
    Now during my professional career, I have seen many examples of "Solutions that are looking for Problems"
    This situation often arises because "someone" dreams up an informal solution to a problem exists as an informal idea in the head of the "somoeone"
    In my early days in IBM, I was well schooled in the need to avoid what was named "Wish List Management" 
    Indeed, IBM introduced the paradigm of "If you don't have well a formed statement of an Objective, then you cannot possibly have any Problems." precisely to ensure that its salesmen and systems engineers did not propose solutions to "Wish Lists".

    Now it sems to me that when you say "...what developers say they need [“desired” functionality]" you may be falling right into the trap of eliciting "Wish lists" rather than real "Problems" because you don't seem to have articulated "The Situation you want to study" in terms of the "Objective<Problem<Solution" paradigm.

    I hope this helps to clarify my point that there is a lot of hidden detail and structure inside "Polya Stage 1".

    Ken
       

            

     

    Filed under:
  • Fri, Aug 22 2008 7:51 In reply to

    Re: Expressiveness of conceptual modelling languages and using it, or not

     Hi Ken,

    I don't give all the information surrounding the survey intentionally, because it could/would affect the anwers too much. That I do not do it does not imply I am reverse engineering the problem, the way you seem to have interpreted my response.

     

    Best,

    Marijke 

  • Fri, Aug 22 2008 8:36 In reply to

    • Ken Evans
    • Top 10 Contributor
      Male
    • Joined on Sun, Nov 18 2007
    • Stickford, UK
    • Posts 805

    Re: Expressiveness of conceptual modelling languages and using it, or not

    Hi Marijke,

    Thanks for your prompt response. Good to know that you have a (hidden) scientific structure behind your questionnaire. I have done a similar thing with my experiment. However, your phrase "reverse engineering the problem" gives me cause to question whether I have been successful in explaining the function of the "Objective<Problem<Solution" paradigm. "within which it is a logical impossibility to "reverse engineer a problem."   

    Now, you might feel that what follows is nit-picking but as (I believe) Albert said " XXX is in the details"  (XXX= substitute "God" or "The Devil" as appropriate) so here goes.

    As I said, I don't understand what you mean by "Reverse engineer the problem".
    If you had said "Reverse engineer The Objective" I would have had a better understanding of what you think that I mean.

    My understanding of the "Objective>Problem>Solution" paradigm means that a "problem" only exists within the context of a previously specified objective.
    This allows one to ask questions such as "List the things that are preventing you from achieving the (well specified) Objective."

    For example, someone might say "My problem is that I can't afford a plane ticket"
    Here, the hidden Objective might be " To get from London to New York within the next 24 hours" but it could equally well be "To have a holiday in a far off land"

    Given the two different objectives, an identical "problem statement" might have two quite different solutions such as:

    London-New York solution: Persuade the Air Force to fly you there.
    Holiday solution: Take a boat.

    Ken

  • Fri, Aug 22 2008 12:14 In reply to

    Re: Expressiveness of conceptual modelling languages and using it, or not

     Hi Ken,

    You make an interesting point about "Wish List Management."  I won't offer an opinion on its relevance to Marijke's posts; but it has merit on its own.  BTW, I hadn't heard the term before; thanks for the addition to my lexicon.

    Keeping the example argument closer to an IT home base, I have often heard comments such as: "We need a middle tier application to handle the business logic."  I'm thinking "Why? Is it a government stipulation that all business logic be kept in an application in a middle tier?"  What I suppose they mean is that they feel a need to better incorporate their organization's business logic into their Information System.  Someone has heard or read about other organizations doing this through a middle tier application; so away you go.

    I relate this to the presumption of some ORM modelers that the UofD for an application domain is immutable, and only those terms expressed as part of the UofD going into the modeling process should find expression in the ORM model.  Many terms in a typical UofD were added to facilitate earlier Information System iterations (perhaps going back to antiquity).  Assuming the UofD as fixed, assumes they got it all right - I don't think so.  Yes, using the terms of the established UofD is preferable in most cases; but the model should be created based on an understanding of the underlying purpose, organization, etc..., of the target domain; and the modeler must be free to add to, delete or amend these terms to that end.  

    In all this, it seems to come down to unsubstantiated assumptions vs. an accurate understanding of the subject at hand.  Is something along these lines your take on Marijke's question about feature sets/ feature requirements/ feature utilization?

    BRN..

Page 1 of 2 (16 items) 1 2 Next >
© 2008-2024 ------- Terms of Service