Today there was an interesting announcement from IBM that reinforced the growing trend towards composite applications - IBM(R) Enables Composite Applications With New IBM Workplace(TM) Application Development Tool. One of the interesting things about SOA and Composite Applications is that by making it easy to bring different components together to solve business problems they allow you to use different technologies for each kind of component. As long as your technology allows you to package up your component in a standards-compliant fashion you can use it freely with other compliant components.
One of the nice things about this is that it removes a major objection to specialized development tools like business rules engines. If I can package up a rule service as a standard SOA-compliant service, as I can with Blaze Advisor and several other products, then it can be integrated into any composite application regardless of how other components are being developed. This let's me use a tool for each component based on what the component does. Thus if I have a component that implements very complex business rules, very large numbers of business rules or business rules that change constantly, I can use a business rules management solution to develop it. That way I get the benefits of a business rules approach for the components where it matters without having to worry about how all this will fit together later.
SOA and Business Rules, made for each other :-)