国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
軟件工程的基本原理

張海藩《軟件工程導論》(第5版)第7頁,清華大學出版社

軟件工程的基本原理

 

  自從1968年在聯(lián)邦德國召開的國際會議上正式提出并使用了“軟件工程”這個術語以來,研究軟件工程的專家學者們陸續(xù)提出了100多條關于軟件工程的準則或“信條”。著名的軟件工程專家B·W·Boehm綜合這些學者們的意見并總結了TRW公司多年開發(fā)軟件的經驗,于1983年在一篇論文中提出了軟件工程的7條基本原理。他認為這7條原理是確保軟件產品質量和開發(fā)效率的原理的最小集合。這7條原理是互相獨立的,其中任意字符條原理的組合都不能代替另一條原理,因此,它們是缺一不可的最小集合,然而這7條原理又是相當完備的,人們雖然不能用數(shù)學方法嚴格證明它們是一個完備的集合,但是,可以證明在此之前已經提出的100多條軟件工程原理都可以由這7條原理的任意組合蘊含或派生。下面簡要介紹軟件工程的7條基本原理。

 

  1. 用分階段的生命周期計劃嚴格管理

  有人經統(tǒng)計發(fā)現(xiàn),在不成功的軟件項目中有一半左右是由于計劃不周造成的,可見把建立完善的計劃作為第一條基本原理是吸取了前人的教訓而提出來的。

  在軟件開發(fā)與維護的漫長的生命周期中,需要完成許多性質各異的工作。這條基本原理意味著,應該把軟件生命周期劃分成若干個階段,并相應地制定出切實可行的計劃,然后嚴格按照計劃對軟件的開發(fā)與維護工作進行管理。

  不同層次的管理人員都必須嚴格按照計劃各盡其職地管理軟件開發(fā)與維護工作,絕不能受客戶或上級人員的影響而擅自背離預定計劃。

 

  2. 堅持進行階段評審

  當時已經認識到,軟件的質量保證工作不能等到編碼階段結束之后再進行。這樣說至少有兩個理由:第一、大部分錯誤是在編碼之前造成的,例如,根據(jù)Boehm等人的統(tǒng)計,設計錯誤占軟件錯誤的63%,編碼錯誤僅占37%;第二、錯誤發(fā)現(xiàn)與改正得越晚,所需付出的代價也越高(參見圖1.1)。因此,在每個階段都進行嚴格的評審,以便盡早發(fā)現(xiàn)在軟件開發(fā)過程中所犯的錯誤,是一條必須遵循的重要原則。

 

 

 

  3. 實行嚴格的產品控制

  在軟件開發(fā)過程中不應隨意改變需求,因為改變一項需求往往需要付出較高的代價。但是,在軟件開發(fā)過程中改變需求又是難免的,只能依靠科學的產品控制技術來順應這種要求。也就是說,當改變需求時,為了保持軟件各個配置成分的一致性,必須實行嚴格的產品控制,其中主要是實行基準配置管理。所謂基準配置又稱為基線配置,它們是經過階段評審后的軟件配置成分(各個階段產生的文檔或程序代碼)?;鶞逝渲霉芾硪卜Q為變動控制:一切有關修改軟件的建議,特別是涉及到對基準配置的修改建議,都必須按照嚴格的規(guī)程進行評審,獲得批準以后才能實施修改。絕對不能誰想修改軟件(包括尚在開發(fā)過程中的軟件),就隨意進行修改。

 

  4. 采用現(xiàn)代程序設計技術

  從提出軟件工程的概念開始,人們一直把主要精力用于研究各種新的程序設計技術,并進一步研究各種先進的軟件開發(fā)與維護技術。實踐表明,采用先進的技術不僅可以提高軟件開發(fā)和維護的效率,而且可以提高軟件產品的質量。

 

  5. 結果應能清楚地審查

  軟件產品不同于一般的物理產品,它是看不見摸不著的邏輯產品。軟件開發(fā)人員(或開發(fā)小組)的工作進展情況可見性差,難以準確度量,從而使得軟件產品的開發(fā)過程比一般產品的開發(fā)過程更難于評價和管理。為了提高軟件開發(fā)過程的可見性,更好地進行管理,應該根據(jù)軟件開發(fā)項目的總目標及完成期限,規(guī)定開發(fā)組織的責任和產品標準,從而使得所得到的結果能夠清楚地審查。

 

  6. 開發(fā)小組的人員應該少而精

  這條基本原理的含義是,軟件開發(fā)小組的組成人員的素質應該好,而人數(shù)則不宜過多。開發(fā)小組人員的素質和數(shù)量是影響軟件產品質量和開發(fā)效率的重要因素。素質高的人員的開發(fā)效率比素質低的人員的開發(fā)效率可能高幾倍至幾十倍,而且素質高的人員所開發(fā)的軟件中的錯誤明顯少于素質低的人員所開發(fā)的軟件中的錯誤。此外,隨著開發(fā)小組人員數(shù)目的增加,因為交流情況討論問題而造成的通信開銷也急劇增加。當開發(fā)小組人員數(shù)為N時,可能的通信路徑有N(N-1)/2條,可見隨著人數(shù)N的增大,通信開銷將急劇增加。因此,組成少而精的開發(fā)小組是軟件工程的一條基本原理。

 

  7. 承認不斷改進軟件工程實踐的必要性

  遵循上述6條基本原理,就能夠按照當代軟件工程基本原理實現(xiàn)軟件的工程化生產,但是,僅有上述6條原理并不能保證軟件開發(fā)與維護的過程能趕上時代前進的步伐,能跟上技術的不斷進步。因此,Boehm提出應把承認不斷改進工程實踐的必要性作為軟件軟件工程的第7條基本原理。按照這條原理,不僅要積極主動地采納新的軟件技術,而且要注意不斷總結經驗,例如,收集進度和資源耗費數(shù)據(jù),收集出錯類型和問題報告數(shù)據(jù)等。這些數(shù)據(jù)不僅可以用來評價新的軟件技術的效果,而且可以用來指明必須著重開發(fā)的軟件工具和應該優(yōu)先研究的技術。

 

 

軟件工程的基本原理

http://wiki.mbalib.com/wiki/%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B

     自從1968年提出“軟件工程”這一術語以來,研究軟件工程的專家學者們陸續(xù)提出了100多條關于軟件工程的準則或信條。美國著名的軟件工程專家巴利·玻姆Barry Boehm)綜合這些專家的意見,并總結了美國天合公司(TRW)多年的開發(fā)軟件的經驗,于1983年提出了軟件工程的七條基本原理。

  玻姆認為,這七條原理是確保軟件產品質量和開發(fā)效率的原理的最小集合。它們是相互獨立的,是缺一不可的最小集合;同時,它們又是相當完備的。

  人們當然不能用數(shù)學方法嚴格證明它們是一個完備的集合,但是可以證明,在此之前已經提出的100多條軟件工程準則都可以有這七條原理的任意組合蘊含或派生。下面簡要介紹軟件工程的七條原理:

  1、用分階段的生命周期計劃嚴格管理

  這一條是吸取前人的教訓而提出來的。統(tǒng)計表明,50%以上的失敗項目是由于計劃不周而造成的。在軟件開發(fā)與維護的漫長生命周期中,需要完成許多性質各異的工作。這條原理意味著,應該把軟件生命周期分成若干階段,并相應制定出切實可行的計劃,然后嚴格按照計劃對軟件的開發(fā)和維護進行管理。 玻姆認為,在整個軟件生命周期中應指定并嚴格執(zhí)行6類計劃:項目概要計劃、里程碑計劃、項目控制計劃、產品控制計劃、驗證計劃、運行維護計劃。

  2、堅持進行階段評審

  統(tǒng)計結果顯示: 大部分錯誤是在編碼之前造成的,大約占63%錯誤發(fā)現(xiàn)的越晚,改正它要付出的代價就越大,要差2到3個數(shù)量級。 因此,軟件的質量保證工作不能等到編碼結束之后再進行,應堅持進行嚴格的階段評審,以便盡早發(fā)現(xiàn)錯誤。

  3、實行嚴格的產品控制

  開發(fā)人員最痛恨的事情之一就是改動需求。但是實踐告訴我們,需求的改動往往是不可避免的。這就要求我們要采用科學的產品控制技術來順應這種要求。也就是要采用變動控制,又叫基準配置管理。當需求變動時,其它各個階段的文檔或代碼隨之相應變動,以保證軟件的一致性。

  4、采納現(xiàn)代程序設計技術

  從六、七時年代的結構化軟件開發(fā)技術,到最近的面向對象技術,從第一、第二代語言,到第四代語言,人們已經充分認識到:方法大似氣力。采用先進的技術即可以提高軟件開發(fā)的效率,又可以減少軟件維護的成本。

  5、結果應能清楚地審查

  軟件是一種看不見、摸不著的邏輯產品。軟件開發(fā)小組的工作進展情況可見性差,難于評價和管理。為更好地進行管理,應根據(jù)軟件開發(fā)的總目標及完成期限,盡量明確地規(guī)定開發(fā)小組的責任和產品標準,從而使所得到的標準能清楚地審查。

  6、開發(fā)小組的人員應少而精

  開發(fā)人員的素質和數(shù)量是影響軟件質量和開發(fā)效率的重要因素,應該少而精。這一條基于兩點原因:高素質開發(fā)人員的效率比低素質開發(fā)人員的效率要高幾倍到幾十倍,開發(fā)工作中犯的錯誤也要少的多; 當開發(fā)小組為N人時,可能的通訊信道為N(N-1)/2, 可見隨著人數(shù)N的增大,通訊開銷將急劇增大。

  7、承認不斷改進軟件工程實踐的必要性

  遵從上述六條基本原理,就能夠較好地實現(xiàn)軟件的工程化生產。但是,它們只是對現(xiàn)有的經驗的總結和歸納,并不能保證趕上技術不斷前進發(fā)展的步伐。因此,玻姆提出應把承認不斷改進軟件工程實踐的必要性作為軟件工程的第七條原理。根據(jù)這條原理,不僅要積極采納新的軟件開發(fā)技術,還要注意不斷總結經驗,收集進度和消耗等數(shù)據(jù),進行出錯類型和問題報告統(tǒng)計。這些數(shù)據(jù)既可以用來評估新的 軟件技術的效果,也可以用來指明必須著重注意的問題和應該優(yōu)先進行研究的工具和技術。

   

2006 (Barry Boehm) A View of 20th and 21st Century

1983 (Barry Boehm) Seven Basic Principles of Soft

  

相關鏈接:
[1] 《楊東屏談軟件工程歷史》
http://bbs.sciencenet.cn/blog-107667-490640.html 


http://blog.sciencenet.cn/blog-107667-394904.html
上一篇:中國大陸的諾貝爾科學獎候選工作
下一篇:荷塘今日
本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
軟件工程的七條基本原理
軟件工程的核心是做好7件事
項目管理:軟件工程相關知識筆記
武漢工程大學計算機科學與技術自考專業(yè)
軟件開發(fā)人員都應該讀的一些書籍
作為軟件工程師,你必須知道的20個常識
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服