说说软件需求说明
軟件需求說明,也稱軟件需求說明書,或者軟件需求規(guī)格說明,或者軟件需求規(guī)格說明書, 對應(yīng)的英文是Software requirements specification, 縮寫是SRS。
軟件需求說明是軟件系統(tǒng)需求的規(guī)格化說明,是對將要開發(fā)系統(tǒng)的行為的說明。它包括功能性需求,也包括非功能性需求。
傳統(tǒng)軟件需求說明書章節(jié)示例
根據(jù)中國大陸GB8567-88 計(jì)算機(jī)軟件產(chǎn)品開發(fā)文件編制指南,軟件需求說明書章節(jié)如下:
1引言1.1編寫目的 1.2背景 1.3定義 1.4參考資料 2任務(wù)概述2.1目標(biāo)2.2用戶的特點(diǎn) 2.3假定與約束 3需求規(guī)定3.1對功能的規(guī)定3.2對性能的規(guī)定 3.2.1精度 3.2.2時間特性耍求3.2.3靈活性 3.3輸入輸出要求3.4數(shù)據(jù)管理能力要求3.5故障處理要求3.6其他專門要求4運(yùn)行環(huán)境規(guī)定 4.1設(shè)備 4.2支持軟件 4.3接口 4.4控制至今各組織的軟件需求說明書模板雖然經(jīng)過使用后歷經(jīng)調(diào)整,但往往仍然能夠看到上述章節(jié)要求的痕跡。
相關(guān)歷史
- 1984年,IEEE發(fā)布了 Guide to Software Requirements Specifications.?[3]。
- 1988年,中國大陸發(fā)布了GB8567-88《計(jì)算機(jī)軟件產(chǎn)品開發(fā)文件編制指南》以及GB9385-88《計(jì)算機(jī)軟件需求說明編制指南》[4],,這幾項(xiàng)標(biāo)準(zhǔn)中中國大陸影響深遠(yuǎn),很好的指導(dǎo)了上世紀(jì)90年代的軟件開發(fā),也統(tǒng)治了當(dāng)時中國大陸的軟件工程教材。直到今天仍然有大量企業(yè)參照,而當(dāng)時用例分析方法還沒有流行。
- 1986年,Ivar Jacobson,UML和統(tǒng)一過程的重要貢獻(xiàn)者,將他在1967年定義愛立信AXE系統(tǒng)的構(gòu)架時開始書寫使用場境usage scenarios改名為Use Case,即是用例。
- 1997年11月,UML被OMG全體成員一致通過,并被采納為標(biāo)準(zhǔn),而用例是其中的關(guān)鍵部分。
- 1998年,用戶故事起源于極限編程中,User stories originated with Extreme Programming (XP), whose first written description in 1998 only claimed that customers defined project scope "with user stories, which are like use cases". Rather than offered as a distinct practice, they were described as one of the "game pieces" used in the planning game. However, most of the further literature thrust around all the ways arguing that user stories are "unlike" use cases, in trying to answer in a more practical manner "how requirements are handled" in XP and more generally Agile projects. This drives the emergence, over the years, of a more sophisticated account of user stories.
- 2001年, In 2001, Ron Jeffries proposed the well-known Three C's formula, i.e. Card, Conversation, Confirmation, to capture the components of a user story.參見?https://en.wikipedia.org/wiki/User_story#History
- 2008年,中國大陸發(fā)布了GB/T9385-2008 《計(jì)算機(jī)軟件需求說明編制指南》?[5],它是GB/T9385《計(jì)算機(jī)軟件需求說明編制指南》的第一次修訂,代替被廢止GB/T9385-1988。
現(xiàn)狀
到目前的2014年,在軟件需求表達(dá)方式領(lǐng)域出現(xiàn)了如下三種常見情況:
有些組織雖然仍然稱呼需求文檔為需求說明書(或者SRS),而實(shí)質(zhì)的表達(dá)采用的是用例,這種情況歸屬于上述的第2種情況。這樣包含用例的SRS的常見章節(jié)如下:
1 項(xiàng)目概況 1.1 產(chǎn)品或系統(tǒng)名稱 1.2 產(chǎn)品或系統(tǒng)用戶 1.3 運(yùn)行平臺 1.4 詞匯表 1.5 數(shù)據(jù)字典 2 性能指標(biāo)和驗(yàn)收標(biāo)準(zhǔn) 3 功能需求概況 3.1 總體概述 3.2 功能模塊劃分 3.3 功能塊編碼 4 模塊1 [例如]用戶組織 4.1 模塊概述 4.2 業(yè)務(wù)邏輯規(guī)則 4.3 用例圖 4.4 用例1 [例如]用例:用戶登錄 4.4.1 描述 4.4.2 對應(yīng)的原始需求 4.4.3 前提條件 4.4.4 事件流 4.4.5 用戶界面 4.4.6 后置條件、特別要求和擴(kuò)展點(diǎn) 4.5 用例2實(shí)現(xiàn) 4.5.1 描述 4.5.2 對應(yīng)的原始需求 4.5.3 前提 4.5.4 事件流 4.5.5 用戶界面 4.5.6 后置條件、特別要求和擴(kuò)展點(diǎn) 4.6 外部接口 5 模塊2 格式同第5章 5.1 概述 5.2 業(yè)務(wù)邏輯規(guī)則 5.3 用例圖 5.4 用例1實(shí)現(xiàn) 5.5 用例2實(shí)現(xiàn) 5.6 外部接口 6 模塊3…n 7 信息安全方面需求 7.1 許可證方面需求 7.2 身份認(rèn)證和授權(quán)方面需求 7.3 可恢復(fù)性方面需求 8 其它非功能性需求 9 其它要求在最新的SWEBOK V3.0[7]中,在這一領(lǐng)域仍然采用了“Software requirements specification”的說法。
但是在中文領(lǐng)域,軟件需求說明書是無法在字面意思上涵蓋:1,不采用SRS寫法的用例分析;2,用戶故事。
因此,提議中文領(lǐng)域?qū)?yīng)詞匯是“軟件需求說明"或者“軟件需求規(guī)格說明", 沒有“書”字,這樣的字面意思就能夠涵蓋用例和用戶故事。
說明:至于表達(dá)內(nèi)部事務(wù)的用戶故事是否屬于需求范疇,那是另一回事,畢竟多數(shù)的用戶故事表達(dá)的是需求。
參考資料
總結(jié)
- 上一篇: 产品待办列表的几个最佳实践
- 下一篇: 需求用例分析之一:异常流