• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    個體軟件過程的改進

    發布: 2008-2-15 09:41 | 作者: 張友生 | 來源: 不詳 | 查看: 22次 | 進入軟件測試論壇討論

    領測軟件測試網 隨著軟件工程知識的普及,軟件工程師都知道,要開發高質量的軟件,必須改進軟件生產的過程。目前,業界公認由CMU/SEI開發的軟件能力成熟度模型SW-CMM是當前最好的軟件過程,并且CMM已經成為事實上的軟件過程工業標準。但是,CMM雖然提供了一個有力的軟件過程改進框架,卻只告訴我們"應該做什么",而沒有告訴我們"應該怎樣做",并未提供有關實現關鍵過程域所需要的具體知識和技能。

      為了彌補這個欠缺,Humphrey又主持開發了個體軟件過程(Personal Software Process,PSP)。PSP是一種可用于控制、管理和改進個人工作方式的自我持續改進過程,是一個包括軟件開發表格、指南和規程的結構化框架。PSP與具體的技術(程序設計語言、工具或者設計方法)相對獨立,其原則能夠應用到幾乎任何的軟件工程任務之中。PSP能夠說明個體軟件過程的原則; 幫助軟件工程師作出準確的計劃;確定軟件工程師為改善產品質量要采取的步驟;建立度量個體軟件過程改善的基準;確定過程的改變對軟件工程師能力的影響。

      在CMM1.1版本的18個關鍵過程域中有12個與PSP有關,據統計,軟件項目開發成本的70%取決于軟件開發人員個人的技能、經驗和工作習慣。因此,一個單位的軟件開發人員如能接受PSP培訓,對該單位軟件能力成熟度的升級是一個有力的保證。CMM側重于軟件企業中有關軟件過程的宏觀管理,面向軟件開發單位,PSP則側重于企業中有關軟件過程的微觀優化,面向軟件開發人員。二者互相支持,互相補充,缺一不可。

      按照PSP規程,改進軟件過程的步驟大致如圖所示。首先需要明確質量目標,也就是軟件將要在功能和性能上滿足的要求和用戶潛在的需求。接著就是度量產品質量,有了目標還不行,目標只是一個原則性的東西,還不便于實際操作和判斷,因此,必須對目標進行分解和度量,使軟件質量能夠"測量"。然后就是理解當前過程,查找問題,并對過程進行調整。最后應用調整后的過程,度量實踐結果,將結果與目標做比較,找出差距,分析原因,對軟件過程進行持續改進。

     就象CMM為軟件企業的能力提供一個階梯式的進化框架一樣,PSP為個體的能力也提供了一個階梯式的進化框架,以循序漸進的方法介紹過程的概念,每一級別都包含了更低一級別中的所有元素,并增加了新的元素。這個進化框架是學習PSP過程基本概念的好方法,它賦予軟件人員度量和分析工具,使其清楚地認識到自己的表現和潛力,從而可以提高自己的技能和水平。

      PSP進化框架共有四級,各級及其增強版的主要元素如圖所示。

    個體度量過程PSP0和PSP0.1

      PSP0的目的是建立個體過程基線,通過這一步,學會使用PSP的各種表格采集過程的有關數據,此時執行的是該軟件開發單位的當前過程,通常包括計劃、開發(包括設計、編碼、編譯和測試)以及后置處理三個階段,并要作一些必要的試題,如測定軟件開發時間,按照選定的缺陷類型標準、度量引入的缺陷個數和排除的缺陷個數等,用作為測量在PSP的過程中進步的基準。

      PSP0.1增加了編碼標準、程序規模度量和過程改善建議等三個關鍵過程域,其中過程改善建議表格用于隨時記錄過程中存在的問題、解決問題的措施以及改進過程的方法,以提高軟件開發人員的質量意識和過程意識。

      應該強調指出,在PSP0階段必須理解和學會使用不合格進行規劃和度量的技術。設計一個好的表格并不容易,需要在實踐中積累經驗,以準確地滿足期望的需求,其中最重要的是要保持數據的一致性、有用性和簡潔性。

    個體規劃過程PSP1和PSP1.1

      PSP1的重點是個體計劃,引入了基于估計的計劃方法PROBE(PROxy Based Estimating),用自己的歷史數據來預測新程序的大小和需要的開發時間,并使用線性回歸方法計算估計參數,確定置信區間以評價預測的可信程度。PSP1.1增加了對任務和進度的規劃。

      在PSP1階段應該學會編制項目開發計劃,這不僅對承擔大型軟件的開發十分重要,即使是開發小型軟件也必不可少。因為,只有對自己的能力有客觀的評價,才能作出更加準確的計劃,才能實事求是地接受和完成客戶(顧客)委托的任務。

    個體質量管理過程PSP2和PSP2.1

      PSP2的重點是個體質量管理,根據程序的缺陷善建立檢測表,按照檢測表進行設計復查和代碼復查(有時也稱"代碼走查"),以便及早發現缺陷,使修復缺陷的代價最小。隨著個人經驗和技術的積累,還應學會怎樣改進檢測表以適應自己的要求。PSP2.1則論述設計過程和設計模板,介紹設計方法,并提供了設計模板、但PSP并不強調選用什么設計方法,而強調設計完備性準則和設計驗證技術。

      實施PSP的一個重要目標就是學會在開發軟件的早期實際地、客觀地處理由于人們的疏忽所造成的程序缺陷問題。人們都期盼獲得高質量的軟件,但是只有高素質的軟件開發人員并遵循合適的軟件過程,才能開發出高質量的軟件,因此,PSP2引入并著重強調設計復查和代碼復查技術,一個合格的軟件開發人員必須掌握這兩項基本技術。

    個體循環過程PSP3

      PSP3的目標是把個體開發小程序所能達到的生產效率和生產質量,延伸到大型程序;其方法是采用螺旋式上升過程,即迭代增量式開發方法,首先把大型程序分解成小的模塊,然后對每個模塊按照PSP2.1所描述的過程進行開發,最后把這些模塊逐步集成為完整的軟件產品。

      應用PSP3開發大型軟件系統,必須采用增量式開發方法,并要求每一個增量都具有很高的質量。在這樣的前提下,在新一輪開發循環中,可以采用回歸測試的方法,集中力量考察新增加的這個(這些)增量是否符合要求。因此,要求在PSP2中進行嚴格的設計復查和代碼復查,并在PSP2.1中努力遵循設計結束準則。

      從對個體軟件過程框架的概要描述中,可以清楚地看到,如何作好項目規劃和如何保證產品質量,是任何軟件開發過程中最基本的問題。

      PSP可以幫助軟件工程師在個人的基礎上運用過程的原則,借助于PSP提供的一些度量和分析工具,了解自己的技能水平,控制和管理自己的工作方式,使自己日常工作的評估、計劃和預測更加準確、更加有效,進而改進個人的工作表現,提高個人的工作質量和產量,積極而有效地參與高級管理人員和過程人員推動的組織范圍的軟件工程過程改進。

      PSP軟件工程規程為軟件工程師提供了發展個人技能的結構化框架和必須掌握的方法。在軟件行業,開發人員如果不經過PSP培訓,就只能靠在開發中通過實踐逐步掌握這些技能和方法,這不僅周期很長,要付出很大的代價,而且有越來越大的風險。 培訓的方式有很多,既可以到專門的學校進修,也可以進行自學和參加培訓班,例如:CMM網校中就有個體軟件過程的課程。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    TAG: 個體軟件


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>