【正文】
?VPs?VPd such that VPs ? VPd 視點(diǎn)集成(援引) 視點(diǎn)間規(guī)則的應(yīng)用 ? 檢查模式:? ? –失敗導(dǎo)致不一致性處理 ? 變換模式: f(?, VPs, VPd) –將一個(gè)視點(diǎn)中的對(duì)象或關(guān)系一對(duì)一映射到另一個(gè)視點(diǎn)的對(duì)應(yīng)對(duì)象或關(guān)系上(滿足關(guān)系 ? ) 視點(diǎn)集成(應(yīng)用) 視點(diǎn)集成 視點(diǎn)間不一致性的處理 視點(diǎn)間不一致性的處理 ( a ) T e m p l a t e i n C OR E( b ) Hi e r a r c h y o f Ag e n t s( c ) Ac t i o n t a b l e o f Ag e n t B o r r o w e r ( d ) Ac t i o n t a b l e o f Ag e n t C l e r k ( e ) Ac t i o n t a b l e o f Ag e n t L i b r a r i a n 視點(diǎn)間不一致性的處理 利用封閉世界假設(shè),可以推出矛盾: 討論 ? 基本觀點(diǎn): –在處理概念建模問(wèn)題時(shí),建立多個(gè)代表不同視角的片段模型,比試圖構(gòu)造單個(gè)模型要好 –分離地為不同涉眾建模,然后再組合起來(lái),會(huì)導(dǎo)致對(duì)領(lǐng)域的更豐富的理解 視點(diǎn)方法的好處 ? 得到涉眾的認(rèn)可:分離地獲取不同涉眾的視點(diǎn),他們可以看到自己的貢獻(xiàn) ? 結(jié)構(gòu)化過(guò)程:需求制品的并行開發(fā),不受一致性的局限,建模過(guò)程可以分派給不同的開發(fā)小組 ? 延遲承諾:容許問(wèn)題的不同表示,對(duì)哪些需求更重要的問(wèn)題,他們應(yīng)該如何建模等,分析員可以推遲做出選擇,直到對(duì)涉眾的視角有更好的理解 其它可能的好處 ? 視點(diǎn)建模改進(jìn)可追蹤性:因?yàn)楸容^和合并是顯式地進(jìn)行的,過(guò)程可以記錄下來(lái) ? 視點(diǎn)建模改進(jìn)結(jié)果模型的可讀性:原始涉眾對(duì)模型的理解能力 ? 視點(diǎn)建模改進(jìn)捕獲不同觀點(diǎn)和微弱觀點(diǎn)的能力:沒(méi)有視點(diǎn),有些不符合特定建模原則的事實(shí)會(huì)被忽略 ? 視點(diǎn)建模使小組的建模更容易,因?yàn)榉纸饬私H蝿?wù) 帶來(lái)的新問(wèn)題 ? 如何識(shí)別視點(diǎn)之間的關(guān)系? ? 如何發(fā)現(xiàn)和處理不一致性? 通過(guò)實(shí)驗(yàn)評(píng)估這個(gè)方法 ? 多倫多大學(xué) ? 問(wèn)題: Kids Help Phone ? 基本表示框架: I* 實(shí)驗(yàn)設(shè)計(jì) 全局建模組開發(fā)包含所有事務(wù)的單個(gè) I*模型 視點(diǎn)開發(fā)組為每個(gè)被面談的涉眾開發(fā)個(gè)體模型,然后合并它們獲得整個(gè)模型,合并過(guò)程由整個(gè)開發(fā)組共同完成 全局開發(fā)組的活動(dòng) ? 輸入: 14個(gè)事務(wù) ? 概念獲?。杭s 950個(gè)意圖元素,約 120個(gè)潛在的 Actors和 Roles ? SR模型: 9個(gè)分離的 SR模型 ? 結(jié)果檢查:交叉檢查、裁剪過(guò)合并元素 ? 推斷 9個(gè) SR模型之間的策略依賴關(guān)系,得出一個(gè)完整的組織 SD模型 視點(diǎn)開發(fā)組的活動(dòng) ? 視點(diǎn)劃分: 14個(gè)事務(wù)分成 3組 ? 分別開發(fā): – 每個(gè)模型僅包含本組事務(wù)中的信息,排除其它事務(wù)的信息 – 模型采用與涉眾相同的詞匯 ? 視點(diǎn)合并 – 選擇一個(gè)看起來(lái)被所有視點(diǎn)共享的元素作為開始點(diǎn) – 構(gòu)造一個(gè)合并模型,使它包含能與所有視點(diǎn)匹配的元素和只出現(xiàn)在一個(gè)視點(diǎn)中出現(xiàn)的元素 – 如果元素表示的詳細(xì)程度不同,則使用最詳細(xì)的版本 – 如果同一個(gè)術(shù)語(yǔ)被用來(lái)表示不同的概念,改變其中的一個(gè)術(shù)語(yǔ),使能夠區(qū)別這個(gè)不同 – 如果同一個(gè)概念在不同的視點(diǎn)中采用了不同方式來(lái)表示,就比較麻煩,常常需要開發(fā)一個(gè)新的結(jié)構(gòu) 一般的結(jié)論 ? 兩個(gè)組都覺(jué)得從文本中抽取模型元素比較困難 ? 對(duì)更大的模型,唯一實(shí)際的方法是將它劃分成許多分離的視圖(注意不是視點(diǎn)) 比較 ? 模型規(guī)模是全局開發(fā)組的難題 –從事務(wù)中抽取的意圖元素太多不好管理,也無(wú)法檢查相似項(xiàng) –難以決定如何將一個(gè)大的模型劃分為小的視圖 –不得不將大的 actor分割成小的 roles,否則依賴關(guān)系太多 –模型太大導(dǎo)致圖形布局問(wèn)題,可讀性受到影響,檢查和驗(yàn)證幾乎不可能 ? 視點(diǎn)開發(fā)組可以克服這些問(wèn)題 模型的規(guī)模 比較 ? 后向可追蹤性 –視點(diǎn)開發(fā)組比較容易做到 –全局開發(fā)組比較難,在整個(gè)開發(fā)過(guò)程,他們只查閱了原始事務(wù)描述 5次 ? 它們的模型離原始事務(wù)比較遠(yuǎn), ? 在建模過(guò)程中引入了許多原始事務(wù)中沒(méi)有的概念, ? 意圖元素的列表是原始事務(wù)和模型之間的中間表示 ? 意圖元素的列表對(duì)選擇建模問(wèn)題的初始分解起到重要作用 比較 ? 視點(diǎn)合并是視點(diǎn)開發(fā)組的主要難題,這個(gè)組不得不針對(duì)所有不同點(diǎn)提出解決方案,經(jīng)常要回到原始事務(wù)描述中,識(shí)別某個(gè)概念的真正含義,需要所有的建模人員參加 –不同詳細(xì)程度 –不同建模風(fēng)格 –不同形式化程度 –建模過(guò)于自由 –不同術(shù)語(yǔ) 比較 ? 模型分析,不同小組開發(fā)的模型,采用不同的模型分析技術(shù): –全局開發(fā)組的模型用目標(biāo)評(píng)估過(guò)程 –視點(diǎn)開發(fā)組的模型讓涉眾檢查分析,理解涉眾之間觀點(diǎn)的不同 “問(wèn)題”需求的處理框架 對(duì) 軟件問(wèn)題本身只有有限的理解 需求相關(guān)者 眾多 軟件復(fù)雜程度的增加 需求陳述比較模糊,需求信