I think one of the biggest difficulty I have witnessed is that senior management needs results, but the SMEs are not very enthusiastic about the changes that IT people try to bring. It is very difficult to gather exact requirement, if users are not very enthusiastic about a new application. But if you users are interested, the life cycle of development becomes much easier.