A. Mazak, S. Wolny, M. Wimmer: On the Need for Data-based Model-driven Engineering, Chapter 5 in: Security and Quality Improvement for Engineering Flexible Software-Intensive Systems.
In order to deal with the increasing complexity of modern systems such as in software-intensive environments, models are used in many research fields as abstract descriptions of reality. On the one side, a model serves as an abstraction for a specific purpose, as a kind of “blueprint” of a system, describing a system’s structure and desired behavior in the design phase. On the other side, there are so-called runtime models providing real abstractions of systems during runtime, e.g., to monitor runtime behavior. Today, we recognize a discrepancy between the early snapshots and their real world correspondents. To overcome this discrepancy, we propose to fully integrate models from the very beginning within the lifecycle of a system. As a first step in this direction, we introduce a data-based model-driven engineering approach where we provide a unifying framework to combine downstream information from the model-driven engineering process with upstream information gathered during a system’s operation at runtime, by explicitly considering also a timing component. We present this temporal model framework step-by-step by selected use cases with increasing complexity.