Domanda

I have just started learning about model-driven engineering.

But I have a hard time to grasp the different model levels, given software example. Would not the model always be represented in a UML diagram or a class? Which then makes the above level to be the same in all cases?

È stato utile?

Soluzione

UML defines how you say something in your model. But engineering with models is also about what you want to say to which audience.

A domain model for example will describe the understanding of a domain, independently of your software solution. It is very general and can be used for multiple purposes and shared between multiple applications. The design model will enrich the domain model with elements that are not relevant for the domain in general, but specific to one solution. But for both models, you may use UML.

If I may make an imperfect analogy: it’s like UML being the English language of modelling. But despite using the same language, when you talk to the doctor about backpain, you will use the English language very differently than your doctor, who needs a much more precise model of your body to help you.

You may also compare this to an architect’s drawings. There is usually a big difference between the sketch of your future apartment that he will draw with you initially to understand your expectations and the final blueprint for construction workers where you’ll see an awful lot of details, despite it’s almost the same drawing symbols that are used.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
scroll top