版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
軟件項(xiàng)目文檔軟件文檔?文檔的作用和分類軟件文檔(document)也稱文件,通常指的是一些記錄的數(shù)據(jù)和數(shù)據(jù)媒體,它具有固定不變的形式,可被人和計(jì)算機(jī)閱讀。它和計(jì)算機(jī)程序共同構(gòu)成了能完成特定功能的計(jì)算機(jī)軟件(有人把源程序也當(dāng)作文檔的一部分)。我們知道,硬件產(chǎn)品和產(chǎn)品資料在整個(gè)生產(chǎn)過(guò)程中都是有形可見(jiàn)的,軟件生產(chǎn)則有很大不同,文檔本身就是軟件產(chǎn)品。沒(méi)有文檔的軟件,不成其為軟件,更談不到軟件產(chǎn)品。軟件文檔的編制(documentation)在軟件開(kāi)發(fā)工作中占有突出的地位和相當(dāng)?shù)墓ぷ髁俊8咝省⒏哔|(zhì)量地開(kāi)發(fā)、分發(fā)、管理和維護(hù)文檔對(duì)于轉(zhuǎn)讓、變更、修正、擴(kuò)充和使用文檔,對(duì)于充分發(fā)揮軟件產(chǎn)品的效益有著重要意義。然而,在實(shí)際工作中,文檔在編制和使用中存在著許多問(wèn)題,有待于解決。軟件開(kāi)發(fā)人員中較普遍地存在著對(duì)編制文檔不感興趣的現(xiàn)象。從用戶方面看,他們又常常抱怨:文檔售價(jià)太高、文檔不夠完整、文檔編寫(xiě)得不好、文檔已經(jīng)陳舊或是文檔太多,難于使用等等。究竟應(yīng)該怎樣要求它,文檔應(yīng)該寫(xiě)哪些,說(shuō)明什么問(wèn)題,起什么作用這里將給出簡(jiǎn)要的介紹。圖文檔橋梁作用文檔在軟件開(kāi)發(fā)人員、軟件管理人員、維護(hù)人員、用戶以及計(jì)算機(jī)之間的多種橋梁作用可從圖9.2中看出。軟件開(kāi)發(fā)人員在各個(gè)階段中以文檔作為前階段工作成果的體現(xiàn)和后階段工作的依據(jù),這個(gè)作用是顯而易見(jiàn)的。軟件開(kāi)發(fā)過(guò)程中軟件開(kāi)發(fā)人員需制定一些工作計(jì)劃或工作報(bào)告,這些計(jì)劃和報(bào)告都要提供給管理人員,并得到必要的支持。管理人員則可通過(guò)這些文檔了解軟件開(kāi)發(fā)項(xiàng)目安排、進(jìn)度、資源使用和成果等。軟件開(kāi)發(fā)人員需為用戶了解軟件的使用、操作和維護(hù)提供詳細(xì)的資料,我們稱此為用戶文檔。以上三種文檔構(gòu)成了軟件文檔的主要部分。我們把這三種文檔所包括的內(nèi)容列在圖6中。其中列舉了十三個(gè)文檔,這里對(duì)它們作一些簡(jiǎn)要說(shuō)明:可行性研究報(bào)告:說(shuō)明該軟件開(kāi)發(fā)項(xiàng)目的實(shí)現(xiàn)在技術(shù)上、經(jīng)濟(jì)上和社會(huì)因素上的可行性,評(píng)述為了合理地達(dá)到開(kāi)發(fā)目標(biāo)可供選擇的各種可能實(shí)施的方案,說(shuō)明并論證所選定實(shí)施方案的理由。項(xiàng)目開(kāi)發(fā)計(jì)劃:為軟件項(xiàng)目實(shí)施方案制定出具體計(jì)劃,應(yīng)該包括各部分工作的負(fù)責(zé)人員、開(kāi)發(fā)的進(jìn)度、開(kāi)發(fā)經(jīng)費(fèi)的預(yù)算、所需的硬件及軟件資源等。項(xiàng)目開(kāi)發(fā)計(jì)劃應(yīng)提供給管理部門(mén),并作為開(kāi)發(fā)階段評(píng)審的參考。軟件需求說(shuō)明書(shū):也稱軟件規(guī)格說(shuō)明書(shū),其中對(duì)所開(kāi)發(fā)軟件的功能、性能、用戶界面及運(yùn)行環(huán)境等作出詳細(xì)的說(shuō)明。它是用戶與開(kāi)發(fā)人員雙方對(duì)軟件需求取得共同理解基礎(chǔ)上達(dá)成的協(xié)議,也是實(shí)施開(kāi)發(fā)工作的基礎(chǔ)。數(shù)據(jù)要求說(shuō)明書(shū):該說(shuō)明書(shū)應(yīng)給出數(shù)據(jù)邏輯描述和數(shù)據(jù)采集的各項(xiàng)要求,為生成和維護(hù)系統(tǒng)數(shù)據(jù)文卷作好準(zhǔn)備。概要設(shè)計(jì)說(shuō)明書(shū):該說(shuō)明書(shū)是概要設(shè)計(jì)階段的工作成果,它應(yīng)說(shuō)明功能分配、模塊劃分、程序的總體結(jié)構(gòu)、輸入輸出以及接口設(shè)計(jì)、運(yùn)行設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)和出錯(cuò)處理設(shè)計(jì)等,為詳細(xì)設(shè)計(jì)奠定基礎(chǔ)。詳細(xì)設(shè)計(jì)說(shuō)明書(shū):著重描述每一模塊是怎樣實(shí)現(xiàn)的,包括實(shí)現(xiàn)算法、邏輯流程等。用戶手冊(cè):本手冊(cè)詳細(xì)描述軟件的功能、性能和用戶界面,使用戶了解如用戶文檔用戶手冊(cè)操作手冊(cè)維護(hù)修改建議軟件需求(規(guī)格)說(shuō)明書(shū)開(kāi)發(fā)文檔軟件需求(規(guī)格)說(shuō)明書(shū)數(shù)據(jù)要求說(shuō)明書(shū)概要設(shè)計(jì)說(shuō)明書(shū)詳細(xì)設(shè)計(jì)說(shuō)明書(shū)可行性研究報(bào)告項(xiàng)目開(kāi)發(fā)計(jì)劃管理文檔項(xiàng)目開(kāi)發(fā)計(jì)劃測(cè)試計(jì)劃測(cè)試報(bào)告開(kāi)發(fā)進(jìn)度月報(bào)開(kāi)發(fā)總結(jié)報(bào)告?操作手冊(cè):本手冊(cè)為操作人員提供該軟件各種運(yùn)行情況的有關(guān)知識(shí),特別是操作方法的具體細(xì)節(jié)。測(cè)試計(jì)劃:為做好組裝測(cè)試和確認(rèn)測(cè)試,需為如何組織測(cè)試制定實(shí)施計(jì)劃。計(jì)劃應(yīng)包括測(cè)試的內(nèi)容、進(jìn)度、條件、人員、測(cè)試用例的選取原則、測(cè)試結(jié)果允許的測(cè)試分析報(bào)告:測(cè)試工作完成以后,應(yīng)提交測(cè)試計(jì)劃執(zhí)行情況的說(shuō)明。對(duì)測(cè)試結(jié)果加以分析,并提出測(cè)試的結(jié)論意見(jiàn)。開(kāi)發(fā)進(jìn)度月報(bào):該月報(bào)系軟件人員按月向管理部門(mén)提交的項(xiàng)目進(jìn)展情況報(bào)告。報(bào)告應(yīng)包括進(jìn)度計(jì)劃與實(shí)際執(zhí)行情況的比較、階段成果、遇到的問(wèn)題和解決的辦法項(xiàng)目開(kāi)發(fā)總結(jié)報(bào)告:軟件項(xiàng)目開(kāi)發(fā)完成以后,應(yīng)與項(xiàng)目實(shí)施計(jì)劃對(duì)照,總結(jié)實(shí)際執(zhí)行的情況,如進(jìn)度、成果、資源利用、成本和投入的人力。此外還需對(duì)開(kāi)發(fā)工作作出評(píng)價(jià),總結(jié)出經(jīng)驗(yàn)和教訓(xùn)。維護(hù)修改建議,軟件產(chǎn)品投入運(yùn)行以后,發(fā)現(xiàn)了需對(duì)其進(jìn)行修正、更改等問(wèn)題,應(yīng)將存在的問(wèn)題、修改的考慮以及修改的影響估計(jì)作詳細(xì)的描述,寫(xiě)成維護(hù)修改建議,提交審批。以上這些文檔是在軟件生存期中,隨著各階段工作的開(kāi)展適各個(gè)文檔應(yīng)在軟件生存期中哪個(gè)階段編寫(xiě)。這些文檔最終要向軟件管理部門(mén),或是向用戶回答以下的問(wèn)題:表軟件生存期各階段編制的文檔文檔可行性藥酒與計(jì)劃需求分析設(shè)計(jì)代碼編寫(xiě)測(cè)試運(yùn)行與維護(hù)可行性研究報(bào)告項(xiàng)目開(kāi)發(fā)計(jì)劃軟件需求說(shuō)明數(shù)據(jù)要求說(shuō)明概要設(shè)計(jì)說(shuō)明星系設(shè)計(jì)說(shuō)明測(cè)試計(jì)劃用戶手冊(cè)操作手冊(cè)測(cè)試分析報(bào)告開(kāi)發(fā)進(jìn)度月報(bào)項(xiàng)目開(kāi)發(fā)總結(jié)維護(hù)修改建議?哪些需求要被滿足,即回答“做什么”所開(kāi)發(fā)的軟件在什么環(huán)境中實(shí)現(xiàn)以及所需信息從哪里來(lái),即回答“從何處”某些開(kāi)發(fā)工作的時(shí)間如何安排,即回答“何時(shí)干”某些開(kāi)發(fā)(或維護(hù))工作打算由“誰(shuí)來(lái)干”某些需求是怎么實(shí)現(xiàn)的為什么要進(jìn)行那些軟件開(kāi)發(fā)或維護(hù)修改工作上述十三個(gè)文檔都在一定程度上回答了這六個(gè)方面的問(wèn)題。這可從表中看到。表文檔所回答的問(wèn)題所提問(wèn)題文檔什么何處何時(shí)誰(shuí)如何為何概要設(shè)計(jì)說(shuō)明√詳細(xì)設(shè)計(jì)說(shuō)明√用戶手冊(cè)√操作手冊(cè)√測(cè)試分析報(bào)告√項(xiàng)目開(kāi)發(fā)總結(jié)√至此,我們對(duì)文檔的作用有了進(jìn)一步的理解。每一個(gè)文檔的任務(wù)也是明確的,任何一個(gè)文檔都此是多余的。文檔的管理和維護(hù)在整個(gè)軟件生存期中,各種文檔作為半成品或是最終成品,會(huì)不斷地生成、修改或補(bǔ)充。為了最終得到高質(zhì)量的產(chǎn)品,達(dá)到上節(jié)提出的質(zhì)量要求,必須加強(qiáng)對(duì)文檔的管理。以下幾個(gè)方面是應(yīng)注意做到的:①軟件開(kāi)發(fā)小組應(yīng)設(shè)一位文檔保管人員,負(fù)責(zé)集中保管本項(xiàng)目已有文檔的兩套主文本。兩套文本內(nèi)容完全一致。其中的一套可按一定手續(xù),辦理借閱。②軟件開(kāi)發(fā)小組的成員可根據(jù)工作需要在自己手中保存一些個(gè)人文檔。這些一般都應(yīng)是主文本的復(fù)制件,并注意和主文本保持一致,在作必要的修改時(shí),也應(yīng)先③開(kāi)發(fā)人員個(gè)人只保存著主文本中與他工作相關(guān)的部分文檔。④在新文檔取代了舊文檔時(shí),管理人員應(yīng)及時(shí)注銷舊文檔。在文檔內(nèi)容有更動(dòng)時(shí),管理人員應(yīng)隨時(shí)修訂主文本,使其及時(shí)反⑤項(xiàng)目開(kāi)發(fā)結(jié)束時(shí),文檔管理人員應(yīng)收回開(kāi)發(fā)人員的個(gè)人文檔。發(fā)現(xiàn)個(gè)人文檔與主文本有差別時(shí),應(yīng)立即著手解決。這常常是未及時(shí)修訂主文本造成的。⑥在軟件開(kāi)發(fā)過(guò)程中,可能發(fā)現(xiàn)需要修改已完成的文檔,特別是規(guī)模較大的項(xiàng)目,主文本的修改必須特別謹(jǐn)慎。修改以前要充分估計(jì)修改可能帶來(lái)的影響,并且要按照:提議、評(píng)議、審核、批準(zhǔn)和實(shí)施等步驟加以嚴(yán)格的控制。文檔編制的質(zhì)量要求為了使軟件文檔能起到前節(jié)所提到的多種橋梁作用,使它有助于程序員編制程序,有助于管理人員監(jiān)督和管理軟件開(kāi)發(fā),有助于用戶了解軟件的工作和應(yīng)做的操作,有助于維護(hù)人員進(jìn)行有效的修改和擴(kuò)充,文檔的編制必須保證一定的質(zhì)量。質(zhì)量差的軟件文檔不僅使讀者難于理解,給使用者造成許多不便,而且會(huì)削弱對(duì)軟件的管理(管理人員難以確認(rèn)和評(píng)價(jià)開(kāi)發(fā)工作的進(jìn)展),增高軟件的成本(一些工作可能被迫返工),甚至造成更加有害的后果(如誤操作等)。造成軟件文檔質(zhì)量不高的原因可能是:缺乏實(shí)踐經(jīng)驗(yàn),缺乏評(píng)價(jià)文檔質(zhì)量的標(biāo)準(zhǔn)。不重視文檔編寫(xiě)工作或是對(duì)文檔編寫(xiě)工作的安排不恰當(dāng)。最常見(jiàn)到的情況是,軟件開(kāi)發(fā)過(guò)程中不能按表5給出的進(jìn)度,分階段及時(shí)完成文檔的編制工作,而是在開(kāi)發(fā)工作接近完成時(shí)集中人力和時(shí)間專門(mén)編寫(xiě)文檔。另一方面,和程序工作相比,許多人對(duì)編制文檔不感興趣。于是在程序工作完成以后,不得不應(yīng)付一下,把要求提供的文檔趕寫(xiě)出來(lái)。這樣的做法不可能得到高質(zhì)量的文檔。實(shí)際上,要得到真正高質(zhì)量的文檔并不容易,除去應(yīng)在認(rèn)識(shí)上對(duì)文檔工作給予足夠的重視外,常常需要經(jīng)過(guò)編寫(xiě)初稿,聽(tīng)經(jīng)過(guò)重新改寫(xiě)的過(guò)程。高質(zhì)量的文檔應(yīng)當(dāng)體現(xiàn)在以下一些方面:①針對(duì)性;文檔編制以前應(yīng)分清讀者對(duì)象,按不同的類型、不同層次的讀者,決定怎樣適應(yīng)他們的需要。例如,管理文檔主要是面向管理人員的,用戶文檔主要是面向用戶的,這兩類文檔不應(yīng)像開(kāi)發(fā)文檔(面向軟件開(kāi)發(fā)人員)那樣過(guò)多地使用②精確性:文檔的行文應(yīng)當(dāng)十分確切,不能出現(xiàn)多義性的描述。同一課題若干文檔內(nèi)容應(yīng)該協(xié)調(diào)一致,應(yīng)是沒(méi)矛盾的。⑧清晰性:文檔編寫(xiě)應(yīng)力求簡(jiǎn)明,如有可能,配以適當(dāng)?shù)膱D表,以增強(qiáng)其清晰④完整性:任何一個(gè)文檔都應(yīng)當(dāng)是完整的、獨(dú)立的,它應(yīng)自成體系。例如,前言部分應(yīng)作一般性介紹,正文給出中心內(nèi)容,必要時(shí)還有附錄,列出參考資料等。同一課題的幾個(gè)文檔之間可能有些部分相同,這些重復(fù)是必要的。例如,同一項(xiàng)目的用戶手冊(cè)和操作手冊(cè)中關(guān)于本項(xiàng)目功能、性能、實(shí)現(xiàn)環(huán)境等方面的描述是沒(méi)落并未具體描述,而用“見(jiàn)××文檔××節(jié)”的方式,這將給讀者帶來(lái)許多不⑤靈活性:各個(gè)不同的軟件項(xiàng)目,其規(guī)模和復(fù)雜程度有著許多實(shí)際差別,不能一律看待。圖6所列文檔是針對(duì)中等規(guī)模的軟件而言的。對(duì)于較小的或比較簡(jiǎn)單的項(xiàng)目,可做適當(dāng)調(diào)整或合并。比如,可將用戶手冊(cè)和操作手冊(cè)合并成用戶操作手冊(cè);軟件需求說(shuō)明書(shū)可包括對(duì)數(shù)據(jù)的要求,從而去掉數(shù)據(jù)要求說(shuō)明書(shū);概要設(shè)計(jì)說(shuō)明書(shū)與詳細(xì)設(shè)計(jì)說(shuō)明書(shū)合并成軟件設(shè)計(jì)說(shuō)明書(shū)等。⑥可追溯性;由于各開(kāi)發(fā)階段編制的文檔與各階段完成的工作有著緊密的關(guān)系,前后兩個(gè)階段生成的文檔,隨著開(kāi)發(fā)工作的逐步擴(kuò)展,具有一定的繼承關(guān)系。在一個(gè)項(xiàng)目各開(kāi)發(fā)階段之間提供的文檔必定存在著可追溯的關(guān)系。例如,某一項(xiàng)軟件需求,必定在設(shè)計(jì)說(shuō)明書(shū),測(cè)試計(jì)劃以至用戶手冊(cè)中有所體現(xiàn)。必要時(shí)應(yīng)能做程序文檔合一與動(dòng)態(tài)文檔很多企業(yè)已經(jīng)建立了許多龐大的計(jì)算機(jī)管理系統(tǒng),而且將不斷地推出新的系統(tǒng)。滿足經(jīng)營(yíng)的需求須不斷維護(hù)、改造計(jì)算機(jī)系統(tǒng),但同時(shí)又要不影響現(xiàn)行生產(chǎn),所以必須建立一整套機(jī)制來(lái)評(píng)價(jià)、控制和完成對(duì)系統(tǒng)的維護(hù)。在軟件維護(hù)過(guò)程中,提出程序與文檔合一的概念在軟件開(kāi)發(fā)的同時(shí)建立動(dòng)態(tài)文檔。程序與文檔合一概念的提出程序與文檔的形式分離,不僅是用各自獨(dú)立的形式存放,而且使用不同的工具在不同的時(shí)間里書(shū)寫(xiě)和檢索。維護(hù)程序時(shí)不能方便地得到文檔的幫助,不能同程序與文檔的內(nèi)容分離,由于程序與文檔采用不同的描述,既有計(jì)算機(jī)語(yǔ)言也有自然語(yǔ)言。維護(hù)過(guò)程中不能及時(shí)、一致地更新文檔或程序,使文檔不能準(zhǔn)確地描述程序而幾乎成為廢紙甚至帶來(lái)負(fù)面價(jià)值。軟件開(kāi)發(fā)與維護(hù)的分離,絕大多數(shù)軟件在設(shè)計(jì)、開(kāi)發(fā)時(shí)不太考慮以后可能的修改,加大了軟件維護(hù)的難度,而且使維護(hù)容易引入新的錯(cuò)誤。這些分離也表現(xiàn)在設(shè)計(jì)、開(kāi)發(fā)的不同階段的文檔之間的不相容性,例如:需求分析說(shuō)明書(shū)是紙上的東西,在概要設(shè)計(jì)階段不能很好地繼承、利用需求分析說(shuō)明書(shū),設(shè)計(jì)、編制概要設(shè)計(jì)時(shí)必須從零開(kāi)始,需要重新分析、理解需求分析,這種思維上的脫節(jié),不僅延緩開(kāi)發(fā)進(jìn)度、加重設(shè)計(jì)人員的負(fù)擔(dān),而且由于理解上的不同導(dǎo)致不同階段描述的對(duì)象有許多不相容情況。這些分離使得文檔在系統(tǒng)的設(shè)計(jì)、開(kāi)發(fā)、維護(hù)中的作用下降,這也是很多軟件人員不愿意編寫(xiě)文檔的主要原二、程序與文檔合一的概念提出怎樣才是好的文檔系統(tǒng)呢應(yīng)當(dāng)具備以下屬性:2.能夠迅速錯(cuò)誤定位、影響分析、修正設(shè)計(jì);3.能夠提高軟件維護(hù)質(zhì)量;4.能夠方便程序修改時(shí)理解程序。為此提出了程序與文檔合一的概念。這概念使軟件成為真正意義上的軟件:程序+文檔,程序就是文檔,文檔集成在程序中。它要求在選擇開(kāi)發(fā)環(huán)境時(shí)不僅要考慮環(huán)境對(duì)設(shè)計(jì)、開(kāi)發(fā)的完美支持,而且要考慮對(duì)維護(hù)、文檔的支持;它要求軟件人員在設(shè)計(jì)、開(kāi)發(fā)過(guò)程中要考慮維護(hù)問(wèn)題、文檔問(wèn)題;它要求程序與文檔存儲(chǔ)在同一位置、同一系統(tǒng)中;它要求使用相同工具進(jìn)行程序與文檔的書(shū)寫(xiě)、檢索;它要求在編寫(xiě)和維護(hù)程序的同時(shí)形成文檔,在書(shū)寫(xiě)文檔時(shí)編寫(xiě)、維護(hù)程序。程序與文檔合一的概念不僅存在于系統(tǒng)的設(shè)計(jì)、開(kāi)發(fā)階段而且存在于系統(tǒng)的維護(hù)階段,它貫穿軟件的生命周期。動(dòng)態(tài)文檔系統(tǒng)是建立在程序與文檔合一的概念基礎(chǔ)上的、文檔與程序一致的、簡(jiǎn)單易懂的聯(lián)機(jī)文檔系統(tǒng)。它包括構(gòu)件說(shuō)明與數(shù)據(jù)描述、對(duì)構(gòu)件與構(gòu)件之間、構(gòu)件與數(shù)據(jù)之間的關(guān)系進(jìn)行的描述。動(dòng)態(tài)文檔系統(tǒng)是提高了文檔的可用性、易用性和連貫性,使文檔更加有效,是解決維護(hù)問(wèn)題的有效途徑。動(dòng)態(tài)文檔系統(tǒng)問(wèn)題分析需要解決的問(wèn)題是:軟件文檔的內(nèi)容劃分與獲取、文檔的存儲(chǔ)與維護(hù)、文檔的檢索、軟件文檔的生成打印。述,是軟件人員根據(jù)規(guī)范在使用CASE工具編寫(xiě)并填入程序的文檔,它也是為更全面的解釋文檔而靈活加入的額外信息。結(jié)構(gòu)文檔是在軟件設(shè)計(jì)工具、開(kāi)發(fā)環(huán)境中對(duì)象的屬性、構(gòu)件間接口、構(gòu)件間引用關(guān)系、軟件的結(jié)構(gòu)等的描述。利用詞法、語(yǔ)法分析程序?qū)φ麄€(gè)系統(tǒng)的對(duì)象、構(gòu)件進(jìn)行識(shí)別、分析,獲取上述描述并形成表格文件。過(guò)程文檔是對(duì)軟件的設(shè)計(jì)、編碼、維護(hù)過(guò)程中形成的過(guò)程描述和程序注釋,如設(shè)計(jì)目的、設(shè)計(jì)人、時(shí)間等說(shuō)明,利用開(kāi)發(fā)環(huán)境對(duì)軟件人員在設(shè)計(jì)、開(kāi)發(fā)、維護(hù)過(guò)程中操作的記錄形成操作跟蹤。二、程序與文檔的統(tǒng)一存儲(chǔ)與維護(hù)根據(jù)程序與文檔合一的概念和文檔從程序中提取的要求,文檔必須存放在程序中,甚至文檔固有的源代碼中。結(jié)構(gòu)如此的程序源代碼的存儲(chǔ)必須采用一種新技術(shù)—對(duì)象倉(cāng)儲(chǔ)(Repository)技術(shù),而不能采用流式文件,這樣才能使程序與文檔既結(jié)合又分離。程序與文檔結(jié)合在一個(gè)對(duì)象倉(cāng)儲(chǔ)中,結(jié)合在統(tǒng)一的開(kāi)發(fā)環(huán)境中;結(jié)合在修改代碼時(shí)可以同時(shí)修改文檔、修改文檔時(shí)可以同時(shí)人工檢查和修改程序,并在多次文檔生成而不會(huì)丟失手工輸入的文檔。程序與文檔應(yīng)當(dāng)分別存放在對(duì)象倉(cāng)儲(chǔ)中的不同表或不同的字段中,在編譯與運(yùn)行時(shí)分離。三、文檔的檢索對(duì)單個(gè)對(duì)象、構(gòu)件文檔的檢索方式是若于文檔存放在一個(gè)對(duì)象倉(cāng)儲(chǔ)中,它可以隨源代碼一起檢索和維護(hù)。這種檢索給分析和維護(hù)單個(gè)構(gòu)件、對(duì)象提供文檔支持。建立多種視圖、編寫(xiě)程序?qū)φ麄€(gè)系統(tǒng)進(jìn)行文檔的檢索和獲取,完成對(duì)整個(gè)系統(tǒng)的分析,對(duì)整個(gè)系統(tǒng)進(jìn)行實(shí)時(shí)文檔支持。這將在例子中較詳細(xì)的描述。四、軟件文檔的生成打印編寫(xiě)程序檢索和獲取整個(gè)系統(tǒng)的文檔,按照國(guó)家軟件標(biāo)準(zhǔn)的文檔式樣建立文檔模板并將按模板生成文檔和利用文字處理軟件強(qiáng)大的功能進(jìn)行創(chuàng)建、編輯文檔根據(jù)上述分析,文檔分布和獲取對(duì)開(kāi)發(fā)環(huán)境提出了要求:開(kāi)發(fā)環(huán)境應(yīng)該是設(shè)計(jì)工具、開(kāi)發(fā)工具的集成,應(yīng)該基于CASE技術(shù)、對(duì)象倉(cāng)儲(chǔ)技術(shù)、構(gòu)件技術(shù)、OLE技術(shù)?;贑ASE技術(shù)的開(kāi)發(fā)環(huán)境;設(shè)計(jì)、開(kāi)發(fā)、維護(hù)過(guò)程中形成的文檔并植入程序代碼中,使文檔成為程序的一部分。基于對(duì)象倉(cāng)儲(chǔ)技術(shù)的開(kāi)發(fā)環(huán)境,將文檔與程序統(tǒng)一存儲(chǔ)在對(duì)象倉(cāng)儲(chǔ)中方便檢索?;跇?gòu)件技術(shù)的開(kāi)發(fā)環(huán)境,便于識(shí)別、獲取構(gòu)件,分析、形成結(jié)構(gòu)文檔和過(guò)程文檔?;贠LE等技術(shù)使文檔可以很好地利用Word等文檔處理軟件。動(dòng)態(tài)文檔系統(tǒng)的一個(gè)應(yīng)用實(shí)例廣州電信科技開(kāi)發(fā)有限公司自行設(shè)計(jì)、開(kāi)發(fā)的名為九七系統(tǒng)的龐大的電信管理計(jì)算機(jī)系統(tǒng)自1997年投產(chǎn)驗(yàn)收后,將長(zhǎng)期用于生產(chǎn),維護(hù)工作非常重要和緊迫。這為動(dòng)態(tài)文檔系統(tǒng)提供了需求和試驗(yàn)場(chǎng)所。在長(zhǎng)期維護(hù)的過(guò)程中,體會(huì)到好文檔的重要性并提出了程序文檔合一的概念,這為動(dòng)態(tài)文檔系統(tǒng)提供了理論基礎(chǔ)。九七系統(tǒng)是使用Uniface開(kāi)發(fā)環(huán)境。這種開(kāi)發(fā)環(huán)境采用了CASE技術(shù)、對(duì)象倉(cāng)一、廣州電信動(dòng)態(tài)文檔系統(tǒng)的建立步驟的表與字段,并根據(jù)工具的特性制定填寫(xiě)的規(guī)則。2.尋找結(jié)構(gòu)文檔、過(guò)程文檔在Uniface、Oracle工具中存放的表與字段。3.在設(shè)計(jì)、開(kāi)發(fā)和維護(hù)軟件的過(guò)程中對(duì)這些表或字段按照規(guī)則進(jìn)行填寫(xiě)。4.建立一整套模板使文檔結(jié)構(gòu)與信息源建立映像,包括:數(shù)據(jù)字典模板、設(shè)計(jì)文檔模板、結(jié)構(gòu)文檔模板、開(kāi)發(fā)過(guò)程文檔模板等。5.將這些模板組裝成文檔系統(tǒng),并使它獨(dú)立于開(kāi)發(fā)目標(biāo)系統(tǒng)。廣州電信動(dòng)態(tài)文檔系統(tǒng)的組成可以分為文檔查詢、維護(hù)記錄查詢、文檔生文檔查詢不僅包括構(gòu)件說(shuō)明與數(shù)據(jù)描述,而且包括對(duì)構(gòu)件與數(shù)據(jù)之間的關(guān)系的描述,是實(shí)時(shí)的聯(lián)機(jī)文檔查詢系統(tǒng)。維護(hù)記錄查詢是對(duì)軟件維護(hù)過(guò)程中的各個(gè)環(huán)節(jié)進(jìn)程進(jìn)行記錄與追蹤,用于規(guī)范維護(hù)工作。它包括問(wèn)題報(bào)告、問(wèn)題分析、錯(cuò)誤定位、維護(hù)設(shè)計(jì)、維護(hù)執(zhí)行、確認(rèn)測(cè)試、維護(hù)評(píng)審、維護(hù)提交、問(wèn)題跟蹤等。文檔生成則是根據(jù)需要實(shí)時(shí)生成軟件設(shè)計(jì)說(shuō)明書(shū)。二、程序與文檔合一概念與動(dòng)態(tài)文檔系統(tǒng)的意義廣州電信動(dòng)態(tài)文檔系統(tǒng)的基本任務(wù)是輔助錯(cuò)誤定位、維護(hù)影響分析、記錄維護(hù)進(jìn)程、生成文檔。使用Uniface的開(kāi)發(fā)環(huán)境開(kāi)發(fā)的,可以安裝在用Uniface開(kāi)發(fā)的不同的應(yīng)用系統(tǒng)中。該系統(tǒng)已經(jīng)在九七計(jì)費(fèi)它推崇的程序與文檔合一的概念,提出文檔就是程序,程序就是文檔的思路,文檔融合在程序中的構(gòu)思并已實(shí)現(xiàn),這一概念指導(dǎo)了軟件人員進(jìn)行有效地工作。合一的概念貫穿了設(shè)計(jì)、開(kāi)發(fā)、維護(hù)整個(gè)軟件周期,保證了文檔之間的繼承性和一致性,在設(shè)計(jì)、開(kāi)發(fā)每一階段是繼承前階段的程序和文檔的結(jié)果。這樣極大地消除了程序與文檔、文檔與文檔之間的不一致性,加快了軟件設(shè)計(jì)進(jìn)度,提高了軟件開(kāi)發(fā)、維護(hù)的質(zhì)量。它是軟件工程在具體應(yīng)用中的一種嘗試,它從程序文檔合一的角度出發(fā),進(jìn)一步規(guī)范軟件設(shè)計(jì)、開(kāi)發(fā)、維護(hù)。程序文檔合一的概念為軟件開(kāi)發(fā)環(huán)境發(fā)展提供了一種思路;設(shè)計(jì)更好的對(duì)象倉(cāng)儲(chǔ)來(lái)滿足開(kāi)發(fā)、維護(hù)人員對(duì)程序文檔合一的概念的需求。動(dòng)態(tài)文檔系統(tǒng)的局限與發(fā)展廣州電信動(dòng)態(tài)文檔系統(tǒng)有很大的局限性,只能用于Uniface或Oracle開(kāi)發(fā)的系統(tǒng)中。目前的廣州電信動(dòng)態(tài)文檔系統(tǒng)的構(gòu)件的識(shí)別與獲取主要依賴開(kāi)發(fā)工具提供的構(gòu)件和構(gòu)件的特征進(jìn)行識(shí)別的。這種動(dòng)態(tài)文檔系統(tǒng)難以在一些3GL工具—未使用對(duì)象倉(cāng)儲(chǔ)技術(shù)、構(gòu)件技術(shù)開(kāi)發(fā)的軟件—中實(shí)現(xiàn)程序與文檔的合一與分離。大行支持還要進(jìn)行技術(shù)探討和實(shí)踐上的摸索。另一個(gè)局限問(wèn)題是目前的動(dòng)態(tài)文檔系統(tǒng)描述的是程序文檔,其的過(guò)程中進(jìn)行建設(shè),系統(tǒng)進(jìn)入維護(hù)階段使用。如何使動(dòng)態(tài)文檔系統(tǒng)不僅對(duì)軟件維護(hù)階段進(jìn)行支持,而且對(duì)軟件的設(shè)計(jì)、開(kāi)發(fā)階段進(jìn)行更多的支持一種可能的解決途徑是將軟件復(fù)用技術(shù)拓寬到包括文檔復(fù)用,包括程序復(fù)用、程序文檔復(fù)用和設(shè)計(jì)文檔復(fù)用,而且將動(dòng)態(tài)文檔系統(tǒng)建立在基于這種軟件復(fù)用系統(tǒng)之上。如何編寫(xiě)高質(zhì)量“軟件需求說(shuō)明書(shū)”你的工程應(yīng)該有個(gè)好的起點(diǎn)。一個(gè)小組要帶領(lǐng)客戶進(jìn)入需求啟發(fā)階段而且你要寫(xiě)軟件需求說(shuō)明書(shū)。這份說(shuō)明有些大,但客戶會(huì)很重視,所以說(shuō)明必須得到贊同?,F(xiàn)在你正在設(shè)計(jì)其中的一個(gè)特性,已經(jīng)發(fā)現(xiàn)了需求的一些問(wèn)題。你可以用多種不同的方式解釋需求15;需求9的說(shuō)明正好與需求21相反,你因該相信哪一個(gè)需求24非常含糊,你根本不明白它的意思;你不得不花上一個(gè)小時(shí)與2位開(kāi)發(fā)人員討論需求30,只因?yàn)槟銈儗?duì)其各有各的理解;并且,唯一能夠澄清這些問(wèn)題的客戶沒(méi)有給你們答復(fù)。你被迫破解眾多需求的含義,并且你能預(yù)料到,如果你錯(cuò)了,你要做大量的重復(fù)工作。許多軟件需求說(shuō)明書(shū)(SRS)寫(xiě)得非常糟糕。任何產(chǎn)品的質(zhì)量需要其原始材料的質(zhì)量保證,糟糕的軟件需求說(shuō)明書(shū)不可能產(chǎn)出優(yōu)秀的軟件。不幸的是,幾乎沒(méi)有開(kāi)發(fā)人員受過(guò)與需求的抽象、分析、文檔、質(zhì)檢有關(guān)的教育。而且,沒(méi)有非常多的好需求可以借鑒學(xué)習(xí),部分原因是很少有工程可以找到一個(gè)好的借鑒,其他原因是公司不愿意將其產(chǎn)品說(shuō)明書(shū)放在公共區(qū)域。這篇文章描述了高質(zhì)量需求敘述和說(shuō)明的幾個(gè)特性(特點(diǎn))。我們將用這些觀點(diǎn)檢查一些有缺陷的需求,帶著痛楚重新編寫(xiě)。而且我會(huì)談一些如何編寫(xiě)好的需求的提示。你也許想通過(guò)這些質(zhì)量標(biāo)準(zhǔn)評(píng)估你的工程需求。對(duì)于修訂,也許遲了,但你會(huì)學(xué)到一些有用的東西,并幫助你的小組在下次編寫(xiě)出更好的需求。不要期望能夠編寫(xiě)出一份能體現(xiàn)需求應(yīng)具備的所有特性的SRS。無(wú)論你怎么細(xì)化、分析、評(píng)論和優(yōu)化需求,都不可能達(dá)到完美。但是,如果你牢記這些特性,高質(zhì)量需求敘述的特性我們?nèi)绾螐囊恍┯袉?wèn)題的需求中分辨出好的軟件需求這一節(jié)將分別介紹需求敘述應(yīng)體現(xiàn)的6個(gè)特性,下一節(jié)將從整體上介紹SRS文檔應(yīng)具備的特性。判斷每個(gè)需求是否具備應(yīng)有的特性的一種方式是由持有不同觀點(diǎn)的工程資金管理人所作的正規(guī)檢查。另一種有力的方法是在編寫(xiě)代碼前依據(jù)需求編寫(xiě)測(cè)試?yán)?。測(cè)試?yán)幽軌蛎鞔_顯現(xiàn)在需求中描述的產(chǎn)品行為(特性),能夠顯現(xiàn)缺陷、冗余和含糊正確:每個(gè)需求必須精確描述要交付的功能。正確性依據(jù)于需求的來(lái)源,如真實(shí)的客戶或高級(jí)別的系統(tǒng)需求說(shuō)明書(shū)。一個(gè)軟件需求與其對(duì)應(yīng)的系統(tǒng)需求說(shuō)明書(shū)相抵觸是不正確的(當(dāng)然,系統(tǒng)需求說(shuō)明書(shū)本身可能不正確)。只有用戶的代表能夠決定用戶需求的正確性,這就是為什么在檢查需求時(shí),要包括他們或他們的代理的關(guān)鍵所在。不包括用戶的需求檢查就會(huì)導(dǎo)致開(kāi)發(fā)人員的:“這是沒(méi)意義的”,“這可能是他們的意思”等眾所周知的猜測(cè)??尚行裕涸谝阎哪芰?、有限的系統(tǒng)及其環(huán)境中每個(gè)需求必須是可實(shí)現(xiàn)的。為了避免需求的不可行性,在需求分析階段應(yīng)該有一個(gè)開(kāi)發(fā)人員參與,在抽象階段應(yīng)該有市場(chǎng)人員參與。這個(gè)開(kāi)發(fā)人員應(yīng)能檢查在技術(shù)上什么能做什么不能做,哪些需要需要額外的付出或者和其他的權(quán)衡。必要性:每個(gè)需求應(yīng)載明什么是客戶確實(shí)需要的,什么要順應(yīng)于求,接口或標(biāo)準(zhǔn)。每個(gè)需求源于你認(rèn)可、具有權(quán)說(shuō)明需求的原始資料,這是考慮必需的另外情形(譯注,此句翻譯不順,請(qǐng)參照原文:Anotherwaytothinkof“necessary”isthateachrequirementoriginatedfromasourceyourecognizeashavingtheauthoritytospecifyrequirements)。跟蹤每個(gè)需求回溯到出處,如用例,系統(tǒng)需求,規(guī)章,或來(lái)自其他用戶的意見(jiàn)。如果你不能標(biāo)識(shí)出處,可能需求只是個(gè)鍍金的例子,沒(méi)有真正的必須。優(yōu)先權(quán):為了表明在一個(gè)詳細(xì)的產(chǎn)品版本中應(yīng)包含哪些要點(diǎn),需要為每個(gè)需求,特征,或用例分配實(shí)現(xiàn)的優(yōu)先權(quán)。客戶或其代理都應(yīng)有強(qiáng)烈的責(zé)任建立優(yōu)先權(quán)。如果所有的需求都被視為同等重要,那么由于在開(kāi)發(fā)中,預(yù)算削減,計(jì)劃超時(shí)或組員的離開(kāi)導(dǎo)致新的需求時(shí),項(xiàng)目經(jīng)理將不能起到作用。優(yōu)先權(quán)的作用是提供給客戶的價(jià)值,實(shí)現(xiàn)的相關(guān)費(fèi)用,實(shí)現(xiàn)相關(guān)聯(lián)的有關(guān)技術(shù)風(fēng)險(xiǎn)。中,中優(yōu)先權(quán)表明需求是必須的,但是如果需中,低優(yōu)先權(quán)表明有它很好,但我們必須認(rèn)識(shí)到如果沒(méi)有充足的時(shí)間或資源,它可以被放棄掉。明確:需求敘述的讀者應(yīng)只能從其得到唯一的解釋說(shuō)明,同樣,一個(gè)需求的多個(gè)讀者也應(yīng)達(dá)成共識(shí)。自然語(yǔ)言極易導(dǎo)致含糊。要避免使用一些對(duì)于SRS作者很清楚但對(duì)于讀者不清楚的主觀詞匯,如:用戶友好性,容易,簡(jiǎn)單,快速,有直觀的采用用戶熟知的語(yǔ)言,不要采用計(jì)算機(jī)術(shù)語(yǔ)。檢查需求模糊的有效方式包括需求說(shuō)明書(shū)的正規(guī)檢查,根據(jù)需求寫(xiě)測(cè)試,建立用戶的假想來(lái)說(shuō)明產(chǎn)品某個(gè)特定部分預(yù)期的特性??勺C實(shí):看你是否能夠做出測(cè)試計(jì)劃或其他驗(yàn)證方式,如檢查和實(shí)證,來(lái)決定在產(chǎn)品中每個(gè)需求是否正確的實(shí)現(xiàn)。如果需求是不可驗(yàn)證的,決定需求是不是正確的實(shí)現(xiàn)就成了判斷的事。需求之間不一致,不可行,不明確也能導(dǎo)致不可證實(shí)。任何需求如果說(shuō)產(chǎn)品將要支持什么也是不可證實(shí)的。高質(zhì)量需求說(shuō)明的特征一個(gè)完整的SRS不僅是包括長(zhǎng)長(zhǎng)的功能性需求列表,還包括外部接口描述和一些諸如質(zhì)量屬性,期望性能的非功能性需求。下面描述了高質(zhì)量的SRS的一些完整:不應(yīng)該遺漏要求和必需的信息。完整性也是一個(gè)需求應(yīng)具備的。發(fā)現(xiàn)缺少的信息很難,因?yàn)楦静淮嬖?。在SRS中將需求以分層目錄方式組織,將幫助評(píng)審人員理解功能性描述的結(jié)構(gòu),使他們很容易指出遺失的東西。在需求抽象時(shí),相對(duì)于系統(tǒng)功能,你過(guò)多的注意用戶的業(yè)務(wù),將導(dǎo)致在需求的全局觀和引進(jìn)不是真正必需的需求上顯得不足。在需求抽象上,應(yīng)用用例方法會(huì)發(fā)揮很好的作用。能夠從不同角度察看需求的圖形分析模型也可以檢查出不完如果你知道已缺少一些信息,使用TBD(tobedetermined)標(biāo)準(zhǔn)標(biāo)志可以突出這些缺陷,當(dāng)你在構(gòu)建產(chǎn)品的相關(guān)部分時(shí),就可以從一個(gè)給定的需求集中解決所有的缺陷。求發(fā)生沖突。需求中的不一致必須在開(kāi)發(fā)開(kāi)始前得到解決。只有經(jīng)過(guò)調(diào)研才能確定哪些是正確的。修改需求時(shí)一定要謹(jǐn)慎,如果只審定修改的部分,沒(méi)有審定于修改相關(guān)的部分,就可能導(dǎo)致不一致性??尚薷男裕寒?dāng)每個(gè)需求的要求修改了或維護(hù)其歷史更改時(shí),你必須能夠?qū)彾⊿RS。也就是說(shuō)每個(gè)需求必須相對(duì)于其他需求有其單獨(dú)的標(biāo)示和分開(kāi)的說(shuō)明,便于清晰的查閱。通過(guò)良好的組織可以使需求易于修改,如:將相關(guān)的需求分組,建立目錄表,索引,以及前后參考(照)??勺粉櫍耗銘?yīng)能將一個(gè)軟件與其原始材料相對(duì)應(yīng),如高級(jí)系統(tǒng)需求,用例,用戶的提議等。也能夠?qū)④浖枨笈c設(shè)計(jì)元素,源代碼,用于構(gòu)造實(shí)現(xiàn)和驗(yàn)證需求的測(cè)試相對(duì)應(yīng)??勺粉櫟男枨髴?yīng)該具有獨(dú)立標(biāo)示,細(xì)密和結(jié)構(gòu)化的編寫(xiě),不應(yīng)過(guò)大,不應(yīng)是敘述性的文字和公告式的列表。需求質(zhì)量的評(píng)審這些有關(guān)需求質(zhì)量的特性的描述在理論上都是非常好的,但一個(gè)好的需求到底是個(gè)什么樣子的呢為了體現(xiàn)得更切合實(shí)際,我們做個(gè)小練習(xí)。下面有幾個(gè)從實(shí)然后用更好的方式重寫(xiě)。我將對(duì)每個(gè)例子都提出自己的分析和改進(jìn)的建議。也歡迎你提出不同的見(jiàn)解。我所占優(yōu)的只是我知道每個(gè)需求的出處。因?yàn)槟阄叶疾皇抢?.“產(chǎn)品應(yīng)在不少于每60秒的正常周期內(nèi)提供狀態(tài)信息”含糊。我們?cè)谡務(wù)摦a(chǎn)品的哪部分狀態(tài)信息間隔真的假定為不少于60秒,甚者每10年顯示一條新的狀態(tài)信息也可以也許它的意圖是消息間隔不應(yīng)超過(guò)60秒,那么1毫秒是不是太短“每”這個(gè)詞導(dǎo)致了不確定性。問(wèn)題的后果,就是需求的不可證彌補(bǔ)缺陷,重寫(xiě)需求的一種方法:1.1后臺(tái)任務(wù)管理器因該以誤差上下不超過(guò)10秒的60秒間隔,在用戶界面的指定位置顯示狀態(tài)信息1.2如果后臺(tái)進(jìn)程處理正常,那么應(yīng)該顯示任務(wù)已完成的百分?jǐn)?shù)/比1.3任務(wù)完成時(shí),應(yīng)顯示相關(guān)的信息1.4后臺(tái)任務(wù)出錯(cuò)應(yīng)該顯示錯(cuò)誤信息為了分別測(cè)試和追蹤,我將其分成了多個(gè)需求。如果將幾個(gè)需求串接在一節(jié)中,在構(gòu)造和測(cè)試時(shí)就很容易漏掉一個(gè)。例2.“產(chǎn)品應(yīng)瞬間在顯示和隱藏不可打印字符間切換”計(jì)算機(jī)在瞬間不能做任何事,所以這個(gè)需求不切實(shí)可行。它的不完整性表現(xiàn)在沒(méi)有聲明觸發(fā)狀態(tài)切換的條件。軟件要在某些條件下更改自己或者用戶為了模仿更改要做一些動(dòng)作而且,在文檔中改變顯示的范圍是多大:選中的文本,整個(gè)的文檔,或其他的這也是個(gè)模糊的問(wèn)題。不可打印字符合隱藏字符一樣嗎或者是一些屬性標(biāo)志或一些控制字符問(wèn)題的后果,就是需求的不可證實(shí)。象這樣編寫(xiě)需求也許更好一些:“用戶能夠在一個(gè)由特定觸發(fā)條件激活處于編輯的文檔中在顯示和隱藏所有HTML標(biāo)記間切換”?,F(xiàn)在就很清楚,不可打印字符是HTML標(biāo)記。由于沒(méi)有定義觸發(fā)條件,需求對(duì)設(shè)計(jì)沒(méi)有約束力。只有設(shè)計(jì)人員選定了觸發(fā)條件后,你才能編寫(xiě)測(cè)試驗(yàn)證觸發(fā)的正確操作。例3.“HTML分析器可以產(chǎn)生HTML標(biāo)記錯(cuò)誤報(bào)告,幫助HTML入門(mén)者快速解決錯(cuò)誤”。單詞“快速”使其模糊,沒(méi)有加進(jìn)錯(cuò)誤報(bào)告的定義也是其部完根據(jù)錯(cuò)誤報(bào)告快速解決錯(cuò)誤?試試這個(gè):“HTML分析器可以產(chǎn)生一個(gè)錯(cuò)誤報(bào)告,錯(cuò)誤報(bào)告包含有在被分析文件中出錯(cuò)的HTML文本和行號(hào)以及錯(cuò)誤的描述。如果沒(méi)有錯(cuò)誤,就不會(huì)產(chǎn)生錯(cuò)誤子,則留由設(shè)計(jì)人員決定。我們還指定了一個(gè)例外:如果沒(méi)有發(fā)現(xiàn)錯(cuò)誤,不產(chǎn)生號(hào)碼列表可以聯(lián)機(jī)獲得要避免象“應(yīng)該”的這類不確切的詞??蛻羰切枰@個(gè)功能性還是不需要。我曾看過(guò)一些需求說(shuō)明書(shū),采用諸如:應(yīng),將,應(yīng)該/將要等一些詞描述優(yōu)先級(jí)的細(xì)微差別。但我更喜歡用“應(yīng)”清楚的說(shuō)明需求的意圖,指明優(yōu)先級(jí)。這是修改后的:系統(tǒng)應(yīng)校驗(yàn)輸入的主管號(hào)碼而不通過(guò)聯(lián)機(jī)的主全體主官號(hào)碼列表。如果在列表中沒(méi)有發(fā)現(xiàn)主管號(hào)碼,將會(huì)顯示一條錯(cuò)誤信息,也不接受在理解各個(gè)已完成的糟糕需求上,開(kāi)發(fā)人員將會(huì)遇到的難題是:開(kāi)發(fā)人員與客戶將會(huì)在審核需求,未達(dá)成共識(shí)前發(fā)生激烈的爭(zhēng)論。詳細(xì)檢查大的需求文檔不是一件輕松的事情。我清楚有人做過(guò),而且他們花在檢查上的每一分鐘都是值得的。相對(duì)于開(kāi)發(fā)階段和用戶的抱怨電話,在這個(gè)階段修補(bǔ)缺陷是便宜的,編寫(xiě)質(zhì)量需求的方針編寫(xiě)優(yōu)秀的需求是沒(méi)有公式化的方法的。這需要大量的經(jīng)驗(yàn),要從你在過(guò)去的文檔中發(fā)現(xiàn)的問(wèn)題學(xué)習(xí)。請(qǐng)?jiān)诮M織軟件需求文檔時(shí),嚴(yán)格遵從這些方針。語(yǔ),要保持一致性,并在術(shù)語(yǔ)表或數(shù)據(jù)字典中定義它們要看需求是否被有效的定義,可以以開(kāi)發(fā)人員的觀點(diǎn)看看。在內(nèi)心將“當(dāng)你們做完了找我”這句加到文檔尾部,看看能不能是你緊張起來(lái)。換句話說(shuō),你是現(xiàn)如果是的話,在繼續(xù)工作前,需求還需要細(xì)化。需求編寫(xiě)者還要努力正確地把握細(xì)化程度。要避免包含多個(gè)需求的長(zhǎng)的敘述段落。有幫助的提示是編寫(xiě)?yīng)毩⒌目蓽y(cè)試的需求。如果你認(rèn)為一小部分測(cè)試可以驗(yàn)證一個(gè)需求的正確,那么它已經(jīng)正確的細(xì)化了。如果你預(yù)想到多種不同類的測(cè)試,幾個(gè)需求可能已擠到了一起,需要拆分開(kāi)。密切關(guān)注多個(gè)需求合成了單個(gè)需求。一個(gè)需求中的連接詞“和”通篇文檔細(xì)節(jié)上要保持一致。我曾看見(jiàn)過(guò)多個(gè)需求說(shuō)明書(shū)前后不一致。如:“對(duì)于紅色合法的顏色代碼應(yīng)是R”及“對(duì)于
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度現(xiàn)代服務(wù)業(yè)股權(quán)抵押借款合同3篇
- 2024煤炭綜合利用居間服務(wù)合同3篇
- 2025年度國(guó)際集裝箱貨物保險(xiǎn)服務(wù)協(xié)議3篇
- 家校共育共同助力孩子良好習(xí)慣的養(yǎng)成
- 2024電子商務(wù)平臺(tái)運(yùn)營(yíng)數(shù)據(jù)分析平臺(tái)建設(shè)合同3篇帶眉腳
- 二零二五年度VIP會(huì)員專享房產(chǎn)投資顧問(wèn)合同
- 2024鎳礦現(xiàn)貨交易與倉(cāng)儲(chǔ)物流一體化服務(wù)合同3篇
- 2024房屋室內(nèi)裝修合同協(xié)議
- 2024水電施工合同協(xié)議書(shū)
- 2024年餐廳服務(wù)員聘用合同書(shū)
- 鈑金設(shè)備操作培訓(xùn)
- 2024駕校經(jīng)營(yíng)權(quán)承包合同
- 快遞公司與驛站合作協(xié)議模板 3篇
- 水利工程招標(biāo)文件樣本
- 品質(zhì)管控培訓(xùn)質(zhì)量管理與質(zhì)量控制課件
- 小數(shù)加減乘除計(jì)算題大全(300題大全)-
- 第17課 西晉的短暫統(tǒng)一和北方各族的內(nèi)遷(說(shuō)課稿)-2024-2025學(xué)年七年級(jí)歷史上冊(cè)素養(yǎng)提升說(shuō)課稿(統(tǒng)編版2024)
- 2023-2024學(xué)年小學(xué)語(yǔ)文四年級(jí)素養(yǎng)檢測(cè)復(fù)習(xí)試題附答案
- 露天礦山全員安全教育培訓(xùn)
- 共生理論視域下開(kāi)放型區(qū)域產(chǎn)教融合實(shí)踐中心建設(shè)路徑研究
- 牛頓迭代的并行化算法
評(píng)論
0/150
提交評(píng)論