本文要點
- 業務規則是系統擁有的特定領域知識的一個部分。
- 合理構建的業務規則可以減少出錯概率,並降低維護難度。
- 不同業務規則的職責不同,例如提供驗證或生成輸出等。
- 事件的處理方式決策會影響總體設計,並且在做出任何決策之前都需要了解其後果。
- 應該圍繞用戶執行的任務來構造命令方法,並提供清晰的輸出。
談到業務規則,如果你是一名技術人員,可能首先想到的是代碼行或業務規則引擎(如果你正在用的話)。但與編碼相比,規則更接近知識管理的範疇。例如,建築部門的員工瞭解許多關於臥室最小尺寸的規則,或者一片空間定義爲臥室或書房的所需特徵。如果一個人瞭解一個領域的規則,知道如何應用它們,就會成爲這個領域的專家。我們的目標是創建模擬領域專家行爲的軟件應用程序。
在本文中,我將使用一個系統來管理公司的共享資源。這套系統的目標是幫助員工預訂筆記本、投影儀、乒乓球桌等物品。
光是看上面一句話,你就可以立刻想出一串問題,比如:資源是什麼?預訂資源意味着什麼?系統是否允許多次預訂資源?諸如此類的問題應由領域專家回答,並將成爲控制系統行爲的業務規則。
這也將指導實體、值對象、命令和系統其他元素的定義。如何定義各個元素是更大的主題,超出了本文的範圍。
原文鏈接:【https://www.infoq.cn/article/XWh38btEq0ZYNiNtJiOT】。未經作者許可,禁止轉載。