2.3 TrumoTrumo giả định rằng các chuyên gia khác nhau Histracecommits (còn được gọi là R2CT1; rj; tk) và Histracebugs (R2CT2 rj; tk) biết các thông tin hữu ích để loại bỏ hoặc rerank các liên kết truy tìm nguồn gốc giữa hai tài liệu, ví dụ như, yêu cầu và các lớp học mã nguồn. Trumo là như vậy, tương tự như một mô hình web của sự tin tưởng của người dùng: người dùng thêm mua từ một thương gia web, càng cao của người dùng tin tưởng của thương gia này [14].Theo định nghĩa trong phần 2.1, trong (1), rj là một yêu cầu với rj 2 R; CS là một lớp học với cs 2 TiðtkÞ bởi vì chúng tôi sử dụng các tập Ti 2 T để xây dựng một tập hợp các liên kết toán đáng tin cậy Tr; 0i là điểm tương đồng giữa các yêu cầu rj và một số lớp tk như vậy đó tk 2 Ti và ðR2CTi; rj; tkÞ trả về một cặp ðrj; tkÞ. Với (1), Trumo sử dụng các thiết lập của ứng cử viên liên kết bản ¼ ðrj cs; iðrj; csÞÞ với j 2 ½1;...; N và s 2 ½1;...; M và bộ của ứng cử viên liên kết lrt ¼ ðrj cs; 0iðrj; tkÞÞ với j 2 ½1;...; N và k 2 ½1;...; Ni được tạo ra từ mỗi Ti chuyên giavà, cho mỗi yêu cầu rj 2 R:Tr ¼ fðrj cs; 0iðrj; tkÞÞj 9 tk 2 Ti: ðrj; csÞ 2 ðR2CTi; rj tkÞ & ðrj; csÞ 2 ðR2CÞg: ð1ÞFig. 2 shows the Venn diagram of the R2C, R2CTi;rj;tk, and Tr sets. The last constraint ðrj;csÞ 2 ðR2CÞ imposes that a link be present in the baseline set R2C and in any of the R2CTi;rj;tk sets. If a link does not satisfy this constraint, then Trumo discards it. Then, Trumo reranks the similarity of the remaining links in Tr as follows: Let TCiðrj;csÞ be the restriction of Tr on ðrj;csÞ for the source Ti, i.e., the set fðrj;cs;0iðrj;tkÞÞ 2 Trg, then Trumo assigns to the links inTCiðrj;csÞ a new similarity i ðrj;csÞ computed asP ðrj;csÞ ¼ ðrj;csÞ þ l2TCiðrj;csÞ ðlÞ; ð2Þ i 1 þ jTCiðrj;csÞjwhere ðrj;csÞ is the similarity between the requirement rj and the class cs as computed in R2C and ðlÞ is the similarity of the documents linked by the link l of TCiðrj;csÞ, i.e., derived from tk, which means 0iðrj;tkÞ. Finally, jTCiðrj;csÞj is the number of elements in TCiðrj;csÞ. The Phigher the evidence (i.e., l2TCiðrj;csÞ ðlÞ) provided by links in TCiðrj;csÞ, the higher the new similarity i ðrj;csÞ; on the contrary, little evidence decreases i ðrj;csÞ.Finally, Trumo assigns weight to each expert and combines their similarity values to assign a new similarity value to each link in Tr using the function: XP rj;csðTrÞ ¼ iðrj;csÞi ðrj;csÞ i¼1 ð3Þ þ Pþ1ðrj;csÞ jTrðrj;csÞj ;maxn;mjTrðrN;CMÞjwhere Trðrj;csÞ is the subset of Tr restricted to the links between rj and cs, iðrj;csÞ 2 ½0;1 and 1ðrj;csÞ þ 2ðrj; csÞ þ þ Pþ1ðrj;csÞ ¼ 1; recall that P is the total number of experts. With the function, the more often a pair ðrj;csÞ exists in Tr, the more we can trust this link (if such a link is also present in R2C).2.4 DynWingTo automatically decide the weights iðrj;csÞ for each expert, we apply a dynamic weighting technique. Existing techniques [2], [8] to define weights use static weights for all the experts. Thus, they require oracles to decide a “good” weight or range of weights. However, with real, legacy systems, no such oracle exists, i.e., no a priori-known set of traceability links exists. Moreover, using the same static weight may not be beneficial for all the recovered links.Therefore, we consider each link recovered by a baseline IR technique and by the different experts as an independent link and dynamically assign weights to baseline links and each expert. Choosing the right weight per link is a problem that we formulate as a maximization problem. Basically, we have different experts, i.e., CVS/SVN commits, bug reports, and others, to trust a link. Each expert has its own trust into the link. By maximizing the similarity value rj;csðTrÞ (and hence determining the optimal iðrj;csÞ values), DynWing automatically identifies the experts that are most trustworthy (highest iðrj;csÞ values) and those that are less trustworthy (lowest iðrj;csÞ values): max f rj;csðTrÞg; ð4Þ1ðrj;csÞ;:::;Pþ1ðrj;csÞ with the following constraints:0 iðrj;csÞ 1;i ¼ 1;;P þ 1 1ðrj;csÞ þ 2ðrj;csÞ þ þ Pþ1ðrj;csÞ ¼ 1 k1ðrj;csÞ k2ðrj;csÞ kPþ1ðrj;csÞ:Given the three previous constraints, it is possible that DynWing assigns iðrj;csÞ ¼ 1 to a single expert i. To avoid such an assignment, a developer can define her global trust into the experts. For example, CVS/SVN commit messages may be considered by the developer more trustworthy than bug reports. Therefore, the developer may further constrain(4) by imposing
đang được dịch, vui lòng đợi..
