軟件開發(fā)的標準過程包括六個階段,而六個階段需要編寫的各類文件達14種之多,在每個階段需要編寫哪些文件,以及這些文件的主要內(nèi)容見下:
1.可行性與計劃研究階段
可行性研究報告:在可行性研究與計劃階段內(nèi),要確定該軟件的開發(fā)目標和總的要求,要進行可行性分析、投資一收益分析、制訂開發(fā)計劃,并完成應(yīng)編制的文件。
項目開發(fā)計劃:編制項目開發(fā)計劃的目的是用文件的形式,把對于在開發(fā)過程中各項工作的負責(zé)人員、開發(fā)進度、 所需經(jīng)費預(yù)算、所需軟、硬件條件等問題作出的安排記載下來,以便根據(jù)本計劃開展和檢查本項目的開發(fā)工作。
2.需求分析階段
軟件需求說明書:軟件需求說明書的編制是為了使用戶和軟件開發(fā)者雙方對該軟件的初始規(guī)定有一個共同的理解, 使之成為整個開發(fā)工作的基礎(chǔ)。內(nèi)容包括對功能的規(guī)定對性能的規(guī)定等。
數(shù)據(jù)要求說明書:數(shù)據(jù)要求說明書的編制目的是為了向整個開發(fā)時期提供關(guān)于被處理數(shù)據(jù)的描述和數(shù)據(jù)采集要求的技術(shù)信息。
初步的用戶手冊:用戶手冊的編制是要使用非專門術(shù)語的語言,充分地描述該軟件系統(tǒng)所具有的功能及基本的使用方法。使用戶(或潛在用戶)通過本手冊能夠了解該軟件的用途,并且能夠確定在什么情況下,如何使用它。
3.設(shè)計階段
概要設(shè)計說明書:概要設(shè)計說明書又可稱系統(tǒng)設(shè)計說明書,這里所說的系統(tǒng)是指程序系統(tǒng)。編制的目的是說明對程序系統(tǒng)的設(shè)計考慮,包括程序系統(tǒng)的基本處理流程、程序系統(tǒng)的組織結(jié)構(gòu)、模塊劃分、功能分配、接口設(shè)計。 運行設(shè)計、數(shù)據(jù)結(jié)構(gòu)設(shè)計和出錯處理設(shè)計等,為程序的詳細設(shè)計提供基礎(chǔ)。
詳細設(shè)計說明書:詳細設(shè)計說明書又可稱程序設(shè)計說明書。編制目的是說明一個軟件系統(tǒng)各個層次中的每一個程序 (每個模塊或子程序)的設(shè)計考慮,如果一個軟件系統(tǒng)比較簡單,層次很少,本文件可以不單獨編寫,有關(guān)內(nèi)容合并入概要設(shè)計說明書。
數(shù)據(jù)庫設(shè)計說明書:數(shù)據(jù)庫設(shè)計說明書的編制目的是對于設(shè)計中的數(shù)據(jù)庫的所有標識、邏輯結(jié)構(gòu)和物理結(jié)構(gòu)作出具體的設(shè)計規(guī)定。
測試計劃初稿:這里所說的測試,主要是指整個程序系統(tǒng)的組裝測試和確認測試。本文件的編制是為了提供一個對該軟件的測試計劃,包括對每項測試活動的內(nèi)容、進度安排、設(shè)計考慮、測試數(shù)據(jù)的整理方法及評價準則。
4.實現(xiàn)階段
模塊開發(fā)卷宗(開始編寫):模塊開發(fā)卷宗是在模塊開發(fā)過程中逐步編寫出來的,每完成一個模塊或一組密切相關(guān)的模塊的復(fù)審時編寫一份,應(yīng)該把所有的模塊開發(fā)卷宗匯集在一起。編寫的目的是記錄和匯總低層次開發(fā)的進度和結(jié)果,以便于對整個模塊開發(fā)工作的管理和復(fù)審,并為將來的維護提供非常有用的技術(shù)信息。
用戶手冊完工
操作手冊:操作手冊的編制是為了向操作人員提供該軟件每一個運行的具體過程和有關(guān)知識,包括操作方法的細節(jié)。
測試計劃終稿:
5.測試階段
模塊開發(fā)卷宗(此階段內(nèi)必須完成)
測試分析報告:測試分析報告的編寫是為了把組裝測試和確認測試的結(jié)果、發(fā)現(xiàn)及分析寫成文件加以記載。
項目開發(fā)總結(jié)報告:項目開發(fā)總結(jié)報告的編制是為了總結(jié)本項目開發(fā)工作的經(jīng)驗,說明實際取得的開發(fā)結(jié)果以及對整個開發(fā)工作的各個方面的評價。
6.運行與維護階段
開發(fā)進度月報的編制目的是及時向有關(guān)管理部門匯報項目開發(fā)的進展和情況,以便及時發(fā)現(xiàn)和處理開發(fā)過程中出現(xiàn)的問題。一般地,開發(fā)進度月報是以項目組為單位每月編寫的。如果被開發(fā)的軟件系統(tǒng)規(guī)模比較大,整個工程項目被劃分給若干個分項目組承擔,開發(fā)進度月報將以分項目組為單位按月編寫。
對于一項軟件而言,有些文件的編寫工作可能要在若干個階段中延續(xù)進行。
鑒于軟件開發(fā)是具有創(chuàng)造性的腦力勞動,也鑒于不同軟