2019-01-07 14:08:52分類(lèi):軟件開(kāi)發(fā)4719
軟件開(kāi)發(fā)流程包括三個(gè)不同層次的需求:
一、業(yè)務(wù)需求:說(shuō)明了提供給客戶(hù)和產(chǎn)品開(kāi)發(fā)商的新系統(tǒng)的利益,反映了組織機(jī)構(gòu)或客戶(hù)對(duì)系統(tǒng)、產(chǎn)品高層次的目標(biāo)要求,它們將在項(xiàng)目視圖與范圍文檔中予以說(shuō)明;
二、用戶(hù)需求:描述了用戶(hù)使用系統(tǒng)必須要完成的任務(wù),這在使用實(shí)例文檔或方案腳本說(shuō)明中予以說(shuō)明;
三、功能需求和非功能需求:定義了開(kāi)發(fā)人員必須實(shí)現(xiàn)的軟件功能,使得用戶(hù)能順利完成他們的任務(wù),從而滿(mǎn)足了業(yè)務(wù)需求。
本文介紹了軟件需求過(guò)程,包括5個(gè)主要活動(dòng):需求獲取、需求分析和確認(rèn)、編寫(xiě)需求規(guī)格說(shuō)明書(shū)、需求驗(yàn)證和需求管理。 相關(guān)文章:《手機(jī)應(yīng)用軟件開(kāi)發(fā)的詳細(xì)流程》
需求的收集、分析、細(xì)化、核實(shí)并組織的步驟,并將它編寫(xiě)成文檔。這個(gè)活動(dòng)包括了編寫(xiě)項(xiàng)目視圖和范圍文檔、用戶(hù)群分類(lèi)、選擇用戶(hù)代表、建立核心隊(duì)伍、確定使用實(shí)例、召開(kāi)聯(lián)合會(huì)議、分析用戶(hù)工作流程、確定質(zhì)量屬性、檢查問(wèn)題報(bào)告和需求重用10個(gè)具體任務(wù),文章將在后面進(jìn)行詳細(xì)的闡述。
根據(jù)需求獲取中得到的需求文檔,分析系統(tǒng)實(shí)現(xiàn)方案。這個(gè)活動(dòng)需要完成下面幾個(gè)任務(wù):
1、繪制關(guān)聯(lián)圖,用于定義系統(tǒng)與系統(tǒng)外部實(shí)體間的邊界和接口的簡(jiǎn)單模型;
2、創(chuàng)建開(kāi)發(fā)原型,當(dāng)開(kāi)發(fā)人員或用戶(hù)不能明確某些需求時(shí),開(kāi)發(fā)一個(gè)系統(tǒng)原型,這樣使得許多概念和可能發(fā)生的事更為直觀(guān)明了;
3、分析可行性,在允許的成本、性能要求下,分析每項(xiàng)需求實(shí)施的可行性,明確每項(xiàng)需求實(shí)現(xiàn)相聯(lián)系的風(fēng)險(xiǎn),包括與其它需求的沖突,涉及各類(lèi)用戶(hù)的利益平衡,對(duì)外界因素的依賴(lài)和技術(shù)障礙;
4、確定需求優(yōu)先級(jí):分析方法來(lái)確定使用實(shí)例、系統(tǒng)特性或單項(xiàng)需求實(shí)現(xiàn)的優(yōu)先級(jí)別,以?xún)?yōu)先級(jí)為基礎(chǔ)確定產(chǎn)品版本將包括哪些特性或哪類(lèi)需求;
5、為需求建立模型,為需求建立圖形分析模型是軟件需求規(guī)格說(shuō)明極好的補(bǔ)充說(shuō)明,可以為系統(tǒng)需求從多個(gè)角度建模;
6、編寫(xiě)數(shù)據(jù)字典,創(chuàng)建數(shù)據(jù)字典數(shù)據(jù)字典是對(duì)系統(tǒng)用到的所有數(shù)據(jù)項(xiàng)和結(jié)構(gòu)的定義,以確保開(kāi)發(fā)人員使用統(tǒng)一的數(shù)據(jù)定義;
7、應(yīng)用質(zhì)量功能調(diào)配,將系統(tǒng)特性、屬性與對(duì)客戶(hù)的重要性聯(lián)系起來(lái),提供了一種分析方法以明確哪些是客戶(hù)最為關(guān)注的特性。
需求開(kāi)發(fā)的最終成果是客戶(hù)和開(kāi)發(fā)小組對(duì)將要開(kāi)發(fā)的產(chǎn)品達(dá)成一致協(xié)議,這一協(xié)議就是通過(guò)文檔化的需求規(guī)格說(shuō)明書(shū)來(lái)體現(xiàn)。需求規(guī)格說(shuō)明書(shū)包括項(xiàng)目視圖和范圍文檔說(shuō)明了系統(tǒng)的業(yè)務(wù)需求,而使用實(shí)例文檔則說(shuō)明了用戶(hù)需求。這個(gè)活動(dòng)需要完成下面幾個(gè)任務(wù):
1、采用模版,在你的組織中要為編寫(xiě)軟件需求規(guī)格說(shuō)明書(shū)等文檔定義一種標(biāo)準(zhǔn)模板,該模板為記錄系統(tǒng)需求和各種其它與需求相關(guān)的重要信息提供了統(tǒng)一的結(jié)構(gòu);
2、指明需求來(lái)源,為了讓所有項(xiàng)目風(fēng)險(xiǎn)承擔(dān)者明白需求規(guī)格說(shuō)明書(shū)中為何提供這些功能需求,要能追溯每項(xiàng)需求的來(lái)源,來(lái)源可能是一種使用實(shí)例或其它客戶(hù)要求,也可能是某項(xiàng)更高層系統(tǒng)需求、業(yè)務(wù)規(guī)范、政府法規(guī)、標(biāo)準(zhǔn)或別的外部來(lái)源,這些來(lái)源應(yīng)該記錄在需求的跟蹤能力矩陣中;
3、為每項(xiàng)需求注上標(biāo)號(hào),為了需求的可跟蹤性和可修改性的質(zhì)量標(biāo)準(zhǔn),必須唯一確定每個(gè)軟件需求,為制定一種慣例來(lái)為需求規(guī)格說(shuō)明書(shū)中的每項(xiàng)需求提供一個(gè)獨(dú)立的可識(shí)別的標(biāo)號(hào)或記號(hào);
4、記錄業(yè)務(wù)規(guī)范,是指關(guān)于系統(tǒng)的操作原則,比如誰(shuí)能在什么情況下采取什么動(dòng)作,將這些編寫(xiě)成需求規(guī)格說(shuō)明書(shū)中的一個(gè)獨(dú)立部分,或一獨(dú)立的業(yè)務(wù)規(guī)范文檔;
5、創(chuàng)建需求跟蹤能力矩陣,建立一個(gè)矩陣把每項(xiàng)需求來(lái)源、定義與實(shí)現(xiàn)、測(cè)試它的設(shè)計(jì)和代碼部分聯(lián)系起來(lái),這樣有利于需求的管理和需求變更影響范圍的評(píng)估。
需求的驗(yàn)證是為了確保需求說(shuō)明準(zhǔn)確、完整,表達(dá)必要的質(zhì)量特點(diǎn),需求將要作為系統(tǒng)設(shè)計(jì)和最終驗(yàn)證的依據(jù),因此一定要保證它的正確性。需求驗(yàn)證務(wù)必確保符合完整性、正確性、靈活性、必要性、無(wú)二義性、一致性、可跟蹤性及可驗(yàn)證性這些良好特征。這個(gè)活動(dòng)需要完成下面幾個(gè)任務(wù):
1、審查需求文檔,對(duì)需求文檔進(jìn)行正式審查是保證軟件質(zhì)量的有效的方法。組織一個(gè)由不同代表(如用戶(hù),分析人員,設(shè)計(jì)人員,測(cè)試人員)組成的小組,對(duì)需求規(guī)格說(shuō)明書(shū)及相關(guān)模型進(jìn)行仔細(xì)的檢查;
2、依據(jù)需求編寫(xiě)測(cè)試用例,根據(jù)用戶(hù)需求所要求的產(chǎn)品特性寫(xiě)出系統(tǒng)的功能測(cè)試用例作為系統(tǒng)測(cè)試依據(jù);
3、編寫(xiě)用戶(hù)手冊(cè),在需求開(kāi)發(fā)早期即可起草一份用戶(hù)手冊(cè),用它作為需求規(guī)格說(shuō)明的參考并輔助需求分析;
4、確定合格的標(biāo)準(zhǔn),需求說(shuō)明中描述什么樣的產(chǎn)品才算滿(mǎn)足用戶(hù)的要求和適合他們使用的,將合格的測(cè)試建立在使用情景描述或使用實(shí)例的基礎(chǔ)之上。項(xiàng)目管理者聯(lián)盟文章
需求管理是組織、控制和文檔化需求的系統(tǒng)方法,也是一種建立和維護(hù)用戶(hù)和開(kāi)發(fā)組織對(duì)于改變系統(tǒng)功能的協(xié)議。需求開(kāi)發(fā)的結(jié)果經(jīng)驗(yàn)證批準(zhǔn)就定義了開(kāi)發(fā)工作的需求基線(xiàn),這個(gè)基線(xiàn)在客戶(hù)和開(kāi)發(fā)人員之間就構(gòu)筑了一個(gè)需求約定,需求管理包括在項(xiàng)目進(jìn)展過(guò)程中維持需求約定一致性和精確性的活動(dòng)。現(xiàn)在很多商業(yè)化的需求管理工具都能很好的支持需求管理活動(dòng)。這個(gè)活動(dòng)需要完成下面幾個(gè)任務(wù):
1、確定變更控制過(guò)程,確定一個(gè)選擇、分析和決策需求變更的過(guò)程,所有的需求變更都需遵循此流程;
2、建立軟件變更控制委員會(huì)(SCCB,Software Change Control Board),組織一個(gè)由項(xiàng)目風(fēng)險(xiǎn)承擔(dān)者組成的小組作為變更控制委員會(huì),由他們來(lái)評(píng)估和確定需求變更;
3、進(jìn)行變更影響分析,評(píng)估需求變更對(duì)項(xiàng)目進(jìn)度、資源、工作量和項(xiàng)目范圍以及其它需求的影響;
4、跟蹤變更影響的產(chǎn)品,當(dāng)進(jìn)行某項(xiàng)需求變更時(shí),參照需求跟蹤能力矩陣找到相關(guān)的其它需求、設(shè)計(jì)文檔、源代碼和測(cè)試用例,這些相關(guān)部分可能也需要修改;
5、建立基準(zhǔn)和控制版本,需求文檔確定一個(gè)基線(xiàn),這是一致性需求在特定時(shí)刻的快照,之后的需求變更就遵循變更控制過(guò)程即可;
6、維護(hù)變更的歷史記錄,記錄變更需求文檔版本的日期以及所做的變更、原因,還包括由誰(shuí)負(fù)責(zé)更新和更新的新版本號(hào)等情況;
7、跟蹤每項(xiàng)需求的狀態(tài),這里狀態(tài)包括"確定"、"已實(shí)現(xiàn)"、"暫緩"、"新增"、"變更" 等。建立一個(gè)數(shù)據(jù)庫(kù),其中每一條記錄記錄一項(xiàng)需求;
8、衡量需求穩(wěn)定性,記錄基線(xiàn)需求的數(shù)量和每周或每月的變更(添加、修改、刪除)數(shù)量。
一個(gè)項(xiàng)目的需求獲取,是在問(wèn)題及其最終解決方案之間架設(shè)橋梁的第一步,是軟件開(kāi)發(fā)流程過(guò)程的主體,目的就是致力于開(kāi)發(fā)正確的系統(tǒng)。要做到這一點(diǎn)就要足夠詳細(xì)地描述需求,也就是系統(tǒng)必須達(dá)到的條件或能力,使用戶(hù)和開(kāi)發(fā)人員在系統(tǒng)應(yīng)該做什么,不應(yīng)該做什么方面達(dá)成共識(shí)。
獲取需求就是為了解決這些問(wèn)題,它必不可少的成果就是是對(duì)項(xiàng)目中描述的用戶(hù)需求的普遍理解,一旦理解了需求,分析者、開(kāi)發(fā)者和用戶(hù)就能探索出描述這些需求的多種解決方案。
這一階段的工作一旦做錯(cuò),將最終會(huì)給系統(tǒng)帶來(lái)極大損害的部分,由于需求獲取事物造成的對(duì)需求定義的任何改動(dòng),都將導(dǎo)致設(shè)計(jì)、實(shí)現(xiàn)和測(cè)試上的大量返工,而這時(shí)花費(fèi)的資源和時(shí)間將大大超過(guò)仔細(xì)精確獲取需求的時(shí)間和資源。
智能手機(jī)從各個(gè)角度重塑著大家的生活,手機(jī)App自然已經(jīng)成為主要的創(chuàng)業(yè)方式之一。但是App開(kāi)發(fā)的技術(shù)門(mén)檻高,很多人詢(xún)問(wèn):開(kāi)發(fā)一款A(yù)pp流程是什么?我想開(kāi)發(fā)一款A(yù)pp,要從何入手呢?今天跟大家詳細(xì)介紹完整的手機(jī)app軟件開(kāi)發(fā)流程。
2019-11-22
App軟件開(kāi)發(fā)其實(shí)并不復(fù)雜,完整APP應(yīng)用軟件開(kāi)發(fā)流程,9個(gè)步驟告訴你開(kāi)發(fā)應(yīng)用軟件的完整流程到底是怎么回事.開(kāi)發(fā)一個(gè)APP應(yīng)用軟件真的沒(méi)有那么難,下面小編就具體說(shuō)說(shuō)APP軟件開(kāi)發(fā)的流程.
2019-01-08
軟件開(kāi)發(fā)流程包括三個(gè)不同層次的需求,本文介紹了軟件需求過(guò)程,包括5個(gè)主要活動(dòng):需求獲取、需求分析和確認(rèn)、編寫(xiě)需求規(guī)格說(shuō)明書(shū)、需求驗(yàn)證和需求管理.
2019-01-07
嵌入式系統(tǒng)在近年來(lái)一直頗受企業(yè)的追捧,導(dǎo)致嵌入式軟件與硬件開(kāi)發(fā)技術(shù)的追隨者愈加年輕化,如今從業(yè)嵌入式開(kāi)發(fā)技術(shù)的工程師遠(yuǎn)遠(yuǎn)達(dá)不到企業(yè)用人的需求量,越來(lái)越多的年輕人在學(xué)習(xí)嵌入式開(kāi)發(fā)技術(shù)或者有意學(xué)習(xí)嵌入式開(kāi)發(fā)技術(shù),賽億科技讓你八步讓你徹底了解流程?
2018-12-21
?智能手機(jī)從各個(gè)角度重塑著大家的生活,手機(jī)App自然已經(jīng)成為最主要的創(chuàng)業(yè)方式之一。但是App開(kāi)發(fā)的技術(shù)門(mén)檻高,很多人詢(xún)問(wèn):開(kāi)發(fā)一款A(yù)pp流程是什么?我想開(kāi)發(fā)一款A(yù)pp,要從何入手呢?今天跟大家詳細(xì)介紹完整的手機(jī)app軟件開(kāi)發(fā)流程。
2018-12-03