對象和類
對象:系統中用來描述對象的實體,由屬性和操作組成。
類:具有相同屬性和操作的一組對象的集合,由類名、屬性及操作組成
主動對象:至少有一個操作不需要接收消息就能主動執行的對象
被動對象:所有操作都是被動的響應從外部發來的消息才能夠執行的對象
主動類:主動對象的類
主動操作:不需要接收對象就能主動執行的操作,用來定義進程,線程。。。。
被動對象的操作:函數,過程。。。
對象與類的應用
1.將問題域中的事物抽象爲對象
2.將具有共同特徵的對象抽象爲類,用類及其關係構成系統的整體模型
3.模型中不包含實例級的建模元素,用類表示該類的任何對象
4.在類的規約中說明此類將創建哪些對象實例
類的表示法
研究問題域及用戶需求
1.研究用戶需求,明確系統責任
用戶需求:用戶對將要開發的系統提出的各種要求及期望,包括系統功能、性能、安全性、交互性等技術要求以及交付時間、使用資源等非技術性要求;一般情況下,功能需求是分析員考慮最多的因素。
手段:閱讀、交流、調查、記錄、整理
2.研究問題域
問題域:被開發的應用系統所考慮的整個業務範圍。
手段:親臨現場、閱讀、認真聽取專家的見解、借鑑
3.確定系統邊界(外部參與者)
系統邊界:一個系統所包含的所有系統成分及系統以外的各種事物之間的分界線
發現對象
1.出發點:問題域及系統責任
2.正確運用抽象原則
3.策略與啓發
a.考慮問題域:人員、組織、物品、設備、抽象事物、事件、文件、結構。。。
人員:需要由系統保存和管理其信息的人員;應該在系統中完成某些功能、提供某些服務的人員
組織:在系統中發揮一定作用的組織機構
物品:需要由系統管理的各種物品
設備:在系統中動態運行、由系統進行監控或供系統使用的各種設備等
抽象事物:沒有具體物理形態,卻對用戶的業務具有實際意義的邏輯上的事物
事件:需要長期記憶的事件
文件:人類日常管理及業務活動中使用的各種表格、檔案等文件
結構:從結構實現聯想
b.考慮系統邊界
外部參與者包括人員,設備,外部系統
c.考慮系統責任
發現疏漏的對象,
策略:對照系統責任所要求的每項功能,查看是否可以由已發現的對象來完成
d.審查和篩選
1.捨棄無用的對象
2.對象精簡:只有一個屬性、操作的對象
3.推遲到OOD時候考慮
對象分類
1.將對象抽象爲類
2.檢查和調整
a,類的屬性或操作不適合該類的全部對象
b.屬性及操作相同的類
c.屬性及操作相似的類
d.對同一事物的重複描述
建立類圖的對象層
1.用類符合表示類,填寫類名
2.標記已經確認的主動對象