原型開(kāi)發(fā)需要投入一定的時(shí)間,并根據(jù)客戶(hù)反饋的信息不斷修正。在原型中多投入些時(shí)間,就會(huì)多減少一份后期需求變更引起的返工時(shí)間。軟件原型是降低需求變更風(fēng)險(xiǎn)的有效方法。
4.需求的抽象和建模體現(xiàn)在哪些方面
首先要理解需求分析和設(shè)計(jì)的目的在于滿(mǎn)足現(xiàn)狀并適應(yīng)變化。要想適應(yīng)變化則業(yè)務(wù)建模和需求抽象就是必須的。當(dāng)我們了解到業(yè)務(wù)的組織結(jié)構(gòu)和流程經(jīng)常面臨變動(dòng)和調(diào)整的時(shí)候,我們就需要考慮引入標(biāo)準(zhǔn)的組織結(jié)構(gòu)模型,權(quán)限模型和工作流模型。這些模型的引入使業(yè)務(wù)和需求的變動(dòng)變化為通過(guò)系統(tǒng)的靈活配置來(lái)適應(yīng)。軟件系統(tǒng)要適應(yīng)變化不是從設(shè)計(jì)階段開(kāi)始的,而是我們的軟件需求本身就需要適應(yīng)變化。
需求的抽象包括了對(duì)業(yè)務(wù)對(duì)象模型的抽象,對(duì)業(yè)務(wù)規(guī)則的抽象,對(duì)流程的抽象。其中最重要的就是由業(yè)務(wù)對(duì)象抽象形成的概念模型,由流程抽象形成的數(shù)據(jù)交互模型。對(duì)于一些快速軟件開(kāi)發(fā)平臺(tái)理解到的對(duì)象建模,流程建模,組織結(jié)構(gòu)和權(quán)限建模,業(yè)務(wù)規(guī)則建模,BPEL業(yè)務(wù)流程編排恰好就是需求抽象的最主要內(nèi)容。
要做好需求抽象必須具備兩方面的知識(shí),第一是真正的對(duì)所涉及到的業(yè)務(wù)領(lǐng)域及其標(biāo)準(zhǔn)模型足夠理解,其二是對(duì)軟件系統(tǒng)分析和架構(gòu)設(shè)計(jì)有較多的經(jīng)驗(yàn)積累。只有同時(shí)具備這兩方面知識(shí)才能夠做好需求建模工作。
5.需求的驗(yàn)證和確認(rèn)包括哪些事情
我們可以再簡(jiǎn)單理解下驗(yàn)證和確認(rèn)的區(qū)別,對(duì)于判斷最終開(kāi)發(fā)出來(lái)的系統(tǒng)是否和用戶(hù)想要的東西是一致的過(guò)程叫確認(rèn),對(duì)于你理解和描述的需求和我當(dāng)初的想法是否是一致的過(guò)程叫驗(yàn)證。需求的驗(yàn)證包括了很多的內(nèi)容,涉及到軟件開(kāi)發(fā)中上下游相關(guān)人員的參與。首先你結(jié)構(gòu)和文檔化后的需求需要用戶(hù)來(lái)驗(yàn)證是否和他們的想法是一致的,是否把用戶(hù)的真實(shí)意圖描述清楚了,以保證需求本身的正確性。對(duì)于后續(xù)設(shè)計(jì)開(kāi)發(fā)階段的人員也需要對(duì)需求進(jìn)行評(píng)審以保證需求的可實(shí)現(xiàn)性,確認(rèn)需求描述是否清楚,是否是可以實(shí)現(xiàn)的,對(duì)于業(yè)務(wù)對(duì)象,流程和規(guī)則是否存在不可實(shí)現(xiàn)的模糊描述詞語(yǔ)。對(duì)于測(cè)試人員,則主要是確認(rèn)需求是否是可測(cè)試的,是否在需求描述中引入了較多的易用,較好,應(yīng)該等不確定和不可測(cè)試的詞語(yǔ)。對(duì)于大型的軟件項(xiàng)目,如果有專(zhuān)門(mén)的產(chǎn)品化標(biāo)準(zhǔn)和UI組的話(huà),還需要對(duì)需求的易用性和產(chǎn)品交互等方面進(jìn)行評(píng)估,以評(píng)價(jià)整個(gè)軟件系統(tǒng)的產(chǎn)品化。
確認(rèn)主要是軟件系統(tǒng)已經(jīng)開(kāi)發(fā)完成后交付給用戶(hù)后驗(yàn)收的時(shí)候,用戶(hù)確認(rèn)系統(tǒng)是否實(shí)現(xiàn)了當(dāng)初的需求。為了保證確認(rèn)過(guò)程的順利,就必須重視需求驗(yàn)證的過(guò)程,需求驗(yàn)證不僅僅是需求階段對(duì)需求文檔的評(píng)審,還需要關(guān)注設(shè)計(jì),開(kāi)發(fā)等各階段對(duì)需求的實(shí)現(xiàn)情況的驗(yàn)證。