Content Agnostic Game Engineering (CAGE)
Currently, educational games are developed in a "one at a time" fashion. Once a given game is completed, it is very difficult or impossible to reuse most of that code for a new game project. This is because the mechanics of the game are strongly tied to the knowledge domain being taught, meaning the mechanics do not work well in another learning context. In short, what you're teaching affects how you teach it. This may not seem like a bad idea and is in line with evidence centered design. However, it leaves this problem of code not being reusable. Being able to reuse code would greatly speed of production of subsequent games and they would require less resources. This leads to increased profits and increased production for both industry and academia.
This is the core problem CAGE tackles. CAGE is a design methodology for educational games that ensures that the educational content can be switched out instantaneously without interrupting the game. This is done by separating the game code into distinct modules. Through the use of generic messages, it does not matter which of the content modules is active at the time one of them is sent. From an instructional design standpoint, there are problem structures that exist across various content domains. It is a matter of setting up these structures within the game, so that different contents can be layered on top.
To be clear, CAGE is not claiming that any possible content could be layered on top of any game. It is not a one size fits all solution. Rather, that one set of mechanics could be reused for a handful of domains.
More details will come after the study is concluded and defended.