2010-12-17 122 views
5

只是一個普遍的問題。你們如何解決與外部系統集成的問題?與外部系統集成

需要考慮什麼?

有什麼不同的方法?

這裏有沒有現有的框架?

有沒有一種模式可以遵循?

只想得到一些想法,任何建議,鏈接,文章讚賞。

感謝

+0

對於程序員SE來說可能是一個更好的問題 – 2010-12-17 15:51:35

回答

1

可能您希望獨立於外部系統。這意味着如果外部系統發生變化,您的客戶不應該注意到這一點。所以你需要抽象它。這取決於您的要求,但我傾向於遵循DDD原則。它確保你有一個豐富的域模型,它獨立於你正在使用的任何基礎設施,在你的情況下,外部系統。只是谷歌'域驅動設計'... :)

1

我想大多數人會通過外部系統的能力來驅動的決策中,它支持哪些接口?它們是否包含適當的數據安全基礎設施?一旦你知道什麼是選項,你可以看看已經通過.Net Framework和/或第三方組件支持的內容。在開始解決方案空間之前,最好先查看問題空間;)

2

系統集成通常是在個案的基礎上進行。唯一不是這樣的情況是,如果其中一個系統實現了集成工作的通用框架。這些框架通常是針對特定行業的。

例如,醫療保健相關係統通常實施HL7。基於教育的系統可能會實施一些稱爲SIF的功能抵押貸款系統實施MISMO。

不知道有問題的應用程序,不可能說如果框架存在。

執行集成時要考慮的事項包括:任一系統是否公開與導入/導出數據或Web服務相關的任何類型的功能?

如果他們這樣做,他們不參與行業標準框架,那麼這是首選機制。

最糟糕的情況是讓一個系統直接調用其他系統數據存儲。更常見的情況是,這不意味着您將不得不復制業務邏輯並保持重複。在升級的情況下,這成爲一場噩夢。

如果您處於最壞的情況,那麼您最好的選擇是聯繫您需要集成的系統的創建者,並找出他們如何通過導入/導出或Web服務公開您需要的功能。這很可能是一個收費;但要比自己想象出來要便宜得多。