先說說系統邊界的確定。這是在工程開發中緊接着需求分析的第二步。顧名思意,這個過程就是要確定我們要開發的系統和外部環境之間的界限,也就是要區分系統本身和它的外部環境。其中的外部環境可能包括用戶,其它系統,軟硬件條件等。
舉個例子,一個銀行系統,它的系統邊界如何確定呢?
首先,銀行系統的外部活動者有儲戶,前台出納員,銀行管理員,這些都不屬於銀行系統本身,他們是此系統的外部環境;
其次,銀行系統是運行在操作系統上的軟件,它在運行過程中可能要進行生成文件,獲取時間等操作,這涉及到操作系統的API,所以操作系統對於銀行系統來說是外部環境;
再次,銀行系統要打印交易憑條,打印機對於系統來說是外部環境;
第四,銀行系統可能與客戶的工作單位的工資發放系統有交互,那么客戶工作單位的工資發放系統也是外部環境。
而對於銀行系統來說,使用此系統的銀行的建築格局,人員構成,所處地域等就不是此系統的外部環境。
確定了系統的邊界有什么用呢?系統邊界一確定,我們就已經知道有哪些外部對象在與系統進行交互,於是我們就可以在系統中為該對象設計相應的接口,從而實現這些交互。用上面的例子說,我們應該給儲戶,前台出納,管理員設計不同的接口,還要給客戶工作單位的工資發放系統設計接口,為打印機設計接口。這些是我們需要關心的,如果這些外部環境改變了,我們可能要重新設計我們的接口。但不在系統邊界上的因素我們就不用考慮,比如我們不必為銀行建築格局的改變而改變我們的系統接口,這是下水管道設計師應該關心的問題。
確定系統邊界在項目開發中是非常重要的一步,如果系統邊界確定得不好,會給接下來的分析設計和編碼工作帶來障礙,也會給系統的維護帶來麻煩。