|
There are many potential cures you can explore:
· Business Logic
o Use the BizTalk Business Rules Engine (BRE). This will increase the flexibility of your solution, ease some aspects of maintenance (maps, etc) at the expense of adding a dependency to the BRE, and force the business team to succinctly define a vocabulary and ruleset.
o Call custom components containing business logic from an orchestration. For example, if you have a component that uses a complex algorithm to assign a ranking to a customer, call it from an orchestration (or custom pipeline component) and not from within a map.
o Concentrate business logic in Orchestrations, the BRE and external LOB systems. For example, if your solution is processing 837 Professional claims, a combination of BRE and Orchestration logic may filter based on primary diagnosis and geographic region but a back-end adjudication system will handle most health claim rules.
o Don’t forget about BAM. By carefully placing logic in appropriate places, you may enhance your ability to track key data using BAM.
· Value-Added Transformations
o Can you migrate some of the transformations into a custom pipeline? For example, encrypting certain fields in a message is better done in a custom pipeline component; doing so may improve performance and make maintenance and debugging tasks easier.
o If you commonly apply the same pattern of 4 or more functoids against many elements, consider combing them into a custom functoid. This simplifies reuse, makes it easier to modify (change the custom functoid instead of ever instance of the transform), and may provide a performance benefit.
· Other
o Locate business logic and other procedures as far downstream in the business process as possible. By deferring potentially complex procedures, you may be able to avoid them.
o Break large maps into smaller maps and run them serially in an orchestration. It may be better to trade a little performance for easier editing and debugging.
o Develop a coherent plan for business logic based on business requirements, solution architecture, and performance goals. Make sure the plan is followed through sound process. |