REQ6 - A simulation game should support different learning environments: The learning process may vary among students. Some students may learn better by watching and listening, others by reading, and others by doing and moving or using a hands-on environment [24]. Adaptation of the learning environments can assist students with different learning styles, different levels of initial knowledge and different expectations and objectives [25]. Adaptation can be static, for example, increasing the complexity in the course of the game, allowing students to choose different simulation models, or instructors to change the simulation model. Adaptation can be dynamic, for example, if players have some difficulties during the simulation game, a hint can be presented to them or the difficulty level of a task can be decreased gradually [26].
Among all simulation games that we found, no one presented dynamic adaptation features. Three of them support different simulation models: SESAM, SimSE and The Incredible Manager; and only qGame has different levels of difficulty.
The knowledge of Software Engineering simulation games and their common requirements, and the lack of support to simulation games development led us to the decision to create our own framework, FASENG (Framework for Software Engineering Simulation Games). FASENG is composed of three components (simulation model, simulator, and simulation engine) that can be reused in new simulation games creation (see Fig. 1). These components can also be found in other Software Engineering simulation games [12], [14], however, in our case, they can be reused in new developments. In the first version of this framework, we developed components that support requirements REQ1, REQ2, and REQ3, and partially requirements REQ4, REQ5, and REQ6.