高質(zhì)量軟件開(kāi)發(fā)之道.ppt_第1頁(yè)
高質(zhì)量軟件開(kāi)發(fā)之道.ppt_第2頁(yè)
高質(zhì)量軟件開(kāi)發(fā)之道.ppt_第3頁(yè)
高質(zhì)量軟件開(kāi)發(fā)之道.ppt_第4頁(yè)
高質(zhì)量軟件開(kāi)發(fā)之道.ppt_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、高質(zhì)量軟件開(kāi)發(fā)之道 內(nèi)建高質(zhì)量而非修補(bǔ)質(zhì)量的理念與方法 rui.linalcatel-,目錄,1. IT企業(yè)面臨的軟件工程難題與對(duì)策 2. 軟件過(guò)程改進(jìn):理念與解決方案 3. 細(xì)說(shuō)軟件質(zhì)量 4. 高質(zhì)量軟件開(kāi)發(fā)的理念:內(nèi)建質(zhì)量而非修補(bǔ)質(zhì)量 5. 現(xiàn)場(chǎng)交流,請(qǐng)準(zhǔn)備你關(guān)心的問(wèn)題,寫紙條、提問(wèn)均可,1. IT企業(yè)長(zhǎng)期面臨的軟件工程難題,1.1 企業(yè)的目的 根本目的:合法地賺錢,獲取盡可能多的利潤(rùn)。 第一推論:為了使利潤(rùn)最大化,產(chǎn)品開(kāi)發(fā)應(yīng)當(dāng)“做得好、做得快并且少花錢” 軟件工程學(xué)科的目的:提高軟件產(chǎn)品質(zhì)量、提高生產(chǎn)率并且降低開(kāi)發(fā)成本 質(zhì)量、生產(chǎn)率、成本之間的復(fù)雜關(guān)系 成本重要還是Time to Mar

2、ket 重要? 1.2 企業(yè)長(zhǎng)期面臨的軟件工程難題 產(chǎn)品質(zhì)量低下、進(jìn)度延誤、費(fèi)用超支(軟件工程學(xué)科發(fā)展30年尚未徹底解決) 經(jīng)典軟件工程:研究需求分析、系統(tǒng)設(shè)計(jì)、編程、測(cè)試、維護(hù)等領(lǐng)域的方法、技術(shù)和工具 問(wèn)題之源:人們逐漸意識(shí)到,由于企業(yè)管理軟件過(guò)程的能力比較弱,常常導(dǎo)致項(xiàng)目處于混亂狀態(tài)。過(guò)程混亂使得新技術(shù)、新工具的優(yōu)勢(shì)難以體現(xiàn)。經(jīng)典的軟件工程不是不好,而是不夠用。 用于提高軟件過(guò)程能力的實(shí)踐通稱為軟件過(guò)程改進(jìn)。,2. 軟件過(guò)程改進(jìn):理念與解決方案,2.1 軟件過(guò)程改進(jìn)理念 提高軟件過(guò)程能力可以比喻為“練內(nèi)功”,“練內(nèi)功”沒(méi)有捷徑可走,唯有走“規(guī)范化”之路,即“制定適合于本企業(yè)的軟件過(guò)程規(guī)范,

3、并按照此規(guī)范執(zhí)行”。 “規(guī)范化”不會(huì)抑止人們的創(chuàng)造力,相反地,它使得團(tuán)隊(duì)可以大規(guī)模地復(fù)用前人積累的智慧和財(cái)富。這種方法非常適合于現(xiàn)代的工業(yè)化生產(chǎn)。 (麥當(dāng)勞與中餐館對(duì)比) 業(yè)界實(shí)踐已經(jīng)證明,走“規(guī)范化”之路是“成本最低、見(jiàn)效最快、能持續(xù)發(fā)展”的軟件過(guò)程改進(jìn)方法,猶如人類的“養(yǎng)生之道”。任何IT企業(yè)(不論大?。?,都有辦法以其承受得起的代價(jià)“走規(guī)范化之路”,從而有效地提高軟件過(guò)程能力。 2.2 IT企業(yè)軟件過(guò)程改進(jìn)的需求 首先制定適合于本企業(yè)的軟件過(guò)程規(guī)范。 對(duì)員工們進(jìn)行培訓(xùn),指導(dǎo)他們依據(jù)規(guī)范來(lái)開(kāi)發(fā)產(chǎn)品。 購(gòu)買一些軟件工程和項(xiàng)目管理工具,提高員工們的工作效率 。 2.3 CMMI 3級(jí)軟件過(guò)程改進(jìn)

4、解決方案 通用的CMMI 3級(jí)軟件過(guò)程改進(jìn)方法與規(guī)范,命名為“精簡(jiǎn)并行過(guò)程”(SPP)。 與SPP配套的軟件工程和項(xiàng)目管理培訓(xùn)教材。 一套基于Web的集成化軟件項(xiàng)目管理工具,主要功能包括項(xiàng)目規(guī)劃、項(xiàng)目監(jiān)控、質(zhì)量管理、配置管理、需求管理、工作流管理等,命名為Future。,CMMI 3級(jí)精簡(jiǎn)并行過(guò)程 SPP 模型,軟件工程著作,基于Web的集成化軟件項(xiàng)目管理工具,3. 細(xì)說(shuō)軟件質(zhì)量,3.1 如何描述質(zhì)量 用人的健康做類比 如何判斷人是否健康?體檢因素:身高、體重、心跳、血壓、血液、體溫等 運(yùn)行正確的軟件就是高質(zhì)量的軟件嗎?不貪污的官就是好官嗎? 3.2 十大軟件質(zhì)量因素 功能性質(zhì)量因素:正確性,

5、健壯性,可靠性 非功能性質(zhì)量因素:性能,易用性,清晰性,安全性,可擴(kuò)展性,兼容性,可移植性 為什么是“十大” 質(zhì)量因素 逐一解釋“十大” 質(zhì)量因素(參見(jiàn)高質(zhì)量程序設(shè)計(jì)指南C+/C語(yǔ)言) 3.3 正確性 正確性是指軟件按照需求正確執(zhí)行任務(wù)的能力。 “正確性”的語(yǔ)義涵蓋了“精確性”。 正確性無(wú)疑是第一重要的軟件質(zhì)量屬性。 技術(shù)評(píng)審和測(cè)試的第一關(guān)都是檢查工作成果的正確性。 機(jī)器不會(huì)主動(dòng)欺騙人,軟件運(yùn)行出錯(cuò)通常都是人造成的,所以不要找借口埋怨機(jī)器有毛病。,3. 細(xì)說(shuō)軟件質(zhì)量,3.4 健壯性 健壯性是指在異常情況下,軟件能夠正常運(yùn)行的能力。 正確性描述軟件在需求范圍之內(nèi)的行為,而健壯性描述軟件在需求范圍

6、之外的行為。 開(kāi)發(fā)者往往把異常情況錯(cuò)當(dāng)成正常情況而不作處理,結(jié)果降低了健壯性。 用戶才不管正確性與健壯性的區(qū)別,反正軟件出了差錯(cuò)都是開(kāi)發(fā)方的錯(cuò)。所以提高軟件的健壯性也是開(kāi)發(fā)者的義務(wù)。 健壯性有兩層含義:一是容錯(cuò)能力,二是恢復(fù)能力。 3.5 可靠性 可靠性是指在一定的環(huán)境下,在給定的時(shí)間內(nèi),系統(tǒng)不發(fā)生故障的概率。 可靠性本來(lái)是硬件領(lǐng)域的術(shù)語(yǔ)。比如某個(gè)電子設(shè)備在剛開(kāi)始工作時(shí)挺好的,但由于器件在工作中其物理性質(zhì)會(huì)發(fā)生變化(如發(fā)熱),慢慢地系統(tǒng)的功能或性能就會(huì)失常。所以一個(gè)從設(shè)計(jì)到生產(chǎn)完全正確的硬件系統(tǒng),在工作中未必就是可靠的。 軟件在運(yùn)行時(shí)不會(huì)發(fā)生物理性質(zhì)的變化,人們常以為如果軟件的某個(gè)功能是正確的

7、,那么它一輩子都是正確的??墒俏覀儫o(wú)法對(duì)軟件進(jìn)行徹底地測(cè)試,無(wú)法根除軟件中潛在的錯(cuò)誤。平時(shí)軟件運(yùn)行得好好的,說(shuō)不準(zhǔn)哪一天就不正常了,如有千年等一回的“千年蟲”問(wèn)題,司空見(jiàn)慣的“內(nèi)存泄露”問(wèn)題、“誤差累積”問(wèn)題等等。 時(shí)隱時(shí)現(xiàn)的錯(cuò)誤一般都屬于可靠性問(wèn)題,糾錯(cuò)的代價(jià)很高。,3. 細(xì)說(shuō)軟件質(zhì)量,3.6 性能 性能通常是指軟件的“時(shí)間-空間”效率,而不僅是指軟件的運(yùn)行速度。人們總希望軟件的運(yùn)行速度高些,并且占用資源少些。 性能優(yōu)化的關(guān)鍵工作是找出限制性能的“瓶頸” 可以通過(guò)優(yōu)化數(shù)據(jù)結(jié)構(gòu)、算法和代碼來(lái)提高軟件的性能。 3.7 易用性 易用性是指用戶使用軟件的容易程度。 現(xiàn)代人的生活節(jié)奏快,干啥事都想圖個(gè)

8、方便。所以把易用性作為重要的質(zhì)量屬性對(duì)待無(wú)可非議。 導(dǎo)致軟件易用性差的根本原因 : 理工科大學(xué)教育存在缺陷:沒(méi)有開(kāi)設(shè)人機(jī)工程學(xué)、美學(xué)、心理學(xué)這些必修課,大部分開(kāi)發(fā)人員不知道如何設(shè)計(jì)易用的軟件產(chǎn)品。 開(kāi)發(fā)人員犯了“錯(cuò)位”的毛?。核詾橹灰约河闷饋?lái)方便,用戶也就會(huì)滿意。 軟件的易用性要讓用戶來(lái)評(píng)價(jià)。當(dāng)用戶真的感到軟件很好用時(shí),一股溫暖的感覺(jué)油然而生,于是就用“界面友好”、“方便易用”等詞來(lái)評(píng)價(jià)軟件產(chǎn)品。,3. 細(xì)說(shuō)軟件質(zhì)量,3.8 清晰性 清晰意味者所有的工作成果易讀、易理解,可以提高團(tuán)隊(duì)開(kāi)發(fā)效率,降低維護(hù)代價(jià)。 開(kāi)發(fā)人員只有在自己思路清晰的時(shí)候才可能寫出讓別人易讀、易理解的程序和文檔。 可理解

9、的東西通常是簡(jiǎn)潔的。一個(gè)原始問(wèn)題可能很復(fù)雜,但高水平的人就能夠把軟件系統(tǒng)設(shè)計(jì)得很簡(jiǎn)潔。如果軟件系統(tǒng)臃腫不堪,它遲早會(huì)出問(wèn)題。所以簡(jiǎn)潔是人們對(duì)工作“精益求精”的結(jié)果,而不是潦草應(yīng)付的結(jié)果。 千萬(wàn)不要把在學(xué)校里“造文章”的手法用于開(kāi)發(fā)產(chǎn)品! 3.9 安全性 這里安全性是指信息安全,英文是Security而不是Safety。 安全性是指防止系統(tǒng)被非法入侵的能力,既屬于技術(shù)問(wèn)題又屬于管理問(wèn)題。 “道高一尺,魔高一丈” ,絕對(duì)安全的信息系統(tǒng)幾乎不存在。 開(kāi)發(fā)商和客戶愿意為提高安全性而投入的資金是有限的,他們要考慮值不值得。 究竟什么樣的安全性是令人滿意的呢? 一般地,如果黑客為非法入侵花費(fèi)的代價(jià)(考慮時(shí)

10、間、費(fèi)用、風(fēng)險(xiǎn)等因素)高于得到的好處,那么這樣的系統(tǒng)可以認(rèn)為是安全的。,3. 細(xì)說(shuō)軟件質(zhì)量,3.10 可擴(kuò)展性 可擴(kuò)展性反映軟件適應(yīng)“變化”的能力。 在軟件開(kāi)發(fā)過(guò)程中,“變化”是司空見(jiàn)慣的事情,如需求、設(shè)計(jì)的變化,算法的改進(jìn),程序的變化等等。由于軟件是“軟”的,是否它天生就容易修改以適應(yīng)“變化”?關(guān)鍵要看軟件的規(guī)模和復(fù)雜性。 現(xiàn)代軟件產(chǎn)品通常采用“增量開(kāi)發(fā)模式”,不斷推出新版本,獲取增值利潤(rùn)??蓴U(kuò)展性越來(lái)越重要??蓴U(kuò)展性是系統(tǒng)設(shè)計(jì)階段重點(diǎn)考慮的質(zhì)量屬性。 3.11 兼容性 兼容性是指兩個(gè)或兩個(gè)以上的軟件相互交換信息的能力。 兼容性的商業(yè)規(guī)則:弱者設(shè)法與強(qiáng)者兼容,否則無(wú)容身之地;強(qiáng)者應(yīng)當(dāng)避免被兼容,否則市場(chǎng)將被瓜分。示例: 中國(guó)聯(lián)通和中國(guó)移動(dòng)的手機(jī)互聯(lián)互通問(wèn)題 金山軟件公司的WPS與微軟的Word之爭(zhēng) 3.12 可移植性 可移植性是指軟件運(yùn)行于不同軟硬件環(huán)境的能力 編程語(yǔ)言越低級(jí),其程序越難移植,反之則容易。軟件設(shè)計(jì)時(shí)應(yīng)該將“設(shè)備相關(guān)程序”與“設(shè)備無(wú)關(guān)程序”分開(kāi),將“功能模塊”與“用戶界面”分開(kāi)。,4. 高質(zhì)量軟件開(kāi)發(fā)理念,4.1 質(zhì)量與缺陷 質(zhì)量的死對(duì)頭是缺陷(defect,bug),消除缺

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論