軟件的完整開發(fā)流程(軟件的完整開發(fā)流程包括)
軟件產(chǎn)品開發(fā)流程:
下圖所示的是一個(gè)軟件產(chǎn)品開發(fā)大體上所需要經(jīng)歷的全部流程:
具體流程如下:
- 啟動
在項(xiàng)目啟動階段,主要確定項(xiàng)目的目標(biāo)及其可行性。我們需要對項(xiàng)目的背景、干系人、解決的問題等等進(jìn)行分析。并制定項(xiàng)目章程和組建項(xiàng)目團(tuán)隊(duì),包括:產(chǎn)品經(jīng)理、架構(gòu)工程師、UI工程師、開發(fā)工程師、測試工程師等。完成以上準(zhǔn)備工作之后,召開項(xiàng)目啟動會,啟動會結(jié)束后則進(jìn)入下一步的工作。 - 規(guī)劃
在項(xiàng)目的規(guī)劃階段,項(xiàng)目經(jīng)理需要和項(xiàng)目需求方,以及項(xiàng)目的相關(guān)干系人確定項(xiàng)目的范圍,創(chuàng)建WBS(把工作進(jìn)行徹底分解,并梳理出其間的邏輯關(guān)系,利用整分合原則組織起來),確定項(xiàng)目的里程碑和項(xiàng)目計(jì)劃。同時(shí)制定項(xiàng)目的管理計(jì)劃,包括成本,質(zhì)量。風(fēng)險(xiǎn)等方面的預(yù)測和控制方案。 - 需求
在需求階段,需要對采集的需求進(jìn)行需求分析,編寫PRD文檔(PRD就是將宏觀抽象化的業(yè)務(wù),拆分成具體化的功能需求,并通過文字或圖像等方式呈現(xiàn)出來)、UI設(shè)計(jì)、高保真設(shè)計(jì)。最后進(jìn)入需求評審,評審?fù)ㄟ^則進(jìn)入下一步的工作。 - 設(shè)計(jì)
在設(shè)計(jì)階段,設(shè)計(jì)人員根據(jù)需求文檔,對軟件系統(tǒng)進(jìn)行設(shè)計(jì),包括數(shù)據(jù)結(jié)構(gòu)、系統(tǒng)架構(gòu)、業(yè)務(wù)模型及規(guī)則、流程控制、模塊接口等。 輸出概要設(shè)計(jì),詳細(xì)設(shè)計(jì)文檔,以及數(shù)據(jù)庫設(shè)計(jì)說明書等。 - 開發(fā)
在明確需求后,開發(fā)工程師正式進(jìn)入編碼階段,根據(jù)產(chǎn)品原型圖、UI效果圖、設(shè)計(jì)文檔,選擇合適的開發(fā)環(huán)境、開發(fā)工具、開發(fā)語言等等進(jìn)行實(shí)現(xiàn),這個(gè)階段也是個(gè)很長很難的階段,也是軟件實(shí)現(xiàn)的核心。 - 功能測試
對軟件進(jìn)行測試是保證軟件質(zhì)量的重要手段。開發(fā)工程師開發(fā)完成后,可以交由測試工程師測試。測試工程師測試到BUG要反饋給開發(fā),開發(fā)進(jìn)行修改。功能測試通常需要進(jìn)行很多次,直到測試通過,達(dá)到質(zhì)量要求。 - 端到端測試
在端到端測試階段,測試人員根據(jù)完整的業(yè)務(wù)流程設(shè)計(jì)可以覆蓋全流程的端到端測試案例,然后基于端到端案例對系統(tǒng)的各個(gè)模塊進(jìn)行全面測試,確保系統(tǒng)能夠符合需求和驗(yàn)收質(zhì)量標(biāo)準(zhǔn)。 - 用戶驗(yàn)收測試
用戶驗(yàn)收測試階段,也是通常的UAT(User Acceptance Test)用戶驗(yàn)收測試階段,用戶驗(yàn)收測試是最終用戶可以檢查軟件是否符合業(yè)務(wù)要求的最后階段。UAT由了解要求并了解構(gòu)建軟件目的的最終用戶執(zhí)行。此測試是在軟件運(yùn)行之前執(zhí)行的最后一次測試。最終用戶使用現(xiàn)實(shí)生活場景并為真實(shí)數(shù)據(jù)構(gòu)建UAT測試用例,用戶驗(yàn)收測試在最終用戶在上線之前驗(yàn)證軟件是否滿足這些業(yè)務(wù)需求方面具有重要作用。 - 上線
所有測試通過,并與客戶或者上級達(dá)成一致后,系統(tǒng)進(jìn)行試運(yùn)行,穩(wěn)定后上線。
上線包括:上線部署、部署后驗(yàn)證、整理交付物(需求文檔、設(shè)計(jì)文檔、安裝部署手冊、產(chǎn)品幫助等等)和運(yùn)維移交。 - 收尾
項(xiàng)目的收尾階段,移交項(xiàng)目成果,釋放項(xiàng)目團(tuán)隊(duì),進(jìn)行項(xiàng)目回顧總結(jié),項(xiàng)目匯報(bào),完成項(xiàng)目結(jié)項(xiàng)。