I struggle to set good exam questions. One wants to test knowledge and understanding in a way that is realistic within the constraints of students abilities and backgrounds.
I do not have a well-defined philosophy or approach, except for often recycling my old questions...
I think I do have a prejudice towards two goals.
A. Testing higher level skills [e.g. relating theory to experiment, putting things in context, ...] as much as specific technical knowledge [e.g. state Bloch's theorem or solve the Schrodinger equation for a charged particle in constant magnetic field].
B. Testing general and useful knowledge. For basic undergraduate courses [e.g. years 1 to 3] the question should be one that another faculty member could do, even if they have not taught the course. Sometimes, colleagues write questions that I cannot do. You have to have done the problem before, e.g. in a tutorial. We seeming to be testing whether someone has done this course, not "essential" knowledge.
However, I am not sure I really go anywhere near reaching these goals.
Here is a recent mid-semester exam I set for my solid state class of fourth-year undergraduates.
Is it reasonable?
How do you set exam questions?
Do you have a particular approach?