Unified Communications and Unified Messaging
First off I'll start with Unified Messaging and what it is before I go into the Unified Communications. UM and UC are different, it's just that the ideas and technologies have been kind of been pushed together. This is really my interpretation, of the UM and UC idea that Microsoft is pushing.
Unified Messaging is basically the idea that your non real time messages (email, fax, and voicemail) are all accessible from one place. In the Microsoft world, Exchange 2007 can provide this. Users can get all of their non real time messages from Exchange via Outlook.
Unified Communications handles all of your real time messaging, (telephone calls, instant messaging). This is where Office Communications Server 2007 comes in. OCS takes advantage of VoIP to do some really cool things, such as being able to access your work phone from anywhere you have access to the internet. Your instant messaging client essentially also becomes a soft phone. When you think about UC, you need to think about presence data.
So where does Office Communication Server 2007 Speech Server fit into all of this? While Exchange has the auto attendant, it is configurable, not programmable. While this is a great solution for small companies that need a simple transfer, it will not fit everyone's needs. Some companies are going to want to provide more features so that their customers can interact with their business over the phone. Something like placing an automated order over the phone, couldn’t be done with Exchange, you’d have to get OCS 2007 Speech Server and create a custom telephony application.
Speech Server could also be used to interact with presence data from OCS. For example, you could create something that would determine where the user is based on presence data. If they are offline, busy, etc... go to voicemail, online ...call their office number, you could also use presence data to call a different number such as their cell phone. Speech Server doesn't have to be used to built a UM or UC application, you can still use it build an application that does something automated.
Microsoft working together with themselves?
What I think happened at Microsoft, is the Exchange group wanted to add features that allowed users to check email over the phone, so instead of writing everything over again they looked for other product teams who already have built the underlying technology. My guess is they probably took some of the technology from the Speech Server team.
Now Speech Server is a part of OCS, this is probably for the same reason. The LCS group, when building OCS, decided they wanted to add telephony features. So instead of writing everything from scratch, they decided to use some of the components the Speech Server team has already built.
You really see this in a lot of Microsoft products, such as I assume Speech Server is built on top of SAPI, if you really look at the code and compare it to SAPI they are very similar. I think this also went the other way, SAPI 5.3 now has support for SSML and SRGS XML formatted grammars, Speech Server 2004 already supported those standards. So did the SAPI team take some of the underlying code and decided to incorporate into their product? Probably.
I’ve never worked at Microsoft, so these are just my assumptions after using some of these products.