複雜系統的有界上下文和聚合結構是如何定義的?

發表於 2021-05-03

本文是複雜性領域權威著作保羅·西利亞斯(Paul Cilliers)的《至關重要的複雜性》摘錄,入門人工智慧或DDD建模必讀書籍!

在一個不確定非線性世界中,我們無法追蹤清晰的因果鏈,現在看來似乎不重要的事情可能在以後變得至關重要,如蝴蝶效應。我們的模型必須以某種方式“構架”問題,而這種構架卻不可避免地會引入失真。

所謂以某種方式構架實際是尋找一些約束條件,但是這些約束條件是在限制降低各種可能性,從而自身成為自己的約束約束。

如果基於這些約束構架了一個框架,使您試圖圍繞該框架建立對複雜系統的描述。但是,在處理真正複雜性時,這些框架卻無法勝任。

複雜的系統既不是是同一種型別homogeneous的結構,但也不是混沌的。它們是以元件互動作用模式體現的結構。這些結構中的某些結構可以穩定且壽命長(因此更容易被捕獲或建模),而另一些結構則可以是易變的和短暫的。

這些結構也以複雜的方式交織在一起。我們發現各種規模的結構。為了瞭解掌握這些結構有多麼困難,有必要研究一下複雜系統的邊界以及其中的層次結構的作用。

 

有界上下文的定義

邊界:處理邊界問題的一種方法是引入“操作閉合”的概念。為了使系統保持其標識,它必須(在閉合內部)複製自身。這些論點通常源於Maturana和Varela關於自動生成的工作。

應該注意不要過分強調邊界的閉合封閉。複雜系統的邊界一旦“湧現emerged/出現”就無法明確定義。邊界同時是系統本身活動的功能和所涉及描述策略的產物。

我們永遠無法確保我們已經明確地“found發現”或“define定義”了它,因此閉合系統並不是可以客觀描述的。(它是一種主觀和客觀結合處的邊界)

我們經常陷入將邊界視為將一件事與另一件事分開的事物的陷阱。我們應該認為邊界是一種被繫結的構成或組成。這種轉變有助於我們將邊界視為一種賦能啟用的事物,而不是被限制被侷限的事物。

banq:這也是有界上下文與限界上下文,有界的有是一種有無的賦能啟用概念,而限界是被限制被侷限的概念,限界上下文是一種靜態思維的名詞,

原文:

We often fall into the trap of thinking of a boundary as something that separates one thing from another. We should rather think of a boundary as something that constitutes that which is bounded. This shift helps us see the boundary as something enabling rather than as confining.

在嚴格組織的系統中,我們永遠不會遠離邊界。

如果系統的各個元件之間互連緊密,那麼從任何元件到系統“外部”的距離總是很短。因此,沒有系統“安全的內部”,邊界是被摺疊重疊的,或者系統可能僅由邊界組成。

banq:這裡類似DDD的聚合概念,聚合是一種互連緊密的動態關係,不是靜態的組合關係,只有動態關係才能保證聚合內部邏輯的一致性。

一切總是與相互以及與環境互動和介面; “內部”和“外部”的概念從來都不是簡單的或不受爭議的。

 

層次結構與聚合

複雜的系統離不開層次結構。層次結構建立了明確的通訊路徑。如果系統是分層的,則可以開發一種演算法來確保資訊從A到B。

banq:聚合內部是有層次的,從聚合根實體到其他實體。

複雜的系統不是那種同質同源同型別(homogeneous)的東西。它們具有結構(不同型別的實體組成的結構,一個實體代表一種同種型別),而且這種結構是不對稱的。有帶有功能性小段落,要使它們完全存在,就必須有某種形式的層次結構。

banq:這是聚合和實體的區別所在,同一種型別(homogeneous)的東西可以使用一種實體型別來表示,但是聚合是多種不同型別的實體組成的。

但是,當這些層次結構被定義得太清晰或太永久時,就會出現問題。

與邊界的概念類似,不能僅根據明確定義的層次結構來描述複雜系統的結構。這是因為複雜性的結構通常是分形的(分形理論,雪花是由類似雪花自己結構一樣的分支組成的),在所有尺度上都有結構。

系統生命力的一部分在於其轉換層次結構的能力。儘管層次結構對於在系統中生成有意義的框架是必不可少的,但它們不能保持不變。隨著上下文的變化,層次結構也必須變化。

banq:這也是聚合結構取決於上下文的關鍵地方所在。

 

複雜性理論增加了我們對諸如組織之類的複雜系統的理解,但是它沒有為我們提供可以準確地預測或控制特定組織的行為的工具。