1 Introduction

Computer Science and Computer Engineering use models as one of the main tools. They cannot be taught and practised without models. This situation is similar to practices in many sciences, engineering, and daily life. Every object and every idea can be used as a model in an application scenario if it becomes useful as an instrument and functions in this scenario. Through this use and function, an object or idea becomes a model, at least for a certain or long time for the respective model user in its context and environment. Models, therefore, actually tell something about the use, the function, the scenario and the users without this being explicitly seen in the model. Being a model of an object or idea also explains a lot about the object or idea.

1.1 Models, models, models: we are surrounded with models

We concentrate here on models and modelling in Computer Science. One reason for the omnipresence of models is the complexity of systems. One might claim that Computer Science is model-polluted. This claim is close to reality. Models are a central instrument. We claim that models and models are as central as the notions of state, transformation, and collaboration. These three notions can be considered to be three central dimensions of Computer Science. We claim that there is a fourth central dimension of the same weight and importance: models and modelling. There are two dimensions that are evolving in our area but did not get yet an appropriate appreciation: approximation and human–computer interaction. This paper concentrates on the main message:

\({{{\textsf {\textit{Main statement:}}}}}\) Models and modelling is the fourth dimension of Computer Science!

This message is at present far from being widely accepted although everybody uses anytime for any reason in any activity models—but may be named differently.

At the same time, hundreds of different notions of models are given in the literature. It seems that they are so different that no common notion of model can exist. There are three approaches to the definition of the notion of models: phenomenology on the basis of three central properties (mapping, abstraction, pragmatism); models as constructions with a usage spectrum according to the subdiscipline; general studies of models and modelling. We prefer the third direction and introduce a general but generic notion of model. The generic notion is based on refinable parameters. This notion can be adapted to the specific usage and subdiscipline by configuring the parameters and concentrating only on those parameters that are central for model application while assuming that the configuration defines the rest.

1.2 The three dimensions of mathematics as a starting point

Mathematics has been considered to be almost unteachable due to the missing paradigms, postulates, and structuring on the entire discipline in the middle of the last century. The redevelopment of Mathematics by the Nicolas Bourbaki group [1] led to a structure-oriented redesign of Mathematics. This group found that Mathematics has three guiding dimensions: algebra, order, and topology. These dimensions allow a reconsideration of each subdiscipline of Mathematics as a specific expression in the three dimensions.

We might ask whether Computer Science can also be characterised by similar dimensions. The redesign of the computing paradigms started with [2] and led to a small number of principles [3]. Since Bourbaki, many scientific disciplines got their systematic underpinning. We envision that such dimension treatment can also be developed for modern Computer Science as well as for Applied Computer Science and Computer Engineering.

1.3 Models and modelling in computer science and engineering

A central observation for models is that anything can be considered as a model for some time in some context in some application scenarios by somebody. It seems that model-being is so broad that general studies of models are infeasible. There is, however, a central property for model-being: usefulness. While concentrating on this property we may introduce a generic notion of models.Footnote 1

Definition 1

(Generic notion of model) A model is a well-formed, adequate, and dependable instrument that represents ’something’ (called origin as a source, archetype, starting point) and functions in scenarios of use.

The criteria of well-formedness are often considered a specific requirement of the modelling language or more generally of the model formation. The criteria for adequacy are (1) analogy (as a generalisation of the mapping property, which forms a rather narrow kind of analogy), (2) focussedness (as a generalisation of reduction to central properties or abstraction), and (3) usefulness (or purposiveness) (as a generalisation of classical pragmatics or substitution properties). Dependability is often concealed, implicit, and yet central part of the model-being of objects and ideas. A model has to be justified or viable and has to be of a sufficient quality.

Well-formedness is a specific modelling language requirement for model’s convenience and ease of use and understandability. It enables an instrument to be justified by an empirical corroboration according to its objectives, by rational coherence and conformity explicitly stated through conformity formulas or statements, by falsifiability or validation, and by stability and plasticity within a collection of origins. The instrument is sufficient by its quality characterisation for internal quality, external quality and quality in use or through quality characteristics. A well-formed instrument is called dependable if it is sufficient and is justified for some of the justification properties and some of the sufficiency characteristics.

We notice that all properties are parametric and can be refined in dependence of their envisioned function in scenarios of use. Configuration is a typical refinement in modelling. It can be based on a characterisation of the nature of the model, on an embedment into the application landscape and their scenarios, on strategic plan for achieving modelling objectives, and on tactical supporters and enablers for attaining objectives. The nature of a model is given by its representation of origins and its functioning as an instrument. The landscape of a model embeds the model-being into the application scenario. A simple landscape characterisation is based on the mission and the brand of a model (see [19]). Strategy is given by the form of usage (i.e. mould) and the model background (i.e. deep model). Tactics is based from one side on enablers such as languages and workshop tools and on the other side on supporting means from the application area, e.g. knowledge, concept spaces, grounding, and basis. The nature, landscape, strategy, and tactics are combined into the configuration of the model.

Definition 2

(Configured notion of model) Given a configuration for modelling. A disciplinary model is a model with a pre-configured adequacy and dependability that functions according to the configuration requirements.

A typical configured notion of a model has been given by B. Mahr in one of his talks [13, 16]: “We place models between ourselves as perceiving, recognising, understanding, judging, or acting subjects and the world as perceptible, observable, effective, to be judged or produced exterior. The impact of models results from the role that models play through their transport function in work processes, cognitive processes, business processes. The power of models is the result of their power to act”.

Models are typically integrated into the subdisciplines where they are used. For instance, conceptual database structure uses the conceptualisation framework accepted in the database community.

Definition 3

(Subdisciplinary notion of model: Conceptual database model) A conceptual model is a concise and purposeful consolidation of a set of concepts that are presented by means of terms in a predefined linguistic format. As such it establishes a view of a given notion space [16].

We further explore this approach in Sect. 3.

1.4 The agenda: models and modelling research

The main issue of this paper is to show that models and modelling form essentially the fourth dimension of Computer Science. We should ask first whether such systematics is necessary and useful before we are going to introduce main conceptions of studies of models and modelling. Our answer will be: because of modelling is a perspective subdiscipline of Computer Science; it is a silver nugget that is not yet uplifted but will fully change the discipline.

The literature on modelling is fairly rich. For this reason, we use here only essential citations needed for this paper.Footnote 2\(^,\)Footnote 3 We do not aim to introduce studies of models and modelling as a novel subdiscipline of Computer Science (see [23]). Instead, we concentrate on the main message. Also, we do not reflect the state-of-art in Computer Science, its myths on models and modelling, its claims against modelling, it hundreds of variants of a notion of model, its rich body of knowledge on modelling, and essentials of model-based reasoning.

At the same time, some CS/CE branches claim that they do not need any model or modelling. Considering these branches in more detail, we observe however that they do not use the word “model” but are intensively modelling.

2 Modelling is the fourth dimension of computer science and engineering

2.1 Dimensions well considered So far

Let us continue with the Bourbaki story. Similar guidance has been developed for quantum physics, social science, and branches of natural science, e.g. crystallography. Figure 1 illustrates some dimensions.

Fig. 1
figure 1

The three structural principles in social science and crystallography

Following the Great Principles initiative [3, 4] and [25], we can distinguish three dimensions of computer science: states, transformation, and collaboration. The fourth dimension is often underestimated but not less important: models (Fig. 2).

Fig. 2
figure 2

The general picture for the four dimensions of Computer science

Computation is considered so far as state transformation. Computing can be understood as the science of information processing instead of programming, graphics, networks, supercomputing, etc. Computing is a science of the natural as well as the artificial. The initiative discovered that main concerns of computing are: computation (meaning and limits of computation), communication (reliable data transmission), coordination (cooperation among networked entities), recollection (storage and retrieval of information), automation (meaning and limits of automation), evaluation (performance prediction and capacity planning), and design (building reliable software systems). Different subdisciplines of computer science treat these principles in a different way.

Systems are never completely monolithic. They consist of interacting components. The disciplinary orientation understands interaction as some kind of collaboration. So far we straiten human behaviour into this schema and squeeze together human behaviour and machine operating.

A dimension that has not found its proper entry into our discipline is approximation. Approximation is the fifth-dimension orthogonal to states, transformation, and collaboration. Approximation replaces a system by another which is close to the given one with some tolerance measure. It allows to reduce a system to a simpler and more convenient one. The approximation is not exact but is near enough to the correct result for some specified purpose. We expect that modern applications such as internet technology have to use humanisation as the sixth dimension in order to cope with modern interdisciplinary tasks.

2.2 The role of models and modelling

Each subdiscipline of Computer Science uses models to certain extent. Modelling aims at development of models for construction (often called design), for explanation and demonstration, for documentation, for management, for optimisation, for verification or validation, for control, for simulation, and for substitution of systems or aspects of them.

The first three dimensions are interwoven. For instance, central concerns in database management are states and state transformation. The fourth dimension is also interwoven with the other three. Models scope and focus to the essentials and allow us to restrict attention and to construct systems in a thoughtful way. Models allow us to avoid complexity, to concentrate first on the most important issues (pragmatism), to ‘dream’ on system extensions not yet observable or developed (amplification), to improve the physical world or for inclusion of visions of better reality (distortion) to extend systems for modernisation and improvement (extension), and to abstract from the current state by an ideal state of affairs (idealisation).

The most important reason for model usage is complexity reduction according to human mental abilities. We order, categorise, generalise, abstract, and stereotype our thoughts, insights, and ideas about our environment in a methodological mould in such a way that our models, macro-models, meso-models, and micro-models can be mapped to operating mechanisms.

Computer Science research often uses claims and arguments against modelling. A common misbelief is that theoreticians, researchers, and developers do not need models. They can develop their ideas and thoughts without modelling. Another claim is often made is that the code is the model. We ask ourselves ‘of what’? Additionally, already code is then something like a plan and presentation of ideas. Looking a bit more close to these claims and myths, we have to realise that all are entirely wrong.

2.3 Elements of the dimensions

Figure 3 shows main elements of the first three dimensions of Computer Science. We may enhance the second dimension by approaches to a general treatment of computation [3]. The picture is more complex than shown. The classification of elements is based on approaches in the small and in the large. For instance, states can be investigated in the small as states of data/events/controls and in the large as the state of the system, e.g. with its structuring. Similarly, we may distinguish elements in the large and in the small for transformation and collaboration. Collaboration is definable based on the 3C approach: communication, cooperation, and coordination. Following the database methodology, we distinguish for models between the specific model elements and the general approaches.

Fig. 3
figure 3

Elements of the dimensions of Computer science

2.4 A Small Case Study about the Dimensions

Let us reconsider the discretised Kiviat in Figure 2. The utilisation of modelling techniques can be measured form 0 to 100. We may analyse whether models are necessarily used, could be used at present, and could be used in future. Let us try to survey how models and modelling are used in subdisciplines. Let us start with a personal and rough view according subdiscipline of database and information system analysis, design and development in Fig. 4.

Fig. 4
figure 4

The orientation of research and practice in the DB and IS subdiscipline

The inner blue quadrilateral shows the necessary, the middle blue on the potential at present, and the outer green one some forecast. This subdiscipline makes intensive use of models.

Our personal picture in Fig. 5 is completely different for Theoretical Computer Science. Modelling is not yet really a concern but should be.

Fig. 5
figure 5

Concerns for Theoretical Computer Science

It has, however, a real potential and capacity that has to be properly used.

In a similar way, we can draw Kiviat graphs for all subdisciplines of Computer Science, e.g. software engineering and communication systems. Let us briefly discuss Business Informatics in Fig. 6 which is additionally an engineering discipline. Modelling is already a well-accepted techniques due to the complexity of systems in Applied Computer Science.

Engineering as the approach to create the artificial [20] is based on models as a starting point for construction, as a negotiation means for tolerance of failures, as a documentation of the construction, as a means for developing variations, as a thought and imagination instrument, and as an artifact within the creation process. The same situation can be observed for Business Informatics. As an applied discipline, it inherits whatever has been done in other subdisciplines, e.g. in the DB and IS subdiscipline. The sixth dimension became also important in this subdiscipline.

Fig. 6
figure 6

Concerns for business informatics

We may now summarise our observationsFootnote 4 and visions about model usage in Table 1. Let us order the actual usage by a ranking ⑨ > ⑦ > ⑤ > ③ > ① and forecast model usage in the next future by \(\nearrow \). The small case study above shows that modelling and models have to be used far broader and far more systematical.

Summarising, we envision that models and modelling will have far more importance in future. Even more, we envision the development of a new subdiscipline: studies in models and modelling. We should, thus, discuss issues of this subdiscipline far more broader.

Table 1 Maturity and exploitation of dimensions in some subdisciplines of Computer Science

3 The discipline of modelling

3.1 CS Modelling is so far an art or handicraft

Computer Science is based on thinking about systems that exist and operate in time and space. Models are then simplified, parsimonious, and effective representation of a system or parts of it at a particular period of time and space. Modelling already became a subdiscipline for developing a level of understanding, of complexity handling in detail or dynamics, of mastering, of (re)building and modernising, of reasoning about, of collaborating in teams and machine environments, of organising, and of quality proof of systems or parts of it. Modelling is already a subdiscipline, it is also very much an art form with very different treatment depending on the main subdiscipline. It seems that the diversity and heterogeneity is so high that no common understanding can be developed. It seems that very different kinds of models do not have too much in common. Modelling seems to be a craft or handicraft. Modelling seems to be a skill acquired through experience in developing and utilising a model. Thus, model usage seems to be a matter of skills, i.e. a craftsmanship.

In support for our claim that modelling is the fourth dimension of Computer Science, we have to develop the discipline of studies of models and modelling. The study of models and modelling based on a general foundation (1) to be used as a systematic, methodological and well-founded starting point for a general ‘Modellkunde’ (‘modelology’), and (2) on a craftsmanship of modelling within studies of models. One might claim that it should be a science. This maturity level is, however, not yet achievable. What is, however, achievable is a systematics development of a model and modelling culture.

3.2 Studies of models and modelling: design

The study of models and modelling may be based on a general understanding of a model. As already discussed in Sect. 1.4, we base our proposal for the study of models and modelling on the Kiel model house [24]. Figure 7 displays different components of the model starting with the generic notion of a model. The parameters in the notion are adaptable and can be instantiated according the specific kind of model and specific usage of the model.

Parameters can be treated on their own and as a complex. Observing the model application in Computer Science, we may handle the parameter setting as a canonical one in dependence on the application area. This approach yields in stereotyped modelling and model usage as it is already typical for most branches and subdisciplines.

For instance, database structure modelling reuses practice in the given subdiscipline. The nature of the model is determined by the usage as an instrument. The landscape is based on the application scenario or sphere for models with an additional setting for the general context and the community of practice. In the given subdiscipline, we accept the general system setting, the model methodology or mould, and the commonsense, i.e. the disciplinary matrix. Additionally, we reuse the practices that have been successfully used so far, i.e enabling meas such as languages and supporting means such as the disciplinary background. The last ingredient forms some kind of a tactical workshop.

Figure 7 displays the canonical configuration of a model.

Fig. 7
figure 7

The configuration of a model through the model house architecture

The light blue elements highlight the nature of a model in the triplicity of–as–for (origins, instrument, result). The yellow elements highlight the mission of the model. The aquamarine elements add to this the brand of a model. The purple elements display the strategic setting of a model. The green elements present the tactical support and enabling means of a model.

The notion of model can be adapted and refined by the specific nature, the landscape, the strategy, and the tactics.

  • Nature: The instrument-being (‘as’) of anything that is going to be used as a model is based on the reflection of all potential origins (‘of’) and the intention to achieve a result (‘for’). A model is a reflection or representation of origins that have a set of common properties as invariants. which should also be present in the model and are also be passed on to the result. The nature is oriented towards the general profile of models, i.e. the goal, purpose and function of the model in an application as well as the function of the model in an application.

  • Landscape mission: The second perspective is the ‘landscape’ of the model that is based on the characterisation of the the application and the use of the model to solve tasks and to deliver a solution, i.e. the model functions in the scenario according to its profile and satisfies the invariant.

  • Landscape brand: Another component is the brand

    \(\mathsf{who}^{\textsf {what, wherein}}\) \(\mathsf{2 whom}^{\text {for\_what}}\). Some modeller as communicator hands over (who) some model (what) in some context (wherein) to some recipient (whom) for some given activity (action) within the limits of the invariants.

  • Strategy matrix: Models are usually based on previous experiences, insights, and successes. They are embedded in this implicit background, which can also be typical of other models. A model community shares a ‘philosophy’ and also techniques of model development and use, i.e. a disciplinary matrix consisting of common foundations such as the deep model as well as forms of model use (and development, if applicable)(matrix).

  • Workshop tactics: Models have a support and enabling environment similar to a workshop. Models need support. They integrate both donor models and the knowledge and skills from the application field such as conceptual worlds. Languages enable for communication. Other tools support actions with models. The model thinking space is models as a tactical environment.

The landscape, strategy and tactics allow for models to have a ‘raw’ configuration that can be used to focus on the specific origins based on the given function in an application scenario, i.e. to configure a model both for the transmitter and on the other hand for the receiver. Thus, a model is prefabricated on the basis of this configuration.

This configuration can be now considered to be a frame \(\mathfrak F\) for the model.

The model as an instrument \(\mathcal I\) combines

the normal model \(\mathcal{I_\mathcal{N}}\) based on

  • relevant origins \(\mathcal O\) that are really reflected as a sub-collection of potential origins,

  • an additionally disputable basis \(\mathcal{I_\mathcal{B}}\) and other additional enablers, and

  • supporting techniques for its utilisation \(\mathcal T\)

with its configured frame \(\mathfrak F\)

and is

  • well-formed according to some criteria ,

  • adequate (analogous, focused, usefulness), and

  • dependable [(justified and sufficient (according to quality characteristics and evaluation)].

Fig. 8
figure 8

Usage frame for studies of models and modelling

We may use this stereotyped form for deriving model categories according to the kind of usage ad the application scenarios. Typical general categories are:

  • presentation models: description, imagination, informative, illustration, physical, domain(-situation, documentation, visualisation);

  • practice models: activity, experience, instruction, pattern, guidance, prescription, mould;

  • cogitation models: reasoning, imaginary, explanation, exploration, learning, conceptual, thought, investigative, conceptional;

  • socialisation models: orientation, cosmology, acceptance, maniplation, exchange, society, social being, collaboration, culture.

A model may belong to several categories at the same time. Functioning of models can be stereotyped according to the category of the model. The last set of categories is not yet so important as the first three in Computer Science.

3.3 Studies of models and modelling: usage

Model usage has not yet been a matter of systematic studies in Computer Science. For this reason, we sketch the usage on the basis of our experience in the fields of information systems and business informatics. A systematic treatment of model usage is a rather large lacuna for future research.

We may represent the model usage in form of a frame in Fig. 8. The core characterises the agent, the instrument-being, and the purpose of the usage. A model may also play a role. Usage itself can be treated on the basis of a lexical unit with a number of different facets. We may group these facets into four main kinds of usage: apply a model, employ a model, operate on the basis of a model, and utilise a model. The usage may also be characterised by ‘hidden’ extra-thematic non-core elements. Peripherical element and frame-based relations enhance the usage frame the full characterisation of usage.

The usage frame of models or instruments supports a framed specification in the left side in Fig. 8.

3.4 Rational and non-rational model-based reasoning

Anything can be considered to be a model. Models are, however, essentially mental products that can be materialised as an artefact. That means that model-based reasoning is based on various reasoning mechanisms which are completely different from the classical treatment in Logics, Mathematics, and also Theoretical Computer Science.

A model must not to be true (in some kind of truth framework). A model must fe useful. Usefulness is determined by some application scenario, by the collection of origins, by expected results, by provided means such as enabler and supporters, by the matrix to be chosen, and for the community of practice.

All this makes model-based reasoning fare broader than considered so far in Computer Science, Artificial Intelligence, and Mathematics. Already [24] provided a case study about model-based reasoning. Notice that model-based reasoning is far older than Computer Science. [16] discussed examples of conceptual models that are about 4.000 years old. We claim that model-based reasoning must not be language-based as it is assumed to be in Computer Science.

Therefore, model-based reasoning has to cover many kinds of reasoning that have not got an appropriate attention in Computer Science. Deduction is a well-investigated kind of reasoning. Induction and abduction are typical model-based reasoning techniques (combined as subduction). Models are also used for mediating between quantitative and qualitative issues as for foreign injection in data mining. Models support meta-reasoning techniques. Reasoning can also be based on cases and experiences gained so far. Main rational model-based reasoning techniques are based on plausible and approximative reasoning techniques that are far more powerful than techniques in classical Mathematical Logics. Figure 9 displays rational reasoning techniques.

Fig. 9
figure 9

Rational reasoning through and by models

There are many other techniques beside rational reasoning that can be applied to models as shown in Fig. 10. Typical techniques are enhancements similar to conceptualisation, model inheritance from generic or reference models, parameter hardening used for inverse modelling in physics, model-based checking and control for systems, and simulation of behaviour for some of the parameters. Cognitive modelling is another technique that has been left out for this paper. Shallow and deep reasoning techniques are another lacuna for the study of models.

Typical reasoning techniques are daily life and engineering techniques as those displayed in Fig. 10.

Fig. 10
figure 10

Non-rational reasoning through and by models

Additionally, we have to consider reasoning techniques for model suites, i.e. collections of well-associated models each of which displays some of the aspects and each of which coexists with the others.

4 Conclusion

The paper starts with a controversial claim: models are the fourth dimension of modern Computer Science. Such statement needs a good number of additional deep case studies. So far, we sketched only some cases. The branches of information systems and conceptual database modelling have already been completely investigated on the level of ER models. Other branches should also be investigated properly in future.

The claim has to be based on some kind of craft, art, or science. Snippets of a science or art of models have been given on the basis of studies of models and modelling (‘Modellkunde’). The Modellkunde can be based on about 30+ theses we do not discuss in detail in this paper and defer them to a long version. We may use the presented elements of the studies for a separation of models from non-models, from never-models, and from never-instruments. The configuration and categories can be applied to subdisciplinary notions of models what eases model design, development, and usage since we use canonical stereotypes that have already sucessfully been used in the past.

Due to the controversial status of this paper we call for intensive research, for critics, for extension, and revision.