• When I worked in a small company, I had to talk to the users and collect requirements.  They had no problem telling me what they wanted.  All my projects were finished in time and the users were happy.

    In most big companies I worked for, the business analysts supposed to talk to the users and gather informations.  Then they wrote the function spec or the scope of the project to the IT department and the developers developed the project.  9 out of 10 times the scope or the requirement was wrong. We (the developers) spents all the time working on something that no one wanted, or when we got the scope/requirement, we found out we did not have the resources or it could not be finished before the deadline.

    What was the problem?   The business analysts !!!!!  They did not ask the right questions and they did not understand the current system.  Basically they did not understand the business and they did not understand the system.   Sometimes I don't even know why they were there.  I worked with many business analysts, maybe 1 out of 1000 could be able to do the right job.

    I asked my manager many times why I could not talk to the users myself and he said it was the company policy and it was not part of my job.