I don’t really know of any modern IT system, framework, language etc that doesn’t support web services, even the mainframe can handle that.
Services aren’t new to SOA and web services != SOA. The goal here is not to tightly couple your architecture/design. Exposing a flow service to be directly invoke by another system can lead to that aka spaghetti architecture. Before SOA became the hot buzz word it was still a bad idea to tightly couple your flow services. After all someone spent a lot of money to bring in webMethods, tightly tying everything together would defeat the purpose.
Why yes they can but see above why that’s a bad idea. Program to an interface not an implementation.