In my last role I developed software for internal use, for a company of approximately 2000 staff. User input was typically difficult or impossible to get before / during the project lifecycle, and one set of users (in particular) tended to give specific requirements and then claim that they had given different requirements when the project was completed. This led to problems getting acceptance sign-off before go-live as they had backing from a luddite board member (one of those who breaks his PDAs by forcing the wrong cables into it).
The way I found to combat this depended on the type of users I was dealing with:
1. Constructive users (not the aforementioned problem set)
I tried to cultivate 'super users' in each department or area. I defined these as those with extensive experience in their particular role who were IT-competent (ie they knew how to operate their workstations for normal day-to-day applications such as office etc).
I would make sure I spent as much time as feasible working through requirements and prototypes with this type of user, and relied on them to envangelise the new software to their co-workers.
2. Negative users (the aforementioned 'I didn't say that' set)
These users were eventually barred by my line management from directly contacting me by telephone to add on-the-fly requirements. I stored all email sent to / from them and documented everytime they failed to attend requirement meetings / return calls /etc. I also documented certain assumptions as part of the project initiation that put the onus on them to provide necessary information.
This approach paid off during my 3rd project for them where I was able to present a line-by-line rebuttal of their reasons for not signing the acceptance certificate, complete with 40 odd pages of email correspondence showing repeated failure to clarify / provide information / respond to queries. This was done at a senior management meeting in front of several board members
![[bigsmile] [bigsmile] [bigsmile]](/data/assets/smilies/bigsmile.gif)
after they'd spent several weeks bad-mouthing the development team to anyone who would listen.
To sum all this up -
1. Support the good users, encourage them to feel involved and take ownership of the new system through prototyping and 'quality time' spent with them.
2. Document the bad / problem users and their impact on the project, try to play nice with them but be prepared to stand your ground if they like to play the blame game.
HTH
TazUk
![[pc] [pc] [pc]](/data/assets/smilies/pc.gif)
Blue-screening PCs since 1998