軟件需求-第6課-軟件需求獲取(三)(第1版)_第1頁
軟件需求-第6課-軟件需求獲取(三)(第1版)_第2頁
軟件需求-第6課-軟件需求獲取(三)(第1版)_第3頁
軟件需求-第6課-軟件需求獲取(三)(第1版)_第4頁
軟件需求-第6課-軟件需求獲取(三)(第1版)_第5頁
已閱讀5頁,還剩59頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第6章軟件需求獲取第6章軟件需求獲取概述一般主要的需求獲取的方法包括用戶訪談

用戶調(diào)查文檔分析原型法〔情節(jié)串聯(lián)板〕

模型驅(qū)動(dòng)的方法3需求獲取的主要方法第6章軟件需求獲取概述用戶調(diào)查3需求獲取的主要方法用戶調(diào)查技術(shù)實(shí)際上是與用戶訪談相關(guān)的一組技術(shù)和方法。在市場(chǎng)調(diào)查領(lǐng)域應(yīng)用非常廣泛。主要優(yōu)點(diǎn)在于調(diào)查面比較寬,用戶反響多。這恰好能夠稱為用戶訪談的有效補(bǔ)充,能夠克服用戶調(diào)查的片面性。而其缺點(diǎn)主要是大家都認(rèn)識(shí)到的往往不易深入,而這恰好是用戶訪談所能防止的。所以說用戶調(diào)查是用戶訪談的有效、有益的補(bǔ)充。第6章軟件需求獲取概述用戶調(diào)查3需求獲取的主要方法采用用戶調(diào)查的時(shí)機(jī)一般來說,可以將用戶訪談和用戶調(diào)查共同使用??梢圆捎脙煞N截然不同的組合方式。先調(diào)查,后訪談:先設(shè)計(jì)一個(gè)通用的問卷,從問卷的結(jié)果中整理出一個(gè)關(guān)鍵點(diǎn)。然后選取一些用戶代表,進(jìn)行有針對(duì)性的訪談。先訪談,后調(diào)查:就是先選取一些典型的用戶,然后對(duì)訪談的結(jié)果進(jìn)行整理。在這些根底上設(shè)計(jì)相關(guān)的調(diào)查問卷。通過調(diào)查來驗(yàn)證用戶訪談的結(jié)果是否具有普遍性。第6章軟件需求獲取概述用戶調(diào)查3需求獲取的主要方法采用用戶調(diào)查的時(shí)機(jī)一般來說,在開展市場(chǎng)調(diào)查時(shí),由于很難深入接觸到潛在的用戶。所以總是先調(diào)查,后訪談。而在需求獲取時(shí),通常采用的策略是先訪談,后調(diào)查。其實(shí)原因在于市場(chǎng)調(diào)查與需求獲取有不同的應(yīng)用背景。一般市場(chǎng)調(diào)查通常用于驗(yàn)證潛在客戶對(duì)產(chǎn)品的接受程度。而需求獲取的目標(biāo)是要理解客戶需要解決的問題。也就是說需求獲取時(shí)你往往還沒有產(chǎn)品,信息不夠充分,所以很難設(shè)計(jì)出有效的調(diào)查問卷。第6章軟件需求獲取概述用戶調(diào)查3需求獲取的主要方法采用用戶調(diào)查的時(shí)機(jī)什么時(shí)候開展用戶調(diào)查工作呢?用戶調(diào)查的目標(biāo)是為了客戶用戶訪談的片面性,顯然當(dāng)片面性矛盾比較突出時(shí)就應(yīng)該采用用戶調(diào)查的方式。從實(shí)際操作來看:當(dāng)出現(xiàn)以下情況時(shí),可以采用用戶調(diào)查:〔1〕存在大樣本用戶:在操作層面上尤其突出。有些崗位在用戶單位中從業(yè)人數(shù)非常大,進(jìn)行訪談具有片面性,不可能一一訪談。通常在此情況下,需要采用用戶調(diào)查的方式。〔2〕存在夸地域的用戶:由于用戶單位分散在多個(gè)區(qū)域,所需要解決的問題會(huì)不盡相同。這時(shí)也需要采用用戶調(diào)查的方式獲取這些差異性的問題。第6章軟件需求獲取概述用戶調(diào)查3需求獲取的主要方法用戶調(diào)查問卷的設(shè)計(jì)要點(diǎn)這個(gè)問題有大量的資料可參考。也許需要注意的是以下幾點(diǎn):〔1〕注意問題篇幅和布局通常認(rèn)為問卷不要讓用戶在答復(fù)時(shí)花太多的時(shí)間,一般不超過20分鐘。換句話說,就是量不要超過3頁。問題排列應(yīng)該先易后難。另外,要有邏輯相關(guān)性的考慮。跳躍太大的問卷,往往會(huì)干擾答卷人的思路。從而降低了答卷的質(zhì)量?!?〕注意問題類型的選擇盡量選擇開放性〔簡答題〕或半封閉〔多項(xiàng)選擇題〕的題型,少用封閉性題型〔判斷題〕。研究說明,從信息收集的有效性來說,開放性問題效果最好。半封閉型問題次之,封閉型問題最差。第6章軟件需求獲取概述用戶調(diào)查3需求獲取的主要方法用戶調(diào)查問卷的設(shè)計(jì)要點(diǎn)封閉式問題的兩個(gè)現(xiàn)象,比較有意思,僅供參考:〔1〕C現(xiàn)象:考試時(shí)大家都知道一個(gè)口訣“不會(huì)就選C〞。原因可能是人的“從中〞心理。A和D有邊緣化的感覺。〔2〕D現(xiàn)象:心理學(xué)研究顯示,當(dāng)將四雙相同的絲襪擺在一起,然后將外包裝全部拆掉,讓大家判斷那雙最好,結(jié)果很有意思,約60%的人認(rèn)為最后一雙最好。提示:如果將你認(rèn)為的大量正確的答案在C或D,那你將得到滿意的效果,但實(shí)際上情況可能相反。均勻分配。第6章軟件需求獲取概述3需求獲取的主要方法一般主要的需求獲取的方法包括用戶訪談

用戶調(diào)查文檔分析原型法〔情節(jié)串聯(lián)板〕

模型驅(qū)動(dòng)的方法第6章軟件需求獲取概述3需求獲取的主要方法文檔分析文檔分析又稱文檔考古或者文檔審查,是一種專門針對(duì)文檔進(jìn)行需求獲取的活動(dòng)。其主要獲取對(duì)象包括相關(guān)產(chǎn)品的需求說明書、客戶需求文檔、相關(guān)數(shù)據(jù)及流程說明等。其主要優(yōu)點(diǎn)是能夠詳細(xì)、直觀地對(duì)數(shù)據(jù)流細(xì)節(jié)進(jìn)行了解和分析。缺點(diǎn)也比較明顯,企業(yè)機(jī)構(gòu)中,文檔量通常非常大,由此容易使需求獲取人員陷入文山書海中不能自拔,甚至引起誤導(dǎo)。第6章軟件需求獲取概述3需求獲取的主要方法文檔分析文檔分析的時(shí)機(jī)文檔分析通常配合用戶訪談或者用戶調(diào)查期間開展。采用此策略的的目的是因?yàn)橛脩粼L談或者用戶調(diào)查難以獲得數(shù)據(jù)方面的詳細(xì)需求,你不能指望被訪談?wù)呋蛘弑徽{(diào)查者能夠記住相關(guān)數(shù)據(jù)細(xì)節(jié)。由此說文檔分析是研究、分析、細(xì)化數(shù)據(jù)的重要手段。第6章軟件需求獲取概述3需求獲取的主要方法文檔分析文檔分析使用要點(diǎn)文檔分析使用時(shí)要注意文檔的歷史問題。不是簡單地將文檔中存在的數(shù)據(jù)拿來用,而是要分析其應(yīng)用的時(shí)間和環(huán)境。否那么實(shí)施是就會(huì)將紙質(zhì)流程直接搬到計(jì)算機(jī)上,而沒有有效地利用信息化工具對(duì)流程進(jìn)行適當(dāng)?shù)母倪M(jìn)。所以文檔分析重在“分析〞,目標(biāo)是思考文檔對(duì)新流程的影響以及新流程對(duì)文檔的改進(jìn)。文檔分析不僅在需求獲取階段采用,往往在需求分析,甚至設(shè)計(jì)階段仍然被使用。經(jīng)驗(yàn)是,如果工程比較大,開發(fā)周期比較長,要拍專人負(fù)責(zé)現(xiàn)行文檔的管理和收集工作。隨時(shí)為需求和設(shè)計(jì)人員共享。第6章軟件需求獲取概述3需求獲取的主要方法一般主要的需求獲取的方法包括用戶訪談

用戶調(diào)查文檔分析原型法〔情節(jié)串聯(lián)板〕

模型驅(qū)動(dòng)的方法第6章軟件需求獲取概述3需求獲取的主要方法原型法什么是原型以及為什么要建立原型?“原型是一個(gè)系統(tǒng),它內(nèi)化了〔capture〕一個(gè)更遲系統(tǒng)〔latersystem〕的本質(zhì)特征。原型系統(tǒng)通常被構(gòu)造為不完整的系統(tǒng),以在將來進(jìn)行改進(jìn)、補(bǔ)充或者替代。〞如果在最終的物件〔finalartifact〕產(chǎn)生之前,一個(gè)中間物件〔mediateartifact〕被用來在一定廣度和深度范圍內(nèi)表現(xiàn)這個(gè)最終物件,那么這個(gè)中間物件就被認(rèn)為是最終物件在該廣度和深度上的原型。例如,某國家機(jī)關(guān)對(duì)其將開發(fā)的系統(tǒng)在招標(biāo)時(shí)要求,應(yīng)標(biāo)公司除了完成必要的商務(wù)標(biāo)和技術(shù)標(biāo)應(yīng)答外,還需要根據(jù)其提供的用例完成相關(guān)系統(tǒng)的開發(fā)〔該系統(tǒng)大約25-30個(gè)用例,招標(biāo)時(shí)提供的用例為8個(gè)〕。第6章軟件需求獲取概述3需求獲取的主要方法原型法什么是原型以及為什么要建立原型?軟件原型是所提議的新產(chǎn)品的局部實(shí)現(xiàn)或可能的實(shí)現(xiàn)。使用原型有3個(gè)主要目的:明確并完善需求原型作為一種需求工具,它是對(duì)局部系統(tǒng)的初步實(shí)現(xiàn),因?yàn)槲覀兩袥]有很好地了解該系統(tǒng)。

研究設(shè)計(jì)選擇方案原型作為一種設(shè)計(jì)工具,涉眾可以用它研究不同的用戶交互技術(shù),優(yōu)化系統(tǒng)易用性,并評(píng)估可能的技術(shù)方案。開展為最終產(chǎn)品原型作為一種構(gòu)造工具,是產(chǎn)品一個(gè)最初子集的完整功能實(shí)現(xiàn)。第6章軟件需求獲取概述3需求獲取的主要方法原型法什么是原型以及為什么要建立原型?建立原型的主要原因是為了解決在產(chǎn)品開發(fā)的早期階段不能確定的一些問題。利用這些不確定性可以判斷系統(tǒng)中哪些局部需要建立原型,以及我們希望從用戶對(duì)原型的評(píng)估中獲得什么信息。對(duì)于發(fā)現(xiàn)并解決需求中的二義性和不完整性,原型也是一種很好的方法。當(dāng)產(chǎn)品處于編寫規(guī)格說明和設(shè)計(jì)階段時(shí),原型可以使他們更具體地思考問題。原型,尤其是直觀的原型,比開發(fā)人員有時(shí)所使用的技術(shù)術(shù)語更易于理解。第6章軟件需求獲取概述3需求獲取的主要方法原型法什么是原型以及為什么要建立原型?構(gòu)建原型的目標(biāo)是降低工程風(fēng)險(xiǎn)。原因在于:信息系統(tǒng)中的軟件開發(fā)強(qiáng)調(diào)文檔化和標(biāo)準(zhǔn)化。標(biāo)準(zhǔn)化要求開發(fā)人員按照統(tǒng)一的過程開發(fā)軟件。對(duì)軟件開發(fā)過程的規(guī)定和描述就是軟件開發(fā)模型。目前使用最為廣泛的軟件開發(fā)模型是瀑布模型。瀑布模型是最常規(guī)的軟件開發(fā)模型。它就像瀑布的流水一樣,一個(gè)階段一旦結(jié)束,就不能對(duì)其工作結(jié)果進(jìn)行修正,各個(gè)階段間不存在反響關(guān)系。這種連續(xù)、無反響的特點(diǎn),保證了軟件開發(fā)進(jìn)度,但同時(shí)也對(duì)每一個(gè)階段提出了嚴(yán)格的,在某些條件下甚至是苛刻的工作質(zhì)量要求。第6章軟件需求獲取概述3需求獲取的主要方法原型法什么是原型以及為什么要建立原型?常規(guī)的軟件生命周期強(qiáng)調(diào)開發(fā)的階段性,軟件開發(fā)過程必須嚴(yán)格遵循分析、設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試、維護(hù)的次序進(jìn)行,而且各階段間沒有反響關(guān)系。開發(fā)的標(biāo)準(zhǔn)化無疑提高了開發(fā)效率,保證了軟件的可靠性和可維護(hù)性。然而,對(duì)于有些類型的實(shí)際問題,常規(guī)方法也存在著以下一些問題:①軟件開發(fā)早期,有時(shí)很難明確定義出確切的軟件需求,提供詳細(xì)的需求規(guī)格說明書。無論是系統(tǒng)人員,還是客戶,有的只是對(duì)目標(biāo)系統(tǒng)十分籠統(tǒng)初步的認(rèn)識(shí)。軟件系統(tǒng)的很多具體細(xì)節(jié)往往是隨著軟件系統(tǒng)的建立而逐步明確的。這樣,在需求分析階段,分析人員常常得花大量時(shí)間去捕捉一些非常模糊的想法,并花大量時(shí)間以這種模糊的認(rèn)識(shí)為根底去編寫包括很多細(xì)節(jié)內(nèi)容的需求規(guī)格說明書,因而需求規(guī)格說明書的一致性、準(zhǔn)確性、正確性、有效性很難保證。第6章軟件需求獲取概述3需求獲取的主要方法②常規(guī)的軟件開發(fā)各階段相互傳遞信息的唯一工具是文檔。雖然文檔內(nèi)有很多形象的描述方法,如各種圖表等,但它們畢竟是實(shí)際系統(tǒng)的抽象。即使在軟件開發(fā)早期作出了明確的需求分析,其后每一個(gè)階段的開發(fā)人員都不得不再花大量時(shí)間,在一定程度上,通過閱讀文檔重溫前一階段系統(tǒng)人員的工作。同時(shí),由于這些階段的系統(tǒng)人員一般不和客戶作直接交流,因而,可能出現(xiàn)的情況是,需求分析中已經(jīng)得到正確說明的問題,經(jīng)過這些階段中不同的系統(tǒng)人員的各種理解和加工后,在繼續(xù)傳遞的過程中發(fā)生.原型法什么是原型以及為什么要建立原型?第6章軟件需求獲取概述3需求獲取的主要方法以上問題存在的一個(gè)很重要的原因,就是在系統(tǒng)人員和客戶面前,不存在一個(gè)實(shí)實(shí)在在的事物,這個(gè)實(shí)體可以充分表達(dá)系統(tǒng)人員對(duì)問題空間有關(guān)概念的理解程度和對(duì)目標(biāo)系統(tǒng)的初步考慮,客戶也可通過這個(gè)實(shí)體,說明其對(duì)目標(biāo)系統(tǒng)的要求和系統(tǒng)人員當(dāng)前的一些理解錯(cuò)誤。基于這些問題,信息系統(tǒng)開發(fā)需要更為實(shí)用的方法指導(dǎo)開發(fā)過程。原型法即是適應(yīng)這種需要產(chǎn)生的一種信息系統(tǒng)開發(fā)方法。原型法什么是原型以及為什么要建立原型?第6章軟件需求獲取概述3需求獲取的主要方法原型法采用原型的好處?利用原型的好處有:及時(shí)、有力的響應(yīng)用戶需求的變化;

減少返工;幫助控制不完整需求所帶來的風(fēng)險(xiǎn);可以將一個(gè)大的難以處理的開發(fā)過程細(xì)分成一些更小更容易處理的步驟;減少開發(fā)本錢,提高經(jīng)濟(jì)效益;增加開發(fā)者之間的交流,幫助確定技術(shù)解決方案的可行性;有效的識(shí)別風(fēng)險(xiǎn)和解決風(fēng)險(xiǎn),幫助進(jìn)行風(fēng)險(xiǎn)管理;提高用戶在軟件開發(fā)中的參與程度。原型可以把新系統(tǒng)的一個(gè)模型或一個(gè)局部擺在用戶的面前,可以激活他們的思維,并促進(jìn)需求對(duì)話。對(duì)原型的早期反響有助于涉眾對(duì)理解系統(tǒng)需求達(dá)成共識(shí),從而減小客戶不滿意的風(fēng)險(xiǎn)。第6章軟件需求獲取概述3需求獲取的主要方法幫助需求工程師及早解決需求的不確定性:創(chuàng)新性產(chǎn)品,它們的根本需求是潛在的,有著很大的不確定性;產(chǎn)品的用戶對(duì)相關(guān)類別的產(chǎn)品沒有經(jīng)驗(yàn),產(chǎn)品的細(xì)節(jié)需求存在著不確定性;用戶但在完成工作的方式上仍然存在障礙,產(chǎn)品在整體方案的可行性上存在著不確定性;用戶在清晰說明他們的需求方面存在困難,這些相關(guān)的需求是有著不確定性的需求;需求工程師在理解用戶的需求上存在困難,在澄清和理解之前,這些需求存在著不確定性;需求的可行性值得疑心,即具體需求的可滿足性存在著不確定性。原型法什么是原型以及為什么要建立原型?應(yīng)用原型的必要性第6章軟件需求獲取概述3需求獲取的主要方法原型法原型的類別-按照構(gòu)建技術(shù)分類水平原型方法〔horizontalprototyping〕它僅僅實(shí)現(xiàn)選定功能所有層次中的某些特定層次建立的原型產(chǎn)品稱為水平原型〔horizontalprototype〕要把注意力集中在概括性需求和工作流問題上垂直原型方法〔verticalprototyping〕它會(huì)觸及到選定功能實(shí)現(xiàn)的所有層次建立的原型產(chǎn)品稱為垂直原型〔verticalprototype〕要保證真實(shí)實(shí)現(xiàn)它的各種功能第6章軟件需求獲取概述3需求獲取的主要方法原型法原型的類別-按照使用方式分類演示原型〔presentationprototype〕主要被用在啟開工程階段目的是讓用戶相信應(yīng)用系統(tǒng)的開發(fā)是可行的嚴(yán)格意義上的原型〔prototypeproper〕主要被用在分析需求階段用來說明用戶界面或者系統(tǒng)功能的某些特定方面試驗(yàn)原型〔breadboardprototype〕主要被用在構(gòu)建系統(tǒng)階段幫助開發(fā)者澄清他們所面對(duì)的一些和系統(tǒng)構(gòu)建相關(guān)的技術(shù)問題引示系統(tǒng)原型〔pilotsystemprototype〕會(huì)被開發(fā)在系統(tǒng)開發(fā)的各個(gè)階段用作最終系統(tǒng)的構(gòu)建核心第6章軟件需求獲取概述3需求獲取的主要方法原型法原型的類別-按照開發(fā)方式分類探索式〔exploratory〕以缺陷需求開始繼而不斷調(diào)整和修正需求的原型開發(fā)方式稱為探索式要盡可能的調(diào)整各種設(shè)計(jì)選項(xiàng)實(shí)驗(yàn)式〔experimental〕以清晰的用戶需求和模糊的實(shí)現(xiàn)方法、實(shí)現(xiàn)效果、可行性開始,明確需求的可行性和技術(shù)實(shí)現(xiàn)方案定義一個(gè)對(duì)原型的評(píng)估方法,確定評(píng)估的屬性演化式〔evolutionary〕以清晰的原型化需求和工程積累下來的原型資產(chǎn)為開始原型化的需求,也有工程積累下來的原型資產(chǎn)第6章軟件需求獲取概述3需求獲取的主要方法原型法原型的類別-按照開發(fā)方式分類探索式和實(shí)驗(yàn)式方法產(chǎn)生的原型產(chǎn)品又被稱為拋棄式原型花費(fèi)最小的代價(jià),爭(zhēng)取最快的速度可能會(huì)使用簡易的開發(fā)工具和不成熟的構(gòu)造技術(shù)可能會(huì)忽略或簡化處理原型目的不相關(guān)的功能特征要堅(jiān)決的拋棄演化式原型方法產(chǎn)生的原型產(chǎn)品被稱為演化式原型〔evolutionaryprototype〕質(zhì)量要從一開始就能到達(dá)最終系統(tǒng)的要求要易于進(jìn)行擴(kuò)展和頻繁改進(jìn),因此開發(fā)者必須重視演化式原型的設(shè)計(jì)僅應(yīng)該被用于處理清晰的需求、規(guī)格說明和技術(shù)方案第6章軟件需求獲取概述3需求獲取的主要方法原型法廢棄式原型在構(gòu)造一個(gè)原型之前,需要做出一個(gè)明確的和經(jīng)過充分交流的決策——是在評(píng)估原型之后就廢棄原型呢,還是將原型作為最終交付的產(chǎn)品的一局部。可以構(gòu)建一個(gè)廢棄型原型(throwawayprototype)或研究型原型(exploratoryprototype)來答復(fù)這個(gè)問題、解決不確定性以及提高需求質(zhì)量(Davis1993)。通常,當(dāng)我們遇到需求中的不確定性、二義性、不完整性或模糊性時(shí),最有效的解決方法是建立拋棄式原型。原型可幫助用戶和開發(fā)人員想象如何實(shí)現(xiàn)需求和發(fā)現(xiàn)需求中的漏洞,并使用戶判斷出這些需求是否可以完成必要的業(yè)務(wù)過程。

第6章軟件需求獲取概述3需求獲取的主要方法原型法拋棄式原型的使用過程如下圖。首先,選擇適當(dāng)?shù)难菔竟δ?,并描述相?yīng)的用戶界面,然后構(gòu)造軟件原型。由于拋棄式原型在到達(dá)預(yù)期目的后被拋棄,因此應(yīng)該花最小的代價(jià)盡快地建立該原型。用戶對(duì)所構(gòu)造的軟件原型進(jìn)行評(píng)估,提出反響意見,這些反響可能會(huì)引起功能的改變,也可能引起用戶界面的改變。廢棄式原型第6章軟件需求獲取概述3需求獲取的主要方法原型法利用廢棄型原型從用例到界面設(shè)計(jì)的活動(dòng)序列廢棄式原型第6章軟件需求獲取概述3需求獲取的主要方法原型法〔1〕確定需求:根據(jù)所要完成的任務(wù),確定要建立何種原型,用原型來解決何種問題,以此來決定在構(gòu)造原型時(shí)忽略哪些細(xì)節(jié),及重點(diǎn)要驗(yàn)證及解決的問題。〔2〕快速設(shè)計(jì):在根本的需求分析的根底上,做必要的設(shè)計(jì)工作。〔3〕構(gòu)造原型:用某種語言或原型開發(fā)工具實(shí)現(xiàn)原型,得到可執(zhí)行的原型?!?〕評(píng)價(jià)原型:通過運(yùn)行原型,對(duì)所要解決的問題進(jìn)行驗(yàn)證,并可以提出新的要求。通過調(diào)整當(dāng)前原型實(shí)現(xiàn)?!?〕實(shí)現(xiàn)系統(tǒng):將運(yùn)行原型和評(píng)價(jià)原型所得結(jié)果,運(yùn)用到系統(tǒng)開發(fā)中,從而實(shí)現(xiàn)系統(tǒng)。得到所要開發(fā)的軟件產(chǎn)品。廢棄型原型的構(gòu)建步驟第6章軟件需求獲取概述3需求獲取的主要方法原型法演化型原型演化型原型是螺旋式軟件開發(fā)生命周期模型(Boehm1998)和某些面向?qū)ο筌浖_發(fā)過程(Kruchten1996)的一個(gè)組成局部。圖例演示了綜合使用各種原型的幾種方法。第6章軟件需求獲取概述3需求獲取的主要方法原型法演化式原型適合于基于Web應(yīng)用的系統(tǒng)開發(fā),這種系統(tǒng)往往隨著開發(fā)的進(jìn)展本身的需求也在發(fā)生變化。與丟棄式原型不同,演化式模型一開始就必須具有健壯性和產(chǎn)品質(zhì)量級(jí)的代碼,因此,對(duì)于描述相同的功能,建立演化式原型比建立丟棄式原型所花的時(shí)間要多。我們應(yīng)該考慮演化式原型的第一次演變,因?yàn)樗鼘⒆鳛閷?shí)現(xiàn)需求中易于理解和穩(wěn)定局部的試驗(yàn)性版本。從測(cè)試和首次使用中獲得的信息將引起下一次軟件原型的更新,正是這樣不斷增長和更新,使軟件從一系列演化式原型開展為最終完整的產(chǎn)品。演化型原型第6章軟件需求獲取概述3需求獲取的主要方法原型法原型的類別-按照介質(zhì)分類第6章軟件需求獲取概述3需求獲取的主要方法原型法書面原型(paperprototype)有時(shí)也稱為“低保真原型(lo-fiprototype)〞,是一種本錢低、速度快且不涉及高深技術(shù)的方法,可以把一個(gè)系統(tǒng)的某局部是如何實(shí)現(xiàn)的呈現(xiàn)在用戶面前書面原型可以判斷用戶和開發(fā)人員對(duì)需求的理解是否一致。書面原型還可以使在開發(fā)生產(chǎn)代碼之前,對(duì)可能的解決方案空間進(jìn)行試驗(yàn)性和低風(fēng)險(xiǎn)的嘗試。原型的類別-按照介質(zhì)分類第6章軟件需求獲取概述3需求獲取的主要方法原型法紙質(zhì)原型的創(chuàng)立是一個(gè)團(tuán)隊(duì)的努力;這個(gè)團(tuán)隊(duì)分成三個(gè)組,創(chuàng)造各自可行的原型第6章軟件需求獲取概述3需求獲取的主要方法原型法當(dāng)原型制作完成,每組出一個(gè)人給整個(gè)團(tuán)隊(duì)介紹小組的設(shè)計(jì),然后評(píng)估每個(gè)原型的利弊。第6章軟件需求獲取概述3需求獲取的主要方法原型法場(chǎng)景串聯(lián)版第6章軟件需求獲取概述3需求獲取的主要方法原型法場(chǎng)景串聯(lián)版場(chǎng)景串聯(lián)版應(yīng)該是以業(yè)務(wù)場(chǎng)景作為展示的主要線索;場(chǎng)景串聯(lián)版的本質(zhì)是交互,不要只關(guān)心界面的靜態(tài)效果。第6章軟件需求獲取概述3需求獲取的主要方法原型法原型方法的過程第6章軟件需求獲取概述3需求獲取的主要方法原型法原型的需求內(nèi)容可以從三個(gè)緯度上分析:外觀〔LookandFeel〕、角色〔Role〕和實(shí)現(xiàn)〔Implementation〕角色是指原型物件在用戶工作中的價(jià)值,也就是說它為什么是對(duì)用戶有用的。原型物件到底能夠幫助用戶完成什么樣的工作外觀是指用戶對(duì)原型物件的具體感覺體驗(yàn),即用戶在使用原型物件時(shí)會(huì)看到什么、聽到什么和感覺到什么實(shí)現(xiàn)是指原型物件完成功能的細(xì)節(jié)技術(shù)和方法原型方法的過程-確定原型的需求第6章軟件需求獲取概述3需求獲取的主要方法原型法選擇原型開發(fā)的方法原型方法的過程-原型的開發(fā)第6章軟件需求獲取概述3需求獲取的主要方法原型法原型方法的過程-選擇原型的構(gòu)建技術(shù)第6章軟件需求獲取概述3需求獲取的主要方法原型法為了提高對(duì)水平原型的評(píng)估,可以創(chuàng)立腳本來指導(dǎo)用戶通過一系列步驟并且答復(fù)一些特定的問題,以便獲取所需要的信息??梢栽儐栆韵聨讉€(gè)一般性的問題:這個(gè)原型是以你所期望的方式來實(shí)現(xiàn)功能的嗎?有遺漏的功能嗎?你認(rèn)為是否還有該原型所沒有處理的出錯(cuò)情況?有多余的功能嗎?你認(rèn)為這些導(dǎo)航的邏輯性和完整性如何?是否有過于復(fù)雜的任務(wù)?把從原型評(píng)估中獲得的信息編寫成文檔。對(duì)于一個(gè)水平原型,用這些信息細(xì)化軟件需求規(guī)格說明中的需求。原型方法的過程-原型的評(píng)估第6章軟件需求獲取概述3需求獲取的主要方法原型法原型方法的風(fēng)險(xiǎn)涉眾看到了一個(gè)正在運(yùn)行的原型,得出產(chǎn)品幾乎已經(jīng)完成的結(jié)論,從而提出快速交付產(chǎn)品的不當(dāng)要求用戶可能會(huì)被原型所表現(xiàn)出來的非功能特性遮蔽了眼睛,從而忽略了他們更應(yīng)該重視的功能特性在澄清需求不確定性的同時(shí)也可能會(huì)掩蓋一些用戶的假設(shè),這些假設(shè)將會(huì)無從發(fā)現(xiàn)原型開發(fā)工作投入太多的工作,使得開發(fā)團(tuán)隊(duì)消耗了過多的時(shí)間和過大的本錢第6章軟件需求獲取概述3需求獲取的主要方法原型法原型方法的成功因素創(chuàng)立軟件原型是一種功能強(qiáng)大的技術(shù),它可以加快開發(fā)進(jìn)度,提高客戶的滿意程度,生產(chǎn)出高質(zhì)量的軟件產(chǎn)品。為了在需求開發(fā)過程中建立有效的原型。請(qǐng)遵循如下原那么:應(yīng)該在工程方案中包括創(chuàng)立原型的任務(wù)。創(chuàng)立原型之前,先要陳述每個(gè)原型的用途。要方案開發(fā)多個(gè)原型。創(chuàng)立廢棄型原型要盡量快速而經(jīng)濟(jì)。廢棄型原型中不應(yīng)包括輸入數(shù)據(jù)有效性檢查、防御式編碼技術(shù)、用于錯(cuò)誤處理的代碼或代碼注釋文檔。對(duì)于已經(jīng)理解的需求不要建立原型,除非是要研究設(shè)計(jì)選擇方案。在原型屏幕顯示和報(bào)告中使用看似真實(shí)的數(shù)據(jù)。不要期望用原型完全代替軟件需求規(guī)格說明。第6章軟件需求獲取概述3需求獲取的主要方法一般主要的需求獲取的方法包括

用戶訪談

用戶調(diào)查文檔分析原型法

模型驅(qū)動(dòng)的方法第6章軟件需求獲取概述3需求獲取的主要方法模型驅(qū)動(dòng)的方法模型驅(qū)動(dòng)方法的作用指導(dǎo)和組織需求獲取行為的開展模型可以用于指導(dǎo)后續(xù)需求獲取行為的開展整理和歸類需求獲取行為得到的信息模型是進(jìn)行信息整理和歸類的很好的框架依據(jù)為詳細(xì)信息的分析提供背景根底和上下文知識(shí)模型驅(qū)動(dòng)方法那么是側(cè)重于前期需求階段的方法,是傳統(tǒng)需求分析方法的一個(gè)很好的補(bǔ)充幫助組織需求文檔的結(jié)構(gòu)作為需求驗(yàn)證的知識(shí)根底發(fā)現(xiàn)細(xì)節(jié)知識(shí)與模型內(nèi)容的偏差和錯(cuò)誤指導(dǎo)需求驗(yàn)證行為的開展第6章軟件需求獲取概述3需求獲取的主要方法模型驅(qū)動(dòng)的方法模型驅(qū)動(dòng)方法-面向目標(biāo)的方法目標(biāo)模型目標(biāo):是系統(tǒng)被開發(fā)的目的可以在不同的抽象層次上進(jìn)行描述它有著明確的定義方式功能目標(biāo)〔FunctionalGoal〕和非功能目標(biāo)〔Non-functionalGoal〕滿足型目標(biāo)〔SatisfactionGoal〕和信息型目標(biāo)〔InformationGoal〕平安目標(biāo)〔SafetyGoal〕、性能目標(biāo)〔PerformanceGoal〕、可用性目標(biāo)〔UsabilityGoal〕等等軟目標(biāo)〔SoftGoal〕和硬目標(biāo)〔HardGoal〕實(shí)現(xiàn)目標(biāo)〔AchieveGoal,又稱為終止目標(biāo)CeaseGoal〕、維護(hù)目標(biāo)〔MaintainGoal,又稱為防止目標(biāo)AvoidGoal〕和優(yōu)化目標(biāo)〔OptimizeGoal〕第6章軟件需求獲取概述3需求獲取的主要方法模型驅(qū)動(dòng)的方法目標(biāo)模型關(guān)系目標(biāo)之間的鏈接Support〔又稱為Dependency〕鏈接和Conflict鏈接AND和OR鏈接ANDContribution鏈接和ORContribution鏈接積極〔Positive〕,消極〔Negative〕目標(biāo)與其他需求模型元素的鏈接ANDOperationalization鏈接和OROperationalization鏈接:連接目標(biāo)和操作前置〔pre-〕、后置〔post-〕和觸發(fā)〔trigger〕操作Contribution鏈接:連接目標(biāo)和場(chǎng)景等需求的描述元素普通鏈接:連接目標(biāo)和分析模型Responsibility鏈接:連接目標(biāo)和行為者Dependency鏈接:鏈接目標(biāo)和任務(wù)、資源模型驅(qū)動(dòng)方法-面向目標(biāo)的方法第6章軟件需求獲取概述3需求獲取的主要方法模型驅(qū)動(dòng)的方法模型驅(qū)動(dòng)方法-面向目標(biāo)的方法第6章軟件需求獲取概述3需求獲取的主要方法模型驅(qū)動(dòng)的方法面向目標(biāo)方法的處理過程目標(biāo)的獲取

現(xiàn)狀和背景的分析已有目標(biāo)的驗(yàn)證和細(xì)化基于場(chǎng)景的方法等等目標(biāo)分析

建立系統(tǒng)的目標(biāo)模型目標(biāo)實(shí)現(xiàn)

收集與目標(biāo)相關(guān)的需求信息,討論可能的候選解決方案,確定最終的系統(tǒng)詳細(xì)需求和解決方案模型驅(qū)動(dòng)方法-面向目標(biāo)的方法第6章軟件需求獲取概述3需求獲取的主要方法模型驅(qū)動(dòng)的方法模型驅(qū)動(dòng)方法-基于場(chǎng)景的方法場(chǎng)景具有重點(diǎn)描述真實(shí)世界的特征,它利用情景、行為者之間的交互、事件隨時(shí)間的演化等方式來表達(dá)性的描述系統(tǒng)的使用(以下圖:場(chǎng)景的不同媒介形式在實(shí)踐中的應(yīng)用程度)第6章軟件需求獲取概述3需求獲取的主要方法模型驅(qū)動(dòng)的方法模型驅(qū)動(dòng)方法-基于場(chǎng)景的方法第6章軟件需求獲取概述3需求獲取的主要方法模型驅(qū)動(dòng)的方法模型驅(qū)動(dòng)方法-基于場(chǎng)景的方法分類第6章軟件需求獲取概述3需求獲取的主要方法模型驅(qū)動(dòng)的方法場(chǎng)景的形式:場(chǎng)景的表達(dá)模式描述〔Description〕表示法的正規(guī)性

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論