軟件需求分析的研究 軟件需求分析的研究

軟件需求分析的研究

  • 期刊名字:計算機工程與設計
  • 文件大?。?29kb
  • 論文作者:王繼成,高珍
  • 作者單位:同濟大學(xué)
  • 更新時(shí)間:2020-09-25
  • 下載次數:次
論文簡(jiǎn)介

第23卷第8期計算機工程與設計2002年8月Vol.23 No. 8COMPUTER ENGINEERING AND DESIGNAug. 2002文章編號1000-7024(2002)08-0018-04中圈分類(lèi)號:TP311文獻標識碼:A軟件需求分析的研究王繼成,高珍(同濟大學(xué)計算機科學(xué)與工程系,上海200092)摘要: 通過(guò)對物資管理系統的需求分析,說(shuō)明了軟件需求分析的重要性,詳細闡述了軟件需求分析的任務(wù)、過(guò)程、原則和方法.關(guān)鍵詞:軟件需求;軟件工程;管理信息系統Research on software requirement analysisWANG Ji-cheng, GAO Zhcn(Dept. of Cormputer Science and Engineering, Tongji University, Shanghai 200092, China)Abstract: In this paper, an example about the material management requirement analysis will be used to show the importance ofsofware requirement analysis. Then the task, process, principle and methods of software requirement analysis are discused.Key words: software requirement; software egineering; MIS的限制和軟件同其他元素的接口細節,定義軟件的其1引言他有效性要求。缺乏用戶(hù)參與、不完整的需求及不斷變更需求,需求分析的任務(wù)就是借助于當前系統的邏輯模是導致信息技術(shù)項目不能按進(jìn)度安排和資金預算完型導出目標系統的邏輯模型,解決目標系統的“做什成全部功能的主要原因。許多軟件開(kāi)發(fā)人員不能熟么”的問(wèn)題。其實(shí)現步驟是:①獲得當前系統的物理練地收集客戶(hù)需求,很多開(kāi)發(fā)者并不知道實(shí)用的需求模型;②抽象出當前系統的邏輯模型;③建立目標系統工程技術(shù),工程參與者甚至連“需求”是什么也有不同的邏輯樸型。的看法。軟件開(kāi)發(fā)中,信息溝通(交流)至少應與計算優(yōu)秀需求應具有如下特性:①完整性,即每一項占有同等的比重,然而現實(shí)往往強調了計算而忽略了需求都必須將所要實(shí)現的功能描述清楚,以使開(kāi)發(fā)人信息溝通。員獲得設計和實(shí)現這些功能所需的所有必要信息;②在軟件工程中,軟件需求分析是軟件定義時(shí)期的正確性,即每一項需求都必須準確地陳述其要開(kāi)發(fā)出最后一個(gè)階段,它是軟件生存期中極其重要的一-步,的功能性。 判斷正確的參考是需求的來(lái)源,如客戶(hù)或需求分析的結果是整個(gè)軟件系統開(kāi)發(fā)的基礎,關(guān)系到高層的系統需求規格說(shuō)明。若軟件需求與對應的系工程的成敗和軟件產(chǎn)品的質(zhì)量,是軟件成敗的決定因統需求相抵觸則是不正確的。只有用戶(hù)代表才能確素之一。下面作者將結合一個(gè)具體的物資流動(dòng)和銷(xiāo)定用戶(hù)需求的正確性,這就是為何一定要有用戶(hù)的積售軟件系統的實(shí)例對軟件需求分析進(jìn)行詳細的研究。極參與的原因:⑧可行性,即每一項需求都必需是在已知系統和環(huán)境的權能和限制范圍內可以實(shí)施的。為2軟件需求分 析的任務(wù)避免不可行的需求,最好在獲取需求(收集黹求)過(guò)程軟件需求分析的任務(wù)不是確定系統怎樣完成它中始終有一位軟件工程小組的組員與需求分析人員.的工作,而是確定系統必須完成哪些工作,也就是對或考慮市場(chǎng)的人員在一起工作,由他來(lái)負責技術(shù)可行目標系統提出完整、準確、清晰、具體的要求。它所做性上的檢查:④必要性,即每一項需求都應把客戶(hù)真.的工作是深入描述軟件的功能和性能確定軟件設計正所需要的和最終系統所需遵從的標準記錄下來(lái)。收稿日期: 2001-08-28作者簡(jiǎn)介:玉繼成(198-),男,江蘇人,博士,救報.博士生導師, 主要研究中國煤化工等.- 18-TYHCNMHG“必要性”也可以理解為每項需求都是用來(lái)授權你編需求:為用戶(hù)界面細致地規定到達的要求。⑦資源使寫(xiě)文檔的“根源”。要使每項需求都能回溯至某項客用需求:開(kāi)發(fā)的軟件在運行時(shí)和開(kāi)發(fā)時(shí)所需要的各種.戶(hù)的輸入,如使用實(shí)例或別的來(lái)源:⑤劃分優(yōu)先級,即資源。⑧軟件成本消耗與開(kāi)發(fā)進(jìn)度需求:在軟件項目給每項需求、特性或使用實(shí)例分配一個(gè)實(shí)施優(yōu)先級以立項后,要根據合同規定,對軟件開(kāi)發(fā)的進(jìn)度和各步指明它在特定產(chǎn)品中所占的分量。如果把所有的帶驟的費用提出要求,作為開(kāi)發(fā)管理的依據。⑨預先估求都看作同樣重要,那么項目管理者在開(kāi)發(fā)或節省預計以后系統可能達到的目標,這樣可以比較容易對系算或調度中就喪失控制自由度:⑧無(wú)二義性,即對所統進(jìn)行必要的補充和修改。有需求說(shuō)明的讀者都只能有一個(gè)明確統-的解釋,由對于以上的各項需求,以該物資流動(dòng)和銷(xiāo)售軟件于自然語(yǔ)言極易導致二義性,所以盡量把每項需求用系統為例,它的商品銷(xiāo)售采用會(huì )員制,公司下沒(méi)有多簡(jiǎn)潔明了的用戶(hù)性的語(yǔ)言表達出來(lái)。避免二義性的個(gè)大銷(xiāo)售代理,每個(gè)大銷(xiāo)售代理下可設有多個(gè)小銷(xiāo)售有效方法包括對需求文檔的正規審查、編寫(xiě)測試用代理,每個(gè)小銷(xiāo)售代理下可以發(fā)展若干各會(huì )員,會(huì )員例、開(kāi)發(fā)原型以及設計特定的方案腳本;⑦可驗證性,通過(guò)小代理購買(mǎi)本公司產(chǎn)品。即檢查一下每項需求是否能通過(guò)設計測試用例或其因此該軟件系統的具體功能需求包括:管理大代它的驗證方法,如用演示、檢測等來(lái)確定產(chǎn)品是否確理、小代理以及會(huì ) 員信息(包括增加、修改、刪除、查詢(xún)實(shí)按需求實(shí)現了。如果需求不可驗證,則確定其實(shí)施大小代理以及會(huì )員信息):管理商品信息(包括修改和是否正確就成為主觀(guān)臆斷,而非客觀(guān)分析了。一份前查詢(xún)商品信息):具體銷(xiāo)售商品(具體流程為用戶(hù)在小后矛盾、不可行或有二義性的需求也是不可驗證的。.代理處定購商品,小代理通過(guò)大代理向公司提貨,下以物資流動(dòng)和銷(xiāo)售軟件系統為例,它的需求分析代理送貨 上門(mén),小代理、大代理、公司分別開(kāi)具發(fā)票,的任務(wù)就是根據上海實(shí)業(yè)公司銷(xiāo)售其商品的具體業(yè)最后售貨 成功增加用戶(hù)積分):查詢(xún)商品的具體銷(xiāo)售務(wù)流動(dòng)情況,生成該系統的物理模型,即把業(yè)務(wù)中的過(guò)程(可以察看用戶(hù)定購的貨物已經(jīng)處于銷(xiāo)售過(guò)程中手動(dòng)操作轉化為相應的機器操作然后表示出來(lái)。最哪一步等信息)。后由該物理模型導出其相應的邏輯模型。這里,由于性能需求上要求其銷(xiāo)售過(guò)程的安全保密性較高。該公司之前沒(méi)有相應的軟件,所謂的當前系統就是指環(huán)境罱求中軟件方面衢要windows95/98操作系統、SQL當前公司業(yè)務(wù)的手動(dòng)操作流程。Server7.0以上數據庫管理系統版本、InternetExplore瀏覽器;使用方面要求公司職員應嚴格遵守公司的貨物3軟件需求分析的過(guò)程供應的流程,按預先擬定的順序- -步步做下去,工作人軟件需求分析的過(guò)程具體可分為對問(wèn)題的識別、員不能任意行事。譬如只有貨物到達客戶(hù)且客戶(hù)付分析與綜合、制定規格說(shuō)明和評審??钪蟛拍荛_(kāi)具發(fā)票,且發(fā)票應該按順序分別由小代問(wèn)題識別是指系統分析人員研究可行性分析報理到大代理,最后再由公司開(kāi)具,不能隨意打亂順序。告和軟件項目實(shí)施計劃,確定對目標系統的綜合要求,關(guān)于可靠性需求,該軟件的可靠性要求較高,如果并提出這些需求實(shí)現條件,以及需求應達到的標準。運行 不當或安全性失敗,將會(huì )直接造成公司和購物者的這些需求具體包括:①功能需求:列舉出所開(kāi)發(fā)軟件.的財產(chǎn)損失。同時(shí)其安全保密要求也較高,因為如果該在職能上應做什么。②性能需求;給出所開(kāi)發(fā)軟件的系統被破壞或該系統的數據庫被黑客窺視且改動(dòng),公司技術(shù)性能指標,如存儲容量限制、運行時(shí)間限制、安全.的業(yè)務(wù)將一片混亂,直接造成巨額經(jīng)濟損失。保密性等。③環(huán)境需求:軟件系統運行時(shí)所處環(huán)境的在軟件成本消耗與開(kāi)發(fā)進(jìn)度需求方面,要求該項要求.如硬件方面:機型、外部設備、數據通信接口;軟.目在3個(gè)月內完成由最初的系統可行性分析到最后的件方面:系統軟件,包括操作系統、網(wǎng)絡(luò )軟件、數據庫軟件運行驗收成功這一全過(guò)程,這就要求開(kāi)發(fā)速度管理系統;使用方面:使用部門(mén)在制度上,操作人員的快.質(zhì)量高,對系統分析員和程序員都提出較高要求。技術(shù)水平上應具備怎樣的條件。④可靠性需求:對所在預先估計以后系統可能達到的目標方面,本系開(kāi)發(fā)軟件在投入運行后不發(fā)生故障的概率,按實(shí)際的統將該軟件定位為一個(gè)集網(wǎng)絡(luò )購物與代理購物為一體運行環(huán)境提出要求。所以對于重要的軟件,或是運行的綜合購物系統。該軟件的初級版本將為以后的最終失效會(huì )造成嚴重后果的軟件,應提出較高的可靠性要版本留下適當的接口。如該系統的初級版本中不包括求.⑤安全保密要求:應當在這方面恰當地做出規定,網(wǎng)絡(luò )購物,但在建立該系統的數據庫結構時(shí)已將有關(guān)對所開(kāi)發(fā)的軟件給予特殊的設計,使其在運行中,其網(wǎng)絡(luò )購物的數據部分考慮進(jìn)去,預留了相應的表格或安全保密方面的性能得到必要的保證。⑥用戶(hù)界面記錄項,這使該系統在擴充功能時(shí)顯得相對簡(jiǎn)單。.中國煤化工MHCNMH G-19-TMT除了這些必要的需求,問(wèn)題識別的另一個(gè)工作是下,數據流特征是用將輸入轉化為輸出的變換過(guò)程來(lái)建立分析所需要的通信途徑,以保證能順利地對問(wèn)題描述的,數據內容用數據詞典機制明確表示,或者通進(jìn)行分析。過(guò)描述數據或數據對象的層次結構隱含地表示:在功.由于參與系統開(kāi)發(fā)人員較少,管理人員、系統分.能表示方法方面,功能一般用數據變換或加工來(lái)表.析員、開(kāi)發(fā)人員兼為一體,作為公司的用戶(hù)又特意派示。還有在接口的定義、問(wèn)題分解的機制以及對抽象出一名熟悉業(yè)務(wù)的人員做輔助工作,使用戶(hù)、分析員、的支持、邏輯視圖核物理視圖以及系統抽象模型方面.管理員和開(kāi)發(fā)人員的通信異常簡(jiǎn)單。都有相同或相似的機制。分析與綜合的目標是給出目標系統的詳細邏輯.以該物資流動(dòng)和銷(xiāo)售軟件系統為例,本軟件系統模型。在此步驟中,分析和綜合工作需反復地進(jìn)行。的經(jīng)過(guò)簡(jiǎn)化的數據流圖如圖1所示。常用的分析方法有面向數據流的結構化分析方法(簡(jiǎn)頂層圖:[小情售代現訂單信昌(青貨系統重物和發(fā)慕[圓稱(chēng)SA)、面向數據結構的Jackson方法(簡(jiǎn)稱(chēng)JSD)、面向對象的分析方法(簡(jiǎn)稱(chēng)0OA)等,以及用于建立動(dòng)態(tài)模一層圖:可庫存信息]型的狀態(tài)遷移圖或Petri網(wǎng)等。商品信對于編制需求分析的文檔,我們稱(chēng)描述需求的文.訂單信息個(gè)查請修改庫存檔為軟件需求規格說(shuō)明書(shū),除了編寫(xiě)軟件需求規格說(shuō)明書(shū)之外,還要制定數據要求說(shuō)明書(shū)以及編寫(xiě)初步的[小銷(xiāo)售代理]發(fā)前信息員]用戶(hù)手冊。出售貨物該項工作要求頗高,它不僅需要清晰地了解系統.發(fā)期信息的方方面面,還要求有較好的文字表達和組織能力。D2發(fā)票管理]需求分析評審是指在需求分析的最后一步,對系二層圖(喀)統功能的正確性、完整性和清晰性,以及其他需求給圖1簡(jiǎn)化的數據流困予評價(jià)。本軟件系統的數據字典為見(jiàn)表1-5。4軟件需求分析的原則和工具表1外部項軟件需求分析方法很多,其描述方法各不相同,但它們有共同的基本準則。首先它們必須能夠表達名稱(chēng):輸入數據流:小銷(xiāo)售代理和理解問(wèn)題的數據域和功能域:其次它們必修按照自輸出數據流:會(huì )員的訂單信息頂向下、逐層分解的方式對問(wèn)題進(jìn)行分解和不斷細.說(shuō)明會(huì )員定鵬商晶罱過(guò)小代理輸入系統化:最后它們都要給出系統的邏輯視圖和物理視圖。軟件需求分析工具可以幫助分析員進(jìn)行需求分會(huì )員析,利用它們可以改善分析的質(zhì)量和生產(chǎn)率。按照不.輸入敷據魂:所駒貨物以及購物發(fā)票同的方式,需求分析的自動(dòng)工具可以歸為兩類(lèi):一類(lèi)輸出數據說(shuō):工具是為自動(dòng)生成和維護系統的規格說(shuō)明而設計的:貸物和發(fā)票仍有小代理負責交給會(huì )員另一類(lèi)用一種特殊的以自動(dòng)方式處理的表示法,產(chǎn)生表2數據流(以訂單信息為例, 其它略) .需求規格說(shuō)明和需求規格說(shuō)明的-致性和組織方面編_號:的診斷報告。近來(lái)常用的分析工具有SADT (一種結.會(huì )員的真品訂單信息構化分析與設計的技術(shù))和PSL(問(wèn)題說(shuō)明語(yǔ)盲)/PSA組成:訂單編號、訂貨日期、商品編號、商品敷量、會(huì )員端號(問(wèn)題說(shuō)明分析器)等。說(shuō)明:該教據流來(lái)自小銷(xiāo)售代理,流向庫存管理功能模失5軟件需求分析方 法麥3數據存儲(以發(fā)票管理信息為例,其它賂)軟件需求分析方法有很多,每一種分析方法都引編號:入了不同的記號和分析策略。但與此同時(shí),他們也具.名稱(chēng)發(fā)票管理信息輸入敷據流: .有關(guān)發(fā)票信息有一些共同的性質(zhì),具體概括為:在支持數據域分析輸出數據流:機制方面,所有的方法都直接或間接地涉及到數據發(fā)襄愉號.發(fā)票面象、開(kāi)具日期、開(kāi)具方榆好對應的訂單編號流、數據內容或數據結構等數據域的屬性。多數情況中國煤化工情代理、小情售代理開(kāi)具-20-YHCNMHG表4數據元素(以訂單編號為例,其它略)細設計過(guò)程中,用原型來(lái)驗證總體結構或某些關(guān)鍵算端號:法。用于演進(jìn)出目標系統的原型。該方法是經(jīng)過(guò)初名稱(chēng)訂單編號步分析獲得一組基本的需求后,快速地用原型加以實(shí)從屬的數據流:訂單信息、發(fā)票信息、發(fā)貨信息現,作為溝通各方的基礎和時(shí)間的場(chǎng)所。隨著(zhù)用戶(hù)和.從屬的數據存儲:發(fā)票管理表, 訂單管理表、邋送單管理表開(kāi)發(fā)人員對系統理解逐漸加深,該方法不斷對原型進(jìn)類(lèi)型字符串行修改和擴充,直到用戶(hù)感到滿(mǎn)意為止。該方法力圖.長(cháng)度用正常的迭帶來(lái)避免不正常的反復。③以該物資流表5數據處理(以查詢(xún)管理庫存為例,其它略)動(dòng)和銷(xiāo)售軟件系統為例,它的具體開(kāi)發(fā)背景是:該公編號:司負責人認為將公司的日常業(yè)務(wù)實(shí)現電腦自動(dòng)化以名稱(chēng):查詢(xún)、管理庫存及進(jìn)行網(wǎng)上營(yíng)銷(xiāo)是公司發(fā)展的必然趨勢,在沒(méi)有任何輸入: 訂單信息現存參照軟件系統的基礎上,設想了該軟件系統的大功能: 由訂單信息,找到公司或大銷(xiāo)售代理處符合條件的存貨,生成致框架,至于該系統的具體詳細的要求,恰恰是模糊貨物遞送單,把貨物發(fā)送給會(huì )員所屬的小悄售代理而籠統的。因此,該軟件系統適合用原型法來(lái)開(kāi)發(fā),.說(shuō)明:如果沒(méi)有符合條件的存貨, 則委考慮進(jìn)費并且利用它可以同時(shí)驗證軟件需求和演進(jìn)出目標系統。其具體做法是我們找出最簡(jiǎn)單的一條物 資流動(dòng)6原型法路線(xiàn),以最快的速度開(kāi)發(fā)出來(lái),交給用戶(hù)使用和測試,傳統的軟件工程方法學(xué)強謂自頂向下分階段開(kāi)從他們的反饋中, -步步地反復改進(jìn)其功能和界面,發(fā),要求在進(jìn)入實(shí)際開(kāi)發(fā)期之前必須預先對需求嚴格直到用戶(hù)滿(mǎn)意為止。也正是在這種不斷的嘗試中,我定義。但實(shí)踐表明,在系統建立起來(lái)之前很難僅僅依們逐漸確定了正確、完整、清晰明了的需求分析,最終靠分析就確定出一套完整、一致、有效的應用需求,并.完成了該系統的開(kāi)發(fā)工作。且這種預先定義的策略更不能適應用戶(hù)需求不斷變7結束語(yǔ)化的情況。由此, 原型法應運而生,它- -反傳統的自頂向下的開(kāi)發(fā)模式,是目前較流行的使用開(kāi)發(fā)模式。在分析員進(jìn)行軟件需求分析時(shí),總會(huì )碰到這樣或原型法的流行是由實(shí)際軟件開(kāi)發(fā)中存在的大量那樣的困難, 面臨困難時(shí),分析員應該采取積極的措事實(shí)決定的。首先,并非所有的需求都能預先定義。施,與用戶(hù)充分交流,認真聽(tīng)取用戶(hù)的所有要求、考慮用戶(hù)對其目標和要求往往只有模糊籠統的認識,許多和設想。另外,可以在合同上約束需求的變更,以減細節并不清楚。要求一個(gè)只有初步設想人準確無(wú)誤少或是避免用戶(hù)需求變更給軟件開(kāi)發(fā)帶來(lái)的困難和地輸出全部需求是不切實(shí)際的。除此以外,人們對系損失。 選用適當的開(kāi)發(fā)模型,使其適應各個(gè)不同的項統的要求往往隨時(shí)間而改變,如果按照傳統的自定向目。還有,需求規格說(shuō)明需要由用戶(hù)確認,注意聽(tīng)取下開(kāi)發(fā)模式,后期需求變化的代價(jià)極高,甚至可能意用戶(hù)的意見(jiàn),讓用戶(hù)明白經(jīng)用戶(hù)簽署的正式文檔不能味著(zhù)失敗。其次,項目參加者之間存在通信障礙。只輕易更改。要求用戶(hù)參與需求評審,這是開(kāi)發(fā)人員與通過(guò)各種靜態(tài)的文檔進(jìn)行通信,對于深刻理解一個(gè)動(dòng)用戶(hù)就軟件需求交換意見(jiàn)的好機會(huì )。通過(guò)以上措施,態(tài)系統是相當困難的。最后,現實(shí)中存在的快速建造逐一克服需求分析中的困難,圓滿(mǎn)地完成軟件需求分原型的工具可以大大縮減創(chuàng )建系統原型的時(shí)間,可以析任務(wù),為以后的軟件開(kāi)發(fā)打下堅實(shí)的基礎。在短期內迅速有效地建立系統原型,通過(guò)使用原型可參考文獻:以盡早獲得更正確更完整的需求,消除通信障礙使設計和編程更快速更準確,從而可提高軟件質(zhì)量、減少1] Pressman R S. Software Engineering: A Practitioner's Ap-proachM]. New York: McGraw. Hil, lnc, 1992.測試和調試的工作量,由此而減少軟件的總成本。由于建立原型的目的不同,實(shí)現原型的途徑也有[2] Robert s A.Software Eagineering[M]. Los Alamitos: IEEEComputer Society Press, 1993.所不同,通常由以下3種類(lèi)型:①用于驗證軟件需求的[3] Martin L, Sbooman. Software Engincering Design, Reliabi-原型。該類(lèi)原型所實(shí)現的功能與最終產(chǎn)品的功能是lity, and Management [M]. McGraw-Hill Book Company,有差別的,主要表現在兩方面:垂直原型(原型只包含1999,5.目標系統的一部分功能)和水平原型(原型對目標系[4] Barry w, Boehm. Cbaracter of software quality [M]. New統的功能從某些方面作了簡(jiǎn)化)。②用于驗證設計方York: McGraw-Hil, le,1999.案的原型。為保真軟件產(chǎn)品的質(zhì)量,在總體設計或詳中國煤化工YHCNMHG一21一|胍

論文截圖
版權:如無(wú)特殊注明,文章轉載自網(wǎng)絡(luò ),侵權請聯(lián)系cnmhg168#163.com刪除!文件均為網(wǎng)友上傳,僅供研究和學(xué)習使用,務(wù)必24小時(shí)內刪除。
欧美AAAAAA级午夜福利_国产福利写真片视频在线_91香蕉国产观看免费人人_莉莉精品国产免费手机影院