軟件開發(fā)的步驟和作用(軟件開發(fā)的主要方法有哪些)
本篇文章給大家談?wù)勡浖_發(fā)的步驟和作用,以及軟件開發(fā)的主要方法有哪些對(duì)應(yīng)的知識(shí)點(diǎn),希望對(duì)各位有所幫助,不要忘了收藏本站喔。
軟件開發(fā)的流程都有哪些步驟呢?
軟件開發(fā)是指一個(gè)軟件項(xiàng)目的開發(fā),如市場(chǎng)調(diào)查,需求分析,可行性分析,初步設(shè)計(jì),詳細(xì)設(shè)計(jì),形成文檔,建立初步模型,編寫詳細(xì)代碼,測(cè)試修改,發(fā)布等。
軟件是怎么樣開發(fā)出來的
第一個(gè)步驟是市場(chǎng)調(diào)研,技術(shù)和市場(chǎng)要結(jié)合才能體現(xiàn)最大價(jià)值。
第二個(gè)步驟是需求分析,這個(gè)階段需要出三樣?xùn)|西,用戶視圖,數(shù)據(jù)詞典和用戶操作手 冊(cè)。
用戶視圖 是該軟件用戶(包括終端用戶和管理用戶)所能看到的頁面樣式,這里面包含了 很多操作方面的流程和條件。
數(shù)據(jù)詞典 是指明數(shù)據(jù)邏輯關(guān)系并加以整理的東東,完成了數(shù)據(jù)詞典,數(shù)據(jù)庫的設(shè)計(jì)就完成了一半多。
用戶操作手冊(cè)是指明了操作流程的說明書。
請(qǐng)注意,用戶操作流程和用戶視圖是由需求決定的,因此應(yīng)該在軟件設(shè)計(jì)之前完成,完成這些,就為程序研發(fā)提供了約束和準(zhǔn)繩,很遺憾太多公司都不是這樣做的,因果顛倒,順序不分,開發(fā)工作和實(shí)際需求往往因此產(chǎn)生隔閡脫節(jié)的現(xiàn)象。
需求分析,除了以上工作,筆者以為作為項(xiàng)目設(shè)計(jì)者應(yīng)當(dāng)完整的做出項(xiàng)目的性能需求說明 書,因?yàn)橥阅苄枨笾挥卸夹g(shù)的人才可能理解,這就需要技術(shù)專家和需求方(客戶或公司市場(chǎng)部門)能夠有真正的溝通和了解。
第三個(gè)步驟是概要設(shè)計(jì),將系統(tǒng)功能模塊初步劃分,并給出合理的研發(fā)流程和資源要求。
作為快速原型設(shè)計(jì)方法,完成概要設(shè)計(jì)就可以進(jìn)入編碼階段了,通常采用這種方法是因?yàn)樯婕暗难邪l(fā)任務(wù)屬于新領(lǐng)域,技術(shù)主管人員一上來無法給出明確的詳細(xì)設(shè)計(jì)說明書,但是 并不是說詳細(xì)設(shè)計(jì)說明書不重要,事實(shí)上快速原型法在完成原型代碼后,根據(jù)評(píng)測(cè)結(jié)果和 經(jīng)驗(yàn)教訓(xùn)的總結(jié),還要重新進(jìn)行詳細(xì)設(shè)計(jì)的步驟。
第四個(gè)步驟是詳細(xì)設(shè)計(jì),這是考驗(yàn)技術(shù)專家設(shè)計(jì)思維的重要關(guān)卡,詳細(xì)設(shè)計(jì)說明書應(yīng)當(dāng)把 具體的模塊以最’干凈’的方式(黑箱結(jié)構(gòu))提供給編碼者,使得系統(tǒng)整體模塊化達(dá)到最 大;一份好的詳細(xì)設(shè)計(jì)說明書,可以使編碼的復(fù)雜性減低到最低,實(shí)際上,嚴(yán)格的講詳細(xì) 設(shè)計(jì)說明書應(yīng)當(dāng)把每個(gè)函數(shù)的每個(gè)參數(shù)的定義都精精細(xì)細(xì)的提供出來,從需求分析到概要 設(shè)計(jì)到完成詳細(xì)設(shè)計(jì)說明書,一個(gè)軟件項(xiàng)目就應(yīng)當(dāng)說完成了一半了。換言之,一個(gè)大型軟 件系統(tǒng)在完成了一半的時(shí)候,其實(shí)還沒有開始一行代碼工作。
那些把作軟件的程序員簡(jiǎn)單理解為寫代碼的,就從根子上犯了錯(cuò)誤了。
第五個(gè)步驟是編碼,在規(guī)范化的研發(fā)流程中,編碼工作在整個(gè)項(xiàng)目流程里最多不會(huì)超過1/ 2,通常在1/3的時(shí)間,所謂磨刀不誤砍柴功,設(shè)計(jì)過程完成的好,編碼效率就會(huì)極大提 高,編碼時(shí)不同模塊之間的進(jìn)度協(xié)調(diào)和協(xié)作是最需要小心的,也許一個(gè)小模塊的問題就可能影響了整體進(jìn)度,讓很多程序員因此被迫停下工作等待,這種問題在很多研發(fā)過程中都 出現(xiàn)過。
編碼時(shí)的相互溝通和應(yīng)急的解決手段都是相當(dāng)重要的,對(duì)于程序員而言,bug永 遠(yuǎn)存在,你必須永遠(yuǎn)面對(duì)這個(gè)問題,大名鼎鼎的微軟,可曾有連續(xù)三個(gè)月不發(fā)補(bǔ)丁的時(shí)候 嗎?從來沒有!
第六個(gè)步驟是測(cè)試
測(cè)試有很多種:
按照測(cè)試執(zhí)行方,可以分為內(nèi)部測(cè)試和外部測(cè)試
按照測(cè)試范圍,可以分為模塊測(cè)試和整體聯(lián)調(diào)
按照測(cè)試條件,可以分為正常操作情況測(cè)試和異常情況測(cè)試
按照測(cè)試的輸入范圍,可以分為全覆蓋測(cè)試和抽樣測(cè)試
以上都很好理解,不再解釋。
總之,測(cè)試同樣是項(xiàng)目研發(fā)中一個(gè)相當(dāng)重要的步驟,對(duì)于一個(gè)大型軟件,3個(gè)月到1年的外部測(cè)試都是正常的,因?yàn)橛肋h(yuǎn)都會(huì)又不可預(yù)料的問題存在。
完成測(cè)試后,完成驗(yàn)收并完成最后的一些幫助文檔,整體項(xiàng)目才算告一段落,當(dāng)然日后少不了升級(jí),修補(bǔ)等等工作,只要不是想通過一錘子買賣騙錢,就要不停的跟蹤軟件的運(yùn)營(yíng) 狀況并持續(xù)修補(bǔ)升級(jí),直到這個(gè)軟件被徹底淘汰為止。
什么是軟件開發(fā)的核心問題
按照軟件工程鼻祖,《人月神話》作者 Brooks 在“沒有銀彈——軟件工程中的根本和次要問題”一章中闡述的思想,軟件開發(fā)的核心問題就是如何從概念上對(duì)一個(gè)復(fù)雜的業(yè)務(wù)系統(tǒng)進(jìn)行建模。這個(gè)建模是含義廣泛的,不僅僅包括對(duì)象建模,還包括數(shù)據(jù)建模、算法建模等等一系列的內(nèi)容。總而言之是要先找到解決復(fù)雜問題的突破口(先要搞明白需要做什么,然后再考慮如何做)。至于采用什么表示方法(簡(jiǎn)單文本、UML 圖、E-R 圖)、采用什么高級(jí)語言、是否一定要用面向?qū)ο?、使用什么開發(fā)工具都是次要的問題。
軟件開發(fā)方法
軟件開發(fā)方法(Software Development Method)是指軟件開發(fā)過程所遵循的辦法和步驟。
軟件開發(fā)活動(dòng)的目的是有效地得到一些工作產(chǎn)物,也就是一個(gè)運(yùn)行的系統(tǒng)及其支持文檔,并且滿足有關(guān)的質(zhì)量要求。軟件開發(fā)是一種非常復(fù)雜的腦力勞動(dòng),所以經(jīng)常更多討論的是軟件開發(fā)方法學(xué),指的是規(guī)則、方法和工具的集成,既支持開發(fā),也支持以后的演變過程(交付運(yùn)行后,系統(tǒng)還會(huì)變化,或是為了改錯(cuò),或是為了功能的增減)。
關(guān)于組成軟件開發(fā)和系統(tǒng)演化的活動(dòng)有著各種模型(參見軟件生存周期,軟件開發(fā)模型,軟件過程),但是典型地都包含了以下的過程或活動(dòng):分析、設(shè)計(jì)、實(shí)現(xiàn)、確認(rèn)(測(cè)試驗(yàn)收)、演化(維護(hù))。
有些軟件開發(fā)方法是專門針對(duì)某一開發(fā)階段的,屬于局部性的軟件開發(fā)方法。
特別是軟件開發(fā)的實(shí)踐表明,在開發(fā)的早期階段多做努力,在后來的測(cè)試和維護(hù)階段就會(huì)使費(fèi)用較大地得以縮減。因此,針對(duì)分析和設(shè)計(jì)階段的軟件開發(fā)方法特別受到重視。其它階段的方法,從程序設(shè)計(jì)發(fā)展的初期起就是研究的重點(diǎn),
已經(jīng)發(fā)展得比較成熟(參見程序設(shè)計(jì),維護(hù)過程)。除了分階段的局部性軟件開發(fā)方法之外,還有覆蓋開發(fā)全過程的全局性方法,尤為軟件開發(fā)方法學(xué)注意的重點(diǎn)。
對(duì)軟件開發(fā)方法的一般要求:當(dāng)提出一種軟件開發(fā)方法時(shí),應(yīng)該考慮許多因素,包括:
①覆蓋開發(fā)全過程,并且便于在各階段間的過渡;
②便于在開發(fā)各階段中有關(guān)人員之間的通信;
③支持有效的解決問題的
④支持系統(tǒng)設(shè)計(jì)和開發(fā)的各種不同途徑;
⑤在開發(fā)過程中支持軟件正確性的校驗(yàn)和驗(yàn)證;
⑥便于在系統(tǒng)需求中列入設(shè)計(jì)、實(shí)際和性能的約束;
⑦支持設(shè)計(jì)師和其他技術(shù)人員的智力勞動(dòng);
⑧在系統(tǒng)的整個(gè)生存周期都支持它的演化;
⑨受自動(dòng)化工具的支持。此外,在開發(fā)的所有階段,有關(guān)的軟件產(chǎn)物都應(yīng)該是可見和可控的;軟件開發(fā)方法應(yīng)該可教學(xué)、可轉(zhuǎn)移,還應(yīng)該是開放的,即可以容納新的技術(shù)、管理方法和新工具,并且與已有的標(biāo)準(zhǔn)相適應(yīng)。
參考:
軟件開發(fā)過程一般有幾個(gè)階段?每個(gè)階段的作用?
軟件開發(fā)一般分為五個(gè)階段: 1.問題的定義及規(guī)劃 此階段是軟件開發(fā)與需求放共同討論,主要確定軟件的開發(fā)目標(biāo)及其可行性。 2.需求分析在確定軟件開發(fā)可行性的情況下,對(duì)軟件需要實(shí)現(xiàn)的各個(gè)功能進(jìn)行詳細(xì)需求分析。需求分析階段是一個(gè)很重要的階段,這一階段做的好,將為整個(gè)軟件項(xiàng)目的開發(fā)打下良好的基礎(chǔ)?!拔ㄒ徊蛔兊氖亲兓旧怼?,同樣軟件需求也是在軟件愛你開發(fā)過程中不斷變化和深入的,因此,我們必須定制需求變更計(jì)劃來應(yīng)付這種變化,以保護(hù)整個(gè)項(xiàng)目的正常進(jìn)行。 3.軟件設(shè)計(jì)此階段中偶要根據(jù)需求分析的結(jié)果,對(duì)整個(gè)軟件系統(tǒng)進(jìn)行設(shè)計(jì),如系統(tǒng)框架設(shè)計(jì)、數(shù)據(jù)庫設(shè)計(jì)等。軟件設(shè)計(jì)一般分為總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)。還的軟件設(shè)計(jì)將為軟件程序編寫打下良好的基礎(chǔ)。 4.程序編碼此階段是將軟件設(shè)計(jì)的結(jié)果轉(zhuǎn)化為計(jì)算機(jī)可運(yùn)行的程序代碼。在程序編碼中必定要制定統(tǒng)一、符合標(biāo)準(zhǔn)的編寫規(guī)范。以保證程序的可讀性、易維護(hù)性。提高程序的運(yùn)行效率。 5.軟件測(cè)試在軟件設(shè)計(jì)完成之后要進(jìn)行嚴(yán)密的測(cè)試,一發(fā)現(xiàn)軟件在整個(gè)軟件設(shè)計(jì)過程中存在的問題并加以糾正。整個(gè)測(cè)試階段分為單元測(cè)試、組裝測(cè)試、系統(tǒng)測(cè)試三個(gè)階段進(jìn)行。測(cè)試方法主要有白盒測(cè)試和黑盒測(cè)試。 以上就是軟件開發(fā)過程的五個(gè)階段,但是有的時(shí)候在軟件愛你開發(fā)過程中并不是必須按照這個(gè)過程進(jìn)行的。
軟件開發(fā)的一般流程是什么?
軟件開發(fā)經(jīng)過幾十年發(fā)展已經(jīng)非常成熟,其通用流程如下:
1、需求溝通:由開發(fā)方向需求方詳細(xì)調(diào)研,了解甲方想要做什么軟件,這個(gè)過程要輸出需求文檔和原型文檔;
2、系統(tǒng)設(shè)計(jì):由技術(shù)經(jīng)理將需求文檔轉(zhuǎn)化為程序員能看懂的技術(shù)文檔,這個(gè)過程要輸出系統(tǒng)設(shè)計(jì)書;
3、開發(fā)實(shí)施:即由程序員跟進(jìn)設(shè)計(jì)文檔進(jìn)行具體的編程,當(dāng)然,如果采用MYAPPS低代碼平臺(tái),那這個(gè)過程以可視化拖拉拽配置為主,可以節(jié)省大量的開發(fā)成本;
4、系統(tǒng)測(cè)試:又可以細(xì)分為功能測(cè)試(確保軟件功能滿足),性能測(cè)試(確保軟件的并發(fā)數(shù)等性能可靠性)和安全測(cè)試(保證軟件使用過程中沒有安全漏洞,免受木馬攻擊),如果按測(cè)試主體劃分還可以分為開發(fā)測(cè)試(開發(fā)方組織的測(cè)試)和客戶測(cè)試(由最終使用用戶進(jìn)行使用前測(cè)試);
5、系統(tǒng)上線:即將軟件程序由開發(fā)環(huán)境部署到正式使用環(huán)境,對(duì)員工進(jìn)行正式使用培訓(xùn),進(jìn)行組織架構(gòu),用戶賬號(hào)等基礎(chǔ)數(shù)據(jù)同步,然后就正式使用啦!
6、系統(tǒng)運(yùn)維:指上線后各種可能出現(xiàn)疑難雜癥調(diào)查分析和解決。
軟件開發(fā)的一般流程就是以上六大步驟,業(yè)內(nèi)不排除有其他劃分模型或模式,但萬變不離其宗,都需要把上述事項(xiàng)逐一完成才能最終交付!
軟件開發(fā)過程一般有幾個(gè)階段?每個(gè)階段有什么作用?
1、首先制定項(xiàng)目計(jì)劃,最初計(jì)劃是里程碑性質(zhì)的??梢韵劝雌俨寄P驮O(shè)置,里程碑點(diǎn)主要為需求評(píng)審、設(shè)計(jì)評(píng)審、經(jīng)過代碼開發(fā)和單元測(cè)試后進(jìn)行集成測(cè)試、部署上線是一個(gè)很重要的里程碑,一般用戶會(huì)期望系統(tǒng)何時(shí)能使用,進(jìn)入試運(yùn)行期。
2、需求開發(fā)階段:怎么樣寫好需求很關(guān)鍵,這個(gè)需要實(shí)踐經(jīng)驗(yàn)鍛煉自己。如果有項(xiàng)目成員,可以一起做需求,這個(gè)階段對(duì)于業(yè)務(wù)理解、分析、如何開展調(diào)研以及文字表述、業(yè)務(wù)流程圖描述還有文檔編輯能力都有不少要求。一般分為《用戶需求說明書》和《需求規(guī)格說明書》,小項(xiàng)目可以寫一個(gè)《需求分析報(bào)告》,《用戶需求說明書》是用用戶的語言進(jìn)行描述,讓用戶和開發(fā)團(tuán)隊(duì)對(duì)于需求的達(dá)成一致的理解,《需求規(guī)格說明書》,則是對(duì)用戶需求的分析,形成系統(tǒng)要具有的功能,這個(gè)是真正提供用戶可交互操作的文檔,也就是后期設(shè)計(jì)和代碼開發(fā)的重要基線。
另外,作為了解需求,拿出用戶UI和用戶交流也是一項(xiàng)比較重要的需求獲取手段,雖然這個(gè)屬于設(shè)計(jì)的范疇
3、系統(tǒng)設(shè)計(jì)階段:
系統(tǒng)總體架構(gòu),結(jié)合用戶對(duì)系統(tǒng)環(huán)境、開發(fā)語言以及運(yùn)行的網(wǎng)絡(luò)硬件等要求,確定開發(fā)工具等,對(duì)應(yīng)用系統(tǒng)關(guān)系進(jìn)行架構(gòu)性設(shè)計(jì),通過需求階段對(duì)用戶的分析歸類,用圖的方式描述出用戶和各子系統(tǒng)或模塊的全局視圖,以及和其他系統(tǒng)的關(guān)系。也就是搞清楚系統(tǒng)的邊界問題。
概要設(shè)計(jì)中除了高層架構(gòu)設(shè)計(jì),還需要設(shè)計(jì)網(wǎng)絡(luò)拓?fù)鋱D,以及系統(tǒng)部署圖。概要設(shè)計(jì)比較重要的還有就是子系統(tǒng)、模塊進(jìn)行合理的劃分。模塊的名稱很大程度上會(huì)成為用戶的主要菜單,如何用用戶的角度去取比較清楚的子系統(tǒng)和模塊是很重要的。
4、代碼開發(fā)和單元測(cè)試階段:這個(gè)階段一般來說需要改進(jìn)瀑布模型,類似跌代開發(fā),把模塊進(jìn)行合理劃分,把項(xiàng)目總體計(jì)劃的代碼開發(fā)測(cè)試階段劃分為多個(gè)時(shí)間段,每個(gè)時(shí)間段都包括代碼開發(fā)、單元測(cè)試和集成測(cè)試,這個(gè)階段還需要對(duì)需求變更進(jìn)行跟蹤控制,如果需求有變更,那么要把需求文檔、設(shè)計(jì)文檔都重新跟上。跌代開發(fā)的好處就是不讓代碼開發(fā)階段拉的過程,沒有進(jìn)行及時(shí)的自我檢查,不小心到了提交時(shí)間,卻不是用戶想要的,還有可能都不是自己想要的。
項(xiàng)目經(jīng)理重要的責(zé)任是控制好進(jìn)度,能及早發(fā)現(xiàn)風(fēng)險(xiǎn),并能拿出好的預(yù)防和解決辦法的措施。合理安排好開發(fā)團(tuán)隊(duì)的任務(wù),合時(shí)的任務(wù)安排和銜接,你會(huì)覺得非常有藝術(shù)感,這個(gè)要自己體會(huì)了。另外,關(guān)注項(xiàng)目團(tuán)隊(duì)各人員的狀況,保持高的戰(zhàn)斗力,及時(shí)發(fā)現(xiàn)并能鼓勵(lì)團(tuán)隊(duì)共同朝一個(gè)目標(biāo)前進(jìn)。
5、測(cè)試工作,測(cè)試是項(xiàng)目的很重要的環(huán)節(jié),怎么測(cè)試,怎么準(zhǔn)確測(cè)試,怎么有效測(cè)試,怎么覆蓋測(cè)試,時(shí)間、人手、經(jīng)驗(yàn)扽個(gè)方面都會(huì)有制約。高級(jí)測(cè)試人員能夠分析系統(tǒng)各測(cè)試要點(diǎn),在需求、設(shè)計(jì)階段都要參與,提早了解如何去測(cè)試,能寫出測(cè)試用例。
6、文檔工作,文檔在項(xiàng)目開發(fā)中也占有重要位置,除非你覺得代碼是項(xiàng)目唯一的成果,那么你把文檔拋掉吧,什么都在你的腦子里,團(tuán)隊(duì)中人員一走,項(xiàng)目的一部分也就帶走了。代碼開發(fā)其實(shí)也需要文檔,代碼是成果,代碼注釋是成果,模塊開發(fā)卷宗也是重要的成果,因?yàn)槌绦騿T在開發(fā)時(shí)候的邏輯是怎么樣的,對(duì)于今后查問題很有作用。除非你的系統(tǒng)設(shè)計(jì)程度到了方法、類,把代碼邏輯也都設(shè)計(jì)好了,那么程序員就CODEING去吧。
7、QA是對(duì)項(xiàng)目過程的質(zhì)量保障,有些公司吧QA和測(cè)試工作合成一個(gè)崗位叫做QA測(cè)試人員,或者就叫QA人員。QA是對(duì)項(xiàng)目全過程的監(jiān)管,獨(dú)立于項(xiàng)目之外。監(jiān)督項(xiàng)目經(jīng)理在各項(xiàng)目里程碑提交相關(guān)成果,入庫形成基線。
軟件開發(fā)步驟包括哪些過程?
軟件系統(tǒng)開發(fā)分為以下幾個(gè)步驟:
一、需求分析
1、需求分析有分為業(yè)務(wù)需求、用戶需求、功能需求三種 類型:
A、業(yè)務(wù)需求(business requirement):反映了組織機(jī)構(gòu)或客戶對(duì)系統(tǒng)、產(chǎn)品高層次的目的要求,它們?cè)陧?xiàng)目視圖與范圍文檔中予以說明。
B、用戶需求(user requirement) :文檔描述了用戶使用產(chǎn)品必須要完成的任務(wù),這在使用實(shí)例文檔或方案腳本說明中予以說明。
C、功能需求(functional requirement):定義了開發(fā)人員必須實(shí)現(xiàn)的軟件功能,使得用戶能完成他們的任務(wù),從而滿足了業(yè)務(wù)需求。
2、需求調(diào)研分析
A、相關(guān)系統(tǒng)分析員和用戶初步了解需求,然后用WORD列出要開發(fā)的系統(tǒng)的大功能模塊,每個(gè)大功能模塊有哪些小功能模塊,對(duì)于有些需求比較明確相關(guān)的界面時(shí),在這一步里面可以初步定義好少量的界面。
B、系統(tǒng)分析員深入了解和分析需求,根據(jù)自己的經(jīng)驗(yàn)和需求用WORD或相關(guān)的工具再做出一份文檔系統(tǒng)的功能需求文檔。這次的文檔會(huì)清楚例用系統(tǒng)大致的大功能模塊,大功能模塊有哪些小功能模塊,并且還例出相關(guān)的界面和界面功能。
C、系統(tǒng)分析員和用戶再次確認(rèn)需求。
二、軟件設(shè)計(jì)
概要設(shè)計(jì)
首先,開發(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ǔ)。
業(yè)務(wù)需求和用戶需求是軟件需求分析的基礎(chǔ),也是軟件構(gòu)建的前提。系統(tǒng)分析員通過對(duì)業(yè)務(wù)需求和用戶需求的分解,將其轉(zhuǎn)換成形式化描述的軟件功能需求。開發(fā)軟件系統(tǒng)最為困難的部分,就是準(zhǔn)確說明開發(fā)什么。這就需要在開發(fā)的過程中不斷的與用戶進(jìn)行交流與探討,使系統(tǒng)更加詳盡,準(zhǔn)確到位。這就需要確定用戶是否需要這樣的產(chǎn)品類型以及獲取每個(gè)用戶類的需求。
詳細(xì)設(shè)計(jì)
在概要設(shè)計(jì)的基礎(chǔ)上,開發(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)系,需要說明軟件系統(tǒng)各個(gè)層次中的每一個(gè)程序(每個(gè)模塊或子程序)的設(shè)計(jì)考慮,應(yīng)當(dāng)保證軟件的需求完全分配給整個(gè)軟件。以便進(jìn)行編碼和測(cè)試。詳細(xì)設(shè)計(jì)應(yīng)當(dāng)足夠詳細(xì),能夠根據(jù)詳細(xì)設(shè)計(jì)報(bào)告進(jìn)行編碼。編碼
在軟件編碼階段,開發(fā)者根據(jù)《軟件系統(tǒng)詳細(xì)設(shè)計(jì)報(bào)告》中對(duì)數(shù)據(jù)結(jié)構(gòu)、算法分析和模塊實(shí)現(xiàn)等方面的設(shè)計(jì)要求,開始具體的編寫程序工作,分別實(shí)現(xiàn)各模塊的功能,從而實(shí)現(xiàn)對(duì)目標(biāo)系統(tǒng)的功能、性能、接口、界面等方面的要求。軟件交付準(zhǔn)備在軟件測(cè)試證明軟件達(dá)到要求后,軟件開發(fā)者應(yīng)向用戶提交開發(fā)的目標(biāo)安裝程序、數(shù)據(jù)庫的數(shù)據(jù)字典、《用戶安裝手冊(cè)》、《用戶使用指南》、需求報(bào)告、設(shè)計(jì)報(bào)告、測(cè)試報(bào)告等雙方合同約定的產(chǎn)物。 《用戶安裝手冊(cè)》應(yīng)詳細(xì)介紹安裝軟件對(duì)運(yùn)行環(huán)境的要求、安裝軟件的定義和內(nèi)容、在客戶端、服務(wù)器端及中間件的具體安裝步驟、安裝后的系統(tǒng)配置。 《用戶使用指南》應(yīng)包括軟件各項(xiàng)功能的使用流程、操作步驟、相應(yīng)業(yè)務(wù)介紹、特殊提示和注意事項(xiàng)等方面的內(nèi)容,在需要時(shí)還應(yīng)舉例說明。
三、測(cè)試
測(cè)試編寫好的系統(tǒng)。交給用戶使用,用戶使用后一個(gè)一個(gè)的確認(rèn)每個(gè)功能。
四、培訓(xùn)及上線
再次強(qiáng)調(diào)內(nèi)容整理于網(wǎng)絡(luò)資源,僅供參考。
軟件開發(fā)流程八個(gè)步驟
1、項(xiàng)目開發(fā)目的分析與確定
軟件開發(fā)流程的這一階段,主要是在在軟件開發(fā)商將開發(fā)項(xiàng)目確定下來之后,需要與需求方進(jìn)行討論,確定需求方對(duì)于軟件開發(fā)的需要實(shí)現(xiàn)目標(biāo)及其具體需要的功能等等,并確定是否可達(dá)成。
2、需求分析
這是軟件開發(fā)流程的第二個(gè)階段,也是為軟件開發(fā)的正常進(jìn)行確定具體思路的階段。在確定軟件開發(fā)可進(jìn)行后,必須要對(duì)客戶需要實(shí)現(xiàn)的軟件功能需求進(jìn)行具體詳細(xì)的分析。同時(shí)應(yīng)當(dāng)考慮在開發(fā)過程中可能出現(xiàn)的變化情況,制定需求變更計(jì)劃隨時(shí)應(yīng)對(duì)特殊情況的發(fā)生,保證軟件開發(fā)流程的順暢進(jìn)行。
3、設(shè)計(jì)
軟件設(shè)計(jì)要根據(jù)上一階段對(duì)軟件功能需求分析的結(jié)果,來設(shè)計(jì)軟件系統(tǒng)的框架結(jié)構(gòu)、功能模塊和數(shù)據(jù)庫等等。分為總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)兩個(gè)部分。
4、編程
軟件開發(fā)流程中每上一個(gè)階段都是下一個(gè)階段的實(shí)施進(jìn)行的基礎(chǔ)。編程也是根據(jù)對(duì)軟件設(shè)計(jì),將軟件設(shè)計(jì)的各部分需求通計(jì)算機(jī)程序代碼來實(shí)現(xiàn)運(yùn)行,編程有統(tǒng)一、規(guī)范的程序編寫規(guī)則,保證軟件程序的易懂性、易維護(hù)性。
5、軟件測(cè)試
在根據(jù)設(shè)計(jì)將客戶軟件需用編程代碼來實(shí)現(xiàn)之后,也就是軟件程序完成之后,需要對(duì)編寫的程序,形成整體構(gòu)架、功能進(jìn)行單元、組裝、系統(tǒng)三階段的測(cè)試,以測(cè)試程序編寫的正確性,以及對(duì)客戶需求功能滿足的充分性,以此來確定軟件是否達(dá)到開發(fā)要求,同時(shí)也是一個(gè)發(fā)現(xiàn)問題、糾正問題的過程。
6、軟件交付
軟件開發(fā)流程通過以上核心環(huán)節(jié)完成了軟件開發(fā),接下來就是在軟件開發(fā)達(dá)到客戶需求之后,開發(fā)者將軟件系統(tǒng)交予客戶,并將軟件安裝程序、數(shù)據(jù)庫的數(shù)據(jù)字典、《用戶安裝手冊(cè)》、《用戶使用指南》、需求報(bào)告、設(shè)計(jì)報(bào)告、測(cè)試報(bào)告等產(chǎn)物交付給客戶。
同時(shí)指導(dǎo)客戶進(jìn)行軟件安裝、以及安裝技巧,提醒客戶注意軟件運(yùn)行狀況、環(huán)境、服務(wù)器及相關(guān)中間件的檢測(cè)與注意事項(xiàng),知道客戶軟件的實(shí)際操作方法、使用流程等等問題,實(shí)現(xiàn)合同規(guī)定任務(wù)。
7、驗(yàn)收
用戶在接收開發(fā)商交付的軟件開發(fā)結(jié)果,并進(jìn)行實(shí)際操作、測(cè)試運(yùn)行,實(shí)現(xiàn)滿意結(jié)果之后,對(duì)開發(fā)出來的軟件進(jìn)行驗(yàn)收。
8、維護(hù)
定制開發(fā)的軟件通常都需要提供售后服務(wù),定期對(duì)軟件進(jìn)行維護(hù),或者根據(jù)用戶出現(xiàn)的新需求,進(jìn)行應(yīng)用軟件程序的修改,使之不斷滿足客戶實(shí)際需求。
關(guān)于軟件開發(fā)的步驟和作用和軟件開發(fā)的主要方法有哪些的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。