qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請(qǐng)?jiān)L問(wèn) http://qaseven.github.io/

          實(shí)例化需求的概念和流程

           最近一段時(shí)間在關(guān)注一種新的敏捷模式,當(dāng)然這里說(shuō)新,是由于目前很少看到有項(xiàng)目在應(yīng)用,其實(shí)這種模式很早就已經(jīng)誕生了。一個(gè)偶爾的機(jī)會(huì),在苦尋敏捷測(cè)試的 過(guò)程中,無(wú)意中看一本書(shū),關(guān)于如何提高敏捷過(guò)程中需求、開(kāi)發(fā)和驗(yàn)收的測(cè)試效率,讓我很是感興趣,這本書(shū)名《實(shí)例化需求:團(tuán)隊(duì)如何交付正確的軟件》。可能是 由于翻譯的原因,讀起來(lái)給我的幫助并不是那么大,但至少先讓初步了解他的思想,我想這就是最大的幫助了,因?yàn)槲掖_實(shí)接受了他。

            關(guān)于如何處理需求說(shuō)明與測(cè)試,不同的組織使用不同的名稱,或者說(shuō)是不同的定義,但他們都有一套共同的核心原則與思想,而且當(dāng)你接受他了之后,我們便可以認(rèn)為他們本質(zhì)上是一致的。通常有如下定義:

            ● 敏捷驗(yàn)收測(cè)試

            ● 驗(yàn)收測(cè)試驅(qū)動(dòng)開(kāi)發(fā)

            ● 實(shí)例驅(qū)動(dòng)開(kāi)發(fā)

            ● User Story測(cè)試

            ● BDD行為驅(qū)動(dòng)開(kāi)發(fā)

            ● 實(shí)例化需求說(shuō)明(Specification by Example)

             對(duì)于以上的概念,我想大家都不陌生,但可能都是一個(gè)概念,因?yàn)闆](méi)有實(shí)踐。當(dāng)具體去實(shí)踐,其實(shí)就發(fā)現(xiàn)跟我們平時(shí)的流程相對(duì)也很容易理解,只是方式不一樣, 或者執(zhí)行流程不一樣,當(dāng)然這里要說(shuō)的就是不同,那就是方法。方法都是總結(jié)出來(lái),多實(shí)踐之后,提煉出來(lái)的就是適合我們的方法。就如同我們?cè)趯?shí)施了一段時(shí)間之 后,突然有一天有人問(wèn)我什么是BDD(行為驅(qū)動(dòng)開(kāi)發(fā)),我發(fā)現(xiàn)我很疑惑,我不理解。但細(xì)想,我現(xiàn)在做的流程不就是BDD嗎,而我現(xiàn)在做的流程準(zhǔn)確來(lái)說(shuō)被定 義為實(shí)例化需求,但這個(gè)概念似乎不能把開(kāi)發(fā)和測(cè)試給拉進(jìn)來(lái),而用BDD來(lái)定義,似乎就一瞬間把需求、設(shè)計(jì)、開(kāi)發(fā)和測(cè)試?yán)壎ㄔ诹艘黄稹?/p>

             何為BDD?其實(shí)就是通過(guò)真實(shí)用戶的行為來(lái)定義我們需要開(kāi)發(fā)出什么樣的產(chǎn)品來(lái),個(gè)人理解。但再結(jié)合實(shí)例化需求,就會(huì)發(fā)現(xiàn),我們就是把用戶的行為通過(guò)一個(gè)實(shí) 例化的過(guò)程描述出來(lái),然后整理成設(shè)計(jì)、開(kāi)發(fā)和測(cè)試都能看懂的,當(dāng)然最重要的是用戶也能看懂,而且用戶看完之后就認(rèn)可,這就是我想要的,這就是BDD,也就 是實(shí)例化需求過(guò)程。

            它既不是傳統(tǒng)的需求文檔,也不是設(shè)計(jì)文檔,更不是測(cè)試用例文檔,但適用于從需求、設(shè)計(jì)、開(kāi)發(fā)和測(cè)試的每一個(gè)階段,而且都是從用戶的角度為出發(fā)點(diǎn)的。那我就認(rèn)為那就是我們想要的過(guò)程模式。

            以下為實(shí)例化需求說(shuō)明的主要過(guò)程模式:



           當(dāng)我們獲取一個(gè)業(yè)務(wù)目標(biāo)時(shí),將按照上述流程圖來(lái)生產(chǎn)實(shí)例化需求過(guò)程

            ● 從目標(biāo)中獲取范圍

            通過(guò)用戶提供的需求描述,我們將這些描述轉(zhuǎn)變成另一種用戶能夠理解且真實(shí)用戶實(shí)際地行為方式,這里就要引入U(xiǎn)ser Story用戶故事的概念。然后以客戶的業(yè)務(wù)目標(biāo)為起始,然后通過(guò)協(xié)作界定可以實(shí)現(xiàn)目標(biāo)的范圍。這里最關(guān)鍵的就是與用戶更密切地溝通,通過(guò)不斷細(xì)化,確認(rèn) 這才是用戶想要的功能。

            ● 從協(xié)作中制定需求說(shuō)明

            之所以要提出協(xié)作制定需求說(shuō)明,目的是讓需求、設(shè)計(jì)、開(kāi)發(fā)以及測(cè)試都參與進(jìn)來(lái),發(fā)揮整個(gè)Team的知識(shí)和經(jīng)驗(yàn),力求讓項(xiàng)目的干系人都更多的參與到交付過(guò)程中。

            ● 舉例說(shuō)明

            舉例說(shuō)明其實(shí)是項(xiàng)目需求交流過(guò)程中不可或缺的,團(tuán)隊(duì)中不同職能人都有,而且每個(gè)人的業(yè)務(wù)背景不同,通過(guò)舉例說(shuō)明的方式可以讓目標(biāo)更一致。

            ● 提煉需求說(shuō)明

            協(xié)作過(guò)程中的開(kāi)發(fā)討論可以建立大家對(duì)相關(guān)領(lǐng)域的共識(shí),但最終得到的實(shí)例往往包含很多不必要的細(xì)節(jié)。而關(guān)鍵實(shí)例必須是精簡(jiǎn)的。提煉需求說(shuō)明的過(guò)程,其實(shí)就伴隨著實(shí)例化需求的產(chǎn)生,且這些提煉好的實(shí)例就可以當(dāng)作交付的驗(yàn)收條件。

            ● 頻繁驗(yàn)證

            頻繁驗(yàn)證的依據(jù)就是提煉需求產(chǎn)生的實(shí)例化需求,它是所有過(guò)程實(shí)施中都必須要反復(fù)進(jìn)行的工作。需求通過(guò)頻繁驗(yàn)證與用戶進(jìn)行頻繁確認(rèn);設(shè)計(jì)通過(guò)實(shí)例 化需求來(lái)頻繁驗(yàn)證設(shè)計(jì)是否滿足用戶的需求;開(kāi)發(fā)通過(guò)實(shí)例化需求頻繁驗(yàn)證代碼中業(yè)務(wù)邏輯;測(cè)試通過(guò)實(shí)例化需求來(lái)頻繁驗(yàn)證交付的功能,并作為最后驗(yàn)收測(cè)試的依 據(jù)。

            ● 演化出一個(gè)文檔系統(tǒng)

            通過(guò)以上的這些流程,最后演化出一個(gè)文檔系統(tǒng)。之所以稱為文檔系統(tǒng),主要是體現(xiàn)它的可靠性、權(quán)威性。所有設(shè)計(jì)、開(kāi)發(fā)、變更以及測(cè)試過(guò)程都以此為出發(fā)點(diǎn)來(lái)考慮,并及時(shí)更新,長(zhǎng)久維護(hù)。

            實(shí)例化需求過(guò)程的核心就是與用戶站在一起,從溝通開(kāi)始,不斷舉例、細(xì)化、精簡(jiǎn)到統(tǒng)一確認(rèn)。

          posted on 2013-01-18 10:07 順其自然EVO 閱讀(444) 評(píng)論(0)  編輯  收藏 所屬分類: 測(cè)試學(xué)習(xí)專欄

          <2013年1月>
          303112345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 高台县| 长葛市| 许昌市| 瓮安县| 柏乡县| 衡水市| 青神县| 杨浦区| 利川市| 中宁县| 三江| 文成县| 望城县| 茌平县| 阜阳市| 平昌县| 左贡县| 陇川县| 新邵县| 从化市| 竹山县| 谷城县| 昆山市| 黄大仙区| 荥经县| 商丘市| 石台县| 基隆市| 安丘市| 隆化县| 全南县| 马边| 宜黄县| 崇信县| 灌南县| 德安县| 合山市| 彭州市| 叶城县| 海淀区| 凤台县|