什么是軟件開(kāi)發(fā)
軟件開(kāi)發(fā)是根據用戶(hù)要求建造出軟件系統或者系統中的軟件部分的過(guò)程。錦州軟件開(kāi)發(fā)軟件開(kāi)發(fā)是一項包括需求捕捉、需求分析、設計、實(shí)現和測試的系統工程。軟件一般是用某種程序設計語(yǔ)言來(lái)實(shí)現的。通常采用軟件開(kāi)發(fā)工具可以進(jìn)行開(kāi)發(fā)。軟件分為系統軟件和應用軟件,并不只是包括可以在計算機上運行的程序,與這些程序相關(guān)的文件一般也被認為是軟件的一部分。 軟件設計思路和方法的一般過(guò)程,包括設計軟件的功能和實(shí)現的算法和方法、軟件的總體結構設計和模塊設計、編程和調試、程序聯(lián)調和測試以及編寫(xiě)、提交程序。
軟件開(kāi)發(fā)可劃分為6個(gè)階段
1.計劃
對所要解決的問(wèn)題進(jìn)行總體定義,錦州軟件開(kāi)發(fā)軟包括了解用戶(hù)的要求及現實(shí)環(huán)境,從技術(shù)、經(jīng)濟和社會(huì )因素等3個(gè)方面研究并論證本軟件項目的可行性,編寫(xiě)可行性研究報告,探討解決問(wèn)題的方案,并對可供使用的資源成本,可取得的效益和開(kāi)發(fā)進(jìn)度作出估計,制訂完成開(kāi)發(fā)任務(wù)的實(shí)施計劃。
2.分析
軟件需求分析就是對開(kāi)發(fā)什么樣的軟件的一個(gè)系統的分析與設想。它是一個(gè)對用戶(hù)的需求進(jìn)行去粗取精、去偽存真、正確理解,然后把它用軟件工程開(kāi)發(fā)語(yǔ)言表達出來(lái)的過(guò)程。本階段的基本任務(wù)是和用戶(hù)一起確定要解決的問(wèn)題,建立軟件的邏輯模型,編寫(xiě)需求規格說(shuō)明書(shū)文檔并最終得到用戶(hù)的認可。需求分析的主要方法有結構化分析方法、數據流程圖和數據字典等方法。本階段的工作是根據需求說(shuō)明書(shū)的要求,設計建立相應的軟件系統的體系結構,并將整個(gè)系統分解成若干個(gè)子系統或模塊,定義子系統或模塊間的接口關(guān)系,對各子系統進(jìn)行具體設計定義,錦州軟件開(kāi)發(fā)軟編寫(xiě)軟件概要設計和詳細設計說(shuō)明書(shū),數據庫或數據結構設計說(shuō)明書(shū),組裝測試計劃。在任何軟件或系統開(kāi)發(fā)的初始階段必須先完全掌握用戶(hù)需求,以期能將緊隨的系統開(kāi)發(fā)過(guò)程中哪些功能應該落實(shí)、采取何種規格以及設定哪些限制優(yōu)先加以定位。系統工程師最終將據此完成設計方案,在此基礎上對隨后的程序開(kāi)發(fā)、系統功能和性能的描述及限制作出定義。
3.設計
軟件設計可以分為概要設計和詳細設計兩個(gè)階段。實(shí)際上軟件設計的主要任務(wù)就是將軟件分解成模塊是指能實(shí)現某個(gè)功能的數據和程序說(shuō)明、可執行程序的程序單元。可以是一個(gè)函數、過(guò)程、子程序、一段帶有程序說(shuō)明的獨立的程序和數據,也可以是可組合、可分解和可更換的功能單元。模塊,然后進(jìn)行模塊設計。概要設計就是結構設計,其主要目標就是給出軟件的模塊結構,用軟件結構圖表示。詳細設計的首要任務(wù)就是設計模塊的程序流程、算法和數據結構,次要任務(wù)就是設計數據庫,常用方法還是結構化程序設計方法。
4.編碼
軟件編碼是指把軟件設計轉換成計算機可以接受的程序,即寫(xiě)成以某一程序設計語(yǔ)言表示的“源程序清單”。充分了解軟件開(kāi)發(fā)語(yǔ)言、工具的特性和編程風(fēng)格,有助于開(kāi)發(fā)工具的選擇以及保證軟件產(chǎn)品的開(kāi)發(fā)質(zhì)量。
5.測試
軟件測試的目的是以較小的代價(jià)發(fā)現盡可能多的錯誤。要實(shí)現這個(gè)目標的關(guān)鍵在于設計一套出色的測試用例。如何才能設計出一套出色的測試用例,關(guān)鍵在于理解測試方法。不同的測試方法有不同的測試用例設計方法。兩種常用的測試方法是白盒法測試對象是源程序,依據的是程序內部的的邏輯結構來(lái)發(fā)現軟件的編程錯誤、結構錯誤和數據錯誤。結構錯誤包括邏輯、數據流、初始化等錯誤。用例設計的關(guān)鍵是以較少的用例覆蓋盡可能多的內部程序邏輯結果。白盒法和黑盒法依據的是軟件的功能或軟件行為描述,發(fā)現軟件的接口、功能和結構錯誤。其中接口錯誤包括內部/外部接口、資源管理、集成化以及系統錯誤。黑盒法用例設計的關(guān)鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。
6.維護
維護是指在已完成對軟件的研制工作并交付使用以后,對軟件產(chǎn)品所進(jìn)行的一些軟件工程的活動(dòng)。即根據軟件運行的情況,對軟件進(jìn)行適當修改,以適應新的要求,以及糾正運行中發(fā)現的錯誤。編寫(xiě)軟件問(wèn)題報告、軟件修改報告。
在實(shí)際開(kāi)發(fā)過(guò)程中,軟件開(kāi)發(fā)并不是從第一步進(jìn)行到最后一步,而是在任何階段,在進(jìn)入下一階段前一般都有一步或幾步的回溯。在測試過(guò)程中的問(wèn)題可能要求修改設計,用戶(hù)可能會(huì )提出一些需要來(lái)修改需求說(shuō)明書(shū)等。
此文章轉自《知乎》如有侵權請立即聯(lián)系刪除