很多人一直認(rèn)為軟件開發(fā)是程序員的工作,只要你告訴他們需求,你就可以開發(fā)軟件。簡單問題來說我們就是“我說,你做”。這種情況是存在的,而且單方面聲明開發(fā)軟件并不難,否則開發(fā)人員有很強(qiáng)的綜合能力來達(dá)到這種效果。但實(shí)際上軟件進(jìn)行開發(fā)的過程并沒有那么可以簡單。接下來米么信息會(huì)給大家詳細(xì)講解軟件開發(fā)從接觸到交付的流程。
軟件開發(fā)過程分為: 可行性分析、需求分析、設(shè)計(jì)與開發(fā)、開發(fā)階段、測試階段、操作與維護(hù)。軟件的開發(fā)企業(yè)不僅僅是開發(fā)者的工作,還需要需求者和開發(fā)者之間多次的溝通、確認(rèn)、調(diào)整和測試,才能實(shí)現(xiàn)最終能夠得到發(fā)展一個(gè)具有相對比較完善的軟件。
可行性分析
由于軟件開發(fā)公司的實(shí)力和軟件開發(fā)技術(shù)的成熟,并不是所有的軟件都能被開發(fā)出來。有些開發(fā)需求雖然看似合理,但技術(shù)上可能實(shí)現(xiàn)不了,或許公司的開發(fā)能力也達(dá)不到這樣的要求。所以在軟件系統(tǒng)開發(fā)之前,首先要進(jìn)行可行性研究分析,確定一個(gè)企業(yè)項(xiàng)目是否可以通過進(jìn)行。
在這個(gè)過程中,我們需要對目標(biāo)定位、效率、技術(shù)、管理等方面進(jìn)行研究和可行性分析。,及時(shí)與客戶溝通,輸出項(xiàng)目研究報(bào)告、可行性分析報(bào)告等。..
同時(shí),公司應(yīng)確定一個(gè)項(xiàng)目管理經(jīng)理。與公司項(xiàng)目經(jīng)理確定項(xiàng)目的主要組成部分,包括產(chǎn)品經(jīng)理、架構(gòu)工程師、UI工程師、開發(fā)工程師、測試工程師等。
需求分析
可行性研究分析通過后,產(chǎn)品經(jīng)理要與客戶信息進(jìn)行系統(tǒng)詳細(xì)的需求收集、需求問題分析、需求確認(rèn)。產(chǎn)品經(jīng)理整理和收集需求信息,根據(jù)收集到的需求,制作培訓(xùn)文件分析和產(chǎn)品原型圖,與客戶溝通確認(rèn)。如果企業(yè)客戶有異議,可以自己提出來,產(chǎn)品經(jīng)理會(huì)修改信息確認(rèn)。重復(fù)此操作,直到雙方確認(rèn)其正確為止。
需求確定后,產(chǎn)品經(jīng)理會(huì)和開發(fā)人員一起評估開發(fā)難度,確定軟件開發(fā) quotation、軟件開發(fā) cycle等信息。根據(jù)最終需求計(jì)劃。
如果企業(yè)雙方同意,可以通過簽訂合同,立項(xiàng)。
設(shè)計(jì)和開發(fā)
項(xiàng)目建立后,工程師會(huì)選擇合適的開發(fā)環(huán)境、工具、語言等。根據(jù)產(chǎn)品原型圖、UI效果圖和詳細(xì)設(shè)計(jì)文檔,統(tǒng)一各模塊和頁面的命名規(guī)范。
工程師根據(jù)產(chǎn)品需求分析設(shè)計(jì)整個(gè)軟件架構(gòu)和關(guān)鍵模塊。開發(fā)工程師根據(jù)需求和體系結(jié)構(gòu)設(shè)計(jì)開發(fā)項(xiàng)目開發(fā)計(jì)劃和模塊進(jìn)度表。ui工程師可以根據(jù)市場需求、原型圖、開發(fā)工作計(jì)劃制定UI設(shè)計(jì)研究方案,保證企業(yè)及時(shí)完成每個(gè)頁面的UI設(shè)計(jì)。獲取發(fā)展計(jì)劃。
根據(jù)開發(fā)計(jì)劃,構(gòu)建了軟件框架,并對模塊進(jìn)行了編碼。并編寫開發(fā)說明和注釋代碼功能,使代碼更具可讀性。
測試階段
首先,開發(fā)技術(shù)工程師的自測和互測初步消除了進(jìn)行程序bug問題。
然后,測試工程師根據(jù)描述文檔和開發(fā)階段開發(fā)的程序體系結(jié)構(gòu)設(shè)計(jì)測試用例。測試用例不僅要考慮進(jìn)行合理的輸入信息數(shù)據(jù),還要充分考慮不合理的輸入相關(guān)數(shù)據(jù)。
然后,工程師對程序進(jìn)行單元測試、集成測試和系統(tǒng)測試,檢查指定功能是否正確完成,記錄編碼錯(cuò)誤和算法錯(cuò)誤,提交開發(fā)工程師。
最后通過開發(fā)技術(shù)工程師可以根據(jù)系統(tǒng)測試工程師提交的測試文檔修改錯(cuò)誤,然后提交給測試工程師進(jìn)行分析測試。
另一重要方面,產(chǎn)品銷售經(jīng)理和測試工程師為普通學(xué)生用戶可以安排軟件系統(tǒng)測試版本,盡量收集用戶的意見和問題,將軟件設(shè)計(jì)錯(cuò)誤提交給開發(fā)工程師修改。這時(shí),軟件會(huì)出現(xiàn)一些錯(cuò)誤,并對軟件進(jìn)行修改。
在整個(gè)教學(xué)過程中,要不斷發(fā)展完善管理軟件各個(gè)端口的操作手冊和軟件系統(tǒng)用戶手冊。
運(yùn)行維護(hù)
進(jìn)行軟件驗(yàn)收和在線操作。
產(chǎn)品經(jīng)理培訓(xùn)軟件用戶。
開發(fā)工程師進(jìn)行定期維護(hù)管理軟件,及時(shí)修改可以使用中的問題。
那就是軟件開發(fā)的全過程。從軟件開發(fā)過程中可以看出,軟件開發(fā)不僅僅是開發(fā)人員的工作。為了開發(fā)出符合設(shè)計(jì)要求并穩(wěn)定發(fā)展運(yùn)行的軟件,還需要進(jìn)行產(chǎn)品經(jīng)理配合客戶和程序員不斷協(xié)商解決學(xué)生遇到的各種社會(huì)問題。同時(shí),項(xiàng)目組需要完成大量的前期開發(fā)和后期開發(fā)相關(guān)工作。這就是軟件開發(fā)如此昂貴的原因之一。