CRC(Class-Responsibility-Collaborator)卡建模是一種簡單且有效的面向對象的分析技術。在一個OO(面向對象)開發項目中,包括用戶、系統分析員和開發者在建模和設計過程中經常應用CRC卡建模,使整個開發團隊普遍的理解形成一致。
它由三部分組成:
1. 類(Class)
2. 職責(Responsibility)
3. 協作(Collaborator)
一個類代表許多類似的對象。而對象是系統模型化中關注的事物。他們可以是一個人、地方、事情、或任何對系統有重要性的概念。類名一般列在CRC卡的頂部。
職責是類需要知道或做的任何事物。這些職責是類自身所知的知識,或類在執行時所需的知識。
協作是指為獲取消息,或協助執行活動的其他類。在特定情形下,與指定的類按一個設想共同完成一個(或許多)步驟。協作的類順著CRC卡的右邊排列。
CRC模型是CRC卡的集合,它代表一個應用域或問題域的全部或一部分。CRC模型是最普遍的用戶,其中的白皮書地址是用于收集和定義一個面向對象應用的用戶需求。圖中展示了一個航運/存貨控制系統的CRC模型例子,展示的CRC卡將被放在一張書桌或工作桌上。注意卡的放置:相互協作的卡是彼此接近的,無關系的卡不能放在附近。

下面我們來談談如何創造一個CRC模型的?有六個步驟:
1、 CRC模型組一起加入(模型組包括相關的客戶領域人員、設計者、記錄員、系統分析員等)。
2、 安排模型房間。
3、 進行集體自由討論
內容根據此CRC模型的系統目標進行,如系統是為誰開發的?那些商業業務需要這個系統的何種支持?工作時需要什么信息?……總之盡量按能達到系統要求實現的目標進行,包括進行活動時對資源、條件、活動及人員的要求。
4、 講解CRC模型技術(完成集體討論后,設計者將描述CRC模型過程。通常需要花費十至十五分鐘,該過程包括創造幾個CRC卡范例,范例參考上圖)。
5、 重復地執行CRC模型步驟。
6、 執行用例情景試驗
用戶情景試驗是一個任務過程模式,其中用戶們將積極地參與以保證需求是準確的?;镜乃枷胧且唤M商業領域專家(也就是客戶方),設計者,系統分析員一步步通過一系列的用例證實CRC模能準確地反映出用戶的需求。
其實說白了,CRC模型就是一種溝通方式,客戶方與開發方如何通過這種有效的、易實現、易操作的方式建立一個能描述準確的、雙方達成共識的系統需求。CRC建模因為用戶積極參與到模型的定義中,他們對工作的滿意度就會增加,并與開發者們并肩創造這個CRC模型,通過這個一連串的模型卡,雙方對待建的系統需求目標達成共識。當然CRC模型也存在一定的缺點,CRC模型只是一個面向對象應用的用戶需求定義的一部分。你也應該考慮到用例,原型,和正式的需求文檔。是否要使用CRC建模,就根據項目、企業、客戶自身存在和所需的條件而定了。
本博客為學習交流用,凡未注明引用的均為本人作品,轉載請注明出處,如有版權問題請及時通知。由于博客時間倉促,錯誤之處敬請諒解,有任何意見可給我留言,愿共同學習進步。