資料介紹
軟件產品家族是具有共同特性的一系列軟件系統,例如電信公司的各種計費系統、手機應用軟件,像這樣一些具有共同特性的一組軟件系統的開發,如果沒有系統重用的方法,采取傳統的“一次開發一個系統”的方法,將使系統的成本和開發周期大大增加。
軟件復用被認為是解決軟件危機、實現軟件產業工業化生產方式的有效途徑。軟件產品家族方法即應用軟件復用的相關原理和技術,把整個產品家族作為同一問題空間來看待的軟件開發方法。研究和實踐表明,通過應用軟件復用技術,軟件產品家族方法極大地節省了軟件產品的開發成本和時間[1],因此軟件產品家族方法也被認為是一種提高軟件開發效率和控制軟件復雜性的有效措施。
本文采用面向特征的領域分析方法,選取高校設備預定管理產品家族作為研究實例,闡述了對軟件產品家族領域分析的方法,實現了需求的復用。
1相關概念
1.1領域工程
領域是一組具有相似或相近軟件需求的應用系統所覆蓋的功能區域[2]。領域的概念規定了領域工程的研究范圍,即在構造一個特定領域內的系統或者系統的某些部分時,以可重用方面的形式收集、組織并保存過去的經驗的活動,以及在構造新系統時,提供一種充分的方法來重用這些資源。
領域工程過程實施與開發單個應用系統的軟件工程過程(應用工程)不同,需依據一定的領域工程方法進行。較有影響的領域分析方法有:面向特征的領域分析方法FODA(Feature-Oriented Domain Analysis)、組織領域分析模型方法ODM(Organization Domain Modeling)及領域分析和設計過程(DADP)等[3]。面向特征的領域分析方法為領域分析定義了具體的過程和階段,與其他方法相比具有較強的操作性。以下3個基本階段刻畫了FODA過程[3]:場景分析,定義進行分析的領域的區域(或邊界);領域建模,提供一個對用軟件表達的領域的問題空間的描述;構架建模,創造一個可以將解決方案實施到領域中具體問題的軟件體系結構。
1.2 產品家族
產品家族是指一類共享體系結構屬性、特征、代碼、構件、中間件或者需求的軟件產品。作為特殊的領域,產品家族主要強調產品所在家族的共性,并不限于特定的軟件企業。共性是產品家族存在的基礎,而家族內單個產品間的區別則屬于變化性。因此,對軟件產品家族進行領域分析,需要描述出家族內產品的共性和變化性。FODA方法用特征來對需求進行模塊化組織,用特征和特征之間的關系來對整個產品領域進行建模。
1.3 特征和特征模型
特征的定義在領域工程中并不完全相同,一個比較完整的定義為:從需求規約的組織結構角度來看,特征提供了一種對需求的分割和組織方式,即以特征作為需求空間內的一階實體,系統具有的特征及其相互關系構成了系統的需求空間[4]。
領域特征模型是面向特征的領域需求規約模型,通過記錄領域具有的一組相對穩定的特征以及特征之間的關系反映整個領域的軟件需求。它分為共性和變化性特征,其中共性特征表達領域內各成員系統的共有部分,變化性特征描述領域內部分成員系統的共有或特有部分。
2 面向特征的軟件產品家族建模方法
本文在對高校設備預定管理產品家族進行領域建模時,以FODA為基礎,把特征和特征模型的概念引入到領域分析模型中,用于表現領域需求,同時采用用例模型描述家族中的成員系統的變化性。
面向特征的產品家族領域分析的主要目標是獲得領域分析模型以描述家族中產品的共性和變化性需求,包括場景模型、領域面向對象分析模型和特征模型3部分。其主要活動及過程如圖1所示。
2.1領域場景分析
場景分析的目的是通過領域分析人員與用戶、領域專家交互,分析已有的一組軟件產品,給出一個軟件產品家族范圍的定義,確定軟件系統族包括哪些應用。場景分析包括以下3個過程:定義領域的范圍、確定與軟件家族交互的操作者、建立領域字典。如果是第一次開發家族內的成員系統,沒有可重用的軟件產品家族需求,則需要由需求工程師和領域專家從歷史、當前和未來的系統需求中確定系統家族的功能需求和質量需求。
2.2領域面向對象分析模型
在產品家族中,不同的應用系統由于其針對的商業目標或用戶群不同,使得用戶與系統之間的交互存在差異性。在為軟件產品家族創建用例模型時,需要對現存系統的用例模型進行整合,將各用例模型中的公共部分抽取出來,作為用例模型中的共性部分;對于家族內單個產品具有的功能,進行分類篩選,作為用例模型的變化性部分,在單個用例圖中加以描述。之后要對整個用例模型進行一致性、冗余性檢查,最終得到包含共性和變化性需求的軟件產品家族用例模型。
2.3特征模型
領域分析階段特征模型主要根據領域用例模型而來的,領域用例模型描述的是領域的功能性需求,因而特征模型主要是由功能性特征組成。而一個功能在執行過程中表現出的行為特點,既可能是產品家族中所有系統的共性,也可能只是單個系統才具有的獨特之處。
3應用實例
本文選取高校設備預定管理這一類共享軟件需求的軟件家族作為研究案例,應用面向特征的軟件產品家族建模方法。
3.1領域范圍
在高校教學中,大都或多或少地存在著教學設備和教學資源緊缺的問題。為了合理地利用現有教學資源,提高教學效率和教學資源的利用率,許多高校使用設備預定管理軟件進行教學設備的預定和分配。這些系統具有相似的功能,即實現設備的預定/預約,方便用戶或設備使用人員,實現設備使用的自動分配,因此可以定義為高校設備預定管理產品家族。這里的設備包括高校教學中使用的教學儀器、設備,以及教室、會議室、學術報告廳等教學資源。
3.2與軟件家族交互的操作者
硬件方面包括數據傳輸局域網、服務器和客戶端計算機。
軟件方面包括Windows XP、SQL Server 2005、Microsoft.Net Framework 2.0。
系統使用者包括設備管理人員和設備使用人員。
軟件復用被認為是解決軟件危機、實現軟件產業工業化生產方式的有效途徑。軟件產品家族方法即應用軟件復用的相關原理和技術,把整個產品家族作為同一問題空間來看待的軟件開發方法。研究和實踐表明,通過應用軟件復用技術,軟件產品家族方法極大地節省了軟件產品的開發成本和時間[1],因此軟件產品家族方法也被認為是一種提高軟件開發效率和控制軟件復雜性的有效措施。
本文采用面向特征的領域分析方法,選取高校設備預定管理產品家族作為研究實例,闡述了對軟件產品家族領域分析的方法,實現了需求的復用。
1相關概念
1.1領域工程
領域是一組具有相似或相近軟件需求的應用系統所覆蓋的功能區域[2]。領域的概念規定了領域工程的研究范圍,即在構造一個特定領域內的系統或者系統的某些部分時,以可重用方面的形式收集、組織并保存過去的經驗的活動,以及在構造新系統時,提供一種充分的方法來重用這些資源。
領域工程過程實施與開發單個應用系統的軟件工程過程(應用工程)不同,需依據一定的領域工程方法進行。較有影響的領域分析方法有:面向特征的領域分析方法FODA(Feature-Oriented Domain Analysis)、組織領域分析模型方法ODM(Organization Domain Modeling)及領域分析和設計過程(DADP)等[3]。面向特征的領域分析方法為領域分析定義了具體的過程和階段,與其他方法相比具有較強的操作性。以下3個基本階段刻畫了FODA過程[3]:場景分析,定義進行分析的領域的區域(或邊界);領域建模,提供一個對用軟件表達的領域的問題空間的描述;構架建模,創造一個可以將解決方案實施到領域中具體問題的軟件體系結構。
1.2 產品家族
產品家族是指一類共享體系結構屬性、特征、代碼、構件、中間件或者需求的軟件產品。作為特殊的領域,產品家族主要強調產品所在家族的共性,并不限于特定的軟件企業。共性是產品家族存在的基礎,而家族內單個產品間的區別則屬于變化性。因此,對軟件產品家族進行領域分析,需要描述出家族內產品的共性和變化性。FODA方法用特征來對需求進行模塊化組織,用特征和特征之間的關系來對整個產品領域進行建模。
1.3 特征和特征模型
特征的定義在領域工程中并不完全相同,一個比較完整的定義為:從需求規約的組織結構角度來看,特征提供了一種對需求的分割和組織方式,即以特征作為需求空間內的一階實體,系統具有的特征及其相互關系構成了系統的需求空間[4]。
領域特征模型是面向特征的領域需求規約模型,通過記錄領域具有的一組相對穩定的特征以及特征之間的關系反映整個領域的軟件需求。它分為共性和變化性特征,其中共性特征表達領域內各成員系統的共有部分,變化性特征描述領域內部分成員系統的共有或特有部分。
2 面向特征的軟件產品家族建模方法
本文在對高校設備預定管理產品家族進行領域建模時,以FODA為基礎,把特征和特征模型的概念引入到領域分析模型中,用于表現領域需求,同時采用用例模型描述家族中的成員系統的變化性。
面向特征的產品家族領域分析的主要目標是獲得領域分析模型以描述家族中產品的共性和變化性需求,包括場景模型、領域面向對象分析模型和特征模型3部分。其主要活動及過程如圖1所示。
2.1領域場景分析
場景分析的目的是通過領域分析人員與用戶、領域專家交互,分析已有的一組軟件產品,給出一個軟件產品家族范圍的定義,確定軟件系統族包括哪些應用。場景分析包括以下3個過程:定義領域的范圍、確定與軟件家族交互的操作者、建立領域字典。如果是第一次開發家族內的成員系統,沒有可重用的軟件產品家族需求,則需要由需求工程師和領域專家從歷史、當前和未來的系統需求中確定系統家族的功能需求和質量需求。
2.2領域面向對象分析模型
在產品家族中,不同的應用系統由于其針對的商業目標或用戶群不同,使得用戶與系統之間的交互存在差異性。在為軟件產品家族創建用例模型時,需要對現存系統的用例模型進行整合,將各用例模型中的公共部分抽取出來,作為用例模型中的共性部分;對于家族內單個產品具有的功能,進行分類篩選,作為用例模型的變化性部分,在單個用例圖中加以描述。之后要對整個用例模型進行一致性、冗余性檢查,最終得到包含共性和變化性需求的軟件產品家族用例模型。
2.3特征模型
領域分析階段特征模型主要根據領域用例模型而來的,領域用例模型描述的是領域的功能性需求,因而特征模型主要是由功能性特征組成。而一個功能在執行過程中表現出的行為特點,既可能是產品家族中所有系統的共性,也可能只是單個系統才具有的獨特之處。
3應用實例
本文選取高校設備預定管理這一類共享軟件需求的軟件家族作為研究案例,應用面向特征的軟件產品家族建模方法。
3.1領域范圍
在高校教學中,大都或多或少地存在著教學設備和教學資源緊缺的問題。為了合理地利用現有教學資源,提高教學效率和教學資源的利用率,許多高校使用設備預定管理軟件進行教學設備的預定和分配。這些系統具有相似的功能,即實現設備的預定/預約,方便用戶或設備使用人員,實現設備使用的自動分配,因此可以定義為高校設備預定管理產品家族。這里的設備包括高校教學中使用的教學儀器、設備,以及教室、會議室、學術報告廳等教學資源。
3.2與軟件家族交互的操作者
硬件方面包括數據傳輸局域網、服務器和客戶端計算機。
軟件方面包括Windows XP、SQL Server 2005、Microsoft.Net Framework 2.0。
系統使用者包括設備管理人員和設備使用人員。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- TI Bluetooth?Mesh軟件產品簡介
- CC2340低功耗藍牙軟件產品簡報
- ELLAB ValSuite? 軟件產品目錄
- 基于輕量級CNN等的惡意軟件家族分類模型 20次下載
- 過程系統建模與仿真.pdf 0次下載
- 基于FLUX10.4軟件的電機建模教程.pdf 13次下載
- 自適應軟件動態過程時間特性建模 0次下載
- 基于ICONIX的嵌入式軟件設計 0次下載
- 全球領先的自動化軟件產品及應用案例 9次下載
- 綜合航電領域元建模技術研究 0次下載
- 軟件過程建模方法研究
- 優化模型與LINDO/LINGO優化軟件
- 基于PSO和SVM的發酵過程建模與優化控制
- 軟件可靠性建模研究
- 基于領域建模的數控系統代碼生成技術
- 知識分享 | 輕松實現優質建模 78次閱讀
- simulink常用模塊有哪些 simulink模塊執行順序 2658次閱讀
- 生產線仿真建模過程和優化方法 2010次閱讀
- 軟件建模原則包括哪些內容 1248次閱讀
- 軟件過程定義是什么 軟件過程的要素包括哪些 1040次閱讀
- CFD建模與仿真 4448次閱讀
- Ansys Zemax光學設計軟件產品概述 1370次閱讀
- 形式化建模(一) 1198次閱讀
- 如何利用工具模板快速對TSV陣列進行建模 1663次閱讀
- 多學科仿真集成與優化設計軟件產品介紹 2741次閱讀
- 詳談黑盒測試用例設計 2797次閱讀
- 最流行的uml建模工具有哪些 2.7w次閱讀
- 大型軟件的功能測試流程及性能測試流程 1.3w次閱讀
- 燈泡建模小技巧 7647次閱讀
- 什么是軟件測試環境_軟件測試環境有哪幾種_做軟件測試要用到什么工具 4.8w次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多