1.瀑布模型(Waterfall Model)
傳統(tǒng)的生命周期方法學(xué)可以用瀑布模型來(lái)模擬,猶如瀑布,各個(gè)階段從上到下,奔流不息。
按照傳統(tǒng)的瀑布模型來(lái)開(kāi)發(fā)軟件,有如下幾個(gè)特點(diǎn):
各階段具有順序性和依賴(lài)性,必須等上一階段結(jié)束后,才能開(kāi)始下一階段;前一階段的輸出文檔就是下一階段的輸入,在某一階段發(fā)現(xiàn)了問(wèn)題,可能會(huì)追溯到前面某些階段,必須對(duì)前面的許多階段進(jìn)行修改,代價(jià)高昂。
第一,不要急于求成,對(duì)于規(guī)模較大、較復(fù)雜的系統(tǒng),過(guò)早地急于編程實(shí)現(xiàn),往往導(dǎo)致大量返工,甚至開(kāi)發(fā)失敗。應(yīng)該把前面幾個(gè)階段的工作做得比較扎實(shí),再進(jìn)行后續(xù)的工作。
第二,每個(gè)階段都必須交出合格的文檔。這是下一階段開(kāi)發(fā)設(shè)計(jì)的依據(jù)和開(kāi)發(fā)交互的媒介,也是對(duì)軟件進(jìn)行維護(hù)的重要依據(jù)。
第三,每個(gè)階段完成前都要對(duì)完成的文檔進(jìn)行評(píng)審,以便及時(shí)發(fā)現(xiàn)和改正錯(cuò)誤。對(duì)錯(cuò)誤的修改越早越好,越晚代價(jià)越高。
2.原型(prototyping)開(kāi)發(fā)模型
在項(xiàng)目開(kāi)發(fā)的早期盡快開(kāi)發(fā)一個(gè)簡(jiǎn)化的系統(tǒng)原型版本。用于用戶(hù)和開(kāi)發(fā)人員學(xué)習(xí)和交流。
3.螺旋(spiral)模型
按照計(jì)劃à風(fēng)險(xiǎn)分析à工程à用戶(hù)評(píng)價(jià),象螺旋線一圈一圈地向外發(fā)展,最終建立起運(yùn)行的系統(tǒng)。主要是為了控制開(kāi)發(fā)風(fēng)險(xiǎn)。其工程開(kāi)發(fā)仍采用生命周期和原型開(kāi)發(fā)的方法。
4.第四代(4GT)技術(shù)
第四代技術(shù)(Fourth Generation techniques),擁有一組工具,提供開(kāi)發(fā)人員在高層定義軟件的特性,并按照這些特性自動(dòng)生成原代碼。
5.面向?qū)ο?OO)模型
采用面向?qū)ο?Object Oriented)的思想方法和技術(shù)進(jìn)行軟件的設(shè)計(jì)和開(kāi)發(fā)。