版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
可行性研究與需求分析
@XXX軟件生命周期軟件過程:為了獲得高質(zhì)量軟件產(chǎn)品所需要完成的一系列任務(wù)的框架,它規(guī)定了完成各項(xiàng)任務(wù)的工作步驟。按照在軟件生命周期全過程中應(yīng)完成的任務(wù)的性質(zhì),在概念上可以把軟件生命周期劃分成八個(gè)階段:
問題定義可行性研究需求分析概要設(shè)計(jì)詳細(xì)設(shè)計(jì)編碼和單元測(cè)試綜合測(cè)試維護(hù)目錄1234可行性研究步驟可行性研究的文檔可行性分類理論基礎(chǔ)軟件的可行性研究理論基礎(chǔ)1當(dāng)接受一個(gè)軟件開發(fā)任務(wù)時(shí),就表明進(jìn)入軟件生命周期的第一個(gè)階段,即首先進(jìn)入可行性的研究。通過可行性研究可以確定問題有無可行性的解決辦法,從而避免人力、物力和財(cái)力上的浪費(fèi)。通常來說,可行性研究所需的成本占預(yù)期工程總成本的5%~10%。通過對(duì)被開發(fā)系統(tǒng)的可行性研究,能夠?qū)崿F(xiàn)用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定問題是否可以解決。也就是說可行性研究的目的不是解決問題,而是確定問題是否能獲得解,研究在當(dāng)前的具體條件下,開發(fā)新系統(tǒng)是否具備必要的資源和其它條件。可行性研究是要進(jìn)一次壓縮簡化了的系統(tǒng)分析和設(shè)計(jì)的過程,也就是說在較高層次上以較抽象的方式進(jìn)行設(shè)計(jì)的過程。可行性分類2經(jīng)濟(jì)可行性技術(shù)可行性運(yùn)行可行性法律可行性開發(fā)方案可行性在明確了問題定義之后,分析員應(yīng)該給出系統(tǒng)的邏輯模型,然后從系統(tǒng)邏輯模型出發(fā),尋找可供選擇的解法。1.經(jīng)濟(jì)可行性研究主要進(jìn)行成本效益分析,包括估計(jì)項(xiàng)目的開發(fā)成本,估算開發(fā)成本是否高于項(xiàng)目預(yù)期的全部利潤。分析系統(tǒng)開發(fā)對(duì)其他產(chǎn)品或利潤所帶來的影響。2可行性分類2.技術(shù)可行性是最難決斷和最關(guān)鍵的問題。根據(jù)客戶提出的系統(tǒng)功能、性能及實(shí)現(xiàn)系統(tǒng)的各項(xiàng)約束條件,從技術(shù)的角度研究系統(tǒng)實(shí)現(xiàn)的可行性。技術(shù)可行性研究是系統(tǒng)開發(fā)過程中難度最大的、最重要的工作。由于系統(tǒng)分析和定義過程與系統(tǒng)技術(shù)可行性評(píng)估過程同時(shí)進(jìn)行,這時(shí)系統(tǒng)目標(biāo)、功能和性能的不確定性會(huì)給技術(shù)可行性論證帶來許多困難。技術(shù)可行性研究包括:風(fēng)險(xiǎn)分析:在給出的限制范圍內(nèi),能否設(shè)計(jì)出系統(tǒng),并實(shí)現(xiàn)必要的功能和性能。資源分析:研究開發(fā)系統(tǒng)的人員是否存在問題?可用于建立系統(tǒng)的其他資源,如硬件、軟件等是否具備?技術(shù)分析:相關(guān)技術(shù)的發(fā)展是否支持這個(gè)系統(tǒng)。3.運(yùn)行可行性能為新系統(tǒng)規(guī)定的運(yùn)行方式是否可行。如果新系統(tǒng)是建立在原來已擔(dān)負(fù)其他任務(wù)的計(jì)算機(jī)系統(tǒng)上的,就不能要求它在實(shí)時(shí)在線狀態(tài)下運(yùn)行,以免與原有的任務(wù)相矛盾。4.法律可行性是指研究在系統(tǒng)開發(fā)過程中可能涉及的各種合同、侵權(quán)、責(zé)任以及各種與法律相抵觸的問題。5.開發(fā)方案可行性:提出系統(tǒng)實(shí)現(xiàn)的各種方案并進(jìn)行評(píng)價(jià)之后,從中選擇最優(yōu)秀的一種方案。
可行性研究的結(jié)果是可行性研究報(bào)告,它可以作為系統(tǒng)規(guī)格說明書的一個(gè)附件。步驟1當(dāng)然,可行性研究最根本的任務(wù)是對(duì)以后的行動(dòng)路線提出建議:如果問題沒有可行的解,應(yīng)該建議停止這項(xiàng)軟件項(xiàng)目的開發(fā);如果問題值得解,應(yīng)該推薦一個(gè)較好的解決方案,并且為項(xiàng)目制定一個(gè)初步的計(jì)劃。如何進(jìn)行可行性研究,一般地說,可行性研究有如下步驟。3可行性研究步驟1.復(fù)查系統(tǒng)規(guī)模和目標(biāo)通過仔細(xì)閱讀和分析有關(guān)資料,訪問有關(guān)人員,復(fù)查系統(tǒng)的目標(biāo)和規(guī)模,改正模糊的敘述,對(duì)目標(biāo)系統(tǒng)的約束給予清晰地描述。使分析員正在要解決的問題是用戶所提出的問題。
步驟22.研究目前正在使用的系統(tǒng)現(xiàn)有的系統(tǒng)是構(gòu)造新系統(tǒng)的基礎(chǔ)、是信息的重要來源,通過對(duì)現(xiàn)有系統(tǒng)的文檔資料的閱讀、分析和研究,再如實(shí)地考慮該系統(tǒng),總結(jié)出現(xiàn)有系統(tǒng)的優(yōu)點(diǎn)和不足,進(jìn)而得出新系統(tǒng)的雛形。這樣調(diào)查研究,是了解一個(gè)陌生應(yīng)用領(lǐng)域的最快方法,它既可以使新系統(tǒng)脫胎而生,但又不能全盤照抄。步驟33可行性研究步驟3.提出新系統(tǒng)的高層邏輯模型優(yōu)秀的設(shè)計(jì)通??偸菑默F(xiàn)有的實(shí)際物理系統(tǒng)出發(fā),獲得現(xiàn)有系統(tǒng)的高層邏輯模型。邏輯模型是數(shù)據(jù)流圖來描述的,此時(shí)的數(shù)據(jù)流圖不需要細(xì)化。然后,再來參考現(xiàn)有的邏輯模型。這樣,經(jīng)過上述幾步的反復(fù)進(jìn)行,最后根據(jù)開發(fā)系統(tǒng)的目標(biāo),得到新系統(tǒng)的說明和邏輯模型。邏輯模型確立之后,可以在此基礎(chǔ)上建造開發(fā)系統(tǒng)的物理系統(tǒng),通常物理系統(tǒng)模型是用系統(tǒng)流程圖來表示的。
步驟44.重新定義問題新系統(tǒng)的邏輯模型是分析員對(duì)新系統(tǒng)的描述。為了使用戶和分析員有同樣的看法,分析員應(yīng)該和用戶一起再次復(fù)查問題定義,再次確定工程規(guī)模、目標(biāo)和約束條件,并修改已發(fā)現(xiàn)的錯(cuò)誤??尚行匝芯康那八膫€(gè)步驟構(gòu)成一個(gè)循環(huán):分析員定義問題,分析這個(gè)問題,導(dǎo)出一個(gè)試探性的解,再此基礎(chǔ)上再次定義問題,再次分析,再次修改……,繼續(xù)這個(gè)過程,直到提出的邏輯模型完全符合系統(tǒng)目標(biāo)為止。步驟53可行性研究步驟5.提出和評(píng)價(jià)供選擇的方案分析員從系統(tǒng)的邏輯模型出發(fā),提出若干較高層次的、較抽象的物理解決供比較和選擇。從技術(shù)、經(jīng)濟(jì)、操作等方面進(jìn)行分析比較,并估算開發(fā)成本、運(yùn)行費(fèi)用和純收入。在此基礎(chǔ)上對(duì)每個(gè)可能的系統(tǒng)進(jìn)行成本/效益分析。
步驟66.推薦一個(gè)方案并說明理由在對(duì)上一步提出的各種方案分析比較的基礎(chǔ)上,提出向用戶推薦的方案,在推薦的方案中應(yīng)清楚地表明:(1)本項(xiàng)目的開發(fā)價(jià)值;(2)推薦這個(gè)方案的理由;(3)制定實(shí)現(xiàn)進(jìn)度表,這個(gè)進(jìn)度表不需要也不可能很詳細(xì),通常只需要估計(jì)生存周期每個(gè)階段的工作量。步驟73可行性研究步驟7.書寫計(jì)劃任務(wù)書把上述材料進(jìn)行分析匯總,草擬一份描述計(jì)劃任務(wù)的可行性論證報(bào)告。此報(bào)告應(yīng)包括以下內(nèi)容:(1)系統(tǒng)概述:對(duì)當(dāng)前系統(tǒng)及其存在問題的簡單描述;新系統(tǒng)的開發(fā)目的、目標(biāo)、業(yè)務(wù)對(duì)象和范圍;新系統(tǒng)和它的各個(gè)子系統(tǒng)功能與特性;新系統(tǒng)與當(dāng)前系統(tǒng)的比較等。新系統(tǒng)可以用系統(tǒng)流程圖來描述,并附上重要的數(shù)據(jù)流圖和數(shù)據(jù)字典以及加工說明作為補(bǔ)充。(2)可行性分析:這是報(bào)告的主體。論述新系統(tǒng)在經(jīng)濟(jì)上、技術(shù)上、運(yùn)行上、法律上的可行性,以及對(duì)新系統(tǒng)的主客觀條件的分析。(3)擬定開發(fā)計(jì)劃:工程進(jìn)度表,人員配備情況,資源配備情況,估計(jì)出每個(gè)階段的成本、約束條件等。(4)結(jié)論意見:綜合上述分析,說明新系統(tǒng)是否可行,結(jié)論可分為三類:可立即進(jìn)行、推遲進(jìn)行、不能和不值得進(jìn)行。
步驟88.提交審查用戶和使用部門的負(fù)責(zé)人仔細(xì)審查上述的文檔,也可以召開論證會(huì)。論證會(huì)成員有用戶、使用部門負(fù)責(zé)人及有關(guān)方面專家,對(duì)該方案進(jìn)行論證,最后由論證會(huì)成員簽署意見,指明該任務(wù)計(jì)劃書是否通過。4可行性研究的文檔1.引言:說明編寫本文檔的目的,項(xiàng)目的名稱、背景,本文檔用到的專門術(shù)語和參考資料。2.可行性研究前提:說明開發(fā)項(xiàng)目的功能、性能和基本要求,達(dá)到的目標(biāo),各種限制條件,可行性研究方法和決定可行性的主要因素。3.對(duì)現(xiàn)有系統(tǒng)的分析:說明現(xiàn)有系統(tǒng)的處理流程和數(shù)據(jù)流程,工作負(fù)荷,各項(xiàng)費(fèi)用支出,所需各類專業(yè)技術(shù)人員和數(shù)量,所需各種設(shè)備,現(xiàn)有系統(tǒng)存在什么問題。4.所建議系統(tǒng)的技術(shù)可行性分析:對(duì)所建議系統(tǒng)的簡要說明,處理流程和數(shù)據(jù)流程,與現(xiàn)有系統(tǒng)比較的優(yōu)越性,采用所建議系統(tǒng)對(duì)用戶的影響,對(duì)各種設(shè)備、現(xiàn)有軟件、開發(fā)環(huán)境和運(yùn)行環(huán)境的影響,對(duì)經(jīng)費(fèi)支出的影響,對(duì)技術(shù)可行性的評(píng)價(jià)。可行性研究結(jié)束后要提交的文檔是可行性研究報(bào)告。一個(gè)可行性研究報(bào)告的主要內(nèi)容如下:4可行性研究的文檔5.所建議系統(tǒng)的經(jīng)濟(jì)可行性分析:說明所建議系統(tǒng)的各種支出,各種效益,收益/投資比,投資回收周期。6.社會(huì)因素可行性分析:說明法律因素對(duì)合同責(zé)任、侵犯專利權(quán)和侵犯版權(quán)等問題的分析,說明用戶使用可行性是否滿足用戶行政管理、工作制度和人員素質(zhì)的要求。7.其他可供選擇方案:逐一說明其他可供選擇的方案,并說明未被推薦的理由。8.結(jié)論意見:說明項(xiàng)目是否能開發(fā),還需什么條件才能開發(fā),對(duì)項(xiàng)目目標(biāo)有何變動(dòng)等。可行性研究結(jié)束后要提交的文檔是可行性研究報(bào)告。一個(gè)可行性研究報(bào)告的主要內(nèi)容如下:目錄12345分析建模與規(guī)格說明實(shí)體—關(guān)系圖數(shù)據(jù)流圖與用戶通信技術(shù)理論基礎(chǔ)6狀態(tài)轉(zhuǎn)換圖7數(shù)據(jù)字典8結(jié)論與應(yīng)用軟件的需求分析理論基礎(chǔ)1為了開發(fā)出真正滿足用戶需求的軟件產(chǎn)品,首先必須知道用戶的需求。對(duì)軟件需求的深入理解是軟件開發(fā)工作獲得成功的前提和關(guān)鍵,不論我們把設(shè)計(jì)和編碼工作做得如何出色,不能真正滿足用戶需求的程序只會(huì)給用戶帶來失望,給開發(fā)者帶來煩惱。需求分析是發(fā)現(xiàn)、求精、建模、規(guī)格說明和復(fù)審的過程。為了發(fā)現(xiàn)用戶的真正需求,首先應(yīng)該從宏觀角度調(diào)查、分析用戶所面臨的問題。也就是說,需求分析的第一步是盡可能準(zhǔn)確地了解用戶當(dāng)前的情況和需要解決的問題。1理論基礎(chǔ)為了更好地理解問題,人們常常采用建立模型的方法。所謂模型,就是為了理解事物而對(duì)事物做出的一種抽象,是對(duì)事物的一種無歧義的書面描述。通常,模型由一組圖形符號(hào)和組織這些符號(hào)的規(guī)則組成。除了用分析模型表示軟件需求之外,還要寫出準(zhǔn)確的軟件需求規(guī)格說明。模型既是軟件設(shè)計(jì)的基礎(chǔ),也是編寫軟件規(guī)格說明的基礎(chǔ)。模型軟件需求規(guī)格說明1理論基礎(chǔ)在分析軟件需求和編寫軟件規(guī)格說明的過程中,軟件開發(fā)者和軟件用戶都起著關(guān)鍵的、必不可少的作用。用戶與開發(fā)者之間需要通信、溝通的內(nèi)容非常多,在雙方交流信息的過程中很容易出現(xiàn)誤解或遺漏,也可能存在二義性。與用戶通信的技術(shù)2軟件需求分析總是從兩方或多方之間的通信開始。用戶面臨的問題需要用基于計(jì)算機(jī)的方案來解決;開發(fā)者應(yīng)該對(duì)用戶的需求作出反應(yīng),給用戶提供幫助。這樣就產(chǎn)生了相互通信的需求。但是,正如前面已經(jīng)講過的,從開始通信到真正相互理解的道路通常是充滿坎坷的。良好的通信技術(shù)有助于加快理解的過程。與用戶通信的技術(shù)—訪談2在正式的訪談中,系統(tǒng)分析員將提出一些事先準(zhǔn)備好的具體問題,例如,詢問客戶公司銷售的商品種類、雇用的銷售人員數(shù)目以及信息反饋時(shí)間應(yīng)該多快等。在非正式的訪談中,將提出一些可以自由回答的開放性問題,以鼓勵(lì)被訪問的人員表達(dá)自己的想法,例如,詢問用戶為什么對(duì)目前正在使用的系統(tǒng)感到不滿意。訪談(或稱為會(huì)談)是最早開始運(yùn)用的獲取用戶需求的技術(shù),也是迄今為止仍然廣泛使用的主要的需求分析技術(shù)。訪談?dòng)袃煞N基本形式:正式的、非正式的與用戶通信的技術(shù)—應(yīng)用規(guī)格說明技術(shù)2盡管存在許多不同的簡易應(yīng)用規(guī)格說明方法,但是它們遵循的基本準(zhǔn)則是相同的。在中立地點(diǎn)舉行由開發(fā)者和用戶雙方出席的會(huì)議。制定準(zhǔn)備會(huì)議和參加會(huì)議的規(guī)則。提出一個(gè)議事日程,這個(gè)日程應(yīng)該足夠正式以便能夠涵蓋所有要點(diǎn),同時(shí)這個(gè)日程又應(yīng)該足夠非正式,以便鼓勵(lì)自由思維。由一個(gè)“協(xié)調(diào)人”來主持會(huì)議,他既可以是用戶也可以是開發(fā)者還可以是從外面請(qǐng)來的人。使用一種“定義機(jī)制”(例如,工作表、圖表等)。目標(biāo)是標(biāo)識(shí)問題、提出解決方案要素、商討不同的方法以及在有利于實(shí)現(xiàn)目標(biāo)的氛圍中指定初步的需求。這種方法提倡用戶與開發(fā)者密切合作,共同標(biāo)識(shí)問題,提出解決方案的要素,商討不同的方法并指定基本的需求。今天,簡易的應(yīng)用規(guī)格說明技術(shù)已經(jīng)成為信息系統(tǒng)界使用的主流技術(shù)。與用戶通信的技術(shù)—軟件原型2快速原型應(yīng)該具備的特性快速容易修改快速原型的目的是盡快向用戶提供一個(gè)可在計(jì)算機(jī)上運(yùn)行的目標(biāo)系統(tǒng)的模型,以便使用戶和開發(fā)者在目標(biāo)系統(tǒng)應(yīng)該“做什么”這個(gè)問題上盡可能快地達(dá)成共識(shí)。如果原型的第一版不是用戶所需要的,就必須根據(jù)用戶的意見迅速地修改它,構(gòu)建出原型的第二版,以更好地滿足用戶的需求。構(gòu)建原型的要點(diǎn)是,它應(yīng)該實(shí)現(xiàn)用戶看得見的功能(例如屏幕顯示或打印報(bào)表),省略目標(biāo)系統(tǒng)的“隱含”功能(例如修改文件)。在實(shí)際開發(fā)軟件產(chǎn)品時(shí),“修改—試用—反饋”的過程可能重復(fù)多遍,如果修改耗時(shí)過多,勢(shì)必延誤軟件開發(fā)時(shí)間。3分析建模與規(guī)格說明結(jié)構(gòu)化分析實(shí)質(zhì)上是一種創(chuàng)建模型的活動(dòng)。通過需求分析而建立的模型必須達(dá)到下述的三個(gè)基本目標(biāo)。描述用戶的需求。為軟件設(shè)計(jì)工作奠定基礎(chǔ)。定義一組需求,一旦開發(fā)出軟件產(chǎn)品之后,就可以用這組需求為標(biāo)準(zhǔn)來驗(yàn)收該產(chǎn)品。為了達(dá)到上述這些目標(biāo),在結(jié)構(gòu)化分析過程中導(dǎo)出的分析模型的形式,如右圖所示。圖1.分析模型的結(jié)構(gòu)分析建模與規(guī)格說明3通過需求分析除了創(chuàng)建分析模型之外,還應(yīng)該寫出軟件需求規(guī)格說明,它是分析階段的最終成果。下面給出的簡略大綱可以作為軟件需求規(guī)格說明的框架。
A.功能分解B.功能描述
1.處理說明
2.限制
3.性能需求
4.設(shè)計(jì)約束
5.支撐圖C.控制描述1.控制規(guī)格說明
2.設(shè)計(jì)約束
Ⅳ.行為描述
A.系統(tǒng)狀態(tài)
B.事件和動(dòng)作
Ⅴ.確認(rèn)標(biāo)準(zhǔn)
A.性能范圍
B.測(cè)試種類
C.預(yù)期的軟件響應(yīng)
D.特殊考慮
Ⅵ.參考書目
Ⅶ.附錄Ⅰ.引言
A.系統(tǒng)參考文獻(xiàn)
B.整體描述
C.軟件項(xiàng)目約束
Ⅱ.信息描述
A.信息內(nèi)容
B.信息流
1.數(shù)據(jù)流
2.控制流
Ⅲ.功能描述
實(shí)體—關(guān)系圖4數(shù)據(jù)模型包含三種相互關(guān)聯(lián)的信息:數(shù)據(jù)對(duì)象描述數(shù)據(jù)對(duì)象的屬性數(shù)據(jù)對(duì)象彼此間相互連接的關(guān)系屬性定義了數(shù)據(jù)對(duì)象的性質(zhì)。應(yīng)該根據(jù)對(duì)所要解決的問題的理解,來確定特定數(shù)據(jù)對(duì)象的一組合適的屬性。數(shù)據(jù)對(duì)象彼此之間相互連接的方式稱為關(guān)系,也稱為聯(lián)系。一對(duì)一聯(lián)系(1∶1)(2)一對(duì)多聯(lián)系(1∶N)(3)多對(duì)多聯(lián)系(M∶N)聯(lián)系也可能有屬性。數(shù)據(jù)對(duì)象是對(duì)軟件必須理解的復(fù)合信息的表示。所謂復(fù)合信息是指具有一系列不同性質(zhì)或?qū)傩缘氖挛?,因此,僅有單個(gè)值的事物(例如寬度)不是數(shù)據(jù)對(duì)象。實(shí)體—關(guān)系圖4命1通常,使用實(shí)體—關(guān)系圖(EntityRelationshipDiagram)來建立數(shù)據(jù)模型。通常把實(shí)體—關(guān)系圖簡稱為ER圖,相應(yīng)地,用ER圖描繪的數(shù)據(jù)模型也可以稱為ER模型。ER圖基本成分:實(shí)體(即數(shù)據(jù)對(duì)象):矩形框關(guān)系:連接相關(guān)實(shí)體的菱形框表示關(guān)系屬性:用橢圓形或圓角矩形表示實(shí)體(或關(guān)系)的屬性并用無向邊把實(shí)體(或關(guān)系)與其屬性連接起來實(shí)體—關(guān)系圖4某學(xué)校教學(xué)管理的ER圖教師學(xué)生課程例題圖2.某校教學(xué)管理ER圖數(shù)據(jù)流圖5命題3當(dāng)信息在軟件中移動(dòng)時(shí),它將被一系列“變換”所修改。數(shù)據(jù)流圖(DFD)是一種圖形化技術(shù),它描繪信息流和數(shù)據(jù)從輸入移動(dòng)到輸出的過程中所經(jīng)受的變換。數(shù)據(jù)流圖有四種基本符號(hào):正方形(或立方體)表示數(shù)據(jù)的源點(diǎn)或終點(diǎn);圓角矩形(或圓形)代表變換數(shù)據(jù)的處理;開口矩形(或兩條平行橫線)代表數(shù)據(jù)存儲(chǔ);箭頭表示數(shù)據(jù)流,即特定數(shù)據(jù)的流動(dòng)方向?;蚧蚧?數(shù)據(jù)流圖TCAB*數(shù)據(jù)A和數(shù)據(jù)B同時(shí)輸入才能變換成CTCAB*數(shù)據(jù)A變換成B和CTCAB+數(shù)據(jù)A或B,或A和B同時(shí)輸入變換成CTCAB+數(shù)據(jù)A變換成B或C,或B和CTCAB⊕只有數(shù)據(jù)A或只有數(shù)據(jù)B(不能A,B同時(shí))輸入時(shí)變換成CTCAB⊕數(shù)據(jù)A變換成B或C,但不能變換成B和C還有一些附加符號(hào)。例題假設(shè)一家工廠的采購部每天需要一張定貨報(bào)表,報(bào)表按零件編號(hào)排序,表中列出所有需要再次定貨的零件。5數(shù)據(jù)流圖對(duì)于每個(gè)需要再次定貨的零件應(yīng)該列出下述數(shù)據(jù);零件編號(hào)、零件名稱、定貨數(shù)量、目前價(jià)格、主要供應(yīng)者和次要供應(yīng)者。零件入庫或出庫稱為事務(wù),通過放在倉庫中的CRT終端把事務(wù)報(bào)告給定貨系統(tǒng)。當(dāng)某種零件的庫存數(shù)量少于庫存量臨界值時(shí)就應(yīng)該再次定貨。
從問題描述中提取數(shù)據(jù)流圖的四種成分接下來考慮處理最后,考慮數(shù)據(jù)流和數(shù)據(jù)存儲(chǔ)步驟例題表1總結(jié)了上面分析的結(jié)果,其中加星號(hào)標(biāo)記的是在問題描述中隱含的成分。5數(shù)據(jù)流圖表1.組成數(shù)據(jù)流圖的元素可以從描述問題的信息中提取源頭/終點(diǎn)數(shù)據(jù)流采購員定貨報(bào)表倉庫管理員零件編號(hào)數(shù)據(jù)存儲(chǔ)零件名稱定貨信息(見定貨報(bào)表)定貨數(shù)量庫存清單目前價(jià)格零件編號(hào)*主要供應(yīng)者庫存量次要供應(yīng)者庫存量臨界值事務(wù)處理零件編號(hào)*產(chǎn)生報(bào)表事務(wù)類型處理事務(wù)數(shù)量*5數(shù)據(jù)流圖一旦把數(shù)據(jù)流圖的四種成分都分離出來以后,就可以著手畫數(shù)據(jù)流圖了。任何系統(tǒng)的基本模型都由若干個(gè)數(shù)據(jù)源點(diǎn)/終點(diǎn)以及一個(gè)處理組成,這個(gè)處理就代表了系統(tǒng)對(duì)數(shù)據(jù)加工變換的基本功能。對(duì)于上述的定貨系統(tǒng)可以畫出如圖3所示的基本系統(tǒng)模型。圖3.定貨系統(tǒng)的基本系統(tǒng)模型(突出表明了數(shù)據(jù)的源點(diǎn)和終點(diǎn))5數(shù)據(jù)流圖下一步應(yīng)該把基本系統(tǒng)模型細(xì)化,描繪系統(tǒng)的主要功能。在圖4中給處理和數(shù)據(jù)存儲(chǔ)都加了編號(hào),這樣做的目的是便于引用和追蹤。圖4.定貨系統(tǒng)的功能級(jí)數(shù)據(jù)流圖5數(shù)據(jù)流圖接下來應(yīng)該對(duì)功能級(jí)數(shù)據(jù)流圖中描繪的系統(tǒng)主要功能進(jìn)一步細(xì)化。在對(duì)數(shù)據(jù)流圖分層細(xì)化時(shí)必須保持信息連續(xù)性,也就是說,當(dāng)把一個(gè)處理分解為一系列處理時(shí),分解前和分解后的輸入/輸出數(shù)據(jù)流必須相同。圖5.把處理事務(wù)的功能進(jìn)一步分解后的數(shù)據(jù)流圖數(shù)據(jù)流名字應(yīng)代表整個(gè)數(shù)據(jù)流(或數(shù)據(jù)存儲(chǔ))的內(nèi)容,而不是僅僅反映它的某些成分。不要使用空洞的、缺乏具體含義的名字(如“數(shù)據(jù)”、“信息”、“輸入”之類)。如果在為某個(gè)數(shù)據(jù)流(或數(shù)據(jù)存儲(chǔ))起名字時(shí)遇到了困難,則很可能是因?yàn)閷?duì)數(shù)據(jù)流圖分解不恰當(dāng)造成的,應(yīng)該試試重新分解,看是否能克服這個(gè)困難。處理5數(shù)據(jù)流圖—命名通常先為數(shù)據(jù)流命名,然后再為與之相關(guān)聯(lián)的處理命名。這樣命名比較容易,而且體現(xiàn)了人類習(xí)慣的“由表及里”的思考過程。名字應(yīng)該反映整個(gè)處理的功能,而不是它的一部分功能。名字最好由一個(gè)具體的及物動(dòng)詞,加上一個(gè)具體的賓語組成。應(yīng)該盡量避免使用“加工”、“處理”等空洞籠統(tǒng)的動(dòng)詞作名字。數(shù)據(jù)流圖中每個(gè)成分的命名是否恰當(dāng),直接影響數(shù)據(jù)流圖的可理解性,因此,給這些成分起名字時(shí)應(yīng)該仔細(xì)推敲。通常名字中僅包括一個(gè)動(dòng)詞,如果必須用兩個(gè)動(dòng)詞才能描述整個(gè)處理的功能,則把這個(gè)處理再分解成兩個(gè)處理可能更恰當(dāng)些。如果在為某個(gè)處理命名時(shí)遇到困難,則很可能是發(fā)現(xiàn)了分解不當(dāng)?shù)嫩E象,應(yīng)考慮重新分解。6狀態(tài)轉(zhuǎn)換圖狀態(tài)轉(zhuǎn)換圖(簡稱狀態(tài)圖)通過描繪系統(tǒng)的狀態(tài)及引起系統(tǒng)狀態(tài)轉(zhuǎn)換的事件,來表示系統(tǒng)的行為。狀態(tài)是任何可以被觀察到的系統(tǒng)行為模式,一個(gè)狀態(tài)代表系統(tǒng)的一種行為模式。狀態(tài)規(guī)定了系統(tǒng)對(duì)事件的響應(yīng)方式。系統(tǒng)對(duì)事件的響應(yīng),既可以是做一個(gè)(或一系列)動(dòng)作,也可以是僅僅改變系統(tǒng)本身的狀態(tài),還可以是既改變狀態(tài)又做動(dòng)作。在狀態(tài)圖中定義的狀態(tài)主要有:初態(tài)(即初始狀態(tài))、終態(tài)(即最終狀態(tài))和中間狀態(tài)。在一張狀態(tài)圖中只能有一個(gè)初態(tài),而終態(tài)則可以有0至多個(gè)。事件是在某個(gè)特定時(shí)刻發(fā)生的事情,它是對(duì)引起系統(tǒng)從一個(gè)狀態(tài)轉(zhuǎn)換到另一個(gè)狀態(tài)的外界事件的抽象。簡而言之,事件就是引起系統(tǒng)狀態(tài)轉(zhuǎn)換的控制信息。6狀態(tài)轉(zhuǎn)換圖初態(tài)/終態(tài)/中間狀態(tài)在狀態(tài)圖中,初態(tài)用實(shí)心圓表示,終態(tài)有一對(duì)同心圓(內(nèi)圓為實(shí)心圓)表示。中間狀態(tài)用圓角矩形表示,可以用兩條水平橫線把它分成上、中、下3個(gè)部分。上面部分為狀態(tài)的名稱,這部分是必須有的;中間部分為狀態(tài)變量的名字和值,這部分是可選的;下面部分是活動(dòng)表,這部分也是可選的。狀態(tài)轉(zhuǎn)換狀態(tài)圖中兩個(gè)狀態(tài)之間帶箭頭的連線稱為狀態(tài)轉(zhuǎn)換,箭頭指明了轉(zhuǎn)換方向。狀態(tài)變遷通常是由事件觸發(fā)的,在這種情況下應(yīng)在表示狀態(tài)轉(zhuǎn)換的箭頭線上標(biāo)出觸發(fā)轉(zhuǎn)換的事件表達(dá)式;如果在箭頭線上未標(biāo)明事件,則表示在源狀態(tài)的內(nèi)部活動(dòng)執(zhí)行完之后自動(dòng)觸發(fā)轉(zhuǎn)換。6狀態(tài)轉(zhuǎn)換圖事件表達(dá)式語法事件說明[守衛(wèi)條件]/動(dòng)作表達(dá)式其中,事件說明的語法為:事件名(參數(shù)表)。守衛(wèi)條件是一個(gè)布爾表達(dá)式。如果同時(shí)使用事件說明和守衛(wèi)條件,則當(dāng)且僅當(dāng)事件發(fā)生且布爾表達(dá)式為真時(shí),狀態(tài)轉(zhuǎn)換才發(fā)生。如果只有守衛(wèi)條件沒有事件說明,則只要守衛(wèi)條件為真狀態(tài)轉(zhuǎn)換就發(fā)生。動(dòng)作表達(dá)式是一個(gè)過程表達(dá)式,當(dāng)狀態(tài)轉(zhuǎn)換開始時(shí)執(zhí)行該表達(dá)式。活動(dòng)表的語法格式事件名(參數(shù)表)/動(dòng)作表達(dá)式其中,“事件名”可以是任何事件的名稱。在活動(dòng)表中經(jīng)常使用下述3種標(biāo)準(zhǔn)事件:entry,exit和do。entry事件指定進(jìn)入該狀態(tài)的動(dòng)作,exit事件指定退出該狀態(tài)的動(dòng)作,而do事件則指定在該狀態(tài)下的動(dòng)作。需要時(shí)可以為事件指定參數(shù)表?;顒?dòng)表中的動(dòng)作表達(dá)式描述應(yīng)做的具體動(dòng)作。6狀態(tài)轉(zhuǎn)換圖狀態(tài)轉(zhuǎn)換圖(簡稱狀態(tài)圖)通過描繪系統(tǒng)的狀態(tài)及引起系統(tǒng)狀態(tài)轉(zhuǎn)換的事件,來表示系統(tǒng)的行為。圖7為狀態(tài)圖中使用的主要符號(hào)。圖6.狀態(tài)圖中使用的主要符號(hào)6狀態(tài)轉(zhuǎn)換圖圖7.電話系統(tǒng)的狀態(tài)圖7數(shù)據(jù)字典數(shù)據(jù)字典是為了描述在結(jié)構(gòu)化分析過程中定義的對(duì)象的內(nèi)容,而使用的一種半形式化的工具。數(shù)據(jù)字典是所有與系統(tǒng)相關(guān)的數(shù)據(jù)元素的有組織的列表,并且包含了對(duì)這些數(shù)據(jù)元素的精確、嚴(yán)格的定義,從而使得用戶和系統(tǒng)分析員雙方對(duì)輸入、輸出、存儲(chǔ)的成分甚至中間計(jì)算結(jié)果有共同的理解。簡而言之,數(shù)據(jù)字典是描述數(shù)據(jù)的信息的集合,是對(duì)系統(tǒng)中使用的所有數(shù)據(jù)元素的定義的集合。通常包含下面信息。名字——數(shù)據(jù)、控制項(xiàng)、數(shù)據(jù)存儲(chǔ)或外部實(shí)體的主要名稱。別名——第一項(xiàng)中對(duì)象的其他名字。使用地點(diǎn)與方式——使用數(shù)據(jù)或控制項(xiàng)的處理的列表,以及使用這些對(duì)象的方式(例如作為處理的輸入,從處理輸出,作為數(shù)據(jù)存儲(chǔ),作為外部實(shí)體)。內(nèi)容描述——描述數(shù)據(jù)或控制項(xiàng)內(nèi)容的符號(hào)。補(bǔ)充信息——關(guān)于數(shù)據(jù)類型、預(yù)置值、限制等的其他信息。7數(shù)據(jù)字典=意思是等價(jià)于(或定義為);+意思是和(即,連接兩個(gè)分量);[]意思是或(即,從方括弧內(nèi)列出的若干個(gè)分量中選擇一個(gè)),通常用“|”號(hào)分開供選擇的分量;{}意思是重復(fù)(即,重復(fù)花括弧內(nèi)的分量);()意思是可選(即,圓括弧里的分量可有可無)。在開括弧的左邊用上角標(biāo)和下角標(biāo)分別表明重復(fù)的上限和下限;在開括弧左側(cè)標(biāo)明重復(fù)的下限,在閉括弧的右側(cè)標(biāo)明重復(fù)的上限。雖然可以使用自然語言描述由數(shù)據(jù)元素組成數(shù)據(jù)的關(guān)系,但是為了更加清晰簡潔起見,建議采用下列符號(hào):常常使用上限和下限進(jìn)一步注釋表示重復(fù)的花括弧。8結(jié)論與應(yīng)用為了詳盡地了解并正確地理解用戶的需求,必須使用適當(dāng)?shù)募夹g(shù)與用戶通信和溝通。訪談是歷史悠久的與用戶通信的技術(shù),至今仍被系統(tǒng)分析員廣泛采用。為了促使用戶與分析員密切合作共同分析需求,人們研究出一種面向團(tuán)隊(duì)的需求收集法,稱為“簡易的應(yīng)用規(guī)格說明技術(shù)”,現(xiàn)在,這種技術(shù)已經(jīng)成為信息系統(tǒng)界使用的主流技術(shù)。實(shí)踐表明,快速建立軟件原型是最準(zhǔn)確、最有效和最強(qiáng)大的需求分析技術(shù)??焖僭蛻?yīng)該具備的基本特性是“快速”和“容易修改”,因此,必須有適當(dāng)?shù)能浖ぞ咧С挚焖僭图夹g(shù)。通常使用第四代技術(shù)、可重用的軟件構(gòu)件及形式化規(guī)格說明與原型環(huán)境等工具,快速地構(gòu)建和修改原型。需求分析是發(fā)現(xiàn)、求精、建模、規(guī)格說明和復(fù)審的過程。需求分析的第一步是了解用戶當(dāng)前所處的情況,發(fā)現(xiàn)用戶所面臨的問題;接下來應(yīng)該通過與用戶交流,對(duì)用戶的基本需求反復(fù)細(xì)化,以得出對(duì)目標(biāo)系統(tǒng)的完整、準(zhǔn)確和具體的需求。8結(jié)論與應(yīng)用模型能幫助分析員更好地理解軟件系統(tǒng)的信息、功能和行為,從而使得需求分析工作更容易完成,使需求分析的結(jié)果更系統(tǒng)化。模型是復(fù)審需求分析成果時(shí)的焦點(diǎn),因此,也成為驗(yàn)證規(guī)格說明的完整性、一致性和準(zhǔn)確性的重要依據(jù)。模型是設(shè)計(jì)的基礎(chǔ),為設(shè)計(jì)者提供了軟件的實(shí)質(zhì)性表示,通過設(shè)計(jì)工作將把這些表示轉(zhuǎn)化成軟件實(shí)現(xiàn)。除了創(chuàng)建分析模型之外,在需求分析階段還應(yīng)該寫出軟件需求規(guī)格說明,經(jīng)過認(rèn)真評(píng)審并得到用戶確認(rèn)之后,作為這個(gè)階段的最終成果。為了更好地理解問題,人們常常采用建立模型的方法,結(jié)構(gòu)化分析實(shí)質(zhì)上就是一種建?;顒?dòng),通常建立數(shù)據(jù)模型、功能模型和行為模型。在需求分析階段建立起來的模型,在軟件開發(fā)過程中有許多重要作用。8結(jié)論與應(yīng)用為了更好地理解問題,人們常常采用建立模型的方法,結(jié)構(gòu)化分析實(shí)質(zhì)上就是一種建?;顒?dòng),通常建立數(shù)據(jù)模型、功能模型和行為模型。在需求分析階段建立起來的模型,在軟件開發(fā)過程中有許多重要作用。通常,使用實(shí)體—關(guān)系圖來建立數(shù)據(jù)模型,讀者應(yīng)該掌握這種圖形的基本符號(hào),能夠正確地使用這些符號(hào)建立軟件系統(tǒng)的數(shù)據(jù)模型。數(shù)據(jù)流圖是描繪信息流和數(shù)據(jù)從輸入移動(dòng)到輸出的過程中所經(jīng)受的變換的圖形化技術(shù)??梢栽谌魏纬橄髮哟紊鲜褂脭?shù)據(jù)流圖來表示信息處理系統(tǒng)或軟件。它是分析員與用戶之間通信、溝通的有效工具,也是進(jìn)行軟件設(shè)計(jì)的極好出發(fā)點(diǎn)。由于結(jié)構(gòu)化分析通常主要關(guān)注目標(biāo)系統(tǒng)應(yīng)該完成的邏輯功能,而數(shù)據(jù)流圖提供了功能建模的基本機(jī)制,因此,數(shù)據(jù)流圖是結(jié)構(gòu)化分析過程中使用的最
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年生產(chǎn)現(xiàn)場(chǎng)管理與作業(yè)安全保障題庫
- 2026年注冊(cè)護(hù)士執(zhí)業(yè)資格考試預(yù)測(cè)模擬試題及解析
- 五年級(jí)生習(xí)慣培養(yǎng)
- 2026年高考數(shù)學(xué)數(shù)學(xué)基礎(chǔ)預(yù)測(cè)模擬試題集
- 2026年?duì)I養(yǎng)師職業(yè)資格考試要點(diǎn)解析與模擬題
- 2026年律師實(shí)務(wù)考試法理學(xué)專題訓(xùn)練與案例分析
- 物流與供應(yīng)鏈管理專業(yè)考試題2026年
- 2026年工商管理MBA學(xué)位課程模擬測(cè)試題目
- 2026年新一代科技產(chǎn)業(yè)發(fā)展趨勢(shì)預(yù)測(cè)情景試題
- 防范操作風(fēng)險(xiǎn)培訓(xùn)課件
- 2026年黨支部主題黨日活動(dòng)方案
- 干爐渣運(yùn)輸合同范本
- 《國家基層高血壓防治管理指南2025版》解讀 2
- 實(shí)施指南(2025)《HG-T 6214-2023 鄰氨基苯酚》
- 安全生產(chǎn)相關(guān)工作主要業(yè)績及研究成果
- 2025廣西百色能源投資發(fā)展集團(tuán)有限公司招聘7人(第一批)筆試歷年參考題庫附帶答案詳解
- 供水管網(wǎng)搶修課件
- 穿越機(jī)組裝教學(xué)課件
- 運(yùn)輸公司安全領(lǐng)導(dǎo)小組會(huì)議記錄內(nèi)容
- 7.2動(dòng)物的特征及類群①課件-滬教版生物七年級(jí)下冊(cè)
- 尼康相機(jī)D200中文說明書
評(píng)論
0/150
提交評(píng)論