2010-12-17 125 views
5

只是一个普遍的问题。你们如何解决与外部系统集成的问题?与外部系统集成

需要考虑什么?

有什么不同的方法?

这里有没有现有的框架?

有没有一种模式可以遵循?

只想得到一些想法,任何建议,链接,文章赞赏。

感谢

+0

对于程序员SE来说可能是一个更好的问题 – 2010-12-17 15:51:35

回答

1

可能您希望独立于外部系统。这意味着如果外部系统发生变化,您的客户不应该注意到这一点。所以你需要抽象它。这取决于您的要求,但我倾向于遵循DDD原则。它确保你有一个丰富的域模型,它独立于你正在使用的任何基础设施,在你的情况下,外部系统。只是谷歌'域驱动设计'... :)

1

我想大多数人会通过外部系统的能力来驱动的决策中,它支持哪些接口?它们是否包含适当的数据安全基础设施?一旦你知道什么是选项,你可以看看已经通过.Net Framework和/或第三方组件支持的内容。在开始解决方案空间之前,最好先查看问题空间;)

2

系统集成通常是在个案的基础上进行。唯一不是这样的情况是,如果其中一个系统实现了集成工作的通用框架。这些框架通常是针对特定行业的。

例如,医疗保健相关系统通常实施HL7。基于教育的系统可能会实施一些称为SIF的功能抵押贷款系统实施MISMO。

不知道有问题的应用程序,不可能说如果框架存在。

执行集成时要考虑的事项包括:任一系统是否公开与导入/导出数据或Web服务相关的任何类型的功能?

如果他们这样做,他们不参与行业标准框架,那么这是首选机制。

最糟糕的情况是让一个系统直接调用其他系统数据存储。更常见的情况是,这不意味着您将不得不复制业务逻辑并保持重复。在升级的情况下,这成为一场噩梦。

如果您处于最坏的情况,那么您最好的选择是联系您需要集成的系统的创建者,并找出他们如何通过导入/导出或Web服务公开您需要的功能。这很可能是一个收费;但要比自己想象出来要便宜得多。