By Sebastian Apel

In different game types, like first person, strategy, etc., a similar model is used: there is a kind of a gameboard, and objects living on the board. Each object has its own functionality. Additionally, there is some notion of time, with actions and events. Last, some things are observable. This all plays in a server-client type of game. The client has the game funcitonality, the server adds all kinds of other functionality on top, such as payment, account information. etc.

Each new piece of functionality requires a similar approach to implement. This is quite a hazzle. Some frameworks reduce the number of steps. For this, he made a manual iteration, and counted how much effort it was to add some new piece of functionality. Taking a closer look to the model, some things can be automated, and thus automatically generated from the delta of the model. In this way, most steps could be automated. In the evaluation, he measured again how much code should be added manually. The approach shows that the overhead went down a lot (showing overhead numbers initially being 1:5 and going down to 1:1.2).

The hope is that research like this is to reduce development complexity, and focus on business logic instead. However, this requires an optimal environment for model-driven engineering.


ICSA 2018 – Reducing Development Overheads with a Generic and Model Centric Architecture for Online Games
Tagged on: