當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件
[導(dǎo)讀]結(jié)合面向?qū)ο箢I(lǐng)域建模和面向特征的領(lǐng)域分析方法,提出了一種面向特征的軟件產(chǎn)品家族建模方案,通過特征模型和用例模型來描述家族內(nèi)產(chǎn)品的共性和變化性,建立產(chǎn)品家族的領(lǐng)域分析模型,以實(shí)現(xiàn)需求的復(fù)用。結(jié)合高校設(shè)備預(yù)定管理,討論了軟件產(chǎn)品家族的領(lǐng)域建模過程。

軟件產(chǎn)品家族是具有共同特性的一系列軟件系統(tǒng),例如電信公司的各種計(jì)費(fèi)系統(tǒng)、手機(jī)應(yīng)用軟件,像這樣一些具有共同特性的一組軟件系統(tǒng)的開發(fā),如果沒有系統(tǒng)重用的方法,采取傳統(tǒng)的“一次開發(fā)一個(gè)系統(tǒng)”的方法,將使系統(tǒng)的成本和開發(fā)周期大大增加。

軟件復(fù)用被認(rèn)為是解決軟件危機(jī)、實(shí)現(xiàn)軟件產(chǎn)業(yè)工業(yè)化生產(chǎn)方式的有效途徑。軟件產(chǎn)品家族方法即應(yīng)用軟件復(fù)用的相關(guān)原理和技術(shù),把整個(gè)產(chǎn)品家族作為同一問題空間來看待的軟件開發(fā)方法。研究和實(shí)踐表明,通過應(yīng)用軟件復(fù)用技術(shù),軟件產(chǎn)品家族方法極大地節(jié)省了軟件產(chǎn)品的開發(fā)成本和時(shí)間[1],因此軟件產(chǎn)品家族方法也被認(rèn)為是一種提高軟件開發(fā)效率和控制軟件復(fù)雜性的有效措施。

本文采用面向特征的領(lǐng)域分析方法,選取高校設(shè)備預(yù)定管理產(chǎn)品家族作為研究實(shí)例,闡述了對軟件產(chǎn)品家族領(lǐng)域分析的方法,實(shí)現(xiàn)了需求的復(fù)用。

1相關(guān)概念

1.1領(lǐng)域工程

領(lǐng)域是一組具有相似或相近軟件需求的應(yīng)用系統(tǒng)所覆蓋的功能區(qū)域[2]。領(lǐng)域的概念規(guī)定了領(lǐng)域工程的研究范圍,即在構(gòu)造一個(gè)特定領(lǐng)域內(nèi)的系統(tǒng)或者系統(tǒng)的某些部分時(shí),以可重用方面的形式收集、組織并保存過去的經(jīng)驗(yàn)的活動(dòng),以及在構(gòu)造新系統(tǒng)時(shí),提供一種充分的方法來重用這些資源。

領(lǐng)域工程過程實(shí)施與開發(fā)單個(gè)應(yīng)用系統(tǒng)的軟件工程過程(應(yīng)用工程)不同,需依據(jù)一定的領(lǐng)域工程方法進(jìn)行。較有影響的領(lǐng)域分析方法有:面向特征的領(lǐng)域分析方法FODA(Feature-Oriented Domain Analysis)、組織領(lǐng)域分析模型方法ODM(Organization Domain Modeling)及領(lǐng)域分析和設(shè)計(jì)過程(DADP)等[3]。面向特征的領(lǐng)域分析方法為領(lǐng)域分析定義了具體的過程和階段,與其他方法相比具有較強(qiáng)的操作性。以下3個(gè)基本階段刻畫了FODA過程[3]:場景分析,定義進(jìn)行分析的領(lǐng)域的區(qū)域(或邊界);領(lǐng)域建模,提供一個(gè)對用軟件表達(dá)的領(lǐng)域的問題空間的描述;構(gòu)架建模,創(chuàng)造一個(gè)可以將解決方案實(shí)施到領(lǐng)域中具體問題的軟件體系結(jié)構(gòu)。

1.2 產(chǎn)品家族

產(chǎn)品家族是指一類共享體系結(jié)構(gòu)屬性、特征、代碼、構(gòu)件、中間件或者需求的軟件產(chǎn)品。作為特殊的領(lǐng)域,產(chǎn)品家族主要強(qiáng)調(diào)產(chǎn)品所在家族的共性,并不限于特定的軟件企業(yè)。共性是產(chǎn)品家族存在的基礎(chǔ),而家族內(nèi)單個(gè)產(chǎn)品間的區(qū)別則屬于變化性。因此,對軟件產(chǎn)品家族進(jìn)行領(lǐng)域分析,需要描述出家族內(nèi)產(chǎn)品的共性和變化性。FODA方法用特征來對需求進(jìn)行模塊化組織,用特征和特征之間的關(guān)系來對整個(gè)產(chǎn)品領(lǐng)域進(jìn)行建模。

1.3 特征和特征模型

特征的定義在領(lǐng)域工程中并不完全相同,一個(gè)比較完整的定義為:從需求規(guī)約的組織結(jié)構(gòu)角度來看,特征提供了一種對需求的分割和組織方式,即以特征作為需求空間內(nèi)的一階實(shí)體,系統(tǒng)具有的特征及其相互關(guān)系構(gòu)成了系統(tǒng)的需求空間[4]。

領(lǐng)域特征模型是面向特征的領(lǐng)域需求規(guī)約模型,通過記錄領(lǐng)域具有的一組相對穩(wěn)定的特征以及特征之間的關(guān)系反映整個(gè)領(lǐng)域的軟件需求。它分為共性和變化性特征,其中共性特征表達(dá)領(lǐng)域內(nèi)各成員系統(tǒng)的共有部分,變化性特征描述領(lǐng)域內(nèi)部分成員系統(tǒng)的共有或特有部分。

2 面向特征的軟件產(chǎn)品家族建模方法

本文在對高校設(shè)備預(yù)定管理產(chǎn)品家族進(jìn)行領(lǐng)域建模時(shí),以FODA為基礎(chǔ),把特征和特征模型的概念引入到領(lǐng)域分析模型中,用于表現(xiàn)領(lǐng)域需求,同時(shí)采用用例模型描述家族中的成員系統(tǒng)的變化性。

面向特征的產(chǎn)品家族領(lǐng)域分析的主要目標(biāo)是獲得領(lǐng)域分析模型以描述家族中產(chǎn)品的共性和變化性需求,包括場景模型、領(lǐng)域面向?qū)ο蠓治瞿P秃吞卣髂P?部分。其主要活動(dòng)及過程如圖1所示。


2.1領(lǐng)域場景分析

場景分析的目的是通過領(lǐng)域分析人員與用戶、領(lǐng)域?qū)<医换?,分析已有的一組軟件產(chǎn)品,給出一個(gè)軟件產(chǎn)品家族范圍的定義,確定軟件系統(tǒng)族包括哪些應(yīng)用。場景分析包括以下3個(gè)過程:定義領(lǐng)域的范圍、確定與軟件家族交互的操作者、建立領(lǐng)域字典。如果是第一次開發(fā)家族內(nèi)的成員系統(tǒng),沒有可重用的軟件產(chǎn)品家族需求,則需要由需求工程師和領(lǐng)域?qū)<覐臍v史、當(dāng)前和未來的系統(tǒng)需求中確定系統(tǒng)家族的功能需求和質(zhì)量需求。

2.2領(lǐng)域面向?qū)ο蠓治瞿P?br />
在產(chǎn)品家族中,不同的應(yīng)用系統(tǒng)由于其針對的商業(yè)目標(biāo)或用戶群不同,使得用戶與系統(tǒng)之間的交互存在差異性。在為軟件產(chǎn)品家族創(chuàng)建用例模型時(shí),需要對現(xiàn)存系統(tǒng)的用例模型進(jìn)行整合,將各用例模型中的公共部分抽取出來,作為用例模型中的共性部分;對于家族內(nèi)單個(gè)產(chǎn)品具有的功能,進(jìn)行分類篩選,作為用例模型的變化性部分,在單個(gè)用例圖中加以描述。之后要對整個(gè)用例模型進(jìn)行一致性、冗余性檢查,最終得到包含共性和變化性需求的軟件產(chǎn)品家族用例模型。

2.3特征模型

領(lǐng)域分析階段特征模型主要根據(jù)領(lǐng)域用例模型而來的,領(lǐng)域用例模型描述的是領(lǐng)域的功能性需求,因而特征模型主要是由功能性特征組成。而一個(gè)功能在執(zhí)行過程中表現(xiàn)出的行為特點(diǎn),既可能是產(chǎn)品家族中所有系統(tǒng)的共性,也可能只是單個(gè)系統(tǒng)才具有的獨(dú)特之處。

3應(yīng)用實(shí)例

本文選取高校設(shè)備預(yù)定管理這一類共享軟件需求的軟件家族作為研究案例,應(yīng)用面向特征的軟件產(chǎn)品家族建模方法。

3.1領(lǐng)域范圍

在高校教學(xué)中,大都或多或少地存在著教學(xué)設(shè)備和教學(xué)資源緊缺的問題。為了合理地利用現(xiàn)有教學(xué)資源,提高教學(xué)效率和教學(xué)資源的利用率,許多高校使用設(shè)備預(yù)定管理軟件進(jìn)行教學(xué)設(shè)備的預(yù)定和分配。這些系統(tǒng)具有相似的功能,即實(shí)現(xiàn)設(shè)備的預(yù)定/預(yù)約,方便用戶或設(shè)備使用人員,實(shí)現(xiàn)設(shè)備使用的自動(dòng)分配,因此可以定義為高校設(shè)備預(yù)定管理產(chǎn)品家族。這里的設(shè)備包括高校教學(xué)中使用的教學(xué)儀器、設(shè)備,以及教室、會(huì)議室、學(xué)術(shù)報(bào)告廳等教學(xué)資源。

3.2與軟件家族交互的操作者

硬件方面包括數(shù)據(jù)傳輸局域網(wǎng)、服務(wù)器和客戶端計(jì)算機(jī)。
軟件方面包括Windows XP、SQL Server 2005、Microsoft.Net Framework 2.0。
系統(tǒng)使用者包括設(shè)備管理人員和設(shè)備使用人員。

3.3領(lǐng)域字典

對于軟件產(chǎn)品家族內(nèi)的部分術(shù)語以領(lǐng)域字典的形式進(jìn)行注釋,如表1所示。


3.4領(lǐng)域用例模型

通過分析現(xiàn)有高校設(shè)備預(yù)定管理軟件,考慮到不同學(xué)校不同的管理方式,抽象出高校設(shè)備預(yù)定管理軟件產(chǎn)品家族的共性需求,由用例模型來描述, 如圖2所示。用例圖能夠詳細(xì)地描述用戶與系統(tǒng)的交互過程,因此可以表達(dá)交互過程中的變化性。表2是其中的“增加預(yù)定”用例,變化性的需求用斜體表示。


3.5特征模型

根據(jù)設(shè)備預(yù)定管理的家族用例模型,從交互過程分析活動(dòng)開始,建立設(shè)備預(yù)定管理家族的特征模型圖,如圖3所示?!?br />
“批量預(yù)定”——可選特征。有的應(yīng)用系統(tǒng)中不允許批量預(yù)定(例如重要設(shè)備),只能在使用前臨時(shí)預(yù)定;而有些設(shè)備則可以一次預(yù)定多個(gè)(例如教室)。“批量預(yù)定”特征包含“多個(gè)時(shí)間段”和“多個(gè)設(shè)備”2個(gè)特征,二者關(guān)系可替換,即允許多個(gè)時(shí)間段預(yù)定,也可一次預(yù)定多個(gè)設(shè)備,或二者皆可。

“設(shè)備管理”——強(qiáng)制特征。每個(gè)應(yīng)用系統(tǒng)都需要對設(shè)備進(jìn)行管理,如添加、刪除、修改等。

“刪除設(shè)備方式”——強(qiáng)制特征。由“刪除設(shè)備和預(yù)定”、“預(yù)定結(jié)束后刪除”和“不刪除”3個(gè)子特征描述。三者的關(guān)系是多選一,即“刪除設(shè)備方式”是3個(gè)子特征中的1個(gè)。

依賴關(guān)系:例如“批量折扣”特征依賴于“批量預(yù)定”特征。

面向特征的領(lǐng)域建模方法是目前主流的領(lǐng)域建模方法,該方法支持領(lǐng)域需求共性/變化性的建模,及支持對領(lǐng)域需求變化性的剪裁。本文在分析了面向特征的領(lǐng)域分析方法的基礎(chǔ)上,提出了通過建立領(lǐng)域用例模型和特征模型來描述軟件產(chǎn)品家族內(nèi)成員的共性和變化性,得到了高校設(shè)備預(yù)定管理家族的領(lǐng)域分析模型,從而實(shí)現(xiàn)了對軟件產(chǎn)品家族的建模。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉