面向特征的領(lǐng)域建模技術(shù)FeatureOientedDomainModeling_第1頁
面向特征的領(lǐng)域建模技術(shù)FeatureOientedDomainModeling_第2頁
面向特征的領(lǐng)域建模技術(shù)FeatureOientedDomainModeling_第3頁
面向特征的領(lǐng)域建模技術(shù)FeatureOientedDomainModeling_第4頁
面向特征的領(lǐng)域建模技術(shù)FeatureOientedDomainModeling_第5頁
已閱讀5頁,還剩62頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、1面向特征的領(lǐng)域建模技術(shù)面向特征的領(lǐng)域建模技術(shù)(feature-oriented domain modeling)梅梅 宏宏北京大學(xué)北京大學(xué)信息科學(xué)技術(shù)學(xué)院軟件研究所信息科學(xué)技術(shù)學(xué)院軟件研究所高可信軟件技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室高可信軟件技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室2008年年2月月25日交通大學(xué),新竹日交通大學(xué),新竹23domain analysisdrmdomain designdssarequirements analysisarm 主要問題主要問題1 drm的結(jié)構(gòu)的結(jié)構(gòu)2 drm的建立的建立3 基于基于drm的的arm的建立的建立4 基于基于drm的的dssa的的設(shè)計(jì)設(shè)計(jì)4相關(guān)研究成果發(fā)表于相關(guān)研究

2、成果發(fā)表于 icre05, rej06, sosym06icre05, rej06, sosym06 . .5 使用使用 特征模型特征模型 作為作為drm 基本思想基本思想把把 特征特征 作為問題空間的基本實(shí)體作為問題空間的基本實(shí)體使用使用 特征特征 以及以及 特征間的關(guān)系特征間的關(guān)系 刻畫問題空間刻畫問題空間problem spacefeaturerelation between features feature-oriented view of the problem space6 什么是特征?什么是特征?從外延來看:一個(gè)特征描述了一種具有用戶從外延來看:一個(gè)特征描述了一種具有用戶/客戶價(jià)

3、值的軟件特點(diǎn)??蛻魞r(jià)值的軟件特點(diǎn)。從內(nèi)涵來看:一個(gè)特征是由一組緊密關(guān)聯(lián)的單從內(nèi)涵來看:一個(gè)特征是由一組緊密關(guān)聯(lián)的單個(gè)需求構(gòu)成的單元。個(gè)需求構(gòu)成的單元。7fm 三種視圖三種視圖featuresthe refinement viewsthe constraint viewsthe interaction views記錄了特征間的精化關(guān)系記錄了特征間的精化關(guān)系記錄了特征間的交互關(guān)系記錄了特征間的交互關(guān)系記錄了特征間的約束關(guān)系記錄了特征間的約束關(guān)系特征模型特征模型 = 特征特征 + 關(guān)系關(guān)系 (精化精化 + 約束約束 + 交互交互)8 名稱名稱(name) 特征的助記符號(hào)特征的助記符號(hào) 描述描述(de

4、scription) 對特征所指需求的詳細(xì)敘述對特征所指需求的詳細(xì)敘述 可選性可選性(optionality) optional; mandatory 綁定時(shí)間綁定時(shí)間(binding-time) reuse-time, compile-time, install-time, load-time, run-time, 綁定狀態(tài)綁定狀態(tài)(binding-state) bound; removed; undecided9 精化精化 是一種存在于是一種存在于 不同不同 粒度粒度/ /抽象層次抽象層次 的特征之間的關(guān)系的特征之間的關(guān)系不同不同 粒度粒度/ /抽象層次抽象層次 的特征的特征 通過精化關(guān)系

5、形通過精化關(guān)系形成層次式的結(jié)構(gòu)成層次式的結(jié)構(gòu)層次結(jié)構(gòu)提供了一種描述復(fù)雜系統(tǒng)的手段層次結(jié)構(gòu)提供了一種描述復(fù)雜系統(tǒng)的手段10 分解分解(decomposition)把一個(gè)特征精化為一組作為其構(gòu)成成分的子特把一個(gè)特征精化為一組作為其構(gòu)成成分的子特征稱為征稱為 分解分解 屬性化屬性化(characterization)識(shí)別出一個(gè)特征具有的屬性型特征識(shí)別出一個(gè)特征具有的屬性型特征 稱為稱為 屬性屬性化化 特殊化特殊化(specialization)把一個(gè)特征精化為一個(gè)包含更多細(xì)節(jié)的特征把一個(gè)特征精化為一個(gè)包含更多細(xì)節(jié)的特征 稱稱為為 特殊化特殊化11編輯編輯拷貝拷貝粘貼粘貼刪除刪除圖元移動(dòng)圖元移動(dòng)移動(dòng)模

6、式移動(dòng)模式移動(dòng)約束移動(dòng)約束虛框移動(dòng)虛框移動(dòng)整體移動(dòng)整體移動(dòng)水平約束水平約束垂直約束垂直約束decompositioncharacterizationspecializationspecialization整體整體部分部分實(shí)體實(shí)體行為屬性行為屬性 簡單示例簡單示例12 約束約束 是一種特征間的是一種特征間的 靜態(tài)依賴關(guān)系靜態(tài)依賴關(guān)系更嚴(yán)格而言,約束是不同特征的綁定狀態(tài)之間更嚴(yán)格而言,約束是不同特征的綁定狀態(tài)之間的依賴關(guān)系的依賴關(guān)系 約束提供了對特征模型的剪裁結(jié)果進(jìn)行驗(yàn)約束提供了對特征模型的剪裁結(jié)果進(jìn)行驗(yàn)證的手段證的手段剪裁是對特征模型進(jìn)行復(fù)用的手段剪裁是對特征模型進(jìn)行復(fù)用的手段約束有助于驗(yàn)證剪裁

7、結(jié)果的完整性和一致性約束有助于驗(yàn)證剪裁結(jié)果的完整性和一致性13 幾種不同類型的約束幾種不同類型的約束二元約束二元約束(binary constraints)組約束組約束(group constraints)綁定謂詞綁定謂詞(binding predicates)組合約束組合約束(composite constraints)14 requires mutual-requires excludesmutual-requires(a, b: feature) =def require(a, b) and require (b, a)requires(a, b: feature) =def (a.bi

8、nding-state = bound) (b.binding-state = bound)excludes(a, b: feature) =defnot (a.binding-state = bound) and (b.binding-state = bound)15 mutex-group 一組相互排斥的特征一組相互排斥的特征 all-group 一組相互依賴的特征一組相互依賴的特征 none-group 一組松散的特征一組松散的特征mutex-group(p: set feature) =def a, b p : exclude(a, b) all-group(p: set featur

9、e) =def a, b p : mutual-require(a, b)none-group(p: set feature) =def true16 single-bound 一組特征中只有一個(gè)特征處于綁定狀態(tài)一組特征中只有一個(gè)特征處于綁定狀態(tài) multiple-bound 一組特征中有多個(gè)特征處于綁定狀態(tài)一組特征中有多個(gè)特征處于綁定狀態(tài) all-bound 一組特征全部處于綁定狀態(tài)一組特征全部處于綁定狀態(tài)single-bound(p: set feature) =def one a p : (a.binding-state = bound)multiple-bound(p: set fea

10、ture) =def some a p : (a.binding-state = bound)all-bound(p: set feature) =def a p : (a.binding-state = bound)17multiple-boundall-bound +single-bound multiple-bound+ all-bound single-boundrequiresmutual-requires excludes示例:示例: single-bound(a, b, c) requires multiple-bound(d, e)18(require)(mutual requ

11、ire)(exclude)(single-bound)(multiple-bound)(all-bound)composite constraints:basic constraints:groupconstraints:binding predicates:(mutex-group)(none-group)(all-group)19 簡單示例簡單示例constraints:a requiree, c excludef,mutex-group(a, b, c),single-bound(a, b, c) required.graphical notation:20 交互交互 是一種特征間的是一

12、種特征間的 動(dòng)態(tài)依賴關(guān)系動(dòng)態(tài)依賴關(guān)系交互交互 是是 約束約束 在軟件系統(tǒng)運(yùn)行時(shí)刻的體在軟件系統(tǒng)運(yùn)行時(shí)刻的體現(xiàn)現(xiàn)交互提供了將各個(gè)相對獨(dú)立的成分組裝交互提供了將各個(gè)相對獨(dú)立的成分組裝生成系統(tǒng)的手段生成系統(tǒng)的手段即:系統(tǒng)即:系統(tǒng) = 構(gòu)成成分構(gòu)成成分 + 構(gòu)成成分之間的交構(gòu)成成分之間的交互互 同時(shí),關(guān)注交互和約束之間的追蹤關(guān)同時(shí),關(guān)注交互和約束之間的追蹤關(guān)系系21 invoke meta-level configure resource configure notify flow22定時(shí)郵件收取定時(shí)郵件收取郵件收取郵件收取郵件收取用例郵件收取用例invokeinvoke嘗試從預(yù)先設(shè)定的郵嘗試從預(yù)先設(shè)

13、定的郵件服務(wù)器上收取郵件件服務(wù)器上收取郵件當(dāng)用戶點(diǎn)擊特定的當(dāng)用戶點(diǎn)擊特定的uiui構(gòu)件時(shí),嘗試從預(yù)構(gòu)件時(shí),嘗試從預(yù)先設(shè)定的郵件服務(wù)器上收取郵件先設(shè)定的郵件服務(wù)器上收取郵件在每一個(gè)預(yù)先設(shè)置的時(shí)間點(diǎn)上嘗試從預(yù)在每一個(gè)預(yù)先設(shè)置的時(shí)間點(diǎn)上嘗試從預(yù)先設(shè)定的郵件服務(wù)器上收取郵件先設(shè)定的郵件服務(wù)器上收取郵件23定時(shí)郵件收取定時(shí)郵件收取定時(shí)郵件收取定時(shí)郵件收取配置器配置器meta-level configure根據(jù)用戶的請求設(shè)定根據(jù)用戶的請求設(shè)定 定時(shí)郵件收取定時(shí)郵件收取 的綁的綁定狀態(tài),即在定狀態(tài),即在 bound bound 和和 undecided undecided 兩個(gè)兩個(gè)狀態(tài)之間切換狀態(tài)之間切換這

14、是一個(gè)運(yùn)行時(shí)這是一個(gè)運(yùn)行時(shí)刻綁定的特征刻綁定的特征24郵件過濾器郵件過濾器郵件過濾配置器郵件過濾配置器resource configure根據(jù)預(yù)先設(shè)定的過濾規(guī)則對收到根據(jù)預(yù)先設(shè)定的過濾規(guī)則對收到的郵件進(jìn)行過濾的郵件進(jìn)行過濾根據(jù)用戶的請求修改根據(jù)用戶的請求修改郵件過濾規(guī)則郵件過濾規(guī)則過濾規(guī)則集合過濾規(guī)則集合read ruleswrite rules25 對特征對特征 a 和和 b, “, “a notify b” ” 表示表示: : a 向向 b 發(fā)送一條消息,以指明某種條件已滿足發(fā)送一條消息,以指明某種條件已滿足或某事件已發(fā)生?;蚰呈录寻l(fā)生。abnotify26郵件收取郵件收取郵件解密郵件解

15、密郵件過濾郵件過濾垃圾箱垃圾箱收件箱收件箱flowflow過濾規(guī)則集合過濾規(guī)則集合read rulesput into27 二元交互中的角色二元交互中的角色 trigger triggeetriggerinteractiontriggeeainvokebameta-level configurebaresource configurebainvokebaflowb28dimension 2: trigger 和和 triggee 是否存在如下的約束是否存在如下的約束requires (trigger, triggee). values : explicit(顯式顯式), implicit(隱式

16、隱式).dimension 1: trigger 是否于是否于 triggee 發(fā)生直接的交互發(fā)生直接的交互. values : direct(直接直接), indirect(間接間接).29dimension 2dimension 1directindirectexplicitimplicitnotifyinvokeresource configureflowmeta-level configure30domain analysisdrmdomain related resource相關(guān)研究成果發(fā)表于相關(guān)研究成果發(fā)表于 compsac03.compsac03.31 功能功能 (functio

17、n) 輸入和輸出之間的關(guān)系輸入和輸出之間的關(guān)系 行為特點(diǎn)行為特點(diǎn) (behavior characteristic) 對從輸入到輸出的變換過程的限制對從輸入到輸出的變換過程的限制 服務(wù)服務(wù) (service) 一組相關(guān)的功能以及行為特點(diǎn)構(gòu)成的單元一組相關(guān)的功能以及行為特點(diǎn)構(gòu)成的單元 用例用例 (use-case) 用戶和軟件之間的交互序列用戶和軟件之間的交互序列 質(zhì)量屬性質(zhì)量屬性 (quality) 對軟件的非功能性需求對軟件的非功能性需求32behavior characteristic layerfunction layerservice layer qualitysectionuse-c

18、asesectioninteraction sectionconstraint section33實(shí)踐應(yīng)用:在與云南昆明實(shí)踐應(yīng)用:在與云南昆明863軟件企業(yè)孵化器的合作中,軟件企業(yè)孵化器的合作中, 在在 辦公自動(dòng)化辦公自動(dòng)化 和和 公路工程管理公路工程管理 等領(lǐng)域中得到了成功的應(yīng)用等領(lǐng)域中得到了成功的應(yīng)用34drmrequirements analysisarmthe reuse context相關(guān)研究成果發(fā)表于相關(guān)研究成果發(fā)表于 icfem04.icfem04.35 arm 的生產(chǎn)過程是對的生產(chǎn)過程是對 drm 進(jìn)行復(fù)用的過程進(jìn)行復(fù)用的過程 這種復(fù)用是通過這種復(fù)用是通過 定制定制 達(dá)到的達(dá)到

19、的剪裁:從剪裁:從 drm 中選擇一組符合當(dāng)前復(fù)用上下文的特征中選擇一組符合當(dāng)前復(fù)用上下文的特征擴(kuò)充:把擴(kuò)充:把 特定于當(dāng)前應(yīng)用的需求特定于當(dāng)前應(yīng)用的需求 添加到剪裁后的添加到剪裁后的drm中中drmrequirements analysisarmthe reuse context36drmarmcustomizationpartially-customized feature model 1partially-customized feature model 2partially-customized feature model n在綁定時(shí)間在綁定時(shí)間1 做出的剪裁決策做出的剪裁決策在綁定時(shí)

20、間在綁定時(shí)間2 做出的剪裁決策做出的剪裁決策 復(fù)用過程復(fù)用過程在綁定時(shí)間在綁定時(shí)間n 做出的剪裁決策做出的剪裁決策在綁定時(shí)間在綁定時(shí)間n+1 做出的剪裁決策做出的剪裁決策37an undecidedfeaturea removedfeaturea boundfeature刪除刪除綁定綁定38 一個(gè)問題一個(gè)問題目前的研究目前的研究 缺乏對缺乏對 非完全綁定的特征模型非完全綁定的特征模型 進(jìn)進(jìn)行驗(yàn)證的有效手段行驗(yàn)證的有效手段 后果后果增加了定制過程的困難性增加了定制過程的困難性 在當(dāng)前綁定時(shí)間中做出的錯(cuò)誤的剪裁決策得不到及在當(dāng)前綁定時(shí)間中做出的錯(cuò)誤的剪裁決策得不到及時(shí)的檢查,從而進(jìn)一步向后續(xù)的綁定

21、時(shí)間傳播時(shí)的檢查,從而進(jìn)一步向后續(xù)的綁定時(shí)間傳播39對所有待綁定的特征至少存在一種綁定結(jié)果,其滿足特征間的對所有待綁定的特征至少存在一種綁定結(jié)果,其滿足特征間的約束關(guān)系。約束關(guān)系。在不破壞特征間約束關(guān)系的前提下,在不破壞特征間約束關(guān)系的前提下,每一個(gè)待綁定的特征都有被綁定的可能。每一個(gè)待綁定的特征都有被綁定的可能。在不破壞特征間約束關(guān)系的前提下,在不破壞特征間約束關(guān)系的前提下,每一個(gè)待綁定的特征都有被刪除的可能。每一個(gè)待綁定的特征都有被刪除的可能。40 i crset: i |= i=1,., n ci f ufset, i crset: i |= ( i=1,., n ci ) (f.bin

22、ding-state = bound) f ufset, i crset: i |= ( i=1,., n ci ) (f.binding-state = removed)41相關(guān)研究成果發(fā)表于相關(guān)研究成果發(fā)表于 models05, rej06models05, rej0642responsibilitya cluster of specifications 在設(shè)計(jì)階段如何利用特征模型中的信息在設(shè)計(jì)階段如何利用特征模型中的信息 我們的途徑我們的途徑: :featuresdependencies between featurescomponentsinteractions between com

23、ponentsgap(the problem space)(the solution space)43 需求層需求層 單個(gè)需求單個(gè)需求 被聚集成具有更大粒度的特征被聚集成具有更大粒度的特征 一個(gè)特征包含了一組緊密關(guān)聯(lián)的單個(gè)需求一個(gè)特征包含了一組緊密關(guān)聯(lián)的單個(gè)需求 規(guī)約層規(guī)約層 規(guī)約規(guī)約 是對是對 需求的需求的 操作化操作化(operationalization) 軟件開發(fā)人員按照規(guī)約去編寫軟件,從而滿足需求軟件開發(fā)人員按照規(guī)約去編寫軟件,從而滿足需求 規(guī)約規(guī)約 被聚集成具有更大粒度的責(zé)任被聚集成具有更大粒度的責(zé)任(responsibility) 一個(gè)責(zé)任包含了一組緊密關(guān)聯(lián)的規(guī)約一個(gè)責(zé)任包含了一

24、組緊密關(guān)聯(lián)的規(guī)約 實(shí)現(xiàn)層實(shí)現(xiàn)層 該層中包含了預(yù)先編程實(shí)現(xiàn)的軟件構(gòu)件,使用這些構(gòu)件該層中包含了預(yù)先編程實(shí)現(xiàn)的軟件構(gòu)件,使用這些構(gòu)件能夠快速實(shí)現(xiàn)特定的責(zé)任能夠快速實(shí)現(xiàn)特定的責(zé)任 稱之為稱之為 基礎(chǔ)設(shè)施構(gòu)件基礎(chǔ)設(shè)施構(gòu)件4445 a:特征的操作化:特征的操作化每一個(gè)特征分別被操作化為每一個(gè)特征分別被操作化為 一組責(zé)任一組責(zé)任 以及以及 責(zé)任之間責(zé)任之間/ /責(zé)任與資源容器之間責(zé)任與資源容器之間 的交互的交互direct-interactioninteractionresponsibility1.*operationalized -into1featureresource containerdirect

25、-interaction46 b:資源容器分析:資源容器分析從特征之間的從特征之間的間接交互間接交互中發(fā)現(xiàn)資源容器中發(fā)現(xiàn)資源容器 資源容器往往是間接交互的特征之間的媒介資源容器往往是間接交互的特征之間的媒介從特征的描述中發(fā)現(xiàn)資源容器從特征的描述中發(fā)現(xiàn)資源容器interactionresource containerfeature47 通過 a.特征操作化 和 b.資源容器分析,特征以及特征之間的交互被轉(zhuǎn)化為 責(zé)任、資源容器、以及 直接的交互direct-interactionrequirement1.*interactionresponsibilityresource container1.*

26、operationalized -into1featuredirect-interactionthe requirement levelthe specification level48 c:種子構(gòu)件創(chuàng)建種子構(gòu)件創(chuàng)建對于每一個(gè)特征,在規(guī)約層上建立一個(gè)對應(yīng)的實(shí)體,對于每一個(gè)特征,在規(guī)約層上建立一個(gè)對應(yīng)的實(shí)體,稱為稱為 種子構(gòu)件種子構(gòu)件種子構(gòu)件種子構(gòu)件 解決了解決了 構(gòu)件的構(gòu)件的“原罪問題原罪問題”,即:構(gòu)件從,即:構(gòu)件從哪里來哪里來 在后繼活動(dòng)中,將對種子構(gòu)件進(jìn)行進(jìn)一步的合并,以獲取更在后繼活動(dòng)中,將對種子構(gòu)件進(jìn)行進(jìn)一步的合并,以獲取更大粒度的構(gòu)件大粒度的構(gòu)件component seed11fe

27、ature49 d:責(zé)任分配責(zé)任分配把把 責(zé)任責(zé)任 分配到分配到 種子構(gòu)件種子構(gòu)件 上上 從這種意義上,特征構(gòu)件從這種意義上,特征構(gòu)件 可以被視為可以被視為 責(zé)任容器責(zé)任容器根據(jù)責(zé)任分配的結(jié)果可以區(qū)分兩種類型的責(zé)任根據(jù)責(zé)任分配的結(jié)果可以區(qū)分兩種類型的責(zé)任 核心責(zé)任核心責(zé)任 (core-responsibility) 附加責(zé)任附加責(zé)任 (added-responsibility)component seedcore responsibilityadded responsibilityresponsibility*50abacbcar1ar2ar3operationalized intobr3br

28、2br1operationalized intoar1ar2ar3assigned tobr2br1br3assigned to: core-responsibility: added-responsibility51 e:概念構(gòu)件分析概念構(gòu)件分析把把 種子構(gòu)件種子構(gòu)件/ /資源容器資源容器 聚集成聚集成 更大粒度的單元,更大粒度的單元, 稱為稱為 概念構(gòu)件概念構(gòu)件 把具有較緊密聯(lián)系的把具有較緊密聯(lián)系的 種子構(gòu)件種子構(gòu)件/ /資源容器資源容器 聚集成聚集成 概念構(gòu)件概念構(gòu)件 把具有相同相同交互上下文的把具有相同相同交互上下文的 種子構(gòu)件種子構(gòu)件 聚集成聚集成 概念構(gòu)件概念構(gòu)件direct-in

29、teractioncomponent seedcore responsibilityadded responsibilityresponsibilityconceptual componentresource container*direct-interaction*direct-interaction52 f:基礎(chǔ)設(shè)施構(gòu)件分析基礎(chǔ)設(shè)施構(gòu)件分析 分析概念構(gòu)件的實(shí)現(xiàn)上下文,發(fā)掘出分析概念構(gòu)件的實(shí)現(xiàn)上下文,發(fā)掘出 對其實(shí)現(xiàn)有益的對其實(shí)現(xiàn)有益的 基礎(chǔ)設(shè)施構(gòu)件基礎(chǔ)設(shè)施構(gòu)件conceptual componentinfrastructure componentdepend-on53 一個(gè)簡單的文檔編輯軟

30、件一個(gè)簡單的文檔編輯軟件 特征特征1:save 將當(dāng)前文檔保存到將當(dāng)前文檔保存到 磁盤磁盤 上上 特征特征2:copy 將當(dāng)前文檔中被選擇的文字拷貝到將當(dāng)前文檔中被選擇的文字拷貝到 粘貼板粘貼板 上上 特征特征3:cut 將當(dāng)前文檔中被選擇的文字剪切到將當(dāng)前文檔中被選擇的文字剪切到 粘貼板粘貼板 上上 特征特征4:paste 將將 粘貼板粘貼板 上的文字粘貼到當(dāng)前文檔光標(biāo)所在位置上的文字粘貼到當(dāng)前文檔光標(biāo)所在位置 特征特征5:un/re-do 根據(jù)用戶的請求,撤銷根據(jù)用戶的請求,撤銷/ /重做重做 那些未被存盤的編輯那些未被存盤的編輯操作操作54 特征間的交互分析特征間的交互分析savecop

31、ycutpasteun/re-donotify23451resource configureresource configureresource configure55 種子構(gòu)件建立種子構(gòu)件建立savecopycutpasteun/re-do2345156 特征操作化;資源容器分析;責(zé)任分配特征操作化;資源容器分析;責(zé)任分配savecopycutpasteun/re-docopycutpastesaveclipboard234516: core responsibility: added responsibility57 交互分析交互分析savecopycutpasteun/re-docopy

32、cutpastesaveclipboardwritewriteread234516: core responsibility: added responsibility58 特征特征 un/re-do的操作化;資源構(gòu)件分析;責(zé)任分配的操作化;資源構(gòu)件分析;責(zé)任分配savecopycutpasteun/re-docopycutpastesaveinform savedundoredoclear urirecord urirecord urirecord uriclipboardwritewritereadun/re-do info(uri)2345167: core responsibility

33、: added responsibility59 交互分析交互分析savecopycutpasteun/re-docopycutpastesaveinform savedundoredoclear uriun/re-do info(uri)record urirecord urirecord uriclipboardinformwritewritereadwritewritewriteconsumeconsumeclear2345167: core responsibility: added responsibility60 概念構(gòu)件分析概念構(gòu)件分析savecopycutpasteun/re-docopycutpast

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論