I would suggest that you attempt to contact various instructors and small or indie game teams (that have actually released a title). You will find that the concept of "choosing a engine" involves quite a large set of conditional decisions. For example, the first and most important thing you want to do in my mind when deciding an engine for a game would be to first determine what platforms and markets you wish to release the game on. In the case of an independent team with no prior experience that wishes to release on XBox, this will limit them immediately to something based on XNA and C# (due to license restrictions and the likelihood that the team will not get a publisher to pick up the game).
When deciding on an engine to use as part of a programming course the decisions probably aren't quite as critical as the underlying idea is to teach the proper technique's and general theory of game programming more so than to focus on a particular engine. However (and this is sheer opinion) I believe the main deciding factor for instructors who select an engine is the cost of the engine for educational purposes. That is to say an engine that does not have an extremely cheap license that allows for hundreds of users for educational purposes will more likely be immediately disregarded as the budget simply can not afford hundreds of thousands of dollars to appropriate the proper license.
Anyway long story short there really is no rule book that would dictate how one would go about choosing an engine. Many deciding factors can play a role in the decision (and should all be weighed carefully). There will be a lack of readily available documentation stating what you want to do to select an engine because everyone's circumstances are different. I believe it would lead for a more effective thesis if you focused a bit more on how to ask proper questions of yourself and make educated decisions about the engine including portability, support, documentation, performance, marketing potential, license fee's and royalties's and so on. Please excuse me if I am out of line on suggesting you alter your paper a bit to focus more on how to get to the decision than actually making the decision, it's just my experience that it's more of a case by case bases related to what the purpose of the decision is.
P.S.
Bit of a side note if you want I can give you some of my personal opinions that go into engine selection for teams that I work with. These may not be quite as credible as say an instructor's official published article but might give you some idea's on where to go from here and what you might be looking to research. My profile here on Game Dev should have contact information as well as my Gravatar profile that will contain more instant contact details (such as instant messengers and such).
http://en.gravatar.com/daniwan
thanks for the input, but the thesis topic cannot be changed. The professor wants to start a game programming class and wants to use an engine. Basically, he wants that I choose a suitable engine. The main point here is that other universities/schools would have had to choose an engine for their courses as well, aka. they had to make the decision as well. But every paper I read about creating a game programming class does not state on how the selected the engine. Only that they selected it (it sounds more like the instructor knew the engine and because of that they used it).
My current requirements (not finished) lists as follows.
KO-Criterias (Engines will be discarded immediately if they fit one of the following criterias to get down to a decent amount of engines):
• No Windows 7 platform support
• No free student license for homeworks
• Project is not active
• No recent AAA game title
• Requires additional commercial software (except for 3D Studio Max/Visual Studio)
• Non disclosure agreement
• No assets
• Has to support at least the following game engine features:
– 3D graphics engine
– Physics engine
– Audio system
– Content management/Pipeline
– Scene Manager
– Animation system
– Networking
– Collision Detection
Then, the remaining engines would be scored according to a weighted scoring system (even less finished):
General features
low licensing costs 100%
documentation/tutorials 100%
accompanying art assets 100%
high distribution among game studios 80%
active/helping community 60%
used in an existing game programming course 20%
Technical Features
reusable programming language & concepts 100%
game type flexibility 100%
usability (ie. editors/IDE/debugger) 80%
supported platforms (source and target) 60%
appearance (ie. graphics) 40%
AI engine 20%
Then prototype games with the best fitting 2 engines will created. And one engine shall remain for the course.
My problem is that every requirement is very general, since the game types (even genres) are unknown.
But still, other universities should have had the same problem.