• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      軍用軟件研制中的敏捷開(kāi)發(fā)方法實(shí)踐

      2015-05-30 16:17:07王瑩
      中國(guó)新通信 2015年9期

      王瑩

      【摘要】 通過(guò)科研院所對(duì)GJB5000A軟件研制管理下不同項(xiàng)目在實(shí)際應(yīng)用中引入多種開(kāi)發(fā)方法需要的分析,探討了使用敏捷開(kāi)發(fā)方法在GJB5000A框架下實(shí)施開(kāi)發(fā)過(guò)程的方法的可行性,同時(shí)介紹了利用Scrum及其擴(kuò)展方法實(shí)現(xiàn)GJB5000A過(guò)程域目標(biāo)的實(shí)踐方法

      【關(guān)鍵詞】 軟件質(zhì)量管理 GJB5000A 敏捷開(kāi)發(fā)

      一、引言

      在國(guó)防信息化程度的不斷提高的今天,軍事領(lǐng)域中的軟件產(chǎn)品已經(jīng)成為了和硬件產(chǎn)品比肩而立的重要存在,軍用軟件的質(zhì)量高低也成為了決定軍事和武器系統(tǒng)質(zhì)量的關(guān)鍵因素。隨著武器裝備系統(tǒng)中的軟件規(guī)模迎來(lái)爆炸式增長(zhǎng),只有對(duì)過(guò)程質(zhì)量的全面控制,才有可能最大程度的降低風(fēng)險(xiǎn),提高軟件產(chǎn)品質(zhì)量。我單位從2011年開(kāi)始試推行GJB5000A軟件研制過(guò)程管理,到如今已實(shí)現(xiàn)了軍用軟件研制能力二級(jí)管理的全面覆蓋,期間為兼顧不同專(zhuān)業(yè)領(lǐng)域、不同項(xiàng)目類(lèi)型、不同規(guī)模和軍兵種的要求,對(duì)體系進(jìn)行了持續(xù)改進(jìn)。改進(jìn)焦點(diǎn)在執(zhí)行GJB5000A標(biāo)準(zhǔn)的大框架下盡可能解決特異性問(wèn)題上,同時(shí)在開(kāi)發(fā)方法及操作層面上鼓勵(lì)項(xiàng)目組團(tuán)隊(duì)在現(xiàn)有質(zhì)量體系策略要求下進(jìn)行創(chuàng)新式探索。其中利用敏捷開(kāi)發(fā)的方法與CJB5000A管理體系的融合就是一種有益思考。

      二、GJB5000A質(zhì)量管理體系結(jié)合敏捷方法在科研院所的適應(yīng)性

      2.1 GJB5000A在科研院所的落地實(shí)施

      GJB5000A-2008《軍用軟件研制能力成熟度模型》作為框架模型,體現(xiàn)了業(yè)內(nèi)軟件研制過(guò)程最佳實(shí)踐集,其采用分級(jí)表示的方法,按預(yù)先確定的過(guò)程域來(lái)定義組織的改進(jìn)路徑,同時(shí)規(guī)定了軟件研制和維護(hù)活動(dòng)中的主要軟件管理過(guò)程和工程過(guò)程的實(shí)踐。模型五個(gè)級(jí)別中共定義了22個(gè)過(guò)程域,每個(gè)過(guò)程域由不同個(gè)數(shù)的專(zhuān)用目標(biāo)和相同個(gè)數(shù)的共用目標(biāo)組成,每個(gè)目標(biāo)又推薦了不同的實(shí)踐。在GJB5000A的定義中,目標(biāo)是必需的部件,實(shí)踐是期望的部件,我們用滿(mǎn)足所有目標(biāo)來(lái)確定過(guò)程域的實(shí)現(xiàn),用實(shí)踐來(lái)指導(dǎo)過(guò)程改進(jìn)和評(píng)估。換句話(huà)說(shuō),GJB5000A標(biāo)準(zhǔn)允許我們用規(guī)定的實(shí)踐或可接受的替代實(shí)踐來(lái)滿(mǎn)足目標(biāo)。所以科研院所要想真正實(shí)現(xiàn)標(biāo)準(zhǔn)落地就必須按照單位自身產(chǎn)品特點(diǎn)和用戶(hù)要求將實(shí)踐本地化。

      在實(shí)現(xiàn)本地化過(guò)程中,組織會(huì)按照大多數(shù)項(xiàng)目的模式定義標(biāo)準(zhǔn)過(guò)程,但卻無(wú)法確保所有過(guò)程適用于所有項(xiàng)目,同時(shí)在執(zhí)行自由度上也遇到了很大困擾,強(qiáng)約束導(dǎo)致了項(xiàng)目缺乏靈活性,而降低約束度則可能帶來(lái)質(zhì)量和進(jìn)度的雙重風(fēng)險(xiǎn)。此外,即使組織開(kāi)放了項(xiàng)目組利用替代實(shí)踐實(shí)現(xiàn)目標(biāo),但南于團(tuán)隊(duì)人員的經(jīng)驗(yàn)不足,也很難找到恰當(dāng)?shù)奶娲鷮?shí)踐,組織還必須承擔(dān)面對(duì)評(píng)估時(shí)替代實(shí)踐有效性的質(zhì)疑,所以在組織層面上定義多種開(kāi)發(fā)方法供項(xiàng)目選擇就顯得尤為重要。

      2.2 敏捷開(kāi)發(fā)方法在軍用軟件研制過(guò)程中的適用性

      軟件敏捷開(kāi)發(fā)是一種相對(duì)于傳統(tǒng)軟件開(kāi)發(fā)而言的輕型開(kāi)發(fā)方法,它改變了傳統(tǒng)開(kāi)發(fā)中以文檔為驅(qū)動(dòng)的開(kāi)發(fā)模式,以人為主要驅(qū)動(dòng)核心,目前常用的基本敏捷實(shí)踐方法有很多,如極限編程(XP)、Scrum方法、特征驅(qū)動(dòng)開(kāi)發(fā)(FDD)等,每種方法的實(shí)踐過(guò)程都有不同,但基礎(chǔ)都是基于增量和迭代的過(guò)程。軟件敏捷開(kāi)發(fā)有四大價(jià)值觀(guān):個(gè)體和交互勝過(guò)過(guò)程和工具;可以工作的軟件勝過(guò)面面俱到的文檔;客戶(hù)合作勝過(guò)合同談判;響應(yīng)變化勝過(guò)遵循計(jì)劃。這些特點(diǎn)使得敏捷開(kāi)發(fā)方法靈活、適用多變需求,可快速交付,但應(yīng)用在軍用軟件研制過(guò)程中可能會(huì)帶來(lái)以下問(wèn)題:1、敏捷開(kāi)發(fā)方法應(yīng)用的是需求的快速迭代,每一個(gè)迭代作為一個(gè)計(jì)劃階段,很難對(duì)項(xiàng)目的整體目標(biāo)有完整計(jì)劃。2、敏捷開(kāi)發(fā)方法更注重有效代碼的快速交付,而非文檔,這對(duì)有嚴(yán)格軍標(biāo)約束下的文檔編制提出了更高的要求。3、敏捷開(kāi)發(fā)最重要的開(kāi)發(fā)方式是與客戶(hù)一起開(kāi)發(fā),因軍用軟件的需方往往是部隊(duì)使用方,面對(duì)面開(kāi)發(fā)的形式較難實(shí)現(xiàn)。4、敏捷開(kāi)發(fā)方法對(duì)開(kāi)發(fā)人員的能力要求極高,人員要不但要精通設(shè)計(jì)、編碼、測(cè)試相關(guān)工作,而且要能參與項(xiàng)目的需求分析和架構(gòu)設(shè)計(jì),能對(duì)頻繁變更的需求做出快速響應(yīng)。

      既然敏捷方法會(huì)帶來(lái)以上問(wèn)題,我們?yōu)楹芜€要考慮在軍用軟件承研單位引入敏捷開(kāi)發(fā)過(guò)程呢?這是因?yàn)殡S著軍用軟件研制領(lǐng)域中引入的競(jìng)爭(zhēng)機(jī)制,出現(xiàn)了越來(lái)越多需要直接進(jìn)行代碼交付的PK項(xiàng)目,如果再應(yīng)用傳統(tǒng)研發(fā)方式,就失去了市場(chǎng)競(jìng)爭(zhēng)優(yōu)勢(shì)。所以,對(duì)于規(guī)模小、周期短、需求變動(dòng)頻繁、現(xiàn)場(chǎng)開(kāi)發(fā)為主要形式且已經(jīng)具備了較穩(wěn)定的開(kāi)發(fā)技術(shù)架構(gòu)的項(xiàng)目而言,敏捷開(kāi)發(fā)方法既能讓項(xiàng)目組在短時(shí)間內(nèi)針對(duì)需求拿出有效代碼,而且在快速迭代中能總結(jié)大量有用的文檔信息。只要我們可以偏重組建成員技術(shù)水平在同一層面上的成熟開(kāi)發(fā)團(tuán)隊(duì)來(lái)承接這樣的項(xiàng)目,必然起到事半功倍的效果。

      三、GJB5000A質(zhì)量管理體系下的敏捷開(kāi)發(fā)方法實(shí)施

      3.1 用敏捷開(kāi)發(fā)方法定義過(guò)程

      在組織級(jí),GJB5000A三級(jí)過(guò)程域中的組織過(guò)程定義(OPD)可以幫助組織建立起自己的敏捷開(kāi)發(fā)方法下的過(guò)程定義,包括過(guò)程和過(guò)程元素的說(shuō)明,過(guò)程剪裁指南,敏捷開(kāi)發(fā)方法下的生命周期,標(biāo)準(zhǔn)工作環(huán)境、組織測(cè)量庫(kù)、組織資產(chǎn)庫(kù)等。有了組織級(jí)定義,項(xiàng)目組就可以按照集成項(xiàng)目管理(IPM)實(shí)現(xiàn)方法對(duì)組織標(biāo)準(zhǔn)過(guò)程進(jìn)行剪裁,形成項(xiàng)目的已定義過(guò)程(P'DP),這個(gè)過(guò)程就可以直接指導(dǎo)項(xiàng)目的過(guò)程實(shí)施。從項(xiàng)目級(jí)的角度看,GJB5000A的過(guò)程管理關(guān)注的是項(xiàng)目做了什么,而敏捷開(kāi)發(fā)方法正是提供了該怎么做的具體開(kāi)發(fā)方法,敏捷開(kāi)發(fā)方法中的活動(dòng)經(jīng)過(guò)合理替代和剪裁的實(shí)踐方法以實(shí)現(xiàn)GJB5000A目標(biāo)是完全可行的。

      3.2 敏捷開(kāi)發(fā)方法實(shí)踐

      1.實(shí)踐方法的選擇。在敏捷開(kāi)發(fā)的眾多方法中,我們選擇了以Scrum為基本敏捷實(shí)踐,以持續(xù)集成(CI)和測(cè)試驅(qū)動(dòng)開(kāi)發(fā)(TDD)為擴(kuò)展方法的敏捷開(kāi)發(fā)架構(gòu)。Scrum方法是敏捷開(kāi)發(fā)中最典型的模型框架,它把產(chǎn)品需求的實(shí)現(xiàn)分為若干個(gè)Sprint來(lái)完成,每個(gè)Sprint完成后進(jìn)行產(chǎn)品演示,收集、細(xì)化直至實(shí)現(xiàn)用戶(hù)需求,整個(gè)過(guò)程為一個(gè)迭代式增量過(guò)程。持續(xù)集成提倡利用一個(gè)全自動(dòng)的過(guò)程,在一天中根據(jù)代碼變化進(jìn)行多次構(gòu)建(包括編譯、發(fā)布和自動(dòng)化測(cè)試)來(lái)驗(yàn)證集成結(jié)果和發(fā)現(xiàn)集成錯(cuò)誤。測(cè)試驅(qū)動(dòng)開(kāi)發(fā)技術(shù)(TDD)基本原理是在開(kāi)發(fā)功能代碼之前,先編寫(xiě)單元測(cè)試用例代碼是持續(xù)集成的驗(yàn)證手段。

      2.項(xiàng)目定義過(guò)程。Scrum結(jié)合CI與TDD的過(guò)程可以簡(jiǎn)單描述為:一開(kāi)始先由項(xiàng)目負(fù)責(zé)人確定一個(gè)ProductBacklog(產(chǎn)品需求列表),而后召集項(xiàng)目團(tuán)隊(duì)召開(kāi)Sprint計(jì)劃會(huì)議對(duì)列表中的需求進(jìn)行工作量預(yù)估和安排,從中挑選出一個(gè)story作為本次迭代完成的目標(biāo),形成SprintBacklog(迭代需求列表)分配給項(xiàng)目組成員,每個(gè)成員接收到任務(wù)后將任務(wù)進(jìn)一步細(xì)化,在每日例會(huì)上匯報(bào)自己的完成情況和對(duì)下一步工作作出承諾,同時(shí)在公示板上標(biāo)注出自己的工作情況(燃盡圖法等方法)。每個(gè)項(xiàng)目組成員對(duì)工作進(jìn)行每日集成,集成后利用測(cè)試驅(qū)動(dòng)開(kāi)發(fā)構(gòu)建測(cè)試來(lái)快速評(píng)估集成結(jié)果,如果發(fā)現(xiàn)問(wèn)題馬上修改,再次集成測(cè)試,反復(fù)循環(huán),直到一個(gè)迭代結(jié)束形成可用的代碼。

      3.用GJB5000A過(guò)程管理敏捷開(kāi)發(fā)方法下的研制。從項(xiàng)目層面看,Scrum方法可以結(jié)合GJB5000A過(guò)程域中的需求開(kāi)發(fā),項(xiàng)目策劃、項(xiàng)目監(jiān)控等,CI與TDD可以結(jié)合產(chǎn)品集成、配置管理等,當(dāng)敏捷開(kāi)發(fā)的方法在GJB5000A的過(guò)程管理方法約束下,可以得到更精確的控制和工作產(chǎn)品反饋。下表我們就給出了部分實(shí)踐的實(shí)施方案。

      四、總結(jié)

      GJB5000A體系結(jié)合敏捷開(kāi)發(fā)方法有別于傳統(tǒng)研制方法中以文檔為驅(qū)動(dòng)的順序研制過(guò)程,它充分強(qiáng)調(diào)了消除冗余、減少返工、縮短周期,提高效率的理念,同時(shí)用過(guò)程記錄的方法收集重要的項(xiàng)目信息,可以在一輪迭代完成后一次輸出成可用的文檔和經(jīng)過(guò)測(cè)試的可交付代碼。于項(xiàng)目而言,這種研制方式給項(xiàng)目提供了更多的靈活性選擇。于組織而言,因總裝備部和軍標(biāo)的強(qiáng)制要求,承研軍用軟件的單位必須要在GJB5000A及相關(guān)配套軍標(biāo)的要求下建立質(zhì)量管理體系和規(guī)范項(xiàng)目研制過(guò)程。通過(guò)合理剪裁那些能提高產(chǎn)品質(zhì)量、提高生產(chǎn)率的方法和模型后,通過(guò)驗(yàn)證和確認(rèn)方法形成組織標(biāo)準(zhǔn)過(guò)程,必然能增強(qiáng)組織標(biāo)準(zhǔn)框架的適應(yīng)性和實(shí)用性,提升組織管理能力目標(biāo)。

      沭阳县| 迭部县| 大荔县| 德兴市| 静宁县| 大新县| 亳州市| 溧阳市| 左云县| 合川市| 永吉县| 红桥区| 墨脱县| 罗田县| 高淳县| 大兴区| 永川市| 承德市| 古蔺县| 互助| 浦北县| 平凉市| 鲁甸县| 定州市| 宁远县| 诸城市| 贵南县| 洛南县| 邢台县| 巴林右旗| 湛江市| 南澳县| 清丰县| 郯城县| 洱源县| 广水市| 司法| 铜梁县| 扎鲁特旗| 康平县| 东宁县|