9.8 類別圖工具、AI輔助與品質檢查
物件導向分析與領域建模
9.8.1 工具的選擇
類別圖可使用圖形化建模工具或文字式建模工具建立。選擇工具時,應考量:
- 是否支援類別、屬性、關聯、多重性及一般化?
- 是否能保存模型元素,而不只是繪製圖形?
- 是否便於版本管理、差異比較與團隊協作?
- 是否能輸出適合教材、文件與網站使用的格式?
- 是否能在模型變更時同步更新不同圖面?
Mermaid與PlantUML適合文字式版本管理及快速產圖;完整UML建模工具則較適合管理大型模型與元素之間的關係。工具不能替代語意判斷,即使語法正確,模型仍可能違背需求。
9.8.2 AI可以協助的工作
AI可以協助:
- 從需求文字擷取候選名詞。
- 將同義詞分組,並提出統一命名建議。
- 提出候選類別、屬性與關聯。
- 將已確認的模型轉換為Mermaid或PlantUML程式碼。
- 比較類別圖與需求、使用案例及活動圖是否一致。
- 找出缺少來源、相互矛盾或多重性不明的模型元素。
- 產生領域專家審查時需要提出的問題。
AI輸出的模型只能視為候選內容。AI可能誤判動作的類別、將介面欄位當成領域屬性、虛構多重性,或把軟體設計模式混入分析模型。
9.8.3 建立有依據的提示詞
提示詞應提供明確範圍與證據,並要求AI區分事實、推論和待確認事項。例如:
提示詞若只要求「畫一張完整類別圖」,AI往往會為了追求完整而補入未經確認的內容。要求來源與信心程度,可以降低這類風險。
9.8.4 類別模型品質檢查
類別模型至少應檢查下列面向:
- 範圍: 類別是否屬於目前系統範圍。
- 命名: 是否沿用需求中的一致名詞。
- 定義: 每個類別是否具有清楚且不重疊的意義。
- 屬性: 是否為業務所需,而非任意加入的技術欄位。
- 關聯: 是否具有可解釋的業務語意。
- 多重性: 是否有需求或領域知識支持。
- 結構: 是否誤用聚合、組合或繼承。
- 追溯: 重要元素是否能連回需求、規則或流程。
- 一致性: 是否與使用案例、活動圖及驗收準則相符。
- 可讀性: 圖面是否避免交叉線過多及不必要細節。
9.8.5 AI Lab:產生並審查候選類別模型
可使用UC-06「處理評分更正」進行練習:
- 提供FR-09、FR-10、BR-11、BR-12及DR-06。
- 要求AI提出候選類別、屬性、關聯與多重性。
- 要求AI逐項列出需求依據,不足者標為待確認。
- 檢查是否區分「評分」與「評分更正申請」。
- 檢查是否誤稱評審可以直接修改已正式送出的評分。
- 修正模型並轉換為Mermaid類別圖。
- 以基本流程與例外情境再次檢核。
練習成果應同時包含圖形、文字定義、追蹤表及待確認事項,不能只提交一張圖。