分析員在選擇候選類時,應該遵循以下列出的這些指南或經驗法則(還不完全)。這些指南適用於發現實體類。
1、 系統中的每個類都必須有清晰的目的陳述。
2、 每個類都是一組物件的模板描述。單例類—我們只能為它設想出乙個物件,在「業務物件」中不太可能出現的,這樣的類通常組成應用的「公共知識」方面,並且在應用程式中被硬編碼。例如,如果系統是為單個組織設計的,organization類就沒有存在的必要。
3、 每個實體類必須擁有一組屬性。通過確定標識屬性(主鍵)來幫助我們推斷類的基數—即資料庫中該類物件數的期望值,這是乙個好主意。然而要記住,類一般不需要有使用者定義的主鍵。物件識別符號(oid)用來標識類的物件。
4、 每個類應該有區別於其它類的屬性。乙個概念是類還是屬性依賴於具體的應用領域。小汽車的color一般被類car的屬性。但在油漆廠,color被定義為乙個類並帶有自己的屬性(亮度、濃度、透明度等)。
5、 類擁有一組操作。當然,在本階段,我們並不涉及操作的標識。類介面中的操作(類在系統中提供的服務)隱含在目的陳述中。
聚類和關聯規則發現
聚類都有兩個前提 距離相近的實體更有可能是同乙個類 a與b相似,b與c相似,則a與c相似的可能性很大。所以,在聚類演算法中,距離的定義至關重要。考慮一下購物籃分析,試著給商品聚類。所知道的資訊只有某些商品同時被買的記錄,這也是關聯規則發現所需要的最基本的資訊。可以根據a和b出現在同一購物籃中的頻率來...
社群發現之譜聚類演算法的實現
譜聚類演算法實現 1 計算距離矩陣 歐氏距離,作為相似度矩陣 2 利用knn計算鄰接矩陣a 3 由鄰接矩陣計算都矩陣d和拉普拉斯矩陣l 4 標準化拉普拉斯矩陣 5 對拉普拉斯矩陣進行特徵值分解得到特徵向量 6 對特徵向量進行k means聚類 7 得到分類結果 import numpy as np ...
溝通的發現
從某種程度上說,技術類工作的嚴謹性決定了工作內容相對枯燥。我相信,很多測試人員也和我一樣對這一點深有體會。然而在最近參與的兩個專案測試工作中,我發現輕鬆溝通讓工作變得不再那麼枯燥。舉最近幾次填寫缺陷跟蹤為例。我們都知道對於開發修復的bug,需要開發人員新增評注,描述問題產生的原因等資訊。長期以來,大...