楊萍
(廣州珠江在線多媒體信息有限公司)
基于功能需求向量的軟件產品族模塊規(guī)劃方法
楊萍
(廣州珠江在線多媒體信息有限公司)
隨著我國科技的快速發(fā)展,對于軟件產品族的開發(fā)也越來越常見了,而現如今的軟件產品族的開發(fā)首先都要先進行模塊的規(guī)劃,從而能夠使得開發(fā)的軟件產品族的功能能夠滿足各戶的需求。為了能夠降低軟件開發(fā)的成本并盡量的降低軟件開發(fā)的時長,就必須有一個基于功能需求了向量的軟件產品族開模塊規(guī)劃的好方法。因此本文通過對軟件產品族模塊規(guī)劃研究的現狀進行了簡單的闡述,通過分析器基本的構想,然后對功能需求向量構造和聚類進行介紹,之后提取出軟件產品族模塊,最后再舉出幾個通過此類規(guī)劃的方法的實例,證明該方法在現代科技中的有效性和實用性。
功能需求向量;軟件產品族;模塊規(guī)劃
現如今,我國的科技發(fā)展飛速,導致了開發(fā)軟件的規(guī)模逐漸的擴大,開發(fā)的時間也會隨之增長,再由于開發(fā)軟件產品族系統(tǒng)的過程本身也是比較的復雜,客戶的提出的問題也越來越多,就使得基于功能需求向量的軟件開發(fā)族模塊規(guī)劃方法越來越受到人們的重視。這種方法首先應根據軟件產品族模塊規(guī)劃的基本構想,從軟件功能需求的角度出發(fā),利用相應的技術將傳統(tǒng)的單個軟件開發(fā)的模式進行了改善,在原先軟件開發(fā)方式的基礎上結合了先進的開發(fā)方式,使得它既有傳統(tǒng)軟件開發(fā)的經驗也有先進軟件開發(fā)技術的優(yōu)點。這樣不僅能夠滿足客戶的各種要求,也能降低開發(fā)的成本和雖短開發(fā)的周期時長。
當前,軟件產品族的開發(fā)的現狀正處于一個深入研究的階段,現在軟件產品族的市場越來越廣,因此開發(fā)軟件就要跟隨市場上的需求進行變化,技術也要隨之變化并提高。在各界的企業(yè)和個人對軟件產品族進行研究后,認為這些變化應該進行集中的管理,并對評估了現在的軟件產品族模塊規(guī)劃進行了評估,發(fā)現軟件產品族模塊規(guī)劃方法還處于一個發(fā)展的階段。因此想要使軟件產品族模塊規(guī)劃方法的得到熟練的暈用,還需要相關人員對此進行不斷的研究與開發(fā)。
軟件產品族這種理念是源于將機械領域的產品族的思想運用到軟件的領域中。軟件產品族模塊規(guī)劃的基本構想是,首先對其領域進行分析,對軟件產品族的體系結構進行拆分,然后逐個了解,在其體系中主要包括:①軟件產品族平臺。這種平臺是軟件產品族中的一個基本的框架,通過對它的設計,才能進行下一步的軟件設計開發(fā);②共性模塊。它是可以將軟件的功能進行共享的一個功能模塊,這個模塊可以在軟件開發(fā)中起到很大的作用,使軟件開發(fā)的過程更加簡潔、快速;③特性模塊。這是一個有自己獨特功能的模塊,它可以與軟件產品族中的大部分軟件的功能區(qū)別開來,顯示出其特有的獨立性;④約束規(guī)則。它主要就是制定一個規(guī)則將共性模塊和特性模塊組裝到軟件產品族的平臺上,使這個開發(fā)的軟件可以安全的使用,同時也能夠滿足不同用戶對軟件的需求。
對于用戶對軟件產品族模塊的不同需求,便對基于功能需求向量的軟件產品族模塊規(guī)劃方法的給出了一個基本的構想。首先應對領域中的單個軟件的能進行收集整理到一個特定的文檔中,對其建立一個功能需求向量,然后再對功能需求向量進行整合,使之得出這個軟件的功能構造,最后在通過軟件的功能構造結構提取整個領域中的軟件產品族模塊,并提取出該軟件的共性模塊和特性模塊,從而使軟件產品族模塊規(guī)劃能夠得到的很好的實施。
3.1 功能需求向量的構造方法
軟件產品族模塊規(guī)劃能夠提高軟件產品族的生產效率并且能降低軟件的成本的關鍵技術方法。因此合理的規(guī)劃軟件產品族模塊是模塊規(guī)劃的研究重點。再對軟件產品族模塊規(guī)劃的現狀進行了分析之后應該重點研究功能需求向量的構造方法。
功能需求向量的構造方法首先就是對開發(fā)的軟件功能的需求進行一個詳細的分析,通過相應的分析結合實際例子構造一個需求向量。它能作為該軟件的所有的功能的一個表現形式,他主要有兩個重要的環(huán)節(jié):①特征詞集合生成。這個環(huán)節(jié)可以生成軟件中所有的功能需求,包括功能需求文檔的特征詞集合和特征詞集合索引;②功能需求向量賦值。這個環(huán)節(jié)主要就是根據特征詞集合生成的功能需求文檔進行一定的處理,并得出功能需求向量的值。
3.2 功能需求向量的聚類方法
這個軟件產品族模塊規(guī)劃主要就是要通過對需求向量運用數學聚類的方法,來的出軟件產品族模塊。軟件的開發(fā)首先構造了功能需求向量,從而完成了對特征詞的集合和功能需求向量的賦值,之后便是通過對功能需求向量進行聚類,從而來得到軟件的功能層次的結構。這種聚類方法可以將功能需求向量中的兩個向量聚合到一起,來實現功能需求向量的聚類。這種方法的過程是,在軟件產品族模塊里的每一個功能需求向量都可以看作成一個單個的個體,這種聚類方法就可以把相鄰的兩個功能需求向量結合到一起,組成一個新的單位,形成一個功能需求向量層次。最后可以通過計算結果得出功能需求向量的性能好壞。
在完成軟件產品族的模塊規(guī)劃后,要對共性模塊和特性模塊進行分離,首先應該將所有的模塊都集中到一起,通過計算的得出他們之間的交集。利用數學上的矩陣方法進行求解,得出的結果的值越大,則說明這些模塊的共同點越多,因此這些模塊就是被選作共性模塊;如果結果的值越小,則說明這些模塊的特殊點就越多,因此這些模塊就會被選作特性模塊。這種方法就會準確的將共性模塊和特性模塊分離開來,從而為軟件產品族的模塊的提取提供了可靠的數據參數。
軟件產品族模塊提取是指在軟件產品族模塊領域之內,根據功能需求向量的各個層次,對軟件產品模塊進行提取。提取的過程是通過確定軟件和模塊之間的關系,同樣通過數學的計算,對每一個模塊進行統(tǒng)計,如果得出的值為1,這說明該軟件中包含這個模塊,如果得出的值為0,這則說明此軟件中不包含這個模塊。再加上通過上述對共性模塊和特性模塊的分離方法,從而就可以提取出軟件產品族中的模塊。
對于基于功能需求向量的軟件產品族模塊規(guī)劃的方法,現在已經有好多的軟件研究企業(yè)將其應用在軟件開發(fā)中。例如將這個技術方法應用于提取快速計票系列的軟件中,可以自動分析分析出共性模塊與特性模塊。根據系統(tǒng)的計算,將“選舉設置”、“選票處理”、“廢票處理”、“模板管理”等處理為共性模塊,之后再對特性模塊進行詳細的分劃,可以繼續(xù)利用矩陣方式進行分析,從而得出特性模塊的組成。通過這種分析方法,可以使得軟件產品族的模塊規(guī)劃更加能夠滿足用戶對軟件產品的功能要求。
現如今,我國的軟件開發(fā)市場隨著科技的發(fā)展不斷的變換著要求,面對著軟件市場的競爭壓力,基于功能需求向量的軟件產品族模塊規(guī)劃的方法可以很好的使軟件開發(fā)的成本降低,同時也縮短了軟件研發(fā)的時間,更多的是這種技術下研發(fā)的軟件能夠很好的適應軟件的復雜市場和能夠滿足各種用戶的各種需求。本文對于軟件產品族的模塊規(guī)劃進行具體的研究,將傳統(tǒng)的方式與軟件工程的先進思想方式相互結合,通過構造功能需求向量和利用數學中的功能需求向量的聚類方法進行聚類,從而有效的使得軟件產品族的模塊規(guī)劃方法達到要求。最后通過對共性模塊和特性模塊進行分離,提取出軟件產品模塊,進而完成了一個軟件開發(fā)的過程。
TP311.52
A
1004-7344(2016)01-0317-01
2015-12-25