本節書摘來自華章出版社《系統架構:複雜系統的産品設計與開發》一書中的第2章,第2.5節任務三:确定實體之間的關系,作者[美]布魯斯·卡梅隆,更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視
2.5任務三:确定實體之間的關系
2.5.1關系的形式與功能
從定義上來看,系統是由實體及其關系組成的。講到這裡,大家應該會感覺到,這些關系可以按特征分為兩類:功能關系和形式關系。
功能關系,是指用來完成某件事情的實體之間所具備的關系,此關系可能涉及實體之間對某物的操作、傳輸或交換。為了強調其動态性,我們有時也把功能關系稱為互動(interaction,互動)關系。在互動過程中,相關的實體可能會交換操作數,也可能會協同對操作數執行操作。比如,心髒與肺交換血液,某位團隊成員與同僚分享成果。第5章将會更為全面地講解功能互動。
形式關系,是某段時間内穩定存在或有可能穩定存在的實體之間所具備的關系。這裡的形容詞“formal”(形式的),是從名詞“form”(形式)中派生而來的,與描述一場晚宴所用的那個形容詞“formal”(正式的)有所差別。形式關系通常展現為連接配接關系或幾何關系。比如,肺與心相連,或是某人加入團隊中,這些都會構成形式關系。為了強調其靜态性,我們有時也把形式關系稱為結構(structure)關系。第4章将會詳細讨論形式關系。
一般來說,功能關系通常需要以形式關系為前提。形式關系是功能關系的載體。假如心髒不與肺相連,那它就無法同肺部交換血液。假如兩位團隊成員離得不是很近,或是彼此之間沒有交換資訊所用的連結,那他們就無法分享成果。
形式關系與功能關系既可以表示為關系圖,也可以表示為n×n的表。圖2.10是一張關系圖,示範了系統内的兩個實體與系統外圍環境中的一個實體之間的關系。形式互動以雙箭頭線來表示,而功能互動,則會根據互動的性質,用單箭頭線或雙箭頭線來表示。某些關系位于系統内部,某些則跨越了系統邊界。對于跨越系統邊界的關系,其表示方法與系統内的關系相似,隻不過它是用虛線而非實線來表示的。畫這種關系圖時,應該把實體的形式及功能寫出來,同時最好能給關系加上标注,不過這樣做通常會令關系圖顯得比較雜亂。
我們現在用執行個體來示範系統思維的第三項任務(參見文字框2.7)。圖2.11是放大器電路的關系圖。通過圖中的結構關系,我們可以看出:電路的電壓輸入端與電阻1相連
而電阻1的另一端則與電阻2及運算放大器(op amp)相連。電阻2的輸出端與運算放大器的另一個端口相連,此外電阻2還與電路的輸出端相連。這樣的連接配接方式,在運算放大器周圍形成了一條回路。在電路圖中,我們把這些結構化連接配接或形式關系,稱為電氣連接配接(electrical connection),功能互動中的箭頭,在電路圖中指的是電流的流動。與2.11中的關系圖不同,這塊電路的标準電路圖(參見圖2.4),隻會用一條關系來表示電子元器件之間的聯系,電氣工程師在看到那一條關系之後,會明白元器件之間既有連接配接關系,又有電流經過。
文字框2.7 方法:系統思考的第三項任務
找出系統内及系統邊界處的那些實體之間所具備的關系,以及那些關系的形式與功能。
還有一種表示關系的方法,是使用兩張n×n的表,如表2.5所示。每張表的上方和左側,都分别寫有這n個實體。第一張表列出形式關系,第二張表列出功能關系。表中虛線上方和左側的實體,指的是位于系統邊界内的實體。位于對角線之外的每一個單元格,都表示一種内部關系或外部接口。關系圖和n×n的表各有其意義,關系圖的好處是更加直覺,而n×n表的好處則是能夠展現更多的細節,而且當節點和連接配接數量變多之後,不會顯得特别雜亂。
表2.5 表示放大器電路的形式關系及功能關系的n×n的表
形式關系
電阻1
電阻2運算放大器輸入端輸出端
電阻1在v-端相連在v-端相連在輸入端相連
電阻2在v-端相連在v-端及輸出端相連在輸出端相連運算放大器在v-端相連在輸出端相連輸入端在輸入端相連輸出端,在輸出端相連,在輸出端相連
功能關系
電阻1,在v-端交換電流,在v-端交換電流,在輸入端交換電流
電阻2 在v-端交換電流,在v-端及輸出端交換電流,在輸出端交換電流,運算放大器,在v-端交換電流,在v-端及輸出端交換電流,在輸出端交換電流,形式關系通常更為具體一些,是以我們在思考關系時,可以從這種關系入手。在檢視每一條形式關系時,也應該試着去思考它所承載的功能關系。形式關系的重要性,主要展現在它對功能關系的承載上。由于湧現物出現在功能領域裡,是以功能互動才是真正重要的關系,這将在2.6節中深入講解。
2.5.2外部接口
形式關系與功能關系可以跨越系統邊界,它們可以發生在系統内部的實體與系統外圍環境中的實體之間。這叫做系統的外部接口。在表2.5這個n×n的表中,凡是出現在預留給系統内部的那個區域之外的關系(例如寫有“在輸入端相連”的單元格),都是外部接口。在圖2.11這張關系圖中,這些外部接口以跨越系統邊界的箭頭線表示,同時還有寫着“接口”字樣的大箭頭對這些關系進行标注。與放大器電路類似,team x系統的團隊成員與支援人員之間的關系,以及循環系統與空氣之間的關系,也屬于外部接口。實際上,幾乎很難找到那種與邊界外的實體不通過外部接口發生某種聯系的系統。
總之:
在系統的定義中,一個較為關鍵的方面,就是實體之間必須要具備關系,這些關系可以是形式上的(用來表示相關的實體已然存在或有可能存在,這種關系又叫做結構關系),也可以是功能上的(用來表示相關的實體會對某物執行操作,這種關系又叫做互動關系)。
一般來說,系統内的某些實體會與系統外圍環境中的實體發生形式關系或功能關系,這種關系會跨越外部接口。
形式關系與功能互動,既可以用關系圖來表示,也可以用n×n的表來表示。