I'm a traditionally educated developer; I'm not one of those people who have moved into development as a natural progression of their work.
But in every job I've had, I've had to learn a certain amount about aspects of the businesses that I am working within; I can't see how else you can do a good job without understanding a certain amount about the business.
Naturally, for some projects you get more and more involved in the business as a consequence of the your work.
I wrote the management system for one of our business units. Last year, there was a staffing crisis, so I was called in to train some temps how to operate the system. The problem was that the system was only the thin end of the wedge; knowledge of the business itself was essential. In the end, I ran the day to day operations of that business for nearly 4 weeks until the key staff came back.
Earlier this year, I developed a simulation 'game' to model this business unit, and I worked with the the bean counters from HQ to model various proposed changes to the business; more notable for that fact that no-one from that unit itself was majorly involved in the exercise as I was considered the expert.
On the flip side, I find that IT professionals are regarded with suspicion; I find businesses regard us as technicians only - what would we know about business, eh?? And when trying to formalise requirements, I find some clients try to tell me them, and are resistant I want to know more about the underlying business and it's needs. 'What do you need to know more for? I've told you what I want!'.