專利名稱::一種針對(duì)軟件特性的rup定量過程裁剪方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及一種軟件開發(fā)過程優(yōu)化的
技術(shù)領(lǐng)域:
,特別涉及一種針對(duì)軟件特性的RUP定量過程裁剪方法。
背景技術(shù):
:在過去的十幾年間,在軟件開發(fā)的數(shù)量和規(guī)模不斷擴(kuò)大的同時(shí),由于開發(fā)團(tuán)隊(duì)對(duì)標(biāo)準(zhǔn)開發(fā)過程缺乏正確且深入的理解,許多企業(yè)面臨包括開發(fā)成本高,開發(fā)過程過于繁復(fù)在內(nèi)的多種問題。目前企業(yè)中,較常使用的是RUP(RationalUnifiedProcess)這一軟件開發(fā)過程,它可被應(yīng)用于軟件開發(fā)生命周期的各個(gè)方面。RUP標(biāo)準(zhǔn)流程包括Bussinessmodeling,Requirements,Analysis&Design,Implementaion,Test,Deployment,ProjectManagement,Configration&changeManagement以及Enviroment九個(gè)部分??梢钥闯?,RUP標(biāo)準(zhǔn)流程包含的內(nèi)容非常全面。但是,它并非十全十美的。由于"過分的"面面俱到,開發(fā)框架便難免有些死板,缺乏應(yīng)有的靈活性。因此,當(dāng)軟件開發(fā)團(tuán)隊(duì),尤其是小型軟件開發(fā)團(tuán)隊(duì),簡單套用RUP標(biāo)準(zhǔn)流程進(jìn)行軟件開發(fā)時(shí),便會(huì)不可避免的出現(xiàn)開發(fā)周期過長,文檔量過大的"過載"現(xiàn)象。于是,實(shí)施應(yīng)用困難多,不適應(yīng)性突出等問題都成為軟件質(zhì)量和軟件團(tuán)隊(duì)開發(fā)能力進(jìn)一步提高的瓶頸。所以,根據(jù)軟件開發(fā)過程的多樣性,在RUP標(biāo)準(zhǔn)流程的基礎(chǔ)上,針對(duì)軟件的某一特性進(jìn)行裁剪,對(duì)軟件開發(fā)效率和軟件產(chǎn)品質(zhì)量的提高具有十分重要的作用。
發(fā)明內(nèi)容本發(fā)明的目的在于克服在軟件開發(fā)過程中使用RUP(RationalUnifiedProcess)等標(biāo)準(zhǔn)流程時(shí)面臨的由于開發(fā)資源的不同而導(dǎo)致的"超載"問題,保障過程的適用性和有效性,提供一種針對(duì)軟件特性的RUP定量過程裁剪方法。通過具有針對(duì)性的軟件開發(fā)過程裁剪,可以使開發(fā)流程更好的適合不同項(xiàng)目的需求,從而使軟件開發(fā)過程中遇到的成本過高、開發(fā)"過載"等問題得以解決,有效地提高軟件開發(fā)的效率和軟件產(chǎn)品的質(zhì)量。本發(fā)明的目的通過以下技術(shù)方案予以實(shí)現(xiàn)本發(fā)明提供的一種針對(duì)軟件特性的RUP定量過程裁剪方法,包括以下兩個(gè)步驟RUP流程擴(kuò)充裁剪和RUP擴(kuò)充流程適用性裁剪,其中,件特性需求,對(duì)其進(jìn)行的適當(dāng)擴(kuò)充,目的在于形成專門的工作流程用于保證某一軟件特性的需求,例如,當(dāng)某個(gè)系統(tǒng)對(duì)可靠性有較高要求的時(shí)候,根據(jù)軟件可靠性的可估算性,可以在RUP標(biāo)準(zhǔn)流程中增加專門針對(duì)軟件可靠性的有關(guān)活動(dòng)、制品和角色,形成保障軟件可靠性的專門工作流程,從而使得可靠性貫穿于整個(gè)開發(fā)過程。所述的RUP擴(kuò)充流程適用性裁剪是對(duì)擴(kuò)充后得到的專門工作流程進(jìn)行與元素及元素屬性有關(guān)的過程適用性裁剪。所述的元素,可以是一個(gè)活動(dòng)(activity),可以是一份制品(artifact),也可以是一個(gè)角色(role)。所述的RUP擴(kuò)充流程適用性裁剪對(duì)得到的工作流程中的活動(dòng)、制品、角色,及其屬性等方面進(jìn)行增加、刪除或修改,從而使它更"貼身",更適合不同軟件開發(fā)項(xiàng)目的實(shí)現(xiàn)目標(biāo)。所述的RUP擴(kuò)充流程適用性裁剪可以通過各個(gè)元素之間的關(guān)聯(lián)度來確定相應(yīng)的裁剪操作。所謂的關(guān)聯(lián)度,是指不同元素之間的密切程度。根據(jù)元素之間的密切程度,可以得到對(duì)某一元素應(yīng)釆取的增加、刪除或是修改的操作。所述的各元素的關(guān)聯(lián)度,利用模糊綜合評(píng)估的方法來確定,包括以下三個(gè)步驟(1)構(gòu)造兩個(gè)有限論域,c/和r,其中,f/代表與元素a相關(guān)的元素的集合,即例如,保障可靠性工作流程中,由活動(dòng)相關(guān)各項(xiàng)指標(biāo)制定的相關(guān)元素組成的集合,即為"={軟件項(xiàng)目開發(fā)計(jì)劃,軟件需求說明書,可靠性計(jì)劃)。F則代表關(guān)聯(lián)度組成的集合,艮口「={很密切,密切,一般,疏遠(yuǎn),很疏遠(yuǎn)}這樣,c/與r就構(gòu)成了矩陣》,同時(shí),由于不同元素所占的權(quán)重有所不同,所以,本發(fā)明確定了與元素a相關(guān)的不同元素的權(quán)重值;,這些權(quán)重值共同構(gòu)成了另一個(gè)矩陣3;(2)根據(jù)矩陣》,及矩陣:確定Fuzzy變換5其中,》為Fuzzy變換后得到的r上的模糊子集,也就是評(píng)估結(jié)果的集合,根據(jù)極大原則,得到元素a的關(guān)聯(lián)度系數(shù)為Pi為—Mn:(6,I6,e》)(3)得到所有元素各自的關(guān)聯(lián)度系數(shù)之后,便可以根據(jù)系數(shù)的比較來確定如何對(duì)元素以及元素的相關(guān)屬性進(jìn)行適用性裁剪。所述的模糊綜合評(píng)估的方法的三個(gè)步驟中,步驟(1)使得擴(kuò)充后的流程包含了保證軟件特性的全部活動(dòng);步驟(2)根據(jù)實(shí)際項(xiàng)目、環(huán)境因素的不同,實(shí)現(xiàn)了活動(dòng)的"精簡",從而在保證軟件特性的基礎(chǔ)上提高最終流程的適用性,使之更加"合身"。本發(fā)明具有以下有益效果-(1)保障了軟件開發(fā)過程的可靠性本發(fā)明在RUP標(biāo)準(zhǔn)流程中增加專門針對(duì)軟件可靠性的有關(guān)活動(dòng)、制品和角色,形成保障軟件可靠性的專門工作流程,從而使得可靠性貫穿于整個(gè)開發(fā)過程。(2)提高了軟件開發(fā)的效率和軟件產(chǎn)品的質(zhì)量本發(fā)明通過具有針對(duì)性的軟件開發(fā)過程裁剪,使開發(fā)流程更好的適合不同項(xiàng)目的需求,從而使軟件開發(fā)過程中遇到的成本過高、開發(fā)"過載"等問題得以解決,有效地提高軟件開發(fā)的效率和軟件產(chǎn)品的質(zhì)量。(3)提高軟件開發(fā)最終流程的適用性,使之更加"合身"本發(fā)明提供的模糊綜合評(píng)估的方法,使得擴(kuò)充后的流程包含了保證軟件特性的全部活動(dòng),同時(shí)根據(jù)實(shí)際項(xiàng)目、環(huán)境因素的不同,實(shí)現(xiàn)了活動(dòng)的"精簡",從而在保證軟件特性的基礎(chǔ)上提高最終流程的適用性,使之更加"合身"。圖1為基于軟件可靠性的裁剪后的工作流程。具體實(shí)施例方式下面將結(jié)合實(shí)施例和附圖對(duì)本發(fā)明作進(jìn)一步的詳細(xì)描述本發(fā)明一種針對(duì)軟件特性的RUP定量過程裁剪方法將一個(gè)實(shí)施例——通過網(wǎng)上書城系統(tǒng)來說明其實(shí)現(xiàn)過程,該圖書系統(tǒng)屬于"進(jìn)銷存"系統(tǒng),圖書銷售商希望通過圖書系統(tǒng),可實(shí)現(xiàn)對(duì)人員,比如職員、供應(yīng)商、顧客,以及業(yè)務(wù),比如書本、訂單方面信息的有效管理。系統(tǒng)開發(fā)周期為兩個(gè)月,根據(jù)各個(gè)子系統(tǒng)的實(shí)際情況,所分配的開發(fā)人員數(shù)量為8到10人不等。本實(shí)施例一種針對(duì)軟件特性的RUP定量過程裁剪方法,選擇了針對(duì)軟件的"可靠性"進(jìn)行裁剪。本實(shí)施例中的軟件可靠性定義是在某個(gè)給定時(shí)間間隔內(nèi),程序按照規(guī)格說明成功運(yùn)行的概率定義為軟件的可靠性,這個(gè)特性在軟件開發(fā)中是比較重要的。選取了這一特性之后,便可以針對(duì)此特性對(duì)RUP流程進(jìn)行擴(kuò)充裁剪以及對(duì)其擴(kuò)充流程進(jìn)行適用性裁剪。如圖1所示,在網(wǎng)上圖書系統(tǒng)的書本子系統(tǒng)開發(fā)過程中,通過對(duì)RUP標(biāo)準(zhǔn)流程進(jìn)行擴(kuò)充裁剪后得到的保證軟件可靠性的專門工作流程包括6個(gè)步驟開始,可靠性計(jì)劃,可靠性策略制定,開發(fā)過程中的可靠性測(cè)試和建立可靠性數(shù)據(jù)庫,軟件可靠性整體評(píng)估,結(jié)束。上述專門工作流程中新增各項(xiàng)活動(dòng)、制品或角色等元素列表,如表1所示表1保障可靠性工作流程新增元素列表<table>tableseeoriginaldocumentpage7</column></row><table><table>tableseeoriginaldocumentpage8</column></row><table>o0.55560.44440000.44440.44440.1111000.44440.38890.166700R).3380.3380.16700]根據(jù)極大原則,得到"相關(guān)各項(xiàng)可靠性指標(biāo)制定"這項(xiàng)活動(dòng)的關(guān)聯(lián)度系數(shù)為M,14e力0.3380.338+0.338+0.167=0.400949,.=i其他類型的元素,如某一制品,或是某一角色的關(guān)聯(lián)度系數(shù),都可以同樣計(jì)算出來。例如對(duì)制品類型元素"軟件項(xiàng)目開發(fā)計(jì)劃"來說,其矩陣》與矩陣2分別為及=0.33330.50.1667000.16670馬70.16670.055600.38890.50.1111002=將以上兩式代入式對(duì)得到的兩個(gè)矩陣進(jìn)行Fuzzy變換,得到評(píng)估結(jié)果矩陣》為:=o0.50.166700—0.66670.16670.055600.50.1111000.3540.1670.0560]"相關(guān)各項(xiàng)可靠性指標(biāo)制定"這項(xiàng)活動(dòng)的關(guān)聯(lián)度系數(shù)為:0.3540.354+0.354+0.167+0.056=0.380236,-=1按照同樣的算法,依次得到所有的各種類型元素的關(guān)聯(lián)度系數(shù)。具體如表2所表2各元素關(guān)聯(lián)度列表活動(dòng)制品角色可靠性計(jì)劃制定相關(guān)各項(xiàng)可靠性指標(biāo)制定0.400949活動(dòng)所需制品軟件項(xiàng)目開發(fā)計(jì)劃0.380236可靠性經(jīng)理0.3018可靠性測(cè)試時(shí)間安排0.320592活動(dòng)所需制品軟件需求說明書0.330224軟件系統(tǒng)可靠性需求說明0.403341活動(dòng)生成制品可靠性計(jì)劃0.368443可靠性策略制定可靠性策略制定0.3885557活動(dòng)所需制品可靠性計(jì)劃0.315939可靠性經(jīng)理0.315053故障預(yù)測(cè)0.374655活動(dòng)生成制品可靠性策略0.316553故障定義0.535005————過程中可靠性測(cè)試制定各模塊獨(dú)立測(cè)試計(jì)劃0.324427活動(dòng)所需制品可靠性計(jì)劃0.342629可靠性經(jīng)理0.275157可靠性測(cè)試0.323194活動(dòng)所需制品可靠性策略說明書0.351696故障解決和系統(tǒng)完善0.310268活動(dòng)生成制品單個(gè)模塊測(cè)試報(bào)告0.338583可靠性數(shù)據(jù)庫建數(shù)據(jù)庫初始化0.322115活動(dòng)所需制品可靠性計(jì)劃0.426215可靠性經(jīng)理0.302254活動(dòng)所需制品可靠性策略說明書0.310559數(shù)據(jù)庫更新0.398974活動(dòng)所需制品單獨(dú)模塊測(cè)試報(bào)告0.440289活動(dòng)生成制品可靠性數(shù)據(jù)庫0.413485軟件系統(tǒng)整體評(píng)估評(píng)估計(jì)劃制定0.2933984活動(dòng)所需制品可靠性計(jì)劃0.42721可靠性經(jīng)理0.310421活動(dòng)所需制品可靠性策略說明書0.434075故障解決以及系統(tǒng)完善0.336364活動(dòng)所需制品單個(gè)模塊測(cè)試報(bào)告0.42721活動(dòng)生成制品系統(tǒng)整體評(píng)估報(bào)告0.503018根據(jù)上述的關(guān)聯(lián)度列表,可以很清楚的看到上表"活動(dòng)"一列中,"過程中可靠性測(cè)試"所對(duì)應(yīng)的各項(xiàng)活動(dòng)的關(guān)聯(lián)度系數(shù)與其他相比,整體偏低。所以調(diào)整后對(duì)整個(gè)保障可靠性的工作流程的影響比較小。因此,在網(wǎng)上書城的書本子系統(tǒng)中,可將與此活動(dòng)相關(guān)的時(shí)間、人員等各方面資源進(jìn)行適當(dāng)?shù)目s小調(diào)整。同時(shí)上表中"角色"一列中,可靠性經(jīng)理在"過程中可靠性測(cè)試"中的關(guān)聯(lián)度與其他活動(dòng)相比也比較低。所以可刪除"可靠性經(jīng)理"這一專門的角色,而由其他測(cè)試人員負(fù)責(zé)可靠性經(jīng)理的工作即可。結(jié)合McCabe的復(fù)雜性度量,C&K方法中對(duì)類的度量指標(biāo),以及MOOD方法中系統(tǒng)級(jí)別的度量指標(biāo),得到的書本子系統(tǒng)中的各項(xiàng)與可靠性相關(guān)的指標(biāo)度量值則如表3所示。<table>tableseeoriginaldocumentpage11</column></row><table>根據(jù)上表數(shù)據(jù),以及下面公式<formula>formulaseeoriginaldocumentpage11</formula>得到書目子系統(tǒng)的可靠度為"Reliability=0.5538095238下面表4和表5為網(wǎng)上書城進(jìn)銷存系統(tǒng)的供應(yīng)商子系統(tǒng)的資源消耗表各項(xiàng)與可靠性相關(guān)的指標(biāo)度量值表。與書目子系統(tǒng)相比,供應(yīng)商子系統(tǒng)則沒有進(jìn)行時(shí)間和人員等方面開發(fā)資源的裁剪,而是直接按照原始流程進(jìn)行開發(fā)。表4書本子系統(tǒng)資源可靠性指標(biāo)度量值表<table>tableseeoriginaldocumentpage12</column></row><table>權(quán)利要求1、一種針對(duì)軟件特性的RUP定量過程裁剪方法,其特征在于,包括以下兩個(gè)步驟RUP流程擴(kuò)充裁剪和RUP擴(kuò)充流程適用性裁剪,其中RUP流程擴(kuò)充裁剪是針對(duì)軟件特性的需求,對(duì)RUP標(biāo)準(zhǔn)流程進(jìn)行擴(kuò)充,形成專門的工作流程用于保證某一軟件特性的需求;RUP擴(kuò)充流程適用性裁剪對(duì)擴(kuò)充后得到的專門工作流程進(jìn)行與元素,及元素屬性有關(guān)的過程適用性裁剪,對(duì)得到的工作流程中的活動(dòng)、制品、角色,及其屬性方面進(jìn)行增加、刪除或修改,相應(yīng)的裁剪操作通過各個(gè)元素之間的關(guān)聯(lián)度來確定,各元素的關(guān)聯(lián)度用模糊綜合評(píng)估的方法來確定;所述的元素,可以是一個(gè)活動(dòng),可以是一份制品,也可以是一個(gè)角色。2、根據(jù)權(quán)利要求1所述的一種針對(duì)軟件特性的RUP定量過程裁剪方法,其特征在于,所述的各元素的關(guān)聯(lián)度,利用模糊綜合評(píng)估的方法來確定,包括以下三個(gè)步驟(1)構(gòu)造兩個(gè)有限論域,f/和F,其中,f/代表與元素a相關(guān)的元素的集合,即例如,保障可靠性工作流程中,由活動(dòng)相關(guān)各項(xiàng)指標(biāo)制定的相關(guān)元素組成的集合,即為U-(軟件項(xiàng)目開發(fā)計(jì)劃,軟件需求說明書,可靠性計(jì)劃};F則代表關(guān)聯(lián)度組成的集合,艮P:7={很密切,密切,一般,疏遠(yuǎn),很疏遠(yuǎn)}這樣,t/與r就構(gòu)成了矩陣》,同時(shí),由于不同元素所占的權(quán)重有所不同,所以,本發(fā)明確定了與元素a相關(guān)的不同元素的權(quán)重值,,這些權(quán)重值共同構(gòu)成了另一個(gè)矩陣l;(2)根據(jù)矩陣》,及矩陣2確定Fuzzy變換其中,》為Fuzzy變換后得到的r上的模糊子集,也就是評(píng)估結(jié)果的集合,根據(jù)極大原則,得到元素a的關(guān)聯(lián)度系數(shù)為Pi為<formula>formulaseeoriginaldocumentpage3</formula>(3)得到所有元素各自的關(guān)聯(lián)度系數(shù)之后,便可以根據(jù)系數(shù)的比較來確定如何對(duì)元素以及元素的相關(guān)屬性進(jìn)行適用性裁剪。全文摘要本發(fā)明公開了一種針對(duì)軟件特性的RUP定量過程裁剪方法,包括了RUP流程擴(kuò)充裁剪和RUP擴(kuò)充流程適用性裁剪兩個(gè)步驟,RUP流程擴(kuò)充裁剪是針對(duì)軟件特性的需求,對(duì)RUP標(biāo)準(zhǔn)流程進(jìn)行擴(kuò)充,形成專門的工作流程用于保證某一軟件特性的需求;RUP擴(kuò)充流程適用性裁剪對(duì)擴(kuò)充后得到的專門工作流程進(jìn)行與元素,及元素屬性有關(guān)的過程適用性裁剪,相應(yīng)的裁剪操作通過各個(gè)元素之間的關(guān)聯(lián)度來確定,各元素的關(guān)聯(lián)度用模糊綜合評(píng)估的方法來確定。本發(fā)明解決了軟件開發(fā)過程中遇到的成本過高、開發(fā)“過載”等問題,保障了軟件開發(fā)過程的可靠性,提高了軟件開發(fā)的效率和軟件產(chǎn)品的質(zhì)量以及軟件開發(fā)最終流程的適用性。文檔編號(hào)G06F9/44GK101620534SQ20091003974公開日2010年1月6日申請(qǐng)日期2009年5月25日優(yōu)先權(quán)日2009年5月25日發(fā)明者李潔珊,毛明志,羅笑南,陳巧珍申請(qǐng)人:中山大學(xué)