軟件開發(fā)的流程(軟件開發(fā)前端和后端區(qū)別)
本篇文章給大家談?wù)勡浖_發(fā)的流程,以及軟件開發(fā)前端和后端區(qū)別對(duì)應(yīng)的知識(shí)點(diǎn),希望對(duì)各位有所幫助,不要忘了收藏本站喔。
本文目錄一覽:
軟件開發(fā)過程一般有幾個(gè)階段?每個(gè)階段的作用
軟件開發(fā)的生命周期一般分為6個(gè)階段:計(jì)劃、需求分析、邏輯設(shè)計(jì)、程序編制、調(diào)試、運(yùn)行和維護(hù)
軟件生命周期分為軟件定義、軟件開發(fā)及軟件運(yùn)行維護(hù)三個(gè)階段:
軟件定義階段
制定計(jì)劃:確定總目標(biāo);可行性研究;探討解決方案;制定開發(fā)計(jì)劃。
需求分析:對(duì)待開發(fā)軟件提出的需求進(jìn)行分析并給出詳細(xì)的定義。
軟件開發(fā)階段
軟件設(shè)計(jì):分為概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)兩個(gè)部分?
軟件實(shí)現(xiàn):把軟件設(shè)計(jì)轉(zhuǎn)換成計(jì)算機(jī)可以接受的程序代碼
軟件測(cè)試:在設(shè)計(jì)測(cè)試用例的基礎(chǔ)上檢驗(yàn)軟件的各個(gè)組成部分
軟件運(yùn)行維護(hù)階段
軟件投入運(yùn)行,并在使用中不斷地維護(hù),進(jìn)行必要的擴(kuò)充和刪改。
軟件開發(fā)流程
具體流程如下:
1、啟動(dòng)
在項(xiàng)目啟動(dòng)階段,主要確定項(xiàng)目的目標(biāo)及其可行性。我們需要對(duì)項(xiàng)目的背景、干系人、解決的問題等等進(jìn)行分析。并制定項(xiàng)目章程和組建項(xiàng)目團(tuán)隊(duì),包括:產(chǎn)品經(jīng)理、架構(gòu)工程師、UI工程師、開發(fā)工程師、測(cè)試工程師等。完成以上準(zhǔn)備工作之后,召開項(xiàng)目啟動(dòng)會(huì),啟動(dòng)會(huì)結(jié)束后則進(jìn)入下一步的工作。
2、規(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ù)測(cè)和控制方案。
3、需求
在需求階段,需要對(duì)采集的需求進(jìn)行需求分析,編寫PRD文檔(PRD就是將宏觀抽象化的業(yè)務(wù),拆分成具體化的功能需求,并通過文字或圖像等方式呈現(xiàn)出來)、UI設(shè)計(jì)、高保真設(shè)計(jì)。最后進(jìn)入需求評(píng)審,評(píng)審?fù)ㄟ^則進(jìn)入下一步的工作。
4、設(shè)計(jì)
在設(shè)計(jì)階段,設(shè)計(jì)人員根據(jù)需求文檔,對(duì)軟件系統(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ù)庫(kù)設(shè)計(jì)說明書等。
5、開發(fā)
在明確需求后,開發(fā)工程師正式進(jìn)入編碼階段,根據(jù)產(chǎn)品原型圖、UI效果圖、設(shè)計(jì)文檔,選擇合適的開發(fā)環(huán)境、開發(fā)工具、開發(fā)語言等等進(jìn)行實(shí)現(xiàn),這個(gè)階段也是個(gè)很長(zhǎng)很難的階段,也是軟件實(shí)現(xiàn)的核心。
6、功能測(cè)試
對(duì)軟件進(jìn)行測(cè)試是保證軟件質(zhì)量的重要手段。開發(fā)工程師開發(fā)完成后,可以交由測(cè)試工程師測(cè)試。測(cè)試工程師測(cè)試到BUG要反饋給開發(fā),開發(fā)進(jìn)行修改。功能測(cè)試通常需要進(jìn)行很多次,直到測(cè)試通過,達(dá)到質(zhì)量要求。
7、端到端測(cè)試
在端到端測(cè)試階段,測(cè)試人員根據(jù)完整的業(yè)務(wù)流程設(shè)計(jì)可以覆蓋全流程的端到端測(cè)試案例,然后基于端到端案例對(duì)系統(tǒng)的各個(gè)模塊進(jìn)行全面測(cè)試,確保系統(tǒng)能夠符合需求和驗(yàn)收質(zhì)量標(biāo)準(zhǔn)。
8、用戶驗(yàn)收測(cè)試
用戶驗(yàn)收測(cè)試階段,也是通常的UAT(User Acceptance Test)用戶驗(yàn)收測(cè)試階段,用戶驗(yàn)收測(cè)試是最終用戶可以檢查軟件是否符合業(yè)務(wù)要求的最后階段。
UAT由了解要求并了解構(gòu)建軟件目的的最終用戶執(zhí)行。此測(cè)試是在軟件運(yùn)行之前執(zhí)行的最后一次測(cè)試。最終用戶使用現(xiàn)實(shí)生活場(chǎng)景并為真實(shí)數(shù)據(jù)構(gòu)建UAT測(cè)試用例,用戶驗(yàn)收測(cè)試在最終用戶在上線之前驗(yàn)證軟件是否滿足這些業(yè)務(wù)需求方面具有重要作用。
9、上線
所有測(cè)試通過,并與客戶或者上級(jí)達(dá)成一致后,系統(tǒng)進(jìn)行試運(yùn)行,穩(wěn)定后上線。
上線包括:上線部署、部署后驗(yàn)證、整理交付物(需求文檔、設(shè)計(jì)文檔、安裝部署手冊(cè)、產(chǎn)品幫助等等)和運(yùn)維移交。
10、收尾
項(xiàng)目的收尾階段,移交項(xiàng)目成果,釋放項(xiàng)目團(tuán)隊(duì),進(jìn)行項(xiàng)目回顧總結(jié),項(xiàng)目匯報(bào),完成項(xiàng)目結(jié)項(xiàng)。
軟件開發(fā)怎么去弄?
軟件開發(fā)流程是指軟件開發(fā)設(shè)計(jì)的一般流程,包括軟件的總體結(jié)構(gòu)、模塊的組成、功能的設(shè)計(jì)、程序的編譯、調(diào)試、聯(lián)調(diào)、測(cè)試等過程。主要步驟有:項(xiàng)目分析、確定開發(fā)、需求分析、設(shè)計(jì)、編程、軟件測(cè)試、軟件交付、驗(yàn)收、維護(hù)。
軟件開發(fā)必須符合某些程序和技術(shù)規(guī)范開發(fā)。軟件開發(fā)團(tuán)隊(duì)的每一個(gè)成員都遵循統(tǒng)一的規(guī)范來設(shè)計(jì),開發(fā),測(cè)試和溝通。才可以提高開發(fā)的效率。以下是軟件開發(fā)流程八個(gè)步驟:
1、軟件開發(fā)的第一個(gè)過程是對(duì)項(xiàng)目開發(fā)的分析和確定。主要是軟件開發(fā)商所確定項(xiàng)目開發(fā)后,需要和需求方討論確定需求方軟件開發(fā)的目標(biāo)和具體需求。
2、接下來就是需求分析。此步驟也是確定正常實(shí)施軟件開發(fā)的具體想法的階段。在確定軟件開發(fā)可以進(jìn)行后,對(duì)客戶的需要實(shí)現(xiàn)的軟件功能進(jìn)行詳細(xì)的分析。同時(shí)要考慮開發(fā)過程中可能出現(xiàn)的變化,制定需求變更計(jì)劃,隨時(shí)應(yīng)對(duì)特殊情況的發(fā)生,保證軟件開發(fā)過程的順利進(jìn)行。
3、接下來就是軟件設(shè)計(jì)。要根據(jù)上一階段的軟件功能需求分析結(jié)果進(jìn)行設(shè)計(jì),涉及到軟件設(shè)計(jì)框架結(jié)構(gòu)、軟件系統(tǒng)模塊和軟件系統(tǒng)的數(shù)據(jù)庫(kù),主要分為總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)兩部分。
4、接下來就是編程的實(shí)施步驟。編程也是基于軟件的設(shè)計(jì),軟件設(shè)計(jì)的所有部分都是通過計(jì)算機(jī)程序代碼實(shí)現(xiàn)的。編程由統(tǒng)一規(guī)范的程序書寫規(guī)則,保證了軟件程序的可理解性。
5、接下來的就是步驟軟件測(cè)試。也就是客戶軟件按照設(shè)計(jì)用編程代碼實(shí)現(xiàn)后,也就是軟件程序。完成后,需要修改書面的程序,形成整體框架,功能為單元,組裝,系統(tǒng)三個(gè)階段測(cè)試,程序的正確性,客戶要求功能的充分性,以確定軟件是否滿足開發(fā)要求,這也是一個(gè)發(fā)現(xiàn)問題、糾正問題的過程。
6、軟件開發(fā)是通過以上核心環(huán)節(jié)完成的。接下來就在軟件開發(fā)之后滿足了客戶的要求,軟件系統(tǒng)交給了客戶,并向客戶交付軟件安裝程序、數(shù)據(jù)庫(kù)的數(shù)據(jù)字典、《用戶安裝手冊(cè)》、《用戶使用指南》、需求報(bào)告、設(shè)計(jì)報(bào)告、測(cè)試報(bào)告等文檔,指導(dǎo)客戶安裝軟件及安裝技巧。提醒客戶關(guān)注軟件的運(yùn)行狀態(tài)、環(huán)境、服務(wù)器及相關(guān)中間件的檢測(cè)和注意事項(xiàng),了解客戶軟件的實(shí)際操作方法、使用流程等問題,實(shí)現(xiàn)合同規(guī)定的任務(wù)。
7、用戶接受開發(fā)交付的軟件開發(fā)后,實(shí)際操作運(yùn)行測(cè)試。達(dá)到滿意的結(jié)果后,對(duì)開發(fā)出來的軟件進(jìn)行驗(yàn)收。
8、定制開發(fā)的軟件通常需要提供售后服務(wù),維護(hù)軟件,或者根據(jù)用戶的新需求修改應(yīng)用軟件程序,不斷滿足客戶的實(shí)際需求。
軟件的開發(fā)過程分為哪幾個(gè)階段?
軟件生命周期分為問題定義、可行性研究、需求分析、開發(fā)階段、維護(hù)這5個(gè)階段。各個(gè)階段的主要任務(wù)是如下。
1、問題定義
要求系統(tǒng)分析員與用戶進(jìn)行交流,弄清“用戶需要計(jì)算機(jī)解決什么問題”然后提出關(guān)于“系統(tǒng)目標(biāo)與范圍的說明”,提交用戶審查和確認(rèn)。
2、可行性研究
一方面在于把待開發(fā)的系統(tǒng)的目標(biāo)以明確的語言描述出來,另一方面從經(jīng)濟(jì)、技術(shù)、法律等多方面進(jìn)行可行性分析。
3、需求分析
弄清用戶對(duì)軟件系統(tǒng)的全部需求,編寫需求規(guī)格說明書和初步的用戶手冊(cè),提交評(píng)審。
4、開發(fā)階段
開發(fā)階段由四個(gè)階段組成:概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試
五、維護(hù)
維護(hù)包括四個(gè)方面:
(1)改正性維護(hù):在軟件交付使用后,由于開發(fā)測(cè)試時(shí)的不徹底、不完全、必然會(huì)有一部分隱藏的錯(cuò)誤被帶到運(yùn)行階段,這些隱藏的錯(cuò)誤在某些特定的使用環(huán)境下就會(huì)暴露。
(2)適應(yīng)性維護(hù):是為適應(yīng)環(huán)境的變化而修改軟件的活動(dòng)。
(3)完善性維護(hù):是根據(jù)用戶在使用過程中提出的一些建設(shè)性意見而進(jìn)行的維護(hù)活動(dòng)。
(4)預(yù)防性維護(hù):是為了進(jìn)一步改善軟件系統(tǒng)的可維護(hù)性和可靠性,并為以后的改進(jìn)奠定基礎(chǔ)。
擴(kuò)展資料:
軟件常見周期模型:
1、瀑布模型
瀑布模型首先由Royce提出。該模型由于酷似瀑布聞名。在該模型中,首先確定需求,并接受客戶和SQA小組的驗(yàn)證。然后擬定規(guī)格說明,同樣通過驗(yàn)證后,進(jìn)入計(jì)劃階段?可以看出,瀑布模型中至關(guān)重要的一點(diǎn)是只有當(dāng)一個(gè)階段的文檔已經(jīng)編制好并獲得SQA小組的認(rèn)可才可以進(jìn)入下一個(gè)階段。
瀑布模型通過強(qiáng)制性的要求提供規(guī)約文檔來確保每個(gè)階段都能很好的完成任務(wù)。但是實(shí)際上往往難以辦到,因?yàn)檎麄€(gè)的模型幾乎都是以文檔驅(qū)動(dòng)的,這對(duì)于非專業(yè)的用戶來說是難以閱讀和理解的。
2、迭代式模型
迭代式模型是RUP推薦的周期模型,也是我們?cè)谶@個(gè)系列文章討論的基礎(chǔ)。在RUP中,迭代被定義為:迭代包括產(chǎn)生產(chǎn)品發(fā)布(穩(wěn)定、可執(zhí)行的產(chǎn)品版本)的全部開發(fā)活動(dòng)和要使用該發(fā)布必需的所有其他外圍元素。
所以,在某種程度上,開發(fā)迭代是一次完整地經(jīng)過所有工作流程的過程:(至少包括)需求工作流程、分析設(shè)計(jì)工作流程、實(shí)施工作流程和測(cè)試工作流程。實(shí)質(zhì)上,它類似小型的瀑布式項(xiàng)目。RUP認(rèn)為,所有的階段(需求及其它)都可以細(xì)分為迭代。
3、快速原型模型
快速原型模型在功能上等價(jià)于產(chǎn)品的一個(gè)子集。瀑布模型的缺點(diǎn)就在于不夠直觀,快速原型法就解決了這個(gè)問題。一般來說,根據(jù)客戶的需要在很短的時(shí)間內(nèi)解決用戶最迫切需要,完成一個(gè)可以演示的產(chǎn)品。這個(gè)產(chǎn)品只是實(shí)現(xiàn)部分的功能(最重要的)。
它最重要的目的是為了確定用戶的真正需求。在我的經(jīng)驗(yàn)中,這種方法非常的有效,原先對(duì)計(jì)算機(jī)沒有絲毫概念的用戶在你的原型面前往往口若懸河,有些觀點(diǎn)讓你都覺得非常的吃驚。在得到用戶的需求之后,原型將被拋棄。
因?yàn)樵烷_發(fā)的速度很快,設(shè)計(jì)方面是幾乎沒有考慮的,如果保留原型的話,在隨后的開發(fā)中會(huì)為此付出極大的代價(jià)。至于保留原型方面,也是有一種叫做增量模型是這么做的,但這種模型并不為大家所接受的。
參考資料來源:百度百科-軟件生命周期
關(guān)于軟件開發(fā)的流程和軟件開發(fā)前端和后端區(qū)別的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。