精品福利小视频国产_日韩国产亚洲欧美视频_91亚洲人成手机在线观看_96sao国产成视频永久免费_欧美v国产v日韩_永久免费毛片无码网站性色毛片_2022最新国产精品网站_午夜福利体验试看5次_欧美日韩自偷自拍另类_亚洲成a人片在线免费观看无码专区

軟件開發(fā)的流程及步驟(軟件開發(fā)的四個(gè)階段)

軟件開發(fā) 1893
今天給各位分享軟件開發(fā)的流程及步驟的知識(shí),其中也會(huì)對(duì)軟件開發(fā)的四個(gè)階段進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、軟件開發(fā)自學(xué)步驟

今天給各位分享軟件開發(fā)的流程及步驟的知識(shí),其中也會(huì)對(duì)軟件開發(fā)的四個(gè)階段進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!

本文目錄一覽:

軟件開發(fā)自學(xué)步驟

軟件開發(fā)自學(xué)步驟包括:基礎(chǔ)學(xué)習(xí)、編程學(xué)習(xí)、理論實(shí)踐。

1、基礎(chǔ)學(xué)習(xí)

計(jì)算機(jī)學(xué)習(xí)過程往往是由硬件開始,走向軟件,但最終又會(huì)走向硬件。學(xué)軟件開發(fā)往往要與數(shù)學(xué),英語打交道,因?yàn)槟壳暗挠?jì)算機(jī)程序設(shè)計(jì)語言主要是外國開發(fā)的,編代碼的主要語句往往是英文,中文通常是做解釋和說明用。有一定的英文基礎(chǔ),在計(jì)算機(jī)學(xué)習(xí)上可以事半功倍。

2、編程學(xué)習(xí)

如果把計(jì)算機(jī)看成一個(gè)人,編程語言就是你和計(jì)算機(jī)對(duì)話的語言,你需要用計(jì)算機(jī)能聽懂的語言才能和計(jì)算機(jī)對(duì)話,就像你需要用當(dāng)?shù)氐恼Z言才能和老外溝通一個(gè)道理。不過由于發(fā)明一種新的編程語言的成本相當(dāng)?shù)停删透邢喈?dāng)高,因此目前已經(jīng)出現(xiàn)了太多的編程語言。即有針對(duì)娃娃的圖形化編程語言,也有中文的編程語言,更有針對(duì)不同計(jì)算平臺(tái)的編程語言,試圖學(xué)習(xí)所有的編程語言是不明智的,也是毫無必要的,因?yàn)榫幊套钪匾氖撬季S,語言只是向計(jì)算機(jī)表達(dá)你的思維的一個(gè)手段而言。

3、理論實(shí)踐

學(xué)習(xí)編寫程序,不僅要領(lǐng)悟老師的各種知識(shí)點(diǎn),多看教材,還要結(jié)合課程重視上機(jī)的練習(xí)。上機(jī)前要計(jì)劃一下上機(jī)做些什么,要有一些新思路來設(shè)計(jì)和調(diào)試程序。只有在上機(jī)過程中不斷發(fā)現(xiàn)問題,解決問題,才能逐步邁向程序員之路。因此,實(shí)操要與理論同步,緊密結(jié)合,方可為編程打下扎實(shí)的基礎(chǔ)。

怎么開發(fā)一個(gè)軟件!

1、軟件開發(fā)的第一個(gè)流程是項(xiàng)目開發(fā)目的分析與確定,主要是在軟件開發(fā)商將開發(fā)項(xiàng)目確定下來之后,需要與需求方進(jìn)行討論,確定需求方對(duì)于軟件開發(fā)的需要實(shí)現(xiàn)目標(biāo)及其具體需要的功能等等,并確定是否可達(dá)成;

2、接下來就是需求分析,這個(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、接下來就是編程實(shí)施步驟。編程也是根據(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、通過以上核心環(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、用戶在接受開發(fā)商交付的軟件開發(fā)結(jié)果,并進(jìn)行實(shí)際操作、測(cè)試運(yùn)行,實(shí)現(xiàn)滿意結(jié)果之后,對(duì)開發(fā)出來的軟件進(jìn)行驗(yàn)收;

8、定制開發(fā)的軟件通常都需要提供售后服務(wù),定期對(duì)軟件進(jìn)行維護(hù),或者根據(jù)用戶出現(xiàn)的新需求,進(jìn)行應(yīng)用軟件程序的修改,使之不斷滿足客戶實(shí)際需求。

軟件開發(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)營 狀況并持續(xù)修補(bǔ)升級(jí),直到這個(gè)軟件被徹底淘汰為止。

什么是軟件開發(fā)的核心問題

按照軟件工程鼻祖,《人月神話》作者 Brooks 在“沒有銀彈——軟件工程中的根本和次要問題”一章中闡述的思想,軟件開發(fā)的核心問題就是如何從概念上對(duì)一個(gè)復(fù)雜的業(yè)務(wù)系統(tǒng)進(jìn)行建模。這個(gè)建模是含義廣泛的,不僅僅包括對(duì)象建模,還包括數(shù)據(jù)建模、算法建模等等一系列的內(nèi)容??偠灾且日业浇鉀Q復(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è)流程:

1、計(jì)劃

2、分析

3、設(shè)計(jì)

4、編碼

5、測(cè)試

6、維護(hù)

1、計(jì)劃

對(duì)所要解決的問題進(jìn)行總體定義,包括了解用戶的要求及現(xiàn)實(shí)環(huán)境,從技術(shù)、經(jīng)濟(jì)和社會(huì)因素等3個(gè)方面研究并論證本軟件項(xiàng)目的可行性,編寫可行性研究報(bào)告,探討解決問題的方案,并對(duì)可供使用的資源(如計(jì)算機(jī)硬件、系統(tǒng)軟件、人力等)成本,可取得的效益和開發(fā)進(jìn)度作出估計(jì),制訂完成開發(fā)任務(wù)的實(shí)施計(jì)劃。

2、分析

軟件需求分析就是對(duì)開發(fā)什么樣的軟件的一個(gè)系統(tǒng)的分析與設(shè)想。它是一個(gè)對(duì)用戶的需求進(jìn)行去粗取精、去偽存真、正確理解,然后把它用軟件工程開發(fā)語言(形式功能規(guī)約,即需求規(guī)格說明書)表達(dá)出來的過程。本階段的基本任務(wù)是和用戶一起確定要解決的問題,建立軟件的邏輯模型,編寫需求規(guī)格說明書文檔并最終得到用戶的認(rèn)可。需求分析的主要方法有結(jié)構(gòu)化分析方法、數(shù)據(jù)流程圖和數(shù)據(jù)字典等方法。本階段的工作是根據(jù)需求說明書的要求,設(shè)計(jì)建立相應(yīng)的軟件系統(tǒng)的體系結(jié)構(gòu),并將整個(gè)系統(tǒng)分解成若干個(gè)子系統(tǒng)或模塊,定義子系統(tǒng)或模塊間的接口關(guān)系,對(duì)各子系統(tǒng)進(jìn)行具體設(shè)計(jì)定義,編寫軟件概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)說明書,數(shù)據(jù)庫或數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)說明書,組裝測(cè)試計(jì)劃。在任何軟件或系統(tǒng)開發(fā)的初始階段必須先完全掌握用戶需求,以期能將緊隨的系統(tǒng)開發(fā)過程中哪些功能應(yīng)該落實(shí)、采取何種規(guī)格以及設(shè)定哪些限制優(yōu)先加以定位。系統(tǒng)工程師最終將據(jù)此完成設(shè)計(jì)方案,在此基礎(chǔ)上對(duì)隨后的程序開發(fā)、系統(tǒng)功能和性能的描述及限制作出定義。

3、設(shè)計(jì)

軟件設(shè)計(jì)可以分為概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)兩個(gè)階段。實(shí)際上軟件設(shè)計(jì)的主要任務(wù)就是將軟件分解成模塊是指能實(shí)現(xiàn)某個(gè)功能的數(shù)據(jù)和程序說明、可執(zhí)行程序的程序單元。可以是一個(gè)函數(shù)、過程、子程序、一段帶有程序說明的獨(dú)立的程序和數(shù)據(jù),也可以是可組合、可分解和可更換的功能單元。模塊,然后進(jìn)行模塊設(shè)計(jì)。概要設(shè)計(jì)就是結(jié)構(gòu)設(shè)計(jì),其主要目標(biāo)就是給出軟件的模塊結(jié)構(gòu),用軟件結(jié)構(gòu)圖表示。詳細(xì)設(shè)計(jì)的首要任務(wù)就是設(shè)計(jì)模塊的程序流程、算法和數(shù)據(jù)結(jié)構(gòu),次要任務(wù)就是設(shè)計(jì)數(shù)據(jù)庫,常用方法還是結(jié)構(gòu)化程序設(shè)計(jì)方法。

4、編碼

軟件編碼是指把軟件設(shè)計(jì)轉(zhuǎn)換成計(jì)算機(jī)可以接受的程序,即寫成以某一程序設(shè)計(jì)語言表示的“源程序清單”。充分了解軟件開發(fā)語言、工具的特性和編程風(fēng)格,有助于開發(fā)工具的選擇以及保證軟件產(chǎn)品的開發(fā)質(zhì)量。

當(dāng)前軟件開發(fā)中除在專用場(chǎng)合,已經(jīng)很少使用二十世紀(jì)80年代的高級(jí)語言了,取而代之的是面向?qū)ο蟮拈_發(fā)語言。而且面向?qū)ο蟮拈_發(fā)語言和開發(fā)環(huán)境大都合為一體,大大提高了開發(fā)的速度。

5、測(cè)試

軟件測(cè)試的目的是以較小的代價(jià)發(fā)現(xiàn)盡可能多的錯(cuò)誤。要實(shí)現(xiàn)這個(gè)目標(biāo)的關(guān)鍵在于設(shè)計(jì)一套出色的測(cè)試用例(測(cè)試數(shù)據(jù)與功能和預(yù)期的輸出結(jié)果組成了測(cè)試用例)。如何才能設(shè)計(jì)出一套出色的測(cè)試用例,關(guān)鍵在于理解測(cè)試方法。不同的測(cè)試方法有不同的測(cè)試用例設(shè)計(jì)方法。兩種常用的測(cè)試方法是白盒法測(cè)試對(duì)象是源程序,依據(jù)的是程序內(nèi)部的的邏輯結(jié)構(gòu)來發(fā)現(xiàn)軟件的編程錯(cuò)誤、結(jié)構(gòu)錯(cuò)誤和數(shù)據(jù)錯(cuò)誤。結(jié)構(gòu)錯(cuò)誤包括邏輯、數(shù)據(jù)流、初始化等錯(cuò)誤。用例設(shè)計(jì)的關(guān)鍵是以較少的用例覆蓋盡可能多的內(nèi)部程序邏輯結(jié)果。白盒法和黑盒法依據(jù)的是軟件的功能或軟件行為描述,發(fā)現(xiàn)軟件的接口、功能和結(jié)構(gòu)錯(cuò)誤。其中接口錯(cuò)誤包括內(nèi)部/外部接口、資源管理、集成化以及系統(tǒng)錯(cuò)誤。黑盒法用例設(shè)計(jì)的關(guān)鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。

6、維護(hù)

維護(hù)是指在已完成對(duì)軟件的研制(分析、設(shè)計(jì)、編碼和測(cè)試)工作并交付使用以后,對(duì)軟件產(chǎn)品所進(jìn)行的一些軟件工程的活動(dòng)。即根據(jù)軟件運(yùn)行的情況,對(duì)軟件進(jìn)行適當(dāng)修改,以適應(yīng)新的要求,以及糾正運(yùn)行中發(fā)現(xiàn)的錯(cuò)誤。編寫軟件問題報(bào)告、軟件修改報(bào)告。

一個(gè)中等規(guī)模的軟件,如果研制階段需要一年至二年的時(shí)間,在它投入使用以后,其運(yùn)行或工作時(shí)間可能持續(xù)五年至十年。那么它的維護(hù)階段也是運(yùn)行的這五年至十年期間。在這段時(shí)間,人們幾乎需要著手解決研制階段所遇到的各種問題,同時(shí)還要解決某些維護(hù)工作本身特有的問題。做好軟件維護(hù)工作,不僅能排除障礙,使軟件能正常工作,而且還可以使它擴(kuò)展功能,提高性能,為用戶帶來明顯的經(jīng)濟(jì)效益。然而遺憾的是,對(duì)軟件維護(hù)工作的重視往往遠(yuǎn)不如對(duì)軟件研制工作的重視。而事實(shí)上,和軟件研制工作相比,軟件維護(hù)的工作量和成本都要大得多。

在實(shí)際開發(fā)過程中,軟件開發(fā)并不是從第一步進(jìn)行到最后一步,而是在任何階段,在進(jìn)入下一階段前一般都有一步或幾步的回溯。在測(cè)試過程中的問題可能要求修改設(shè)計(jì),用戶可能會(huì)提出一些需要來修改需求說明書等。

軟件開發(fā)的流程是怎樣的?

3 系統(tǒng)分析員向用戶再次確認(rèn)需求。 第二步:概要設(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ǔ)。 第三步:詳細(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ì)考慮,以便進(jìn)行編碼和測(cè)試。應(yīng)當(dāng)保證軟件的需求完全分配給整個(gè)軟件。詳細(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)的功能、性能、接口、界面等方面的要求。 第五步:測(cè)試 測(cè)試編寫好的系統(tǒng)。交給用戶使用,用戶使用后一個(gè)一個(gè)的確認(rèn)每個(gè)功能。 第六步:軟件交付準(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)舉例說明。 廣州達(dá)內(nèi)培訓(xùn)機(jī)構(gòu)認(rèn)為一般軟件開發(fā)大致經(jīng)過以上六個(gè)步驟,由于不同公司的大小不一,所以這些步驟有的是由同一個(gè)人完成幾個(gè)流程,但在大公司一般軟件開發(fā)分工都很細(xì)致,一個(gè)人只需要完成一個(gè)小項(xiàng)即可。

軟件開發(fā)過程一般有幾個(gè)階段?每個(gè)階段有什么作用?

1、首先制定項(xiàng)目計(jì)劃,最初計(jì)劃是里程碑性質(zhì)的。可以先按瀑布模型設(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)行期。\x0d\x0a\x0d\x0a2、需求開發(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ā)的重要基線。\x0d\x0a另外,作為了解需求,拿出用戶UI和用戶交流也是一項(xiàng)比較重要的需求獲取手段,雖然這個(gè)屬于設(shè)計(jì)的范疇\x0d\x0a\x0d\x0a3、系統(tǒng)設(shè)計(jì)階段:\x0d\x0a系統(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)的邊界問題。\x0d\x0a概要設(shè)計(jì)中除了高層架構(gòu)設(shè)計(jì),還需要設(shè)計(jì)網(wǎng)絡(luò)拓?fù)鋱D,以及系統(tǒng)部署圖。概要設(shè)計(jì)比較重要的還有就是子系統(tǒng)、模塊進(jìn)行合理的劃分。模塊的名稱很大程度上會(huì)成為用戶的主要菜單,如何用用戶的角度去取比較清楚的子系統(tǒng)和模塊是很重要的。\x0d\x0a\x0d\x0a4、代碼開發(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í)間,卻不是用戶想要的,還有可能都不是自己想要的。\x0d\x0a項(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)。\x0d\x0a\x0d\x0a5、測(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è)試用例。\x0d\x0a\x0d\x0a6、文檔工作,文檔在項(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去吧。\x0d\x0a\x0d\x0a7、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ā)的流程及步驟的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于軟件開發(fā)的四個(gè)階段、軟件開發(fā)的流程及步驟的信息別忘了在本站進(jìn)行查找喔。

掃碼二維碼