卓晖冠科之前聊到過長(cháng)沙軟件開發六個(gè)階段的(de)前三個(gè)階段,今天來(lái)聊聊之後的(de)三個(gè)階段。
4編碼
軟件編碼是指把軟件設計轉換成計算(suàn)機可(kě)以接受的(de)程序,即寫成以某一程序設計語言表示的(de)“源程序清單”。充分(fēn)了(le)解軟件開發語言、工具的(de)特性和(hé)編程風格,有助于開發工具的(de)選擇以及保證軟件産品的(de)開發質量。
當前軟件開發中除在專用(yòng)場(chǎng)合,已經很少使用(yòng)二十世紀80年代的(de)高(gāo)級語言了(le),取而代之的(de)是面向對(duì)象的(de)開發語言。而且面向對(duì)象的(de)開發語言和(hé)開發環境大(dà)都合爲一體,大(dà)大(dà)提高(gāo)了(le)開發的(de)速度。
5測試
軟件測試的(de)目的(de)是以較小的(de)代價發現盡可(kě)能多(duō)的(de)錯誤。要實現這(zhè)個(gè)目标的(de)關鍵在于設計一套出色的(de)測試用(yòng)例(測試數據與功能和(hé)預期的(de)輸出結果組成了(le)測試用(yòng)例)。如何才能設計出一套出色的(de)測試用(yòng)例,關鍵在于理(lǐ)解測試方法。不同的(de)測試方法有不同的(de)測試用(yòng)例設計方法。兩種常用(yòng)的(de)測試方法是白盒法測試對(duì)象是源程序,依據的(de)是程序内部的(de)的(de)邏輯結構來(lái)發現軟件的(de)編程錯誤、結構錯誤和(hé)數據錯誤。結構錯誤包括邏輯、數據流、初始化(huà)等錯誤。用(yòng)例設計的(de)關鍵是以較少的(de)用(yòng)例覆蓋盡可(kě)能多(duō)的(de)内部程序邏輯結果。白盒法和(hé)黑(hēi)盒法依據的(de)是軟件的(de)功能或軟件行爲描述,發現軟件的(de)接口、功能和(hé)結構錯誤。其中接口錯誤包括内部/外部接口、資源管理(lǐ)、集成化(huà)以及系統錯誤。黑(hēi)盒法用(yòng)例設計的(de)關鍵同樣也(yě)是以較少的(de)用(yòng)例覆蓋模塊輸出和(hé)輸入接口。
6維護
維護是指在已完成對(duì)軟件的(de)研制(分(fēn)析、設計、編碼和(hé)測試)工作并交付使用(yòng)以後,對(duì)軟件産品所進行的(de)一些軟件工程的(de)活動。即根據軟件運行的(de)情況,對(duì)軟件進行适當修改,以适應新的(de)要求,以及糾正運行中發現的(de)錯誤。編寫軟件問題報告、軟件修改報告。
一個(gè)中等規模的(de)軟件,如果研制階段需要一年至二年的(de)時(shí)間,在它投入使用(yòng)以後,其運行或工作時(shí)間可(kě)能持續五年至十年。那麽它的(de)維護階段也(yě)是運行的(de)這(zhè)五年至十年期間。在這(zhè)段時(shí)間,人(rén)們幾乎需要著(zhe)手解決研制階段所遇到的(de)各種問題,同時(shí)還(hái)要解決某些維護工作本身特有的(de)問題。做(zuò)好軟件維護工作,不僅能排除障礙,使軟件能正常工作,而且還(hái)可(kě)以使它擴展功能,提高(gāo)性能,爲用(yòng)戶帶來(lái)明(míng)顯的(de)經濟效益。然而遺憾的(de)是,對(duì)軟件維護工作的(de)重視往往遠(yuǎn)不如對(duì)軟件研制工作的(de)重視。而事實上,和(hé)軟件研制工作相比,軟件維護的(de)工作量和(hé)成本都要大(dà)得(de)多(duō)。
但要注意的(de)是,在實際開發過程中,軟件開發并不是從第一步進行到最後一步,而是在任何階段,在進入下(xià)一階段前一般都有一步或幾步的(de)回溯。在測試過程中的(de)問題可(kě)能要求修改設計,用(yòng)戶可(kě)能會提出一些需要來(lái)修改需求說明(míng)書(shū)等。