Modeling Events and Events of Events in Software Engineering
This work addresses the need for better modeling of events in software engineering, offering a domain-specific approach that is incremental as it extends the existing input-process-output framework.
The paper tackles the problem of modeling dynamic behaviors in software systems by introducing a new perspective on events within the thinging machine (TM) framework, analyzing five generic event processes (create, process, receive, release, transfer) to capture system dynamics and provide semantics for specifications.
A model is a simplified representation of portion of reality that hides a system s nonessential characteristics. It provides a means for reducing complexity as well as visualization and communication and a basis for building it. Most models involve graphic languages during many of the software lifecycle phases. A new model, called thinging machine (TM), has recently been developed as an extension of the input-process-output framework. The paper focuses on events in a TM, offering a new perspective that captures a system s dynamic behaviors and a means of diagrammatically modeling events. The event notion is an important factor in giving semantics to specifications and providing a natural way to specify the interfaces and observable behavior of system components. Specifically, five generic TM event processes are analyzed: create, process, receive, release, and transfer. All events can be mapped (or reduced) to the events of these five event processes