- Efficiency
- Data quality
- Adaptation
Lets examine them one by one.
Efficiency of services dealing with bulk data is a serious problem. I am talking of inquiry services here. The complexity of handling bulk updates using services are just unimaginable. ESB essentially is a federated architecture and hence techniques like caching to improve efficiency are hard to implement. This challenge needs to be addressed properly for ESB to succeed.
Data quality within the source system, which is abstracted by service facade is not guaranteed to be of highest order. A service facade needs to deal with these data quality issues gracefully. ESB, somehow needs to identify the data quality issues and feed neccessary actions back to source systems for correction of those issues. Source systems need not alwys be capable of correcting the data quality issues, which needs to be handled by ESB.
Service facade tries to provide an uniform interface to myriad of source systems. In doing so, it takes a least common denominator approach. It tries to define service shema, which is possible to be implemented in all source systems. This need not be best service definition. If this has to be avoided then there needs to be adaptation mechanism, which allows service implementation adapted to standard form, by extending functionality of source system within ESB.
These challenges need to be addressed within ESB for successful implementation.