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

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

  • <strong id="5koa6"></strong>
  • 軟件測試中軟件生命周期模型

    發表于:2009-03-27來源:作者:點擊數: 標簽:軟件測試模型軟件生命周期
    我們把軟件的 開發 過程分成了這樣幾個階段:需求規格階段,概要設計階段,詳細設計階段,代碼階段, 單元測試 階段, 集成測試 階段,以及 系統測試 階段。也就是說,在實際的開發過程中,我們要逐一完成每個階段的工作,當完成最后一個階段的工作后也就完

    我們把軟件的開發過程分成了這樣幾個階段:需求規格階段,概要設計階段,詳細設計階段,代碼階段,單元測試階段,集成測試階段,以及系統測試階段。也就是 說,在實際的開發過程中,我們要逐一完成每個階段的工作,當完成最后一個階段的工作后也就完成了整個軟件項目。像這樣組織軟件開發過程的規則,就可以稱為 軟件生命周期模型。一個定義良好的軟件生命周期模型,可以很好的指導我們的開發工作,使漫長的開發工作易于控制。事實上,我們可以任意定義自己喜歡的軟件 生命周期模型。但是,如果生命周期模型定義不合理,卻會制約我們的開發過程。軟件開發人員在長期開發過程已經總結出了幾種常用的軟件生命周期模型,我們可 以根據項目的特點來選擇一個合適的模型,然后在此基礎上再加以裁減。這些生命周期模型是:
            1)瀑布模型,
            2)快速原型模型,
            3)漸增模型,
            4)演進模型。
            下面我們重點闡述前3種常用的生命周期模型。
     
    2.1瀑布模型
            顧名思義,該模型就是像瀑布一樣。這是一個最傳統的生命周期模型,是一種順序的模型,自頂向下把一個軟件開發過程分為:系統定義、需求分析、設計、編碼、 測試和維護等階段。在開發過程中這些階段順序進行,就像是一個飛流直下的瀑布,因此得名。該模型可以用下面的圖形來表示。
            系統定義
              \\|/
            需求分析
              \\|/
             設計
              \\|/
             編碼
              \\|/
             測試
              \\|/
             維護
            有時,根據項目的特點,設計又可分為概要設計和詳細設計。
            上圖中各階段所要完成的工作在一般的論述軟件工程的書籍中都有描述,這里就不再細述。
            雖然上面的階段是順序進行的,但是這并不是限定我們的軟件項目必須在完成了上個階段的工作后才能進行下個階段的工作。在實際的開發過程中,我們常常會遇到這樣的情況:階段反復和重疊。
            在前面的需求管理部分我們曾經闡述過需求變更管理。也就是說,在軟件開發的某個階段可能發生需求變更,而一旦軟件需求發生變化,就勢必會造成軟件設計的改 變,因此,如果該軟件項目已經進行到了測試階段,那么我們就必須回過頭來重新進行需求分析、概要設計、詳細設計和編碼。像這種在后面的階段又返回來做前面 階段工作的情形,就成為階段反復。當然,也有可能因為開發人員前面的工作做得不夠準確而導致階段反復。階段反復常常會造成進度延遲,但是,只要嚴格控制好 每個階段的輸入和輸出,我們還是可以有效的控制軟件項目的開發過程。
            在實際的開發過程中我們還會遇到這種情況:如果一個軟件項目規模較大,而 且各功能模塊相對獨立,那么,我們就沒有必要要求所有模塊的進度都一致,也就是說,模塊1可能很快就能完成概要設計和詳細設計,而模塊2由于太復雜概要設 計可能就需要很長的時間。對于這種情況,只要控制好模塊1各階段的輸入和輸出,完全可以讓模塊1先行,直到完成或者必須停下來等待其他模塊。像這種情況, 一個軟件項目的各模塊可能處于不同的階段,就成為階段重疊。出現這種情況,必須是某些模塊比較獨立,否則就不可能比其他模塊先行。 

            雖然階段的 重疊和反復是允許的,但是我們卻不能允許這種情況隨意發生。比如說,需求分析和設計可以重疊,但是如果需求分析和編碼也重疊就很難說代碼會寫成什么樣了; 編碼階段可以因為需求變更回過頭來進行需求分析和設計,但是如果已經進行系統測試了還在進行階段反復,這就等于又開發一個新項目了。因此,為了更好的控制 軟件開發過程,要盡量減少階段重疊和反復,如果實在不可避免,應該對所有的變更進行嚴格控制,這樣才能保證我們的開發過程陷入無序狀態。
            另外,在該模型的基礎上,還衍生出了強調測試活動的V模型。它把瀑布模型的測試階段進行細分,并于前面的階段進行對應。細分出來的這些階段分別為:單元測試階段、集成測試階段和系統測試階段。V模型的結構圖如下。
     
         系統定義                           維護
    ------\\------------------------------/------------
     
             需求分析       .....       系統測試
                  \\                      / 概要設計    .....   集成測試
                     \\               /
                   詳細設計  ...  單元測試 
                          \\       /
                            編碼 
     

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品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>