“非功能需求”属于模糊术语吗
文兵 2020-9-15 10:00
老師的大作兩個(gè)版本我都買來學(xué)習(xí)了,給我的工作幫助非常大。我有個(gè)問題,第一版里面您說需求分為功能需求,非功能需求,設(shè)計(jì)約束,第二版把非功能需求改成質(zhì)量需求,我也看過您寫的CTO糊涂術(shù)語文章,您認(rèn)為非功能需求屬于什么術(shù)語呢?
UMLChina潘加宇
我現(xiàn)在的觀點(diǎn)是,“非功能需求”屬于模糊術(shù)語,不過這個(gè)模糊是表達(dá)上的模糊,來源于歷史習(xí)慣,繼續(xù)使用的害處比“功能模塊”、“用戶需求”之類的術(shù)語要小。
模糊之處在于,針對(duì)“需求”集合,“功能需求”是一個(gè)子集,“非功能需求”的字面意思就是“功能需求”的補(bǔ)集,所以這兩個(gè)相加就是全集了,“需求分為功能需求,非功能需求,設(shè)計(jì)約束”的表述是不嚴(yán)謹(jǐn)?shù)摹?/p>
但是,類似于功能需求+非功能需求+設(shè)計(jì)約束的表述方式由來已久,我自己應(yīng)該是從2002年開始使用這樣的表述。當(dāng)然,我肯定也是從教材上看的,具體哪一本教材現(xiàn)在不記得了。事實(shí)上,這么多年來,不少書籍依然是這樣表述的,甚至更加混亂。翻閱手邊有的軟件工程和需求專著,截幾個(gè)圖:
圖1 摘自 軟件工程(第4版 修訂版),Shari Lawrence Pfleeger 等 著,楊衛(wèi)東 譯,人民郵電出版社,2019
圖2 摘自 軟件工程導(dǎo)論(原書第4版),Frank Tsui 等 著,崔展齊 等 譯,機(jī)械工業(yè)出版社,2018
圖3 摘自 AOSD中文版-基于用例的面向方面軟件開發(fā),Ivar Jacobson 等 著,徐鋒 譯,電子工業(yè)出版社,2005
圖4 摘自 The Requirements Engineering Handbook, Ralph R. Young, Artech House, 2003
以上都是國(guó)外作者的書籍,國(guó)內(nèi)作者的書籍也有的,例如:
圖5 摘自 軟件需求最佳實(shí)踐,徐鋒 著,電子工業(yè)出版社,2008
要表述嚴(yán)謹(jǐn)一點(diǎn),做法可以有:
(1)設(shè)計(jì)約束不是需求。這個(gè)不合適,把它們擺在一起,說明屬于一類東西,不管這東西叫“需求”還是“阿貓”、“阿狗”。它們都屬于“系統(tǒng)不這樣不行,否則會(huì)損害涉眾利益”。
(2)設(shè)計(jì)約束是非功能需求的一種。這個(gè)可以,但是習(xí)慣上說到“非功能需求”,想到的是速度、可靠性等等,這也是出現(xiàn)模糊表達(dá)的原因。
(3)把“非功能需求”改名。“非功能需求”這樣的口袋式命名本來就不合適,例如可以改為Pfleeger書(圖1)中的表達(dá)方式——“質(zhì)量需求”,不過,“質(zhì)量”這個(gè)詞也模糊得很。
“需求分為功能需求、質(zhì)量需求和設(shè)計(jì)約束”也還是不合適,憑什么前面兩個(gè)都有“需求”二字收尾,最后一個(gè)就沒有?還可以把“需求”這個(gè)尾巴去掉——需求分為功能、性能、設(shè)計(jì)約束三種,然后就往這三個(gè)筐里分吧。
總結(jié)
以上是生活随笔為你收集整理的“非功能需求”属于模糊术语吗的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 开源项目zheng学习
- 下一篇: 基于osgEarth的空间态势三维场景视