Electronic Communications of the EASST 
Volume 30 (2010) 

Guest Editors: Claudia Ermel, Hartmut Ehrig, Fernando Orejas, Gabriele Taentzer 
Managing Editors: Tiziana Margaria, Julia Padberg, Gabriele Taentzer 
ECEASST Home Page: http://www.easst.org/eceasst/ ISSN 1863-2122 

 

International Colloquium on Graph and Model 
Transformation - On the occasion of the 65th birthday of 

Hartmut Ehrig 
 (GraMoT 2010) 

Position Statement: 
Models in Software and Systems Development 

 
 

Bernd Mahr 
 

11 pages 
 
 
 
 

  



 
 
 ECEASST 

2 / 11 Volume 30 (2010) 

Position Statement:  
Models in Software and Systems Development1

 
 

Bernd Mahr 
 

mahr@cs.tu-berlin.de 
Institut für Telekommunikationssysteme 

Technische Universität Berlin 
 
 

Abstract: The development of software and systems is, by its very nature, highly 
depending on models. In the software and system’s design models play an important role, 
where they represent the constraining standards as well as the choices of ideas and 
perspectives applied in the systems modelling, implementation and technology. The 
general model of model-being, developed by the author, is briefly explained and is used to 
discuss model interconnections resulting from model compositions and metamodel 
applications. In this position statement it is claimed that the analysis of model 
interconnections, prerequisite to or underlying the software and systems design, should 
provide new insights into the designs architecture. 
 
 
Keywords: software, design, model, model-being, model interconnections 
 

1 Introduction 
The choice of design in software and systems development is naturally constrained by mainly 
four factors: first, by the requirements and expectations on the properties and features of the 
intended systems future application and use, second, by the norms and standards to be met, 
third, by the quality and limitations of resources available for the intended systems modelling, 
implementation and technical realization, and fourth, by the reality of the social and technical 
environments, in which the intended system is embedded when being operated. However, the 
system’s future applications, its modelling, implementation, technical realization as well as its 
environments are at the time, before the system is being developed, not directly accessible. At 
that time these constraining factors can only be identified and addressed by means of 
prospective models. And it is not only a fact that these constraints in the development process 
are to be mediated by models, it is also the likeliness of change, which affects the execution of 
the development task: it is not unusual that expectations and requirements on a system’s 

                                                      
1 This paper builds on and repeats some of the content of Bernd Mahr: Information Science and the 
Logic of Models, Journal of Software and Systems Modelling (2009) 8, Springer Verlag 2009, p. 365-
383, (See also the German original: Bernd Mahr: Die Informatik und die Logik der Modelle, Informatik 
Spektrum, 32, 3, 2009, pp. 228 – 249). As a position statement it does not fully elaborate its concepts 
and assertions. Though what is said here is largely based on year long experience in software- and 
application development and on deep research on the question of modelling, the claims made do 
sometimes express expectations rather than experience. 



 
 
Models in Software and Systems Development 

Proc. GraMoT 2010 3 / 11 

application and use are being modified before the system is delivered; it is also common 
experience that resources for its modelling, implementation and technical realization do not 
stay stable while the system is being developed; and it is certain that the environments in 
which the system is being embedded, will not be in a constant state over time2

 

. All models 
involved in the task of development are therefore to some degree unpredictable in regard to 
their future adequacy and trustworthiness. And there is yet another difficulty in system’s 
development: when the system is being modelled and implemented, all matters of its 
functionality and design are to be expressed as features and properties of the system itself, 
which is to say that the models which capture requirements and expectations of the system’s 
application and use and of all the other constraining factors in the development task, have to be 
encoded as features and properties of the system.  

It would, however, be wrong to conclude from these observations, that the development of 
software and systems are impossible tasks. There are mainly two reasons why their 
development, despite of these difficulties, has a good chance of success: first, the fact that in 
practice systems behaviour is rarely judged on a predefined and completely rigorous basis. 
Users usually accept to adapt their expectations, activities and patterns of use to what the 
system is able to do, at least to a certain degree. And second, more than 60 years of experience 
in theory and practice of software development have lead to techniques and tools, which 
enable architects and developers to cope with the consequences of mediation and change. In 
the widest sense, these techniques and tools concern means of coding, abstraction and 
coordination, all being based on models and modelling techniques. It is, however, surprising 
that we have little knowledge about the principal conditions for something to be a model and 
about the activities constituent for model use, namely the activities implied by modelling and 
model application. And we can hardly say what in general counts as a good model and what 
does not. These deficiencies may not be severe if the modelling takes place in a disciplined 
context with a high level of standardisation, but they are definitely present with the general 
notions of model and modelling, and are also found to affect modelling in the fields of 
information and conceptual modelling3

 

, and in the many endeavours of computer based 
modelling.  

Having observed this, the question comes up of what benefit it might be to gain deeper 
knowledge about the notion of model in general, namely how the tasks of software and 
systems development can benefit from it. And one might also ask, if there is a chance at all to 
clear the general notion of model, which is widely assumed to be indefinable. To respond to 
the second question first, there is much more to know about models and modelling than there 
is known today. But to acquire this knowledge one has to give up some of the epistemological 
customs of explanation: when thinking about models one can no longer avoid to constructively 
treating their subject and context dependency; and in order to seek for an answer to the 
question of what is a model in ontology or in some formal theory, one has to rephrase this 
question as to what justifies the judgement that a given object is a model, and answer it in the 

                                                      
2 If application and use of a system makes a difference, which is what is intended by its provision, it will 
change its environment. 
3 Bernhard Thalheim: Entity Relationship Modeling – Foundations of Database Technology, Berlin und 
Heidelberg: Springer, 2000. 



 
 
 ECEASST 

4 / 11 Volume 30 (2010) 

realm of logic; and finally one has to focus on the structure of contextual relationships 
characteristic for models rather than to try to find the kind of similarity which relates an 
original with its model4. To respond to the first question, it has first of all to be observed that it 
is generally impossible to restrict the notion of model to only certain familiar types or to ask 
for computer science owned notions of model and modelling. Software systems are applied in 
almost any field of science, engineering and daily life; the design of software, from an overall 
perspective, has therefore to deal with the modelling cultures and disciplines in all these fields. 
As a consequence, if software design is not wanted to be split into separate disciplines, we 
cannot avoid to either know about the different conceptions of model and modelling in these 
fields, or to develop a general conception of universal applicability. It is the authors position in 
this statement that a model of model-being can be conceptualized, which not only covers all 
known conceptions of models as particular fragments or specializations of the general 
conception, but which should at the same time be useful as a sensitive tool for analysis and 
design, not only in the case of modelling in general, but also in individual situations of model 
use.5

 

 It is the expectation that such an analytical tool should also yield deeper insights into the 
structure of model interrelations on which software is being built. And from these insights, it is 
expected, it should be possible to derive new techniques and tools for the tasks of software and 
systems development. 

2 The epistemic pattern of model-being 
The question of what justifies a judgement that a given object is a model, presupposes that the 
model-being of this object is the conclusion of a judgement for which there are grounds. If it is 
possible to phrase general conditions which are necessary and sufficient for such a judgement 
to be acceptable, one might take these conditions as an argument form, which in individual 
cases if properly instantiated justifies the judgement of model-being. The argument form of 
model-being is then seen to exhibit the logic of models in general, while its instantiations 
determine the logic of individual models. Since judgements are actions undertaken by subjects, 
the model-being of an individual object is not a property of the object in itself but is relativised 
by the subject dependency of the judgement which asserts it. And since the argument form of 
model-being yields necessary and sufficient conditions for acceptability and not conditions for 
defined or objective truth, the notion of model, conceptualized in terms of this argument form, 
is relativised by the subject dependency of accepting. 
 
The conditions implied by the argument form for model-being cannot be based on inherent 
properties of the object judged to being a model. This is obvious from the fact that any object 
can be acceptably judged to being a model if it is only positioned into a proper context, for 
                                                      
4 Herbert Stachowiak: Allgemeine Modelltheorie, Wien / New York: Springer, 1973. 
5 The model of model-being, for which this strong claim is made, has been developed in the last decade 
in interdisciplinary studies and projects by the author and his co-workers. See for example Bernd Mahr: 
Modellieren. Beobachtungen und Gedanken zur Geschichte des Modellbegriffs, in: Sybille Krämer, 
Horst Bredekamp (ed.): Bild-Schrift-Zahl, München: Fink, 2004, p. 59-86; Bernd Mahr: Ein Modell des 
Modellseins. Ein Beitrag zur Aufklärung des Modellbegriffs, in Ulrich Dirks, Eberhard Knobloch (ed.): 
Modelle, Frankfurt am Main: Peter Lang, 2008, p. 187-218; Reinhard Wendler: Die Rolle der Modelle 
in Werk- und Erkenntnisprozessen, Dissertation am Kunstgeschichtlichen Seminar der Philosophischen 
Fakultät III der Humboldt-Universität zu Berlin, Juli 2008; and (Mahr, 2009). 



 
 
Models in Software and Systems Development 

Proc. GraMoT 2010 5 / 11 

example into a context of production in which it takes the role of a prototype. And because 
there is no object which is a model by necessity, since it is always possible to position an 
object into a context in which there is no meaning of models at all, one has to conclude that the 
conditions implied by the argument form of model-being are context dependent.  
 
If an object is judged to being a model, it is necessarily conceived of as a model by the judging 
subject. Assuming in general that to conceive of an object means nothing else but to identify 
the object’s involvement in context relationships6, it seems justified to defining the argument 
form for model-being as to being a complex of context relationship types. The pattern of these 
relationship types is then taken to characterise the situations, in which an object has the role of 
a model. This diagram depicts this pattern7
 

. 

χ

μ

G BA

forof
model

is / as

cargo

transports

 
 
The diagram defines the argument form of model-being and is composed of epistemic object 
and object relationship types. It is therefore also called the epistemic pattern of model-being. 
The term epistemic is used here to indicate that objects and relationships of an instantiated 
argument form have existence only as intentional objects, i.e. as being conceived of by the 
judging subject. Objects of type A, G and B may be conceived of to be concrete or abstract, 
but the objects of type μ and χ as well as all relationships are necessarily abstract, i.e. their 
existence is independent from space and time. 
 
The intended meaning of the epistemic pattern of model-being, which guides the instantiation 
of its object and relationship types, is the following:  
 
                                                      
6 This assumption forms the basis of the model of conception developed by the author. The first thoughts 
on this model have been described in Bernd Mahr: Gegenstand und Kontext – Eine Theorie der 
Auffassung, in: K. Eyferth, B. Mahr, R. Posner, F. Wysotzki (Ed.): Prinzipien der Kontextualisierung, 
KIT Report 141, TU Berlin, 1997, p. 101 - 119. A set-theoretical study of the model is given Tina 
Wieczorek: On Foundational Frames for Formal Modelling – Sets, epsilon-sets and a model of 
conception, Aachen: Shaker, 2009. For a philosophical justification of the model see Bernd Mahr: 
Intentionality and modelling of conception, 2009, in: Sebastian Bab, Klaus Robering (Ed.): Judgements 
and Propositions – Logical, Linguistic and Cognitive Issues, Berlin: Logos, 2010, pp 61 – 87. 
7 For justification of this pattern see (Mahr, 2009) as well as (Mahr, 2008) and (Mahr, 2004). 



 
 
 ECEASST 

6 / 11 Volume 30 (2010) 

1. In the context of this pattern an object of type G is called model object and an object of 
type μ is called model. An object of type G is not by its identity a model. It has to be 
distinguished from the model as which it is seen, because different model objects can 
represent the same model. The fact that an object is seen as a model assigns it the role 
of a model object and determines the relationship between itself and the model it 
represents.  

 
 
      Instance: A model, for example depicted as the above class diagram8
                     model object, can have different other diagrammatic representations as model 

, which is its 

                     objects. 
 
2. A model is always a model of something, the type of which is here denoted by A. And 

the fact that a model is seen to be a model of something, determines the relationship 
between the model and that of which it is a model.  

      Instance
                      is a model of the university’s library system. 

: The model which has the above mentioned class diagram as its model object, 

 
3. Composing the relationships as-a-model and model-of yields the fact that the model 

object is seen to be a model of A. This fact determines the relationship between a 
model object and that of which it is a model.  

      Instance
                      system. 

: The above mentioned class diagram is a model of the university’s library 

                                                      
8 http://help.eclipse.org/galileo/topic/org.eclipse.ocl.doc/references/examples/extlibrarymode, October 
26, 2010. 

http://help.eclipse.org/galileo/topic/org.eclipse.ocl.doc/references/examples/extlibrarymode�


 
 
Models in Software and Systems Development 

Proc. GraMoT 2010 7 / 11 

 
4. A model is always a model for something, the type of which is here denoted by B. 

And the fact that a model is seen to be a model for something, determines the 
relationship between the model and that for which it is a model.  

      Instance
                      is a model for the object architecture of the planned implementation of the  

: the model which has the above depicted class diagram as its model object,  

                      university’s e-library system. 
 
5. Composing the relationships as-a-model and model-for yields the fact that the model 

object is seen to be a model for something.  
      Instance
                      of the university’s e-library system. 

: the above depicted class diagram is a model for the planned implementation 

 
6. In the context of this pattern an object of type χ is called cargo. For a model to make 

sense there must be something, named its cargo, which carries over from that of which 
a model object is a model, to that, for which it is a model. The cargo of a model is seen 
to be transported by the model object from that of which it is a model to that for which 
it is a model. This fact determines the three relationships between objects of type G 
and χ, A and χ, and χ and B.  

      Instance
                     component relationships and component owned operations, which are 

: the above depicted class diagram transports a structure of components,  

                     identified in the university’s library system, to the implementation of the 
                     university’s e-library system. 

 

χ

μ

G Φ(G) Ψ(Y) YΨ(G)Φ(X)X indind dedded transtrans
BA

forof
model

is / as

cargo

transports
χ χ

 
 
Looking more carefully at situations of model-being, it becomes apparent that the relationship 
types between A and G and between G and B show the same sequential structure. In 
combination they are derived from the following sequence of action types (also called action 
sequence of modelling): 
 

1. an observation on an initial object of type X, resulting observed facts of type Φ(X),  
2. a transformation transforming the facts of type Φ(X) to requirements of type Ψ(G) 

imposed on a model object of type G, 



 
 
 ECEASST 

8 / 11 Volume 30 (2010) 

3. a realization of the requirements of type Ψ(G) by a model object of type G, 
4. an observation on the model object, resulting observed facts of type Φ(G), 
5. a transformation transforming facts of type Φ(G) to requirements of type Ψ(Y) on a 

terminal object of type Y, 
6. a realization of the requirements of type Ψ(Y) by the terminal object of type Y. 

 
An object of type A may now be of type X, Φ(X), or Ψ(G), and an object of type B may now 
be of type Φ(G), Ψ(Y), or Y. We can then speak of a model of an object, of an observation, or 
of requirements, and accordingly of a model for an object, for requirements or for an 
observation.  
 
Coming back to the example of a university library system, the relationship between the model 
object (depicted as the class diagram above) and the object of type A (the existing library 
system), of which the diagram represents the model, can be explained as follows: It is derived 
from some kind of systems analysis in which the existing library system (instantiating the 
object of type X) has been studied (observation) in respect to what matters in view of the 
model to be created. This analysis results in the identification of relevant types of entities, 
relationships, attributes and actions (observed facts). These facts are then read 
(transformation) as items to be referred to (requirements) in the model object to be created. 
The class diagram (model object) is then developed to show these items (realization). 
 
The relationship between the class diagram and the model object and the university’s e-library 
system is similarly structured, in the sense that it also results from a sequence of observation, 
transformation and realization. The only differences are that the object on which the 
observation is made, is the model object and that the terminal object of type Y may, at the time 
when the judgement of model-being is made, be only a vision and not yet exist in reality. If the 
latter is the case, the sequence of observation, transformation and realization is only a thought. 
But if this thought was not justified to possibly be reality, it was difficult to argue that the class 
diagram was a model at all. It would then rather be an image. 

 
In any real circumstance in which a compliant judgement of model-being is made, the 
epistemic pattern of model-being is instantiated by the judging subject. No matter if the 
judging subject9 refers in his instantiation to existing things in reality or only to thoughts about 
a possible reality, it identifies objects which instantiate the types X, Φ(X), Ψ(G), Φ(G), Ψ(Y), 
and Y, and it identifies object relationships which result from the two observations, say α and 
β, the two transformations, say σ and τ, and the two realizations, say π and ρ10

                                                      
9 The judging subject may be a human individual, but it may also be a group of individuals, a 
community or, even more abstract, a culture. On the other hand, a judging subject may also be a 
machine or a mathematical definition. Generally speaking, the judging subject is something by the 
authority of which the judgement in question is affirmed. 

, thereby 

10 These identifications need not necessarily be conscious. They constitute part of the context in which 
the model object takes its role as a model. The objects and object relationships identified also need not 
to have existence independent from the judging subject, as they may just be thought of or generated in 
the moment of judgement. Their identification is assumed to be valid as long as the judgement is valid 
in the subject’s eye. Examples show that in practice this may be a fragment of a second or, in the other 
extreme, if the subject is not an individual, last for centuries, or even longer. 



 
 
Models in Software and Systems Development 

Proc. GraMoT 2010 9 / 11 

producing a sequence of actions (which is to be distinguished from the presupposed sequence 
of action types): 
 

X – α – Φ(X) – σ – Ψ(G) – π – G – β – Φ(G) – τ – Ψ(Y) – ρ – Y 
 
The judgement of model-being is then acceptable, if this sequence of actions is an adequate 
view on a defined or an identified situation of model-being.     
 
Assuming that all objects with object types in this sequence are being replaced by their logical 
theories11

 

, one observes that observations are deductions, and that realizations are inductions. 
A model object is therefore at the same time the result of an induction and the source of a 
deduction. This dual nature of model objects can be seen as one of the most typical 
characteristics of objects which are being conceived of as models. 

The epistemic pattern of model being is not a formal definition of what a model is. Such a 
definition would make sense in certain modelling disciplines, like the disciplines of set 
formation or graphs, but due to the mathematical nature of its constituents it would hardly 
meet the needs of practical model use in most of the sciences, engineering and daily life in a 
direct way. If a formal definition was to be given it would have to follow the structure 
provided by the pattern, and would have to define object and object relationship types as well 
as their possible instantiations as mathematical entities in some foundational theory, like 
category theory or the theory of sets. A mathematical definition of models would replace the 
judging subject by written formal conditions and would have to explicitly determine the 
criteria for relationships to be observations, transformations and realizations. Namely for 
transformations these criteria would either be restrictive, like the criteria for a function to be a 
homomorphism12 or the criteria for a relationship to encode similarity, or they would be very 
general and therefore be weak in their expressiveness and determination. But the question of 
what the epistemic pattern conceptually is, if it is not a definition, can nevertheless clearly be 
answered: it is a model itself, i.e. it is an object which is to be judged as something by using 
the same argument form that is used for other judgements of model-being.13

 

 Its 
epistemological foundation is therefore not different to that of a mathematical definition 
which, to be strict, is also to be based on a (mathematical) definition of what a definition is. 

3 Complexes of interconnected models 
Anything constructed can be questioned for what it is, how it was constructed, and by what 
means. In the case of software, the question ‘what’ asks for the systems architecture, its 
functionality and its technical realization; the question ‘by what means’ asks for the techniques 
and tools applied in its modelling, implementation and installation; and the question ‘how’ 
                                                      
11 The theory of an object is the set of all sentences which are true of this object. A theory is therefore 
language dependent. For reasons of simplicity one might assume that the choice of this language is 
determined as part of the subject’s judgement and also that it is the same for all objects involved. 
12 (Stachowiak, 1973), p. 140 – 159.  
13 Justification for the epistemic pattern of model-being as to being a model itself can indeed be given by 
using the epistemic pattern of model-being as an argument form. Evidence for this is provided in the 
articles (Mahr, 2004), (Mahr, 2008), (Mahr, 2009) and in other texts cited there. 



 
 
 ECEASST 

10 / 11 Volume 30 (2010) 

asks for the concepts and models underlying its design. The distinction between the last two 
questions, however, is not exclusive, since also models are tools, and tools, like formalisms 
and languages, are representations of descriptive models. As a clarification it is therefore 
assumed that the question ‘how’ is here intended to ask for the conceptual basis on which the 
system was built as a solution and for the ideas and perspectives taken when this solution was 
found. Choices of ideas and perspectives are choices of models. So to ask for ideas and 
perspectives is to ask for the models which have been applied in the systems modelling, 
implementation and use of technology. For example, access to a set of stored data can be 
implemented as an array, a list, a record, a stack, a tree, or the like; a system which integrates 
patient data distributed in a hospital and makes these data available in a hospital network to all 
having the right to their access, can be implemented as an information system, a 
communication system, an open distributed system, a service, an agent network, a peer to peer 
system or a cloud; and a component in a component based system can be realized as an object, 
a module, or a service. This is to say that prerequisite to or underlying any existing software 
and system is a complex of interconnected models which conceptualize the ideas and 
perspectives put together and combined to determine the software or systems design. In their 
relation to the design which itself is a model, these models are metamodels of the implemented 
software or system. 
 
Generally, a judgement of model-being is never isolated. It is always embedded into a network 
of intentional relations which determine its meaning14

 

. Examples show that the contextual 
environment of a model object is typically not only the complex of objects and object 
relationships, which the pattern of its model-being indicates, but that this environment also 
includes other models which are interconnected with the model at hand in specific ways. There 
are at least two elementary types of model interconnections, which can be distinguished: model 
compositions and metamodel applications.  

Model compositions capture situations in which, for example, the initial object of a modelling 
action sequence is itself a model object, or in which a terminal object is the initial object of 
another sequence, or a model object is related to more than one initial object, observation or 
requirement, and the like. If the above depicted class diagram, for example, is not produced in 
a single step, but in a sequence of steps with intermediary results, like in model driven 
architecture (MDA), the situation of modelling is better described as a model composition. 
And the idea of model composition also applies if one wants to capture a situation in which the 
class diagram is not only representing a model of the University’s existing library system alone 
but also includes concepts from other more innovative such systems.  
 
Metamodel applications capture situations in which items in an action sequence, like an 
observation or the model object itself are constrained by other models in the sense that the 
constrained items result from an application of these other models. In the above sketched 
modelling of the library system this is the case with the use of UML as description formalism. 
UML constraints the model object of the library system by its concepts and expressiveness. 

                                                      
14 John R. Searle: Intentionality – An Essay in the Philosophy of Mind, Cambridge: Cambridge 
University Press, 2004, p. 20 – 21 and 26. 
 



 
 
Models in Software and Systems Development 

Proc. GraMoT 2010 11 / 11 

And if some automatic programming tool is applied, which takes the class diagram as its input, 
this tool plays the role of a metamodel for the sequence of observation, transformation and 
realization in the relationship between the class diagram and the implemented e-library system.  
 
Referring to the action sequence of modelling, which was introduced above, i.e. to 
 

X – α – Φ(X) – σ – Ψ(G) – π – G – β – Φ(G) – τ – Ψ(Y) – ρ – Y 
 
and using some self explaining notational conventions, the following examples abstractly 
denote such situations of model compositions and metamodel applications: 
 

X–α–Φ(X)–σ–Ψ(G)–π–G–β–Φ(G)–τ–Ψ(Y)–ρ–Y–α’–Φ(Y)–σ’–Ψ(Z)–π’–Z 
 

depicts the situation of a terminal object which is a model object itself, 
 

{(Xi–αi–Φ(Xi)–σi–Ψ(G)i–πi) | i є I }–G–β–Φ(G)–τ–Ψ(Y)–ρ–Y 
 

depicts the situation in which a model object G is a model having a set of initial objects 
 

X–α–Φ(X)–σ–Ψ(G)–π–G–[X’–α’–Φ(X’)–σ’–Ψ(G’)–π’–G’–β’–Φ(G’)–τ’–Ψ(β)–ρ’–β]–Φ(G)–τ–Ψ(Y)–ρ–Y 
 

depicts the situation in which the observation β on the model object G is obtained by applying 
a metamodel with model object G’. 

 
The complex of interconnected models, which conceptualizes the ideas and perspectives taken, 
namely by employing model compositions and metamodel applications, and which determines 
the design of a given software or system, may be seen as to being the software or system’s 
model architecture. Frameworks, like security frameworks or specification frameworks, can 
then be identified as prescriptions of model architectures. They prescribe which metamodels 
are to be used in a modelling action sequence and how models are to be composed. By using 
the sequence of action types in the pattern of model-being it should not be difficult to build a 
formal setting for model compositions, which allows to specify particular model architectures 
and to define types of complexes of interconnected models in a systematic way.  
 
 
 


	1 Introduction
	2 The epistemic pattern of model-being
	3 Complexes of interconnected models