While a lot of work is being done on technology of requirements engineering, I have chosen to focus on what I believe is the hardest part of requirements engineering, namely the human processes by which it is done. It seems that no matter how good the technology is, no matter how suitable it is for the job at hand, human behavior and limitations affect the way we use this technology to succeed or fail in requirements engineering. Indeed, even the inevitable pain of software development rears its ugly head in requirements engineering.

I believe that the most fruitful way to investigate the effect of human behavior and limitations on requirements engineering is to examine the various roles in requirements engineering. These roles include that of customer, user, requirements engineer, as well as their various special cases.

The research into roles that I have done include: