日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

需求、需求工程与需求工程师 — 2.需求的来源

發(fā)布時(shí)間:2025/3/15 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 需求、需求工程与需求工程师 — 2.需求的来源 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

軟件的需求是從哪里來(lái)的?可能你會(huì)毫不猶豫的回答:從客戶那里調(diào)研來(lái)的。這只回答對(duì)了一部分。簡(jiǎn)單的、小規(guī)模的、技術(shù)含量不高的軟件功能基本上是依據(jù)客戶提出的需求完成的,而復(fù)雜的、大規(guī)模的、技術(shù)含量高的的軟件功能除去客戶提的需求外,還需要由軟件工程師根據(jù)新的理論、技術(shù)、硬件、未來(lái)發(fā)展的展望等提出來(lái)補(bǔ)充需求。作為一名合格的需求工程師,不但要能夠通過(guò)調(diào)研獲取客戶提出的原始需求,而且還能根據(jù)新知識(shí)、新技術(shù)為客戶的軟件提供自己設(shè)計(jì)的需求。

1.什么是原始需求、分類

所謂的“原始需求”,就是指從客戶那里獲得的尚未進(jìn)行分析加工的需求,這些需求大都是從客戶視角(業(yè)務(wù))、以客戶用語(yǔ)(非IT)表達(dá)的。可以將調(diào)研的原始需求歸集為三個(gè)層面:目標(biāo)需求、業(yè)務(wù)需求、功能需求。

1)決策人提出的目標(biāo)需求
在與企業(yè)的經(jīng)營(yíng)者、主管信息化的領(lǐng)導(dǎo)、信息中心的負(fù)責(zé)人等交流時(shí),由于他們是企業(yè)導(dǎo)入信息系統(tǒng)的決策人,所以他們提出需求中有相當(dāng)部分是對(duì)未來(lái)系統(tǒng)建造的“目標(biāo)需求”。比如他們對(duì)新系統(tǒng)提出的目標(biāo)需求可能是這樣描述的,新系統(tǒng)要做到:
【例1】以市場(chǎng)產(chǎn)品銷售為驅(qū)動(dòng)、以制造成本控制為中心、以加工進(jìn)度計(jì)劃為抓手、以質(zhì)量風(fēng)險(xiǎn)控制為保障,以…等等
【例2】構(gòu)建的交易平臺(tái),信息來(lái)源清楚、判斷公正透明、不允許黑箱操作…等
可以看出此類需求的內(nèi)容大都是與企業(yè)制定的經(jīng)營(yíng)管理、發(fā)展戰(zhàn)略、里程碑計(jì)劃、IT規(guī)劃等大目標(biāo)相關(guān)聯(lián)的。是將“信息系統(tǒng)的建造”放在“企業(yè)發(fā)展規(guī)劃”的大框架中考量的。所以需求的粒度非常粗、概括,它屬于客戶用語(yǔ)描述的 “方向性原始需求”。

2)管理者提出的業(yè)務(wù)需求
在與企業(yè)中的各個(gè)業(yè)務(wù)部門(mén)管理者進(jìn)行調(diào)研時(shí),由于他們大都不是信息化的專家,也沒(méi)有多少使用信息系統(tǒng)的經(jīng)驗(yàn),因此他們提出的需求大都是以自己熟知的業(yè)務(wù)為基礎(chǔ)的,他們提出的需求形式可能是這樣的:
【例3】 對(duì)物流的過(guò)程進(jìn)行全程監(jiān)控、并做到從下訂單到客戶接受簽字為止的全程數(shù)字化追蹤、查詢,并實(shí)時(shí)向客戶發(fā)出通知。
【例4】為降低產(chǎn)品成本,材料要進(jìn)行集中采購(gòu),每次采購(gòu)數(shù)量大于1000公斤時(shí)必須由公司統(tǒng)一采購(gòu),少于1000公斤時(shí)可以自行選擇供應(yīng)商,但價(jià)格不能高于全年的平均單價(jià)…等。
可以看出這類需求已經(jīng)給出了用戶的明確業(yè)務(wù)需求,非常具體,要解決什么問(wèn)題、要做什么事、遵循什么標(biāo)準(zhǔn)等,只是這個(gè)需求粒度還不足以確定在系統(tǒng)中需要什么具體的軟件功能。
它屬于客戶用語(yǔ)描述的 “業(yè)務(wù)性原始需求”。

3)使用者提出的功能需求
最后一種就是直接給出系統(tǒng)中要實(shí)現(xiàn)的 “軟件功能需求”,這個(gè)需求及比較容易理解了,它具體地描述了有哪些功能、每個(gè)功能要解決什么問(wèn)題,功能的原型、屬性、要符合的條件和標(biāo)準(zhǔn)等。比如
【例5】要開(kāi)發(fā)一個(gè)材料采購(gòu)系統(tǒng),需要的功能有:材料編碼庫(kù)、客商庫(kù)、采購(gòu)合同編制、合同變更、到貨驗(yàn)收、出入庫(kù)記錄、材料領(lǐng)取…等。
【例6】要開(kāi)發(fā)一個(gè)服務(wù)供應(yīng)商管理系統(tǒng),需要的功能有:基本信息登記、歷史業(yè)績(jī)、新用戶審批、未完成合同一覽、質(zhì)量事故履歷…等。

2. 三個(gè)分類的轉(zhuǎn)換關(guān)系

最終所有的需求都要以功能需求的形式傳遞給后面的設(shè)計(jì)工程,功能需求記錄了系統(tǒng)要實(shí)現(xiàn)的要求。因此需要將目標(biāo)需求和業(yè)務(wù)需求轉(zhuǎn)換為功能需求,


圖1 需求轉(zhuǎn)換關(guān)系

1)目標(biāo)需求
目標(biāo)需求由于比較抽象,所以第一步需要將其轉(zhuǎn)換為用“業(yè)務(wù)需求”的形式來(lái)描述,因?yàn)闃I(yè)務(wù)需求接近于客戶的業(yè)務(wù),容易解讀。參見(jiàn)圖1(轉(zhuǎn)換1)。

2)業(yè)務(wù)需求
業(yè)務(wù)需求是用客戶的業(yè)務(wù)用語(yǔ)描述的,第二步要將業(yè)務(wù)需求轉(zhuǎn)換為功能需求。通過(guò)用流程圖進(jìn)行具體的解讀,就可以看出來(lái)用什么功能來(lái)實(shí)現(xiàn)這個(gè)業(yè)務(wù)需求。流程圖上的節(jié)點(diǎn),就是未來(lái)系統(tǒng)中的功能。參見(jiàn)圖1(轉(zhuǎn)換2)。

3)功能需求
從業(yè)務(wù)需求中識(shí)別出功能需求后,又可以再分為兩類:業(yè)務(wù)功能需求、系統(tǒng)功能需求。它們是續(xù)設(shè)計(jì)工程的輸入,設(shè)計(jì)工程中就是依據(jù)它們進(jìn)行具體的功能設(shè)計(jì)。

從上述的三種原始需求的形式可以看出來(lái),前面的1、2兩類需求并不能直接判斷系統(tǒng)要開(kāi)發(fā)什么樣的具體功能,也就是說(shuō),目標(biāo)需求和業(yè)務(wù)需求必須要落地,要能夠找出對(duì)應(yīng)的“功能需求”才能在系統(tǒng)中實(shí)現(xiàn)。從原始需求的分類中可以看出,越是具體功能不清楚的目標(biāo)需求、業(yè)務(wù)需求,需求工程師、軟件架構(gòu)師等可發(fā)揮作用的地方就越多。

3. 總結(jié),需求并非都是來(lái)自于客戶

到了這里我們就明白了:構(gòu)建信息系統(tǒng)的需求并非都是從客戶那里直接獲得的,完成系統(tǒng)中的很多需求是由開(kāi)發(fā)過(guò)程中不同崗位的軟件工程師(包括:咨詢師、需求工程師、架構(gòu)師、開(kāi)程序員、實(shí)施工程師等)提案的。為了更好地理解需求的來(lái)源,再按照功能實(shí)現(xiàn)難度將獲得的需求分為基本需求、中級(jí)需求和高級(jí)需求,參考圖2。


圖2 需求的來(lái)源

1 ) 基本的需求a
它們來(lái)自于“對(duì)客戶調(diào)研而獲得的需求”,這些是客戶的基本需求,它們以“功能需求”為主、“業(yè)務(wù)需求為輔”。它們都比較直觀,直接給出的就是要實(shí)現(xiàn)的功能,如【例5、例6】基本上按客戶意愿進(jìn)行設(shè)計(jì)和開(kāi)發(fā),內(nèi)容大部分在需求調(diào)研、需求分析階段內(nèi)確定。
通常需求調(diào)研工作成果的絕大部分是這些基本的需求。以滿足這樣的需求為主開(kāi)發(fā)的系統(tǒng),主要影響系統(tǒng)操作層的用戶滿意度。

2) 中級(jí)的需求b
它們來(lái)自于“通過(guò)完善、落地業(yè)務(wù)需求而獲得的需求”,它們屬于中級(jí)需求,這類需求以“業(yè)務(wù)需求”為主,是通過(guò)對(duì)業(yè)務(wù)需求進(jìn)行具體化、優(yōu)化、補(bǔ)缺、提升的過(guò)程中產(chǎn)生的需求,如前面提到的【例3、例4】的需求,經(jīng)過(guò)分析設(shè)計(jì)后,給出實(shí)現(xiàn)業(yè)務(wù)需求的功能。
中級(jí)需求是由軟件工程師和客戶共同對(duì)業(yè)務(wù)需求進(jìn)行分析、理解、設(shè)計(jì)而確定的,它的正確與否極大地影響著企業(yè)中間管理層以上領(lǐng)導(dǎo)者對(duì)系統(tǒng)的滿意度。

3) 高級(jí)的需求C
它們主要來(lái)自于軟件工程師“根據(jù)客戶的目標(biāo)需求和業(yè)務(wù)需求,結(jié)合新的設(shè)計(jì)理念、新的管理理念、新的IT技術(shù)等提出來(lái)的需求”,可以是說(shuō)它們是軟件工程師“設(shè)計(jì)出來(lái)的需求”,屬于“設(shè)計(jì)需求”,比如:事找人的流程方案(智能化處理業(yè)務(wù))、企業(yè)數(shù)據(jù)資產(chǎn)的應(yīng)用、企業(yè)自主信息化方案、新型客戶端用硬件等。
這類需求需要軟件工程師要有足夠的專業(yè)知識(shí)和綜合架構(gòu)能力,否則就難以發(fā)掘出來(lái),如前面提到的【例1、例2】,這類需求也為完成的系統(tǒng)帶來(lái)了明顯的高附加價(jià)值,特別對(duì)提升企業(yè)經(jīng)營(yíng)者滿意度有著舉足輕重的作用。

這里要順便提一句:別不拿領(lǐng)導(dǎo)的需求當(dāng)需求。因?yàn)楹芏嘟?jīng)驗(yàn)不足的需求工程師,他們?cè)谡{(diào)研時(shí)往往只關(guān)注操作層用戶的需求(因?yàn)椴僮鲗佑脩舻男枨笕菀着c軟件功能相關(guān)聯(lián)),而忽略或丟掉了領(lǐng)導(dǎo)提出的需求,原因是領(lǐng)導(dǎo)提出的需求表達(dá)形式比較抽象、不易落地、或不知道如何應(yīng)對(duì),而這些需求能否被反映到系統(tǒng)中恰恰是決定系統(tǒng)設(shè)計(jì)水平高低的重要依據(jù)。

■上述三類需求獲取的難度順序?yàn)?#xff1a;設(shè)計(jì)需求c>完善需求b>調(diào)研需求a。

關(guān)于對(duì)“設(shè)計(jì)需求”的理解再舉一個(gè)例子,我們每個(gè)人都有智能手機(jī),它的功能有多少是由手機(jī)用戶提出來(lái)的呢?可能很少,新功能大都是由開(kāi)發(fā)商提倡、引領(lǐng)、推廣的,因?yàn)樗麄兙哂懈叩囊暯恰⑶罢靶?#xff0c;可以從數(shù)字化、信息化、智能化、AI、物聯(lián)網(wǎng)等多維度思考、綜合考量,而我們一般的個(gè)人用戶是不可能提出這樣的需求的,這就是典型的“設(shè)計(jì)需求”來(lái)源。

軟件工程師要認(rèn)識(shí)到,需求工程(調(diào)研與分析)完成了,并非是需求獲取的工作全部完成,只是由客戶直接提出來(lái)的原始需求完成了,而通過(guò)分析、設(shè)計(jì)發(fā)掘高端需求的工作剛剛開(kāi)始。

■本博文系列的下一篇:需求、需求工程與需求分析師 — 3. 需求工程的構(gòu)成

關(guān)于需求工程的詳細(xì)說(shuō)明,請(qǐng)參考《大話軟件工程—需求分析與軟件設(shè)計(jì)》一書(shū)。

總結(jié)

以上是生活随笔為你收集整理的需求、需求工程与需求工程师 — 2.需求的来源的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。