新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 談GJB5000A二級(jí)在中小型嵌入式軟件研發(fā)中的應(yīng)用

談GJB5000A二級(jí)在中小型嵌入式軟件研發(fā)中的應(yīng)用

作者: 時(shí)間:2012-08-18 來(lái)源:網(wǎng)絡(luò) 收藏

1.4 項(xiàng)目管理信息化手段的
工欲善其事,必先利其器。工程化管理主要通過文檔來(lái)反映過程。如果通過傳統(tǒng)的人工撰寫文檔和凡事開會(huì)溝通的方式進(jìn)行項(xiàng)目管理的話,將會(huì)大大增加管理人員和設(shè)計(jì)師人員的工作量,況且這種方式的效率是十分低下的。因此有必要先進(jìn)的項(xiàng)目管理信息化工具。
目前,關(guān)鍵科技公司推出專門針對(duì)工程化產(chǎn)品的解決方案,包括KPFLOW、KRFLOW、KCFLOW和KTFLOW四類工具:
(1)KPFLOW:對(duì)軟件項(xiàng)目的進(jìn)度、成本、質(zhì)量、資源等情況進(jìn)行集成管理的平臺(tái)。其主要功能包括:任務(wù)分配與跟蹤、項(xiàng)目估計(jì)、項(xiàng)目周報(bào)和個(gè)人周報(bào)記錄、問題與風(fēng)險(xiǎn)管理、項(xiàng)目度量分析。該平臺(tái)支持系統(tǒng)建模,即意味著可以針對(duì)不同項(xiàng)目設(shè)計(jì)對(duì)應(yīng)的模板和模塊。該平臺(tái)主要體現(xiàn)PP、PMC、MA和PPOA四個(gè)過程域的信息化管理;
(2)KRFLOW:需求管理工具,其主要功能包括:需求的獲取和編輯、需求跟蹤和分析、變更建議系統(tǒng)、基線管理。該軟件主要實(shí)現(xiàn)REQM過程域的信息化管理工作;
(3)KCFLOW:確保軟件項(xiàng)目生存周期內(nèi)產(chǎn)品的完整性、一致性和可追溯性。其主要功能包括:配置計(jì)劃管理、變更控制、版本管理、產(chǎn)品依賴關(guān)系和一致性管理、軟件問題跟蹤管理、軟件配置狀態(tài)審計(jì)。該軟件實(shí)現(xiàn)了CM過程域的信息化管理,同時(shí)也可以管理REQM和PPQA兩個(gè)過程域;
(4)KTFLOW:測(cè)試過程的管理軟件,其主要功能包括:梳理測(cè)試需求、制定測(cè)試計(jì)劃、設(shè)計(jì)測(cè)試用例、執(zhí)行測(cè)試過程、輸出測(cè)試報(bào)告。該軟件幫助測(cè)試人員在短時(shí)間內(nèi)、大批量的完成多個(gè)項(xiàng)目的軟件測(cè)試。
這四類工具有兩個(gè)特色:一是它們相互之間可以進(jìn)行數(shù)據(jù)互聯(lián),幫助管理人員從不同角度監(jiān)督研制過程;二是工具支持文檔自動(dòng)生成,項(xiàng)目組人員只需要按照GJB438B模板,填寫部分軟件研制過程的信息,即可輸出標(biāo)準(zhǔn)化的文檔。
盡管具有功能強(qiáng)大的工具,但是在初期實(shí)踐階段,由于丁具普及的程度參差不一,我們先使用KCFLOW配置管理工具,先由組織級(jí)配置管理員負(fù)責(zé)使用,然后逐步對(duì)項(xiàng)目級(jí)配置管理員以及項(xiàng)目相關(guān)成員進(jìn)行推廣。在這個(gè)過程中,項(xiàng)目組成員需要不斷的實(shí)踐,逐步提高勞動(dòng)效率。

2 軟件可靠性的提高
2.1 軟件可靠性
軟件工程化的核心是為了實(shí)現(xiàn)好的軟件,而評(píng)價(jià)軟件好壞的關(guān)鍵標(biāo)準(zhǔn)是軟件可靠性。軟件可靠性(Software Reliability)指的是在給定時(shí)間和特定環(huán)境要求下,軟件完成規(guī)定功能的能力。針對(duì)在雷達(dá)系統(tǒng)中使用的軟件中,可靠性指標(biāo)一般隸屬于分系統(tǒng)或整機(jī)的指標(biāo),即在初始系統(tǒng)正常的條件下,在規(guī)定時(shí)間內(nèi),軟件不引起系統(tǒng)故障的能力。
由于嵌入式軟件與硬件結(jié)合相當(dāng)緊密,其可靠性指標(biāo)具有很大的隨機(jī)性,如外界環(huán)境變化、系統(tǒng)輸入出錯(cuò)、使用不當(dāng)以及軟硬件設(shè)計(jì)的固有缺陷等原因都會(huì)導(dǎo)致軟件可靠性指標(biāo)降低,但是不能因?yàn)檫@些困難,使得嵌入式軟件可靠性的保證成為空談。軟件可靠性是可以通過軟件工程化的實(shí)踐來(lái)提高。
2.2 軟件可靠性的提高
嚴(yán)格進(jìn)行軟件工程化管理是提高軟件可靠性的必經(jīng)之路。按照軟件工程化要求,需要做好如下五方面工作:
(1)前期項(xiàng)目組針對(duì)軟件進(jìn)行充分的論證和分析,爭(zhēng)取將軟件需求明確體現(xiàn)在軟件研制任務(wù)書中;
(2)設(shè)計(jì)過程中,盡量提高軟件模塊或單元的高內(nèi)聚性、低耦合性。單元之間的接口盡量明晰,整個(gè)系統(tǒng)軟件的復(fù)雜度不易過高,該拆分的就需要合理拆分為多個(gè)組成部分;
(3)加強(qiáng)軟件文檔的健全性和準(zhǔn)確性,按照GJB438B-2009《武器系統(tǒng)軟件開發(fā)文檔》的要求,軟件研制過程中的文檔不能有缺失、描述不清、前后矛盾等情況出現(xiàn)。這些文檔必須經(jīng)過專業(yè)人士的評(píng)審認(rèn)可,并且問題回歸后才能進(jìn)行歸檔;
(4)逐步建立軟件標(biāo)準(zhǔn)化工作,包括文檔標(biāo)準(zhǔn)化和代碼模塊標(biāo)準(zhǔn)化,這樣可以有利的縮短研制周期,降低研制風(fēng)險(xiǎn),提高軟件產(chǎn)品的重用率;
(5)切實(shí)加強(qiáng)嵌入式軟件的測(cè)試工作。

3 軟件測(cè)試
3.1 軟件測(cè)試的重要性
盡管軟件工程化管理工作對(duì)軟件質(zhì)量的保證起到至關(guān)重要的作用,但是技術(shù)人員依然心存質(zhì)疑,是否好的管理就能夠確保高可靠性的軟件。答案就在于軟件測(cè)試。軟件測(cè)試是將軟件可靠性指標(biāo)具體化的手段。從廣義上講,軟件測(cè)試是為了盡快盡早地、不斷地發(fā)現(xiàn)各種軟件缺陷而開展的對(duì)軟件及過程產(chǎn)品的驗(yàn)證和確認(rèn)活動(dòng)。從狹義上講,軟件測(cè)試包括4類測(cè)試:
(1)針對(duì)軟件源代碼的靜態(tài)測(cè)試和代碼審查,確保軟件源碼符合GJB5369《航天型號(hào)C語(yǔ)言安全子集》或其他開發(fā)語(yǔ)言標(biāo)準(zhǔn)的要求;
(2)針對(duì)《軟件設(shè)計(jì)說明》對(duì)應(yīng)的軟件模塊的單元測(cè)試和動(dòng)態(tài)測(cè)試,確保軟件模塊的代碼覆蓋率達(dá)到100%;
(3)針對(duì)《需求規(guī)格說明》對(duì)應(yīng)的軟件功能性能的集成測(cè)試,確保軟件功能、性能、外部和內(nèi)部接口等符合要求;
(4)針對(duì)《軟件研制任務(wù)書》對(duì)應(yīng)的軟件需求的系統(tǒng)測(cè)試或驗(yàn)收測(cè)試,確保軟硬件各項(xiàng)指標(biāo)符合用戶的驗(yàn)收要求。
在這個(gè)測(cè)試過程中,測(cè)試問題及問題數(shù)目、測(cè)試問題的歸零情況、測(cè)試問題中文檔問題和軟件問題的比例、階段測(cè)試的缺陷率、軟件故障等級(jí)、軟件失效概率等度量數(shù)據(jù)可以直觀地反映出軟件的可靠性狀況。因此軟件測(cè)試工作對(duì)于軟件研制起到關(guān)鍵的保障作用。
3.2 軟件測(cè)試工具的
軟件測(cè)試是一項(xiàng)有難度的專業(yè)技術(shù)工作,除了人工代碼走查、問題記錄分析工作之外,大部分工作需要專業(yè)的軟件測(cè)試工具完成。
英國(guó)LDRA公司的LDRA Testbed測(cè)試軟件是目前針對(duì)嵌入式軟件測(cè)試最有效的丁具之一。該軟件主要可以實(shí)現(xiàn)代碼評(píng)審、質(zhì)量評(píng)審、設(shè)計(jì)評(píng)審、單元測(cè)試、測(cè)試確認(rèn)以及整個(gè)過程的測(cè)試管理功能。代碼評(píng)審考察了軟件源代碼對(duì)編程規(guī)則的適應(yīng)以及代碼結(jié)構(gòu)的合理性;質(zhì)量評(píng)審分析了代碼的圈復(fù)雜度、循環(huán)嵌套和不可達(dá)性,反映出代碼的清晰性、可維護(hù)性和可測(cè)試性;設(shè)計(jì)評(píng)審包含接口分析、數(shù)據(jù)流分析、數(shù)據(jù)對(duì)象分析,確保了代碼與《需求規(guī)格說明》的一致性;單元測(cè)試包含動(dòng)態(tài)測(cè)試,主要測(cè)試代碼的語(yǔ)句覆蓋和分支覆蓋程度;測(cè)試確認(rèn)采用自動(dòng)化的方法對(duì)于測(cè)試產(chǎn)生的問題進(jìn)行回歸和記錄,自動(dòng)輸出測(cè)試用例集和軟件測(cè)試報(bào)告。
對(duì)于該丁具的具體使用上,需要注意兩點(diǎn),一是該軟件還不能有針對(duì)性的自動(dòng)生成測(cè)試用例,也就意味著我們需要針對(duì)前文提到的三類軟件進(jìn)行人工設(shè)計(jì)和輸入測(cè)試用例,并將這些測(cè)試用例標(biāo)準(zhǔn)化后存入測(cè)試庫(kù)中作為范例;二是該軟件主要面對(duì)的是軟件源碼,因此如果遇到需要軟硬件結(jié)合測(cè)試的情況,還需要使用實(shí)時(shí)在線測(cè)試工具,如RTInsight軟件或半實(shí)物仿真測(cè)試平臺(tái)等。
軟件測(cè)試工具可以極大的解放開發(fā)和編碼人員,我們必須建立專業(yè)化的測(cè)試標(biāo)準(zhǔn)、測(cè)試平臺(tái)、測(cè)試隊(duì)伍,這樣才可有效的保證軟件產(chǎn)品的質(zhì)量。

4 結(jié)束語(yǔ)
軟件工程化的實(shí)踐在整個(gè)軟件研制過程中是一個(gè)逐步深化,不斷提升的過程。因此不能抱有“一勞永逸”的麻痹思想,而是應(yīng)該加強(qiáng)實(shí)踐,建立愈加完善的軟件項(xiàng)目管理體系,同時(shí)切實(shí)做好軟件測(cè)試工作,確保軟件的高可靠性。相信只要通過科研工作者和管理者的努力,一定會(huì)使我們的軟件工程化水平得到很大的提高!

本文引用地址:http://www.butianyuan.cn/article/148572.htm
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁(yè) 1 2 3 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉