2007年8月9日 星期四

C28 追溯關係(2)──Use Case vs. Class & Class vs. Class

每個Use Case的功能都是由一群Class合作完成的,這表示著Use Case與Class之間存在著使用的關聯;也就是說在這裡同樣得做好使用關係的追溯。反過來看時,Class參與了哪些Use Case的完成也是必須追溯的關聯。

在架構設計的時候,產生的物件都屬於前面架構各層級的設計,對應的是需求分析的結果,除了使用元件的Interface之外,其他的Class都是與系統直接相關的物件。對於分層設計的概念來說,元件與Service是屬於不同層級的物件,所以不建議追溯時混在一起。

既然設計分了層次,追溯就無可避免地也分對應的層次。在Use Case對Class這層的關係就對應到與系統需求有關的Class;在更為精細的追溯時,追溯的對象會細分到Class裡的變數與方法,這樣可以在修正與變更時能夠更詳細地定位哪些地方需要重新測試。

在SoDA的應用上,我們可以取得所有的Use Case Realization,進而拿到裡頭所有的Class Diagram與Sequence Diagram,再依序條列出圖裡所用到的全部Class,很容易地就可以取得每一個Use Case有關聯的所有Class。

再下一層是系統Class對應使用元件Class的追溯關係。在這裡我們必須要能知道每個系統Class使用了哪些元件Class,同樣地也應該知道元件被應用在哪些系統程式裡。表面上雖然是平等的Class vs. Class,但是在設計層次上其實是上層系統程式與下層使用元件的關聯。

沒有留言:

張貼留言