軟件開(kāi)發(fā)流程的問(wèn)題(軟件開(kāi)發(fā)的流程及各個(gè)階段的結(jié)果)
本篇文章給大家談?wù)勡浖_(kāi)發(fā)流程的問(wèn)題,以及軟件開(kāi)發(fā)的流程及各個(gè)階段的結(jié)果對(duì)應(yīng)的知識(shí)點(diǎn),希望對(duì)各位有所幫助,不要忘了收藏本站喔。
本文目錄一覽:
- 1、軟件開(kāi)發(fā)過(guò)程中會(huì)有哪些風(fēng)險(xiǎn)?
- 2、軟件開(kāi)發(fā)過(guò)程一般有幾個(gè)階段?每個(gè)階段的作用
- 3、企業(yè)軟件開(kāi)發(fā)流程是什么
- 4、軟件開(kāi)發(fā)流程
- 5、真心想知道軟件的開(kāi)發(fā)過(guò)程
軟件開(kāi)發(fā)過(guò)程中會(huì)有哪些風(fēng)險(xiǎn)?
1、未經(jīng)權(quán)威部門確認(rèn)的功能標(biāo)準(zhǔn)、開(kāi)發(fā)規(guī)范以及質(zhì)量技術(shù)標(biāo)準(zhǔn),均可能導(dǎo)致軟件無(wú)法達(dá)到預(yù)期標(biāo)準(zhǔn),從而引起質(zhì)量風(fēng)險(xiǎn)。
2、在理解項(xiàng)目標(biāo)準(zhǔn)及范圍等問(wèn)題上,企業(yè)管理層、項(xiàng)目組以及技術(shù)性人員的接不一致,導(dǎo)致計(jì)劃與資金安排有所改變,因而極易引發(fā)風(fēng)險(xiǎn)。
3、潛在的維護(hù)、驗(yàn)證、接口、實(shí)現(xiàn)以及設(shè)計(jì)等環(huán)節(jié)出現(xiàn)的問(wèn)題,存在技術(shù)空白及未知領(lǐng)域,為軟件開(kāi)發(fā)工作帶來(lái)較大的風(fēng)險(xiǎn)。
4、來(lái)自于外包項(xiàng)目組、客戶、國(guó)家政策以及市場(chǎng)等方面的變化及壓力,這類風(fēng)險(xiǎn)具有明顯的不可控特點(diǎn),一旦遭遇,應(yīng)謹(jǐn)慎對(duì)待,及時(shí)制定解決策略。
風(fēng)險(xiǎn)防范與控制措施
1、出臺(tái)合理的軟件開(kāi)發(fā)模式與相關(guān)規(guī)程,確保開(kāi)發(fā)工作合理、有序進(jìn)行,并符合國(guó)家出臺(tái)的相關(guān)標(biāo)準(zhǔn)及要求。
2、對(duì)于項(xiàng)目組全體成員的開(kāi)發(fā)行為進(jìn)行嚴(yán)格規(guī)范,加強(qiáng)小組成員之間的交流與互動(dòng),以免由于溝通與交流不當(dāng),引發(fā)軟件開(kāi)發(fā)風(fēng)險(xiǎn)。
3、定期開(kāi)展業(yè)務(wù)和技術(shù)交流大會(huì),引導(dǎo)技術(shù)人員摒除過(guò)于落后、陳舊的工作思想,通過(guò)引進(jìn)先進(jìn)的技術(shù)、設(shè)備與驗(yàn)證方式,明確技術(shù)人員的預(yù)期發(fā)展目標(biāo),令其不斷的改進(jìn)自我、完善自我,提升技術(shù)及設(shè)備的質(zhì)量及效果。
4、對(duì)開(kāi)發(fā)所用的方法及技術(shù)進(jìn)行客觀、合理的評(píng)價(jià),避免由于無(wú)法把握技術(shù)而引發(fā)風(fēng)險(xiǎn)。
5、建立完善的風(fēng)險(xiǎn)應(yīng)對(duì)程序與管理計(jì)劃,如此一來(lái),才能確保在發(fā)生風(fēng)險(xiǎn)的時(shí)候,能夠快速、合理、技術(shù)的作出反映,并通過(guò)制定適宜的策略,對(duì)風(fēng)險(xiǎn)進(jìn)行專業(yè)性處理。
軟件開(kāi)發(fā)過(guò)程一般有幾個(gè)階段?每個(gè)階段的作用
軟件開(kāi)發(fā)的生命周期一般分為6個(gè)階段:計(jì)劃、需求分析、邏輯設(shè)計(jì)、程序編制、調(diào)試、運(yùn)行和維護(hù)
軟件生命周期分為軟件定義、軟件開(kāi)發(fā)及軟件運(yùn)行維護(hù)三個(gè)階段:
軟件定義階段
制定計(jì)劃:確定總目標(biāo);可行性研究;探討解決方案;制定開(kāi)發(fā)計(jì)劃。
需求分析:對(duì)待開(kāi)發(fā)軟件提出的需求進(jìn)行分析并給出詳細(xì)的定義。
軟件開(kāi)發(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ò)充和刪改。
企業(yè)軟件開(kāi)發(fā)流程是什么
在企業(yè)中,整個(gè)的開(kāi)發(fā)的過(guò)程,從頭到尾,大致可以分成五個(gè)大的階段,分別是需求,設(shè)計(jì),編碼,測(cè)試,交付這五個(gè)階段,這當(dāng)中,位于軟件公司內(nèi)部管理的過(guò)程,詳細(xì)劃分又可以分為7步,如下所列:
相關(guān)系統(tǒng)分析員向用戶初步了解需求,然后用WORD列出要開(kāi)發(fā)的系統(tǒng)的大功能模塊,每個(gè)大功能模塊有哪些小功能模塊,對(duì)于有些需求比較明確相關(guān)的界面時(shí),在這一步里面可以初步定義好少量的界面。
系統(tǒng)分析員深入了解和分析需求,根據(jù)自己的經(jīng)驗(yàn)和需求用WORD或相關(guān)的工具再做出一份文檔系統(tǒng)的功能需求文檔。這次的文檔會(huì)清楚利用系統(tǒng)大致的大功能模塊,大功能模塊有哪些小功能模塊,并且還列出相關(guān)的界面和界面功能。
開(kāi)發(fā)者需要對(duì)軟件系統(tǒng)進(jìn)行概要設(shè)計(jì),即系統(tǒng)設(shè)計(jì)。概要設(shè)計(jì)需要對(duì)軟件系統(tǒng)的設(shè)計(jì)進(jìn)行考慮,包括系統(tǒng)的基本處理流程、系統(tǒng)的組織結(jié)構(gòu)、模塊劃分、功能分配、接口設(shè)計(jì)、運(yùn)行設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)和出錯(cuò)處理設(shè)計(jì)等,為軟件的詳細(xì)設(shè)計(jì)提供基礎(chǔ)。
在概要設(shè)計(jì)的基礎(chǔ)上,開(kāi)發(fā)者需要進(jìn)行軟件系統(tǒng)的詳細(xì)設(shè)計(jì)。在詳細(xì)設(shè)計(jì)中,描述實(shí)現(xiàn)具體模塊所涉及到的主要算法、數(shù)據(jù)結(jié)構(gòu)、類的層次結(jié)構(gòu)及調(diào)用關(guān)系,需要說(shuō)明軟件系統(tǒng)各個(gè)層次中的每一個(gè)程序(每個(gè)模塊或子程序)的設(shè)計(jì)考慮,以便進(jìn)行編碼和測(cè)試。
軟件開(kāi)發(fā)流程
具體流程如下:
1、啟動(dòng)
在項(xiàng)目啟動(dòng)階段,主要確定項(xiàng)目的目標(biāo)及其可行性。我們需要對(duì)項(xiàng)目的背景、干系人、解決的問(wèn)題等等進(jìn)行分析。并制定項(xiàng)目章程和組建項(xiàng)目團(tuán)隊(duì),包括:產(chǎn)品經(jīng)理、架構(gòu)工程師、UI工程師、開(kāi)發(fā)工程師、測(cè)試工程師等。完成以上準(zhǔn)備工作之后,召開(kāi)項(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)系,利用整分合原則組織起來(lái)),確定項(xiàng)目的里程碑和項(xiàng)目計(jì)劃。同時(shí)制定項(xiàng)目的管理計(jì)劃,包括成本,質(zhì)量。風(fēng)險(xiǎn)等方面的預(yù)測(cè)和控制方案。
3、需求
在需求階段,需要對(duì)采集的需求進(jìn)行需求分析,編寫PRD文檔(PRD就是將宏觀抽象化的業(yè)務(wù),拆分成具體化的功能需求,并通過(guò)文字或圖像等方式呈現(xiàn)出來(lái))、UI設(shè)計(jì)、高保真設(shè)計(jì)。最后進(jìn)入需求評(píng)審,評(píng)審?fù)ㄟ^(guò)則進(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ì)說(shuō)明書等。
5、開(kāi)發(fā)
在明確需求后,開(kāi)發(fā)工程師正式進(jìn)入編碼階段,根據(jù)產(chǎn)品原型圖、UI效果圖、設(shè)計(jì)文檔,選擇合適的開(kāi)發(fā)環(huán)境、開(kāi)發(fā)工具、開(kāi)發(fā)語(yǔ)言等等進(jìn)行實(shí)現(xiàn),這個(gè)階段也是個(gè)很長(zhǎng)很難的階段,也是軟件實(shí)現(xiàn)的核心。
6、功能測(cè)試
對(duì)軟件進(jìn)行測(cè)試是保證軟件質(zhì)量的重要手段。開(kāi)發(fā)工程師開(kāi)發(fā)完成后,可以交由測(cè)試工程師測(cè)試。測(cè)試工程師測(cè)試到BUG要反饋給開(kāi)發(fā),開(kāi)發(fā)進(jìn)行修改。功能測(cè)試通常需要進(jìn)行很多次,直到測(cè)試通過(guò),達(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è)試通過(guò),并與客戶或者上級(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)。
真心想知道軟件的開(kāi)發(fā)過(guò)程
分類: 電腦/網(wǎng)絡(luò) 程序設(shè)計(jì) 其他編程語(yǔ)言
問(wèn)題描述:
希望知道軟件的開(kāi)發(fā)過(guò)程
我是學(xué)軟件的一些理論上的知識(shí)我能知道,但是我想知道真正實(shí)際上是怎么運(yùn)轉(zhuǎn)的,一個(gè)真正的軟件公司的軟件設(shè)計(jì)開(kāi)發(fā)發(fā)布的具體流程。
那位前輩不吝嗇賜教。
謝謝
解析:
軟件系統(tǒng)的開(kāi)發(fā)是按階段進(jìn)行的,一般劃分為以下階段:可行性討論;需求分析;系統(tǒng)設(shè)計(jì)(概要設(shè)計(jì)、詳細(xì)設(shè)計(jì));程序開(kāi)發(fā);編碼,單元測(cè)試;系統(tǒng)測(cè)試;系統(tǒng)維護(hù)。
軟件開(kāi)發(fā)過(guò)程中要明確各階段的工作目標(biāo)、實(shí)現(xiàn)該目標(biāo)所必需的工作內(nèi)容以及達(dá)到的標(biāo)準(zhǔn)。只有在上一個(gè)階段的工作完成后,才能開(kāi)始下一階段的工作。
1.可行性討論
明確系統(tǒng)的目的、功能和要求,了解目前所具備的開(kāi)發(fā)環(huán)境和條件,論證的內(nèi)容有:① 在技術(shù)能力上是否可以支持;② 在經(jīng)濟(jì)上效益如何;③ 在法律上是否符合要求;④ 與部門、企業(yè)的經(jīng)營(yíng)和發(fā)展是否吻合;⑤ 系統(tǒng)投入運(yùn)行后的維護(hù)有無(wú)保障。
可行性討論的目的是判定軟件系統(tǒng)的開(kāi)發(fā)有無(wú)價(jià)值。分析和討論的內(nèi)容形成“系統(tǒng)開(kāi)發(fā)計(jì)劃書”,主要內(nèi)容有:
(1) 開(kāi)發(fā)的目的及所期待的效果;
(2) 系統(tǒng)的基本設(shè)想,涉及的業(yè)務(wù)對(duì)象和范圍;
(3) 開(kāi)發(fā)進(jìn)度表,開(kāi)發(fā)組織結(jié)構(gòu);
(4) 開(kāi)發(fā)、運(yùn)行的費(fèi)用;
(5) 預(yù)期的系統(tǒng)效益;
(6) 開(kāi)發(fā)過(guò)程中可能遇到的問(wèn)題及注意事項(xiàng)。
2、系統(tǒng)需求分析
系統(tǒng)需求分析是軟件系統(tǒng)開(kāi)發(fā)中最重要的一個(gè)階段,直接決定著系統(tǒng)的開(kāi)發(fā)質(zhì)量和成敗,必須明確用戶的要求和應(yīng)用現(xiàn)場(chǎng)環(huán)境的特點(diǎn),了解系統(tǒng)應(yīng)具有哪些功能、數(shù)據(jù)的流程和數(shù)據(jù)之間的聯(lián)系。需求分析應(yīng)有用戶參加,到使用現(xiàn)場(chǎng)進(jìn)行調(diào)研學(xué)習(xí),軟件設(shè)計(jì)人員應(yīng)虛心向技術(shù)人員和使用人員請(qǐng)教,共同討論解決需求問(wèn)題的方法,對(duì)調(diào)查結(jié)果進(jìn)行分析,明確問(wèn)題的所在。需求分析的內(nèi)容編寫成“系統(tǒng)需求分析報(bào)告”。
3.系統(tǒng)設(shè)計(jì)
可根據(jù)系統(tǒng)的規(guī)模分成概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)兩個(gè)階段。
概要設(shè)計(jì)包括:① 劃分系統(tǒng)模塊;② 每個(gè)模塊的功能確定;③ 用戶使用界面概要設(shè)計(jì);④ 輸入輸出數(shù)據(jù)的概要設(shè)計(jì);⑤ 報(bào)表概要設(shè)計(jì);⑥ 數(shù)據(jù)之間的聯(lián)系、流程分析;⑦ 文件和數(shù)據(jù)庫(kù)表的邏輯設(shè)計(jì);⑧ 硬件、軟件開(kāi)發(fā)平臺(tái)的確定;⑨ 有規(guī)律數(shù)據(jù)的規(guī)范化及數(shù)據(jù)惟一性要求。
系統(tǒng)的詳細(xì)設(shè)計(jì)是對(duì)系統(tǒng)的概要設(shè)計(jì)進(jìn)一步具體化,其主要工作有:① 文件和數(shù)據(jù)庫(kù)的物理設(shè)計(jì);② 輸入輸出記錄的方案設(shè)計(jì);③ 對(duì)各子系統(tǒng)的處理方式和處理內(nèi)容進(jìn)行細(xì)化設(shè)計(jì);④ 編制程序設(shè)計(jì)任務(wù)書。程序說(shuō)明書通常包括程序規(guī)范、功能說(shuō)明、程序結(jié)構(gòu)圖,通常用HPIPO(Hierarchy Plus Input Process Output)圖描述。
4、程序開(kāi)發(fā)
根據(jù)程序設(shè)計(jì)任務(wù)書的要求,用計(jì)算機(jī)算法語(yǔ)言實(shí)現(xiàn)解題的步驟,主要工作包括:① 模塊的理解和進(jìn)一步劃分;② 以模塊為單位的邏輯設(shè)計(jì),也就是模塊內(nèi)的流程圖的編制;③ 編寫代碼,用程序設(shè)計(jì)語(yǔ)言編制程序;④ 進(jìn)行模塊內(nèi)功能的測(cè)試、單元測(cè)試。
程序質(zhì)量的要求包括:① 滿足要求的確切功能;② 處理效率高;③ 操作方便,用戶界面友好;④ 程序代碼的可讀性好,函數(shù)、變量標(biāo)識(shí)符合規(guī)范;⑤ 擴(kuò)充性、維護(hù)性好。
降低程序的復(fù)雜性也是十分重要的。系統(tǒng)的復(fù)雜性由模塊間的接口數(shù)來(lái)衡量,一般地講,n個(gè)模塊的接口數(shù)的最大值為n(n-1)/2;若是層次結(jié)構(gòu),n個(gè)模塊的接口數(shù)的最小值為n-1。為使復(fù)雜性最小,對(duì)模塊的劃分設(shè)計(jì)常常采用層次結(jié)構(gòu)。要注意編制的程序或模塊應(yīng)容易理解、容易修改,模塊應(yīng)相互獨(dú)立,對(duì)某一模塊的修改應(yīng)對(duì)其他模塊的功能不產(chǎn)生影響,模塊間的聯(lián)系盡可能少。
5.系統(tǒng)測(cè)試
測(cè)試是為了發(fā)現(xiàn)程序中的錯(cuò)誤,對(duì)于設(shè)計(jì)的軟件,出現(xiàn)錯(cuò)誤是難免的。系統(tǒng)測(cè)試通常由經(jīng)驗(yàn)豐富的設(shè)計(jì)人員設(shè)計(jì)測(cè)試方案和測(cè)試樣品,并寫出測(cè)試過(guò)程的詳細(xì)報(bào)告。系統(tǒng)測(cè)試是在單元測(cè)試的基礎(chǔ)上進(jìn)行的,包括:① 測(cè)試方案的設(shè)計(jì);② 進(jìn)行測(cè)試;③ 寫出測(cè)試報(bào)告;④ 用戶對(duì)測(cè)試結(jié)果進(jìn)行評(píng)價(jià)。
6、文檔資料
文檔包括開(kāi)發(fā)過(guò)程中的所有技術(shù)資料以及用戶所需的文檔,軟件系統(tǒng)的文檔一般可分為系統(tǒng)文檔和用戶文檔兩類。用戶文檔主要描述系統(tǒng)功能和使用方法,并不考慮這些功能是怎樣實(shí)現(xiàn)的;系統(tǒng)文檔描述系統(tǒng)設(shè)計(jì)、實(shí)現(xiàn)和測(cè)試等方面的內(nèi)容。文檔是影響軟件可維護(hù)性、可用性的決定因素,有句話講,系統(tǒng)編程人員的每一張紙片都要保留,所以文檔的編制是軟件開(kāi)發(fā)過(guò)程中的一項(xiàng)重要工作。
系統(tǒng)文檔包括:開(kāi)發(fā)軟件系統(tǒng)在計(jì)劃、需求分析、設(shè)計(jì)、編制、調(diào)試、運(yùn)行等階段的有關(guān)文檔。在對(duì)軟件系統(tǒng)進(jìn)行修改時(shí),系統(tǒng)文檔應(yīng)同步更新,并注明修改者和修改日期,如有必要應(yīng)注明修改原因,應(yīng)切記過(guò)時(shí)的文檔是無(wú)用的文檔。
用戶文檔包括:① 系統(tǒng)功能描述;② 安裝文檔,說(shuō)明系統(tǒng)安裝步驟以及系統(tǒng)的硬件配置方法;③ 用戶使用手冊(cè),說(shuō)明使用軟件系統(tǒng)方法和要求,疑難問(wèn)題解答;④ 參考手冊(cè),描述可以使用的所有系統(tǒng)設(shè)施,解釋系統(tǒng)出錯(cuò)信息的含義及解決途徑。
7、系統(tǒng)的運(yùn)行與維護(hù)
系統(tǒng)只有投入運(yùn)行后,才能進(jìn)一步對(duì)系統(tǒng)檢驗(yàn),發(fā)現(xiàn)潛在的問(wèn)題,為了適應(yīng)環(huán)境的變化和用戶要求的改變,可能會(huì)對(duì)系統(tǒng)的功能、使用界面進(jìn)行修改。要對(duì)每次發(fā)現(xiàn)的問(wèn)題和修改內(nèi)容建立系統(tǒng)維護(hù)文檔,并使系統(tǒng)文檔資料同步更新。
關(guān)于軟件開(kāi)發(fā)流程的問(wèn)題和軟件開(kāi)發(fā)的流程及各個(gè)階段的結(jié)果的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。