• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

UML and beyond?

 
Anonymous
Ranch Hand
Posts: 18944
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
A true modelling language would be able to point out the problems with various implementations (like OOD). Are there any UML proponent or theorists that are attempting to develop new paradigms?
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Dana Barish:
A true modelling language would be able to point out the problems with various implementations (like OOD).

How would it do that?
 
Anonymous
Ranch Hand
Posts: 18944
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I think a modelling language if it is to be useful must bring out conflicts in proposed implementations (like OOD). Then conflicts can be resolved and implementations can be improved.
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
A modeling language is just what it names suggests: a *language* used to communicate *models*. It can be used to help communicating a point in a discussion, or to make notes for yourself or others.
To me, that seems to be quite usefull...
 
Robert Martin
Author
Ranch Hand
Posts: 76
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Dana Barish:
A true modelling language would be able to point out the problems with various implementations (like OOD). Are there any UML proponent or theorists that are attempting to develop new paradigms?

Any kind of source code is a true(TM) modeling language. Java, for example, is a very nice modeling language. The fact that it is also executable is irrelevant.
Some languages have have internal self-consistency rules. Java, for example, does type checking at compile time. This ensures that the usage of types within the model is consistent. Other languages, like Python or Ruby, don't perform this internal consistency check until runtime.
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
There are also methodologies adding such consistency checks to UML. In Fusion (at least the way I learned it), you have rules such as "if there is X drawn in diagram A, there also needs to be an Y in diagram B". I didn't find this to be very helpfull, though - and it certainly didn't do anything to actually get *good* designs...
 
Anonymous
Ranch Hand
Posts: 18944
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I think Java is a descriptive rather than modelling language. It can describe proposed models. It can at times help spot model problems (lack of specification, redundancy, conflict). I would like to see a modelling language with a "Montessori" approach, ie. if it's not completely correct, it doesn't work at all (except perhaps to tell you what went wrong). Of course a working correct model doesn't necessarily reflect the system being modelled 100% but that's another problem.
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Dana Barish:
I think Java is a descriptive rather than modelling language. It can describe proposed models.

What is your definition of a "model"?
I would like to see a modelling language with a "Montessori" approach, ie. if it's not completely correct, it doesn't work at all (except perhaps to tell you what went wrong). Of course a working correct model doesn't necessarily reflect the system being modelled 100% but that's another problem.

Then what do you mean by "completely correct"? What type of "correctness" are you referring to?
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic