




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