軟件開發(fā)是依據(jù)客戶規(guī)定制作出系統(tǒng)軟件或是系統(tǒng)軟件中的一部分的過程。它是一項包含獲取需求、整體開發(fā)規(guī)劃、需求分析報告和設計方案、編程實現(xiàn)、軟件測試、版本管理的工程項目。
軟件一般是用某類程序設計語言來完成的。一般選用軟件開發(fā)環(huán)境能夠開展開發(fā)設計。軟件分成系統(tǒng)軟件和運用軟件,并不只是包括能夠在電子計算機上運作的程序,與這種程序有關的文檔一般也被覺得是軟件的一部分。軟件設計方案思路和方式的一般全過程,包括設計方案軟件的作用和完成的優(yōu)化算法和方式 、軟件的整體總體設計和控制模塊設計方案、程序編寫和調節(jié)、程序聯(lián)調和檢測及其撰寫、遞交程序。
對所需處理的難題開展整體界定,包括掌握客戶的規(guī)定及實際自然環(huán)境,從技術性、經(jīng)濟發(fā)展和社會因素等3個層面科學研究并論述本軟件新項目的可行性分析,撰寫項目可行性匯報,討論解決困難的計劃方案,并對可儲存的資源(如計算機系統(tǒng)、系統(tǒng)軟件、人力等)成本費,可獲得的經(jīng)濟效益和項目進度做出可能,制定進行開發(fā)設計每日任務的實施計劃。

因為互聯(lián)網(wǎng)技術的普及化,pc、移動等平臺的應用軟件越來越普遍,衍生出一系列的軟件,軟件開發(fā)的市場也越來越寬闊。因而,軟件開發(fā)也衍生出不一樣方向的崗位。軟件開發(fā)的有關崗位許多,例如MIS、ERP、游戲開發(fā)、網(wǎng)游開發(fā)、網(wǎng)絡技術、智慧政務、嵌入式開發(fā)、分布式數(shù)據(jù)庫開發(fā)這些。
許多人經(jīng)常會把編程默認的當作是軟件開發(fā)。實際上編程和軟件開發(fā)的確有很多的相同點。最先這二者同歸屬于開發(fā)行業(yè),其次這二者的關鍵工作中全是編碼撰寫。唯一的區(qū)別便是軟件開發(fā)的工作中比編程更加復雜,相比于編程有大量的工作內容。編程能夠說成是軟件開發(fā)的一部分,不牽涉到設計方案、檢測、售前服務、售后服務等工作。而軟件開發(fā)是一條龍的服務項目。