什么是非功能性需求?非功能性需求包括哪些方面?非功能性需求它是指信息系統(tǒng)中能夠保證系統(tǒng)可靠性,性能,可擴(kuò)展性要求等方面的相應(yīng)需求的要素。一般我們不會(huì)在用戶的業(yè)務(wù)需求中明確的把它提出來(lái),它是需要分析人員根據(jù)當(dāng)時(shí)實(shí)際的業(yè)務(wù)需要進(jìn)行調(diào)研總結(jié)和歸納,接下來(lái)我們?yōu)榇蠹医榻B一下非功能性需求包括什么,可以從以下幾個(gè)方面進(jìn)行分析。
一性能方面:
1、響應(yīng)時(shí)間:分日常交互類、日常查詢類、批量交易分別考慮。
日常交易指?jìng)鹘y(tǒng)的大廳交互業(yè)務(wù),如納稅申報(bào)、發(fā)票銷售等,以及一次完成多筆業(yè)務(wù)處理的交易,如批量扣款等,日常交互類業(yè)務(wù)具有較高的響應(yīng)要求。 查詢類業(yè)務(wù)如登記資料查詢、申報(bào)數(shù)據(jù)查詢等。查詢業(yè)務(wù)由于受到查詢的復(fù)雜程度、查詢的數(shù)據(jù)量大小等因素的影響,需要根據(jù)具體情況而定,給出一個(gè)參考范圍。
批處理業(yè)務(wù)如會(huì)計(jì)核算等業(yè)務(wù)處理,該類業(yè)務(wù)處理復(fù)雜、操作數(shù)據(jù)量大、處理時(shí)間長(zhǎng)。響應(yīng)時(shí)間指標(biāo)包括:平均響應(yīng)時(shí)間參考值(秒)、峰值響應(yīng)時(shí)間參考值(秒)。
2、用戶數(shù):用戶數(shù)要考慮用戶數(shù)的增長(zhǎng)情況,有以下指標(biāo):總用戶數(shù)、峰值在線用戶數(shù)、峰值并發(fā)用戶數(shù)、平均在線用戶數(shù)、平均并發(fā)用戶數(shù)。
3、吞吐量:系統(tǒng)交易量的估算。指標(biāo)有年交易筆數(shù)(筆/年)、高峰期交易筆數(shù)(筆/天)。
4、數(shù)據(jù)存儲(chǔ)量:每年的數(shù)據(jù)存儲(chǔ)容量(G)及未來(lái)幾年該數(shù)量的預(yù)期(增長(zhǎng))值。指標(biāo)包括累計(jì)存儲(chǔ)容量(G)、年增長(zhǎng)(G)。
二、系統(tǒng)可靠性:一般是窗口業(yè)務(wù)應(yīng)在從星期一到星期五的所有工作日的工作時(shí)間是可以使用的;其它業(yè)務(wù)應(yīng)滿足7×24小時(shí)可以使用。
三、可擴(kuò)展性:可實(shí)現(xiàn)負(fù)載均衡;日后若信息量較大,則系統(tǒng)可相應(yīng)增加服務(wù)器實(shí)現(xiàn)擴(kuò)展。所謂非功能性需求,是指軟件產(chǎn)品為滿足用戶業(yè)務(wù)需求而必須具有且除功能需求以外的特性。軟件產(chǎn)品的非功能性需求包括系統(tǒng)的性能、可靠性、可維護(hù)性、可擴(kuò)充性和對(duì)技術(shù)和對(duì)業(yè)務(wù)的適應(yīng)性等。下面對(duì)其中的某些指標(biāo)加以說(shuō)明。在這里可以看到非功能性需求涉及的范圍很廣,軟件產(chǎn)品本身不是孤立存在的,還涉及到諸多外在環(huán)境的影響。非功能性需求必須考慮軟件既要可用,又要易用。
對(duì)于非功能性需求描述的困難在于很難像功能性需求那樣,可以通過(guò)結(jié)構(gòu)化和量化的詞語(yǔ)來(lái)描述清楚,在描述這類需求時(shí)候我們經(jīng)常采用軟件性能要好,查詢要在多少時(shí)間內(nèi)出結(jié)果,軟件健壯性要好等較模糊的描述詞語(yǔ)。這類描述詞語(yǔ)都是脫離了軟件的執(zhí)行環(huán)境,人和相關(guān)的場(chǎng)景的描述,因此信息很難體現(xiàn)到軟件架構(gòu)設(shè)計(jì)和具體的實(shí)現(xiàn)中。我們?cè)诩軜?gòu)設(shè)計(jì)中關(guān)注的安全,系統(tǒng)開(kāi)發(fā)框架,并發(fā)和性能,異常日志等不是憑空產(chǎn)生出來(lái)的,而是來(lái)源于我們對(duì)非功能性需求的分析。
一個(gè)軟件系統(tǒng)必須完整,因此不僅僅包括了可執(zhí)行的程序,還包括了在線幫助,數(shù)據(jù)和用戶管理,日志異常查詢,自動(dòng)升級(jí)等相關(guān)功能特征。這些需求不僅僅是為了滿足用戶的需要,也是為了我們后續(xù)維護(hù)和監(jiān)控系統(tǒng)的需要。
系統(tǒng)的可靠性,可維護(hù)性和適應(yīng)性是密不可分的。當(dāng)系統(tǒng)出現(xiàn)故障和用戶出現(xiàn)錯(cuò)誤的操作后是否支持恢復(fù),當(dāng)用戶在使用過(guò)程中遇到錯(cuò)誤的時(shí)候是否可以立即定位問(wèn)題,但業(yè)務(wù)場(chǎng)景和邏輯發(fā)生變化的時(shí)候系統(tǒng)是否支持,當(dāng)網(wǎng)絡(luò)不穩(wěn)定或使用中異常中斷的情況下系統(tǒng)是否都有相應(yīng)的容錯(cuò)措施,這些都是需要在非功能性需求中考慮到的問(wèn)題。
易用性也是我們?cè)陂_(kāi)發(fā)非功能性需求中必須要考慮到的問(wèn)題,易用性同時(shí)還涉及到美工和UI界面,人機(jī)工程,交互式設(shè)計(jì),心理學(xué),用戶行為模式等多方面的知識(shí)。易用性的三原則就是易見(jiàn),易學(xué)和易用或者叫為發(fā)現(xiàn),易懂,效率。易見(jiàn)就是各種功能操作不要藏得太深,用戶很容易找到他們期望進(jìn)行的各種操作;易學(xué)需要軟件系統(tǒng)通過(guò)在線幫助,導(dǎo)航,向?qū)У雀鞣N方式保證軟件是可自學(xué)習(xí)的;易用的重點(diǎn)則在軟件在熟練使用后應(yīng)該可以更快的進(jìn)行各項(xiàng)操作。這三者相互間也存在沖突,需要平衡,而平衡的一個(gè)重點(diǎn)就是真正的做到以用戶為中心進(jìn)行設(shè)計(jì),需要去細(xì)分場(chǎng)景和用戶。
對(duì)于非功能性需求的描述,在描述過(guò)程中必須要強(qiáng)調(diào)到人,業(yè)務(wù)場(chǎng)景,環(huán)境等各方面的內(nèi)容。強(qiáng)調(diào)的目的就是要說(shuō)明非功能性需求不是無(wú)限度的,任何一項(xiàng)非功能性需求的實(shí)現(xiàn)往往會(huì)付出更大的研發(fā)人力成本和硬件網(wǎng)絡(luò)成本。
以上我們?yōu)榇蠹曳窒砹耸裁词欠枪δ苄孕枨?非功能性需求包括哪些方面?如果您還想繼續(xù)了解相關(guān)內(nèi)容,請(qǐng)您及時(shí)關(guān)注中培偉業(yè)。