資料介紹
軟件的可復(fù)用性是人們?cè)u(píng)價(jià)一個(gè)軟件系統(tǒng)的重要指標(biāo)。軟件復(fù)用是提高軟件生產(chǎn)效率與質(zhì)量的一種有效途徑,它可以通過(guò)軟件中的可復(fù)用構(gòu)件(reusable component)來(lái)實(shí)現(xiàn),即通過(guò)集成已有的構(gòu)件來(lái)創(chuàng)建新系統(tǒng)。以領(lǐng)域分析為基礎(chǔ)的特定領(lǐng)域復(fù)用(Domain-Specific Reuse)是提高軟件復(fù)用水平的重要途經(jīng)之一。將目標(biāo)集中在一個(gè)特定應(yīng)用領(lǐng)域中實(shí)現(xiàn)軟件復(fù)用,從構(gòu)件的開發(fā)到構(gòu)件的存儲(chǔ)與管理都比較容易。本文對(duì)結(jié)合面向?qū)ο?、FODA方法和構(gòu)件化思想的領(lǐng)域分析方法進(jìn)行了初步探索,提出了構(gòu)件化的領(lǐng)域分析方法,從而為在軟件開發(fā)的前期階段實(shí)現(xiàn)構(gòu)件化開發(fā),更加有效地實(shí)現(xiàn)軟件復(fù)用提供了指導(dǎo)。
1 相關(guān)理論
1.1 軟件復(fù)用
軟件復(fù)用是指重復(fù)使用“為了復(fù)用目的而設(shè)計(jì)的軟件”的過(guò)程。軟件復(fù)用是在軟件開發(fā)中避免重復(fù)勞動(dòng)的解決方案,其出發(fā)點(diǎn)是應(yīng)用系統(tǒng)的開發(fā)不再采用一切“從零開始”的模式,而是以已有的工作為基礎(chǔ),充分利用過(guò)去應(yīng)用系統(tǒng)開發(fā)中積累的知識(shí)和經(jīng)驗(yàn),如:需求分析結(jié)果、設(shè)計(jì)方案、源代碼、測(cè)試計(jì)劃及測(cè)試案例等,從而將開發(fā)的重點(diǎn)集中于應(yīng)用的特有構(gòu)成成分。
與軟件復(fù)用相關(guān)的兩個(gè)基本開發(fā)活動(dòng)是面向復(fù)用的開發(fā)和基于復(fù)用的開發(fā),前者是生產(chǎn)可復(fù)用構(gòu)件的過(guò)程,后者是利用現(xiàn)有的可復(fù)用構(gòu)件生產(chǎn)新系統(tǒng)的過(guò)程。它們分別對(duì)應(yīng)領(lǐng)域工程和應(yīng)用工程,處理好它們之間的關(guān)系,才能實(shí)現(xiàn)真正成功的軟件復(fù)用。
1.2 領(lǐng)域工程
領(lǐng)域工程是為一組相似或相近系統(tǒng)的應(yīng)用工程建立基本能力和必備基礎(chǔ)的過(guò)程,它覆蓋了建立可復(fù)用的軟件構(gòu)件的所有活動(dòng)。其中“領(lǐng)域”是指一組具有相似或相近軟件需求的應(yīng)用系統(tǒng)所覆蓋的功能區(qū)域。
領(lǐng)域工程是創(chuàng)建可復(fù)用構(gòu)件的過(guò)程,其核心思想是:應(yīng)用模式領(lǐng)域化,問(wèn)題抽象通用化,軟件元素重用化,開發(fā)過(guò)程工程化。實(shí)施領(lǐng)域工程的過(guò)程可以分為以下三個(gè)主要的階段:
?。?)領(lǐng)域分析:目標(biāo)是獲得領(lǐng)域模型。
?。?)領(lǐng)域設(shè)計(jì):目標(biāo)是獲得DSSA(特定領(lǐng)域軟件體系結(jié)構(gòu))。
(3)領(lǐng)域?qū)崿F(xiàn):主要任務(wù)是依據(jù)領(lǐng)域模型和DSSA開發(fā)、組織可重用構(gòu)件。
需要特別指出的是,領(lǐng)域工程的三個(gè)基本階段所描述的過(guò)程是一個(gè)反復(fù)的、逐漸求精的過(guò)程。在實(shí)施領(lǐng)域工程的每個(gè)階段中,都可能返回到以前的步驟,對(duì)以前得到的結(jié)果進(jìn)行修改和完善,再回到當(dāng)前步驟,在新的基礎(chǔ)上實(shí)施本階段的過(guò)程。
1.3 面向特定領(lǐng)域的軟件開發(fā)
與領(lǐng)域工程相對(duì)的是開發(fā)單個(gè)應(yīng)用系統(tǒng)的軟件工程的過(guò)程,稱為應(yīng)用工程。
在應(yīng)用工程中,軟件開發(fā)人員的任務(wù)是針對(duì)一組特定的需求產(chǎn)生一組特定的設(shè)計(jì)和實(shí)現(xiàn)。與此相對(duì),在領(lǐng)域工程中,領(lǐng)域工程人員的基本任務(wù)是對(duì)一個(gè)領(lǐng)域中的所有系統(tǒng)進(jìn)行抽象。領(lǐng)域工程的各個(gè)階段主要是對(duì)應(yīng)用工程中相應(yīng)階段產(chǎn)品的抽象,領(lǐng)域工程又對(duì)本領(lǐng)域中新系統(tǒng)的開發(fā)提供支持。在CBSE思想的指導(dǎo)下,基于構(gòu)件的應(yīng)用工程實(shí)際上是構(gòu)件的組裝過(guò)程。構(gòu)件(Component)是指應(yīng)用系統(tǒng)中可以明確辨識(shí)的構(gòu)成成分。而可復(fù)用構(gòu)件是指具有相對(duì)獨(dú)立的功能和可復(fù)用價(jià)值的構(gòu)件。隨著對(duì)軟件復(fù)用理解的深入,構(gòu)件的概念已不再局限于源代碼構(gòu)件,而是延伸到需求、系統(tǒng)和軟件的需求規(guī)約、系統(tǒng)和軟件的構(gòu)架、文檔、測(cè)試案例和數(shù)據(jù)以及其他對(duì)開發(fā)活動(dòng)有用的信息。這些可復(fù)用軟件構(gòu)件通過(guò)領(lǐng)域工程獲得,作為應(yīng)用工程開發(fā)的基本元素。
在開發(fā)實(shí)際的應(yīng)用系統(tǒng)時(shí),將領(lǐng)域工程與應(yīng)用工程相結(jié)合,可以快速、有效地開發(fā)出用戶滿意的系統(tǒng)。兩者相結(jié)合的軟件開發(fā)模型如圖1所示。
通過(guò)以上討論可以看到,在面向領(lǐng)域的軟件開發(fā)過(guò)程中,領(lǐng)域模型的建立是軟件開發(fā)的基礎(chǔ)。當(dāng)開發(fā)同一領(lǐng)域的新系統(tǒng)時(shí),可根據(jù)領(lǐng)域分析確定新應(yīng)用的需求規(guī)約,以此來(lái)指導(dǎo)貫穿于整個(gè)開發(fā)的設(shè)計(jì)與組裝。因此領(lǐng)域分析的成功與否,對(duì)今后的開發(fā)具有舉足輕重的作用。領(lǐng)域分析的成功復(fù)用,可以從更抽象的層次實(shí)現(xiàn)軟件復(fù)用。
1.4 領(lǐng)域分析
所謂領(lǐng)域分析(DA)就是在系統(tǒng)分析之前,分析、研究有關(guān)應(yīng)用領(lǐng)域特性的活動(dòng)。它是發(fā)現(xiàn)和記錄某個(gè)領(lǐng)域各系統(tǒng)的共性和差異的過(guò)程,是系統(tǒng)化、形式化、有效復(fù)用的關(guān)鍵。通過(guò)領(lǐng)域分析,相似系統(tǒng)的公共特性將被提取,適用于該領(lǐng)域所有公共的、基本的對(duì)象、操作也將被標(biāo)志出來(lái),并且可通過(guò)定義模型描述它們之間的關(guān)系。領(lǐng)域分析的目標(biāo)就是獲得領(lǐng)域模型。領(lǐng)域模型(Domain Model)是領(lǐng)域中各系統(tǒng)的共同需求的描述。它描述了領(lǐng)域內(nèi)系統(tǒng)需求上的共性。
1.4.1 FODA方法與特征模型
FODA對(duì)領(lǐng)域分析過(guò)程進(jìn)行了完整的描述,特征概念是FODA方法的核心。所謂特征是指系統(tǒng)中的屬性和特點(diǎn),按特征在領(lǐng)域中的可選性及特征間的相互關(guān)系可分為三類:
?。?)強(qiáng)制性特征:必須被選擇的特征。
(2)可選特征:從0到n個(gè)可供選擇的特征。
?。?)可替換特征:至少有一個(gè)被選擇的特征。
按特征的內(nèi)容也可分為三類:
(1)功能相關(guān):系統(tǒng)所作的事情。
(2)環(huán)境相關(guān):系統(tǒng)是如何被使用的,變化點(diǎn)的原因。
?。?)表示相關(guān):系統(tǒng)信息是如何被用戶所觀察的或者是如何被相關(guān)應(yīng)用所獲得的。
特征模型通過(guò)使用抽象和細(xì)化的機(jī)制對(duì)領(lǐng)域中不同應(yīng)用的所有特征進(jìn)行了分類,從而提供了關(guān)于領(lǐng)域體系結(jié)構(gòu)和可復(fù)用構(gòu)件的高層視圖。特征模型可作為應(yīng)用開發(fā)者的地圖,當(dāng)應(yīng)用開發(fā)者面對(duì)龐雜的Use Case模型或者其他模型時(shí),特征模型提供了關(guān)于哪些是可選的、哪些是可合并的信息。
1 相關(guān)理論
1.1 軟件復(fù)用
軟件復(fù)用是指重復(fù)使用“為了復(fù)用目的而設(shè)計(jì)的軟件”的過(guò)程。軟件復(fù)用是在軟件開發(fā)中避免重復(fù)勞動(dòng)的解決方案,其出發(fā)點(diǎn)是應(yīng)用系統(tǒng)的開發(fā)不再采用一切“從零開始”的模式,而是以已有的工作為基礎(chǔ),充分利用過(guò)去應(yīng)用系統(tǒng)開發(fā)中積累的知識(shí)和經(jīng)驗(yàn),如:需求分析結(jié)果、設(shè)計(jì)方案、源代碼、測(cè)試計(jì)劃及測(cè)試案例等,從而將開發(fā)的重點(diǎn)集中于應(yīng)用的特有構(gòu)成成分。
與軟件復(fù)用相關(guān)的兩個(gè)基本開發(fā)活動(dòng)是面向復(fù)用的開發(fā)和基于復(fù)用的開發(fā),前者是生產(chǎn)可復(fù)用構(gòu)件的過(guò)程,后者是利用現(xiàn)有的可復(fù)用構(gòu)件生產(chǎn)新系統(tǒng)的過(guò)程。它們分別對(duì)應(yīng)領(lǐng)域工程和應(yīng)用工程,處理好它們之間的關(guān)系,才能實(shí)現(xiàn)真正成功的軟件復(fù)用。
1.2 領(lǐng)域工程
領(lǐng)域工程是為一組相似或相近系統(tǒng)的應(yīng)用工程建立基本能力和必備基礎(chǔ)的過(guò)程,它覆蓋了建立可復(fù)用的軟件構(gòu)件的所有活動(dòng)。其中“領(lǐng)域”是指一組具有相似或相近軟件需求的應(yīng)用系統(tǒng)所覆蓋的功能區(qū)域。
領(lǐng)域工程是創(chuàng)建可復(fù)用構(gòu)件的過(guò)程,其核心思想是:應(yīng)用模式領(lǐng)域化,問(wèn)題抽象通用化,軟件元素重用化,開發(fā)過(guò)程工程化。實(shí)施領(lǐng)域工程的過(guò)程可以分為以下三個(gè)主要的階段:
?。?)領(lǐng)域分析:目標(biāo)是獲得領(lǐng)域模型。
?。?)領(lǐng)域設(shè)計(jì):目標(biāo)是獲得DSSA(特定領(lǐng)域軟件體系結(jié)構(gòu))。
(3)領(lǐng)域?qū)崿F(xiàn):主要任務(wù)是依據(jù)領(lǐng)域模型和DSSA開發(fā)、組織可重用構(gòu)件。
需要特別指出的是,領(lǐng)域工程的三個(gè)基本階段所描述的過(guò)程是一個(gè)反復(fù)的、逐漸求精的過(guò)程。在實(shí)施領(lǐng)域工程的每個(gè)階段中,都可能返回到以前的步驟,對(duì)以前得到的結(jié)果進(jìn)行修改和完善,再回到當(dāng)前步驟,在新的基礎(chǔ)上實(shí)施本階段的過(guò)程。
1.3 面向特定領(lǐng)域的軟件開發(fā)
與領(lǐng)域工程相對(duì)的是開發(fā)單個(gè)應(yīng)用系統(tǒng)的軟件工程的過(guò)程,稱為應(yīng)用工程。
在應(yīng)用工程中,軟件開發(fā)人員的任務(wù)是針對(duì)一組特定的需求產(chǎn)生一組特定的設(shè)計(jì)和實(shí)現(xiàn)。與此相對(duì),在領(lǐng)域工程中,領(lǐng)域工程人員的基本任務(wù)是對(duì)一個(gè)領(lǐng)域中的所有系統(tǒng)進(jìn)行抽象。領(lǐng)域工程的各個(gè)階段主要是對(duì)應(yīng)用工程中相應(yīng)階段產(chǎn)品的抽象,領(lǐng)域工程又對(duì)本領(lǐng)域中新系統(tǒng)的開發(fā)提供支持。在CBSE思想的指導(dǎo)下,基于構(gòu)件的應(yīng)用工程實(shí)際上是構(gòu)件的組裝過(guò)程。構(gòu)件(Component)是指應(yīng)用系統(tǒng)中可以明確辨識(shí)的構(gòu)成成分。而可復(fù)用構(gòu)件是指具有相對(duì)獨(dú)立的功能和可復(fù)用價(jià)值的構(gòu)件。隨著對(duì)軟件復(fù)用理解的深入,構(gòu)件的概念已不再局限于源代碼構(gòu)件,而是延伸到需求、系統(tǒng)和軟件的需求規(guī)約、系統(tǒng)和軟件的構(gòu)架、文檔、測(cè)試案例和數(shù)據(jù)以及其他對(duì)開發(fā)活動(dòng)有用的信息。這些可復(fù)用軟件構(gòu)件通過(guò)領(lǐng)域工程獲得,作為應(yīng)用工程開發(fā)的基本元素。
在開發(fā)實(shí)際的應(yīng)用系統(tǒng)時(shí),將領(lǐng)域工程與應(yīng)用工程相結(jié)合,可以快速、有效地開發(fā)出用戶滿意的系統(tǒng)。兩者相結(jié)合的軟件開發(fā)模型如圖1所示。
通過(guò)以上討論可以看到,在面向領(lǐng)域的軟件開發(fā)過(guò)程中,領(lǐng)域模型的建立是軟件開發(fā)的基礎(chǔ)。當(dāng)開發(fā)同一領(lǐng)域的新系統(tǒng)時(shí),可根據(jù)領(lǐng)域分析確定新應(yīng)用的需求規(guī)約,以此來(lái)指導(dǎo)貫穿于整個(gè)開發(fā)的設(shè)計(jì)與組裝。因此領(lǐng)域分析的成功與否,對(duì)今后的開發(fā)具有舉足輕重的作用。領(lǐng)域分析的成功復(fù)用,可以從更抽象的層次實(shí)現(xiàn)軟件復(fù)用。
1.4 領(lǐng)域分析
所謂領(lǐng)域分析(DA)就是在系統(tǒng)分析之前,分析、研究有關(guān)應(yīng)用領(lǐng)域特性的活動(dòng)。它是發(fā)現(xiàn)和記錄某個(gè)領(lǐng)域各系統(tǒng)的共性和差異的過(guò)程,是系統(tǒng)化、形式化、有效復(fù)用的關(guān)鍵。通過(guò)領(lǐng)域分析,相似系統(tǒng)的公共特性將被提取,適用于該領(lǐng)域所有公共的、基本的對(duì)象、操作也將被標(biāo)志出來(lái),并且可通過(guò)定義模型描述它們之間的關(guān)系。領(lǐng)域分析的目標(biāo)就是獲得領(lǐng)域模型。領(lǐng)域模型(Domain Model)是領(lǐng)域中各系統(tǒng)的共同需求的描述。它描述了領(lǐng)域內(nèi)系統(tǒng)需求上的共性。
1.4.1 FODA方法與特征模型
FODA對(duì)領(lǐng)域分析過(guò)程進(jìn)行了完整的描述,特征概念是FODA方法的核心。所謂特征是指系統(tǒng)中的屬性和特點(diǎn),按特征在領(lǐng)域中的可選性及特征間的相互關(guān)系可分為三類:
?。?)強(qiáng)制性特征:必須被選擇的特征。
(2)可選特征:從0到n個(gè)可供選擇的特征。
?。?)可替換特征:至少有一個(gè)被選擇的特征。
按特征的內(nèi)容也可分為三類:
(1)功能相關(guān):系統(tǒng)所作的事情。
(2)環(huán)境相關(guān):系統(tǒng)是如何被使用的,變化點(diǎn)的原因。
?。?)表示相關(guān):系統(tǒng)信息是如何被用戶所觀察的或者是如何被相關(guān)應(yīng)用所獲得的。
特征模型通過(guò)使用抽象和細(xì)化的機(jī)制對(duì)領(lǐng)域中不同應(yīng)用的所有特征進(jìn)行了分類,從而提供了關(guān)于領(lǐng)域體系結(jié)構(gòu)和可復(fù)用構(gòu)件的高層視圖。特征模型可作為應(yīng)用開發(fā)者的地圖,當(dāng)應(yīng)用開發(fā)者面對(duì)龐雜的Use Case模型或者其他模型時(shí),特征模型提供了關(guān)于哪些是可選的、哪些是可合并的信息。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 設(shè)計(jì)模式_可復(fù)用面向對(duì)象軟件的基礎(chǔ).pdf 0次下載
- 基于面向對(duì)象概念格的卸掉集判定定理 3次下載
- 面向過(guò)程和面向對(duì)象有什么區(qū)別
- 面向對(duì)象的程序設(shè)計(jì)總結(jié)與過(guò)程化程序設(shè)計(jì)有什么區(qū)別? 0次下載
- 實(shí)例分析基于構(gòu)件技術(shù)的系統(tǒng)軟件架構(gòu) 0次下載
- 構(gòu)件技術(shù)的通用自動(dòng)測(cè)試系統(tǒng)軟件設(shè)計(jì) 0次下載
- RFID領(lǐng)域軟件構(gòu)件化開發(fā)技術(shù)研究 22次下載
- 基于面向對(duì)象的軟件測(cè)試技術(shù)研究
- 面向對(duì)象軟件自動(dòng)生成在檢測(cè)系統(tǒng)中的應(yīng)用
- 基于對(duì)象Petri網(wǎng)的研究導(dǎo)彈作戰(zhàn)效能評(píng)估的方法
- 面向對(duì)象的可編程控制器程序設(shè)計(jì)方法
- 面向對(duì)象軟件度量C&K方法的研究與改進(jìn)
- Java面向對(duì)象程序設(shè)計(jì)教程 0次下載
- 面向對(duì)象的參數(shù)化CAD二次開發(fā)方法研究
- 面向UUT問(wèn)題域的測(cè)試需求分析方法研究
- Objects:為對(duì)象類提供對(duì)象技術(shù) 432次閱讀
- Python中的類和對(duì)象詳解 1178次閱讀
- 循環(huán)隊(duì)列C語(yǔ)言面向對(duì)象實(shí)現(xiàn) 649次閱讀
- C語(yǔ)言是怎么面向對(duì)象編程 1708次閱讀
- 面向對(duì)象開發(fā)的SOLID五大基本原則 797次閱讀
- 面向對(duì)象方法實(shí)現(xiàn)IIC驅(qū)動(dòng)封裝以及AT24CXX存儲(chǔ)器的封裝 1490次閱讀
- 基于構(gòu)件化軟件開發(fā)的IEEE802.15.4標(biāo)準(zhǔn)的設(shè)計(jì)與實(shí)現(xiàn) 2399次閱讀
- 使用JavaScript創(chuàng)建對(duì)象的方法和案例 2958次閱讀
- UML軟件分析與建模技術(shù)在嵌入式指紋門禁系統(tǒng)中的應(yīng)用研究 1904次閱讀
- RFID領(lǐng)域軟件構(gòu)件化開發(fā)技術(shù)你知道嗎 851次閱讀
- 南京紫光基于對(duì)象存儲(chǔ)系統(tǒng)的隨機(jī)讀寫對(duì)象的方法 3336次閱讀
- 這可能是Python面向對(duì)象編程的最佳實(shí)踐 2695次閱讀
- 史上最全Python面向對(duì)象編程的資料合集 3184次閱讀
- 基于嵌入式實(shí)時(shí)系統(tǒng)的提高構(gòu)件化嵌入式操作系統(tǒng)性能的方案設(shè)計(jì) 850次閱讀
- 面向對(duì)象設(shè)計(jì)之定義領(lǐng)域服務(wù) 1072次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多