  This paper describes the development needed to support the functional and
teaching requirements of iRead, a 4-year EU-funded project which produced an
award-winning serious game utilising lexical and syntactical game content. The
main functional requirement was that the game should retain different profiles
for each student, encapsulating both the respective language model (which
language features should be taught/used in the game first, before moving on to
more advanced ones) and the user model (mastery level for each feature, as
reported by the student's performance in the game). In addition to this,
researchers and stakeholders stated additional requirements related to learning
objectives and strategies to make the game more interesting and successful;
these were implemented as a set of selection rules which take into account not
only the mastery level for each feature, but also respect the priorities set by
teachers, helping avoid repetition of content and features, and maintaining a
balance between new content and revision of already mastered features to give
students the sense of progress, while also reinforcing learning.
