日韩高清亚洲日韩精品一区二区三区,成熟人妻av无码专区,国产又A又黄又潮娇喘视频,男女猛烈无遮挡免费视频在线观看

軟件開(kāi)發(fā)流程和關(guān)鍵質(zhì)量控制點(diǎn)(軟件開(kāi)發(fā)流程和關(guān)鍵質(zhì)量控制點(diǎn)的區(qū)別)

軟件開(kāi)發(fā)(系統(tǒng)開(kāi)發(fā))的質(zhì)量管理與硬件的開(kāi)發(fā)管理完全不同。

原因在于,不可能像硬件產(chǎn)品那樣,在客戶手中檢查已完成軟件的質(zhì)量。 軟件的質(zhì)量只能通過(guò)觀察軟件在計(jì)算機(jī)中的運(yùn)行情況或通過(guò)編程語(yǔ)言編寫(xiě)的源代碼來(lái)檢查。

本文介紹了軟件開(kāi)發(fā)的基礎(chǔ)知識(shí)以及各開(kāi)發(fā)階段的品質(zhì)管理控制要點(diǎn)。

1.1軟件開(kāi)發(fā)的種類和方法

軟件開(kāi)發(fā)主要有兩種方法。

一種是瀑布式(Waterfall)開(kāi)發(fā)手法。 另一種是敏捷型(Agile)。

具體的開(kāi)發(fā)方法進(jìn)一步區(qū)分說(shuō)明。

1)Waterfall型開(kāi)發(fā)手法

軟件開(kāi)發(fā)流程和關(guān)鍵質(zhì)量控制點(diǎn)(軟件開(kāi)發(fā)流程和關(guān)鍵質(zhì)量控制點(diǎn)的區(qū)別)

  • 需求定義:是指在開(kāi)始軟件開(kāi)發(fā)等項(xiàng)目之前,以易于理解的方式將必要的功能和需求整合在一起的過(guò)程。
  • 設(shè)計(jì):在確定軟件必要的功能和要求后,確定軟件的行為和詳細(xì)功能,并將其寫(xiě)入文檔。
  • 實(shí)施:為了實(shí)現(xiàn)設(shè)計(jì)所定下的軟件動(dòng)作或功能,實(shí)際上進(jìn)行的編程動(dòng)作。 在這個(gè)過(guò)程中,程序員使用編程語(yǔ)言編寫(xiě)源代碼。
  • 測(cè)試:這是檢查所開(kāi)發(fā)的程序是否能順利運(yùn)行,是否存在缺陷(Bug)的過(guò)程。 如果發(fā)現(xiàn)缺陷,則予以糾正。
  • 發(fā)行:這是將開(kāi)發(fā)好的軟件提供給客戶的過(guò)程。 在這一階段,客戶可以自己操作軟件。

所謂瀑布型,是因?yàn)殚_(kāi)發(fā)是“瀑布的水從上到下依次前進(jìn)”而得名。在軟件開(kāi)發(fā)之初,將客戶的要求規(guī)格匯總,然后按照設(shè)計(jì)、實(shí)施的順序進(jìn)行。最后實(shí)施各種確認(rèn)測(cè)試并發(fā)布軟件。(參照?qǐng)D1)

這種方法是軟件的主流開(kāi)發(fā)方法,從大型項(xiàng)目開(kāi)發(fā)到小規(guī)模系統(tǒng),在很多情況下都被使用。

詢問(wèn)客戶的要求和規(guī)格,將其整理成軟件系統(tǒng),整理成一份文件(“要求定義書(shū)”)。

《瀑布式的特點(diǎn)》

瀑布型有以下優(yōu)缺點(diǎn):

  • 基于 "需求定義文件"(有時(shí)也稱為 "系統(tǒng)設(shè)計(jì)文件"),可以開(kāi)發(fā)設(shè)計(jì)文檔("基本設(shè)計(jì)文件"或 "詳細(xì)設(shè)計(jì)文件"),以確定軟件的行為和功能。
  • 在設(shè)計(jì)文檔的基礎(chǔ)上,可以創(chuàng)建程序并進(jìn)行運(yùn)行測(cè)試。
  • 由于軟件規(guī)格在一開(kāi)始就已確定,因此質(zhì)量、交付和成本更易于管理。
  • 但缺點(diǎn)是,如果在這一過(guò)程中對(duì)規(guī)格進(jìn)行修改,工時(shí)("工時(shí) x 天")將大幅增加,因?yàn)檫@涉及到大量的設(shè)計(jì)和程序修改。

在實(shí)踐中的一個(gè)具體例子是,這種方法通常用于保證可靠性的大型系統(tǒng)和開(kāi)發(fā)(如銀行系統(tǒng)、運(yùn)輸系統(tǒng)等)。

(2) 敏捷型(Agile)開(kāi)發(fā)方法。

軟件開(kāi)發(fā)流程和關(guān)鍵質(zhì)量控制點(diǎn)(軟件開(kāi)發(fā)流程和關(guān)鍵質(zhì)量控制點(diǎn)的區(qū)別)

敏捷(英語(yǔ):Agile)是一種開(kāi)發(fā)方法,意為 "快速 "或 "積極"。

敏捷開(kāi)發(fā)是一種在短時(shí)間內(nèi)多次重復(fù)開(kāi)發(fā)周期(設(shè)計(jì)→實(shí)施→測(cè)試),最終完成軟件的方法。

當(dāng)軟件開(kāi)發(fā)開(kāi)始時(shí),客戶的規(guī)格要求只是部分功能時(shí),這種方法尤其適用。 (見(jiàn)圖 2)。

敏捷開(kāi)發(fā)的核心特質(zhì):

1. **迭代開(kāi)發(fā)**:每個(gè)軟件功能都可在多個(gè)短暫的開(kāi)發(fā)循環(huán)中逐步完善。

2. **靈活性**:允許根據(jù)客戶反饋和市場(chǎng)動(dòng)態(tài)調(diào)整規(guī)格,確保產(chǎn)品與時(shí)俱進(jìn)。

3. **緊密協(xié)作**:開(kāi)發(fā)者與客戶間的頻繁交流,確保需求的準(zhǔn)確理解和實(shí)時(shí)更新。

然而,這也帶來(lái)了一些挑戰(zhàn):

– **進(jìn)度不確定性**:頻繁的變更可能會(huì)影響開(kāi)發(fā)時(shí)間表。

– **文檔不足**:過(guò)于依賴口頭溝通可能導(dǎo)致詳細(xì)的設(shè)計(jì)文檔缺乏,對(duì)質(zhì)量控制和工時(shí)管理構(gòu)成考驗(yàn)。

敏捷方法在面對(duì)需求快速變動(dòng)的行業(yè)領(lǐng)域展現(xiàn)出顯著優(yōu)勢(shì)。比如,日本航空JAL)的預(yù)訂和票務(wù)系統(tǒng)開(kāi)發(fā)便成功運(yùn)用了敏捷實(shí)踐,充分展示了其適應(yīng)變化的能力。

2.2 軟件開(kāi)發(fā)流程

軟件開(kāi)發(fā)一般遵循圖 3 所示的流程(開(kāi)發(fā)過(guò)程)。

軟件開(kāi)發(fā)流程和關(guān)鍵質(zhì)量控制點(diǎn)(軟件開(kāi)發(fā)流程和關(guān)鍵質(zhì)量控制點(diǎn)的區(qū)別)

定義需求設(shè)計(jì)具體化系統(tǒng)概念整體形象的過(guò)程被稱為 "上游過(guò)程",而編碼(實(shí)施)測(cè)試過(guò)程通常被稱為 "下游過(guò)程"。

評(píng)審記錄是對(duì)軟件開(kāi)發(fā)過(guò)程中創(chuàng)建的文檔和源代碼的評(píng)審(評(píng)價(jià)和改進(jìn)建議)記錄。 具體來(lái)說(shuō),它描述了評(píng)審過(guò)程中的討論內(nèi)容、指出的問(wèn)題和提出的改進(jìn)建議。 在各種設(shè)計(jì)和測(cè)試中出現(xiàn)錯(cuò)誤時(shí),會(huì)記錄進(jìn)度狀態(tài)和參與成員(如會(huì)議時(shí)間),并將其用作審查文件。

(1) 需求定義和設(shè)計(jì)

本節(jié)介紹確定軟件開(kāi)發(fā)設(shè)計(jì)規(guī)范的上游過(guò)程,包括如何進(jìn)行和所需的管理要點(diǎn)。

軟件設(shè)計(jì)一般分為以下三個(gè)主要步驟:

  • 需求定義
  • 基本設(shè)計(jì)
  • 詳細(xì)設(shè)計(jì)(*有些人認(rèn)為詳細(xì)設(shè)計(jì)是 "下游流程 "的一部分)

(i) 需求定義

需求定義是明確待開(kāi)發(fā)軟件的需求(功能、規(guī)格、性能、質(zhì)量、交付、成本、開(kāi)發(fā)時(shí) 間等)的過(guò)程。 如果這些要求沒(méi)有得到明確定義,日后可能會(huì)出現(xiàn) "額外規(guī)格 "或 "相互矛盾的功能",這將大大增加交付時(shí)間和成本。

因此,有必要在與客戶和其他相關(guān)方充分討論后,完成一份 "需求定義文件"。

(2) 設(shè)計(jì)過(guò)程(基本設(shè)計(jì)、詳細(xì)設(shè)計(jì))

在基本設(shè)計(jì)中,根據(jù) "需求定義 "編寫(xiě) "基本設(shè)計(jì)文件",詳細(xì)概述系統(tǒng)的結(jié)構(gòu)和規(guī)格。 這份 "基本設(shè)計(jì)文件 "可能包括所有系統(tǒng)功能、數(shù)據(jù)庫(kù)配置(表定義和 ER 圖)、屏幕和表單布局以及測(cè)試計(jì)劃。

在詳細(xì)設(shè)計(jì)中,設(shè)計(jì)必要的組件(小程序單元)處理、批處理等。 它還包括屏幕和表單周圍的細(xì)節(jié)設(shè)計(jì)、系統(tǒng)處理的數(shù)據(jù)文件的規(guī)格設(shè)計(jì)、詳細(xì)的數(shù)據(jù)庫(kù)設(shè)計(jì)(物理設(shè)計(jì))等,以及 "詳細(xì)設(shè)計(jì)文件 "的編寫(xiě)。

在這些設(shè)計(jì)過(guò)程中,對(duì)每份設(shè)計(jì)文件進(jìn)行審查(評(píng)估并指出改進(jìn)之處)非常重要。

此外,還要檢查上層設(shè)計(jì)文件的內(nèi)容是否轉(zhuǎn)移到下層設(shè)計(jì)文件中,各設(shè)計(jì)文件之間是否存在遺漏或矛盾。

(2) 編碼(實(shí)施)

編碼是根據(jù)上述詳細(xì)設(shè)計(jì)文件編寫(xiě)程序的過(guò)程。

根據(jù)結(jié)構(gòu),確定必要的變量、函數(shù)和控制語(yǔ)句(如 if)。 此外,還要根據(jù)與數(shù)據(jù)庫(kù)的聯(lián)系,選擇使用函數(shù)和處理變量的方式。

在代碼審查中,代碼是否編寫(xiě)得清晰易讀? 代碼是否易于測(cè)試? 是否存在任何安全問(wèn)題? 是否存在安全問(wèn)題?

(3) 測(cè)試流程

V 型模型的流程如圖 4 所示,是測(cè)試過(guò)程的一個(gè)縮影。

軟件開(kāi)發(fā)流程和關(guān)鍵質(zhì)量控制點(diǎn)(軟件開(kāi)發(fā)流程和關(guān)鍵質(zhì)量控制點(diǎn)的區(qū)別)

軟件開(kāi)發(fā)測(cè)試與驗(yàn)證

這個(gè) "V "形模型展示了軟件開(kāi)發(fā)從 "需求定義 "到 "系統(tǒng)測(cè)試 "的步驟順序。

V 型的左側(cè)按降序描述了從 "需求定義 "流程開(kāi)始的上游流程;V 型的右側(cè)按升序描述了測(cè)試流程;通過(guò)比較 V 型的左右部分,可以了解每個(gè)測(cè)試流程要驗(yàn)證哪個(gè)設(shè)計(jì)流程,以及測(cè)試的重點(diǎn)是什么。

在每個(gè)測(cè)試流程中,要檢查的測(cè)試項(xiàng)目是通過(guò)分析每個(gè)設(shè)計(jì)流程的要求和設(shè)計(jì)細(xì)節(jié)來(lái)設(shè)計(jì)的。 這就是 "測(cè)試設(shè)計(jì)"。

(i) 單元測(cè)試

單元測(cè)試是檢查由軟件源代碼最小單元組成的每個(gè)程序(模塊)是否按詳細(xì)設(shè)計(jì)運(yùn)行的測(cè)試。

具體來(lái)說(shuō),需要確認(rèn)使用的數(shù)據(jù)使用程序操作方法。 通過(guò)這種測(cè)試,可及早發(fā)現(xiàn)和糾正程序中的錯(cuò)誤(故障)。它確定是否存在任何問(wèn)題,

(ii) 組合測(cè)試

組合測(cè)試是檢查開(kāi)發(fā)的軟件是否按基本設(shè)計(jì)運(yùn)行的測(cè)試。 它將已完成單元測(cè)試的所有模塊結(jié)合起來(lái),檢查所需功能是否正常工作。

具體來(lái)說(shuō),主要目的是檢查在與生產(chǎn)環(huán)境相同的使用環(huán)境中,組合模塊的功能是否存在缺陷。 通過(guò)這種測(cè)試,可以將模塊連接在一起,并發(fā)現(xiàn)和修復(fù)模塊內(nèi)部的錯(cuò)誤。

(iii) 系統(tǒng)測(cè)試(又稱 "全面測(cè)試)

系統(tǒng)測(cè)試是軟件開(kāi)發(fā)過(guò)程的最后一步,確認(rèn)軟件整體的行為和功能符合需求定義中的規(guī)格。 有時(shí)也稱為 "全面測(cè)試"。

系統(tǒng)測(cè)試在單元測(cè)試和耦合測(cè)試之后進(jìn)行。

具體來(lái)說(shuō),系統(tǒng)測(cè)試是假定由客戶操作的測(cè)試,是在向客戶發(fā)布軟件前進(jìn)行的最后檢查。

(iv) 各測(cè)試過(guò)程的質(zhì)量控制。

測(cè)試過(guò)程中的質(zhì)量控制是解決每次測(cè)試中出現(xiàn)的問(wèn)題(如錯(cuò)誤)并防止其再次發(fā)生的活動(dòng)。

應(yīng)提出以下問(wèn)題:每次測(cè)試過(guò)程中發(fā)現(xiàn)的錯(cuò)誤是否超出事先預(yù)測(cè)的目標(biāo)值? 我們還要分析趨勢(shì),如其他模塊出現(xiàn)類似錯(cuò)誤的情況。

此外,上述錯(cuò)誤的原因和遺漏錯(cuò)誤的原因都要追溯到設(shè)計(jì)過(guò)程以及更高層次的檢查和編碼過(guò)程。

3. 提高文檔質(zhì)量和 bug 收斂是關(guān)鍵點(diǎn)

以下三點(diǎn)在軟件開(kāi)發(fā)質(zhì)量控制中尤為重要。

(1)在每次設(shè)計(jì)評(píng)審中,擁有優(yōu)秀的評(píng)審人員充足的評(píng)審時(shí)間對(duì)防止出現(xiàn) Bug 非常重要。

2)在代碼審查過(guò)程中,除了對(duì)每段代碼本身進(jìn)行審查外,還需要對(duì)代碼進(jìn)行驗(yàn)證,以防止出現(xiàn)安全漏洞。

(3)測(cè)試過(guò)程的目的是避免發(fā)布后出現(xiàn)問(wèn)題。 因此,不僅要關(guān)注每次測(cè)試中是否存在錯(cuò)誤及其補(bǔ)救措施,還要關(guān)注潛在錯(cuò)誤的檢測(cè)。

在軟件質(zhì)量控制中,上游文檔的質(zhì)量和測(cè)試過(guò)程中的錯(cuò)誤關(guān)閉狀態(tài)是重要的控制點(diǎn)。

測(cè)試結(jié)果為發(fā)布后不出現(xiàn)問(wèn)題提供了保證。

相關(guān)新聞

聯(lián)系我們
聯(lián)系我們
公眾號(hào)
公眾號(hào)
在線咨詢
分享本頁(yè)
返回頂部