




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第七章第七章 UML分析與設計方法分析與設計方法概述n基于UML的分析與設計方法是在面向對象的方法上進一步規范與完善分析與設計,使其技能表示系統的靜態特征又能表示動態行為;既能表示抽象邏輯特征,又能表示需求功能特征及物理特征。因此是一種較為全局、整體的反映系統分析、設計的工具。特點n統一性n二維模型n工具RUP的二維開發模型n傳統的瀑布開發模型是一個一維的模型,開發過程被劃分為多個連續的階段。n實際過程中,在開發整個周期中,每個階段均會產生改變,可以看成是開發全過程中的一種工作流。n在RUP中,軟件開發生命周期根據時間和RUP的核心工作流劃分為二維空間。n橫軸表示項目的時間維橫軸表示項目的時間
2、維, 通過時間組織,是過程展開的生命周期特征,體現開發過程的動態結構n縱軸以內容來組織縱軸以內容來組織,為自然的邏輯活動。體現開發過程的靜態結構n基于二維模型的兩種分析于設計方法n迭代n遞增需求工作流需求工作流概述n需求工作流通過對應問題的理解和分析,確立問題涉及的信息、功能和系統行為,將用戶需求精確化、完全化。 n需求的焦點主要在初始和精化階段主要在初始和精化階段,在精化階段后期,需求捕獲的工作量大幅下降。 n需求工作流的目標是描述系統應該做什么,并使開發人員和用戶就這一描述達成共識。為了達到該目標,要對需要的功能和約束進行提取、組織、文檔化;最重要的是理解系統所解決問題的定義和范圍n需求工
3、作流開始前,首先要對業務建模,業務建模就是對業務組織、業務內容和業務流程進行建模。業務模型為需求工作打下基礎。(需求工作流開始的前提)n需求捕獲通過對業務內容進行描述、整理,確立業務實體及其關系;確定業務系統的功能要求;確定實現功能要求的實體間的交互關系。將用戶需求精確化、完備化內容n對問題域的理解n首要任務n包括n對系統功能、性能的了解n對業務流程的了解n對數據的了解n需求調研方法n個別調查、會議討論、搜集書面資料n建立初始功能模型n在需求理解基礎上,以功能為核心以功能為核心,建立初始功能模型nUML里的用例視圖描述系統功能n優化模型n檢驗模型是否符合用戶的要求n修改模型直到達到用戶的要求為
4、止UML制品n在需求捕獲工作流,主要的UML制品:n用例n角色n系統n聯系n角色與用例之間的聯系n用例之間的聯系n角色之間的聯系n用例之間的關系用例之間的關系n版類Include/Uses:包含/使用關系n有先后關系,執行B時,必須要執行A用例A用例BUsesn用例之間的關系n版類Extend:擴展關系n本質就是泛化用例A用例BExtendn角色之間的關聯角色之間的關聯n關聯關系:關聯關系:一般性聯系n角色之間的關聯角色之間的關聯n繼承關系:繼承關系:一般與特殊n也存在單繼承和多繼承n場景場景n自然語言描述n不是一開始就很詳細n如同其他工作流一樣,隨著迭代和遞增過程會不斷細化及明確例-用例圖n
5、例7.2n圖7.8n例7.3n圖7.9n場景圖7.10工作人員n參與需求捕獲階段的工作人員:系統分析人員(System Analyst)用例描述人員(Use Case Specifier)用戶界面設計人員(User Interface Designer)構架設計師(Architect)需求工作流的活動n需求捕獲的工作流主要包括五個活動:確定參與者和用例區分用例的優先級詳細描述一個用例構造用戶界面原型構造用例模型n確定參與者和用例:確定參與者和用例:確定參與者和用例的目的是界定系統的范圍,確定哪些參與者將與系統進行交互,以及他們將從系統中得到哪些服務(用例)業務模型的建立是“確定參與者用例”前提
6、,而“確定參與者用例”又是用例模型(概要)的先決基礎。n區分用例優先級:區分用例優先級:區分用例優先級是為了決定用例模型中哪些用例需要在早期的迭代中進行開發(包括分析、設計、實現等),以及哪些用例可以在隨后的迭代中進行開發n詳細描述用例:詳細描述用例:詳細描述用例的主要目的是為了詳細描述事件流。這個活動包括建立用例說明、確定用例說明中包括的內容、對用例說明進行形式描述。他最終的結果是以圖或文字表示的用例的詳細說明。n構造用戶界面原型:構造用戶界面原型:在系統分析人員建立起用例模型,確定了誰是用戶以及他們要用系統做什么后。接下來的工作就是要著手設計用戶界面。這個活動由邏輯用戶界面設計、實際用戶界
7、面設計和構造原型兩部分組成,它最終的結果是一個用戶界面簡圖和用戶界面原型。n構造用例模型:構造用例模型:構造用例模型的主要目的是:整理用例間的關系,分離出包含用例和擴展用例;補充用例場景。這個活動由確功能說明、確定用例之間的其他關系組成。在確定系統用例和參與者之后。系統分析人員可以重新整理用例之間的關系,使模型更易于理解和處理。圖書館信息系統需求工作流n系統描述圖書館信息系統主要處理要求是有關館藏圖書與雜志的借閱與保存系統基本要求n圖書館的所有圖書、雜志必須在系統中登記、注冊(case:增加)。由編目人員負責(actor:編目人員)n圖書館會采購新書,對舊書、過期期刊、破損及遺失書刊進行處理(
8、case:刪除)由服務人員負責(actor:服務人員)n讀者可以借閱與歸還書刊(case:借閱、歸還)(actor:讀者)n管理員中的服務人員可以對所借書刊進行預訂工作(case:預訂、撤銷預訂)(actor:服務人員)n系統采用三層C/S結構,采用*系統和*數據庫進行管理三層C/S結構n表示層n是應用的用戶接口部分,它擔負著用戶與應用間的對話功能。它用于檢查用戶從鍵盤等輸入的數據,顯示應用輸出的數據。一般使用圖形用戶接口,檢查的內容也只限于數據的形式和值的范圍,不包括有關業務本身的處理邏輯n功能層n應用的本體,它將具體的業務處理邏輯編入程序中n數據層n數據層作為DBMS獨立出來n基于以上問題
9、域的要求及理解,得出n用例n角色n它們之間的關系n場景描述查找借書者查找書目標記已借出該書增加一條新借書記錄刪除預計記錄標記借出該書增加一條新借出記錄已借出否預訂否YesNoNoYes借閱書刊活動圖:需求工作流細化n以上是粗糙的初始功能模型,可以通過迭代和遞增繼續深入理解并修改完善,即細化過程。n需要修改的點:n實際情況中,某種書刊通常會購買多本,需要區分同一種書刊的多本書書題與書目n合并服務人員、編目人員為管理人員,系統不關注它們的信息n功能模型的改動n用例:n增加書題、刪除和修改書題n角色:n合并為圖書館管理人員n關系:n場景:圖7.15分析工作流分析工作流n分析的主要工作開始于初始階段的
10、結尾,和需求一樣是精化階段的主要焦點。n精化階段的大部分活動是捕獲需求,分析工作與需求捕獲在很大程度上重疊。n旨在給出系統的精確的抽象模型。分析工作流n建立靜態模型n表示系統的結構信息,系統的主要框架,是必須要做的nUML中用類圖表示n從用例圖中在問題域和業務流程分析理解的基礎上,從用例及角色挖掘對象。n建立動態模型n描述系統的活動規律,包括消息的活動及狀態的變化n在UML中用并發視圖表示n詳細的活動規律可以從業務模型、用例場景中獲知n檢驗及改進模型n檢驗:n是否滿足用戶需求n是否合理n修改n通過迭代與遞增作進一步修改和補充UML制品n在分析工作流期間,主要的UML制品:n類圖n四種動態圖n以
11、時序圖應用最為廣泛圖書館信息系統分析工作流n類圖n類n從用例圖角色看,有“讀者”和“管理員”(忽略)n從用例看,有對象“書目”和“書題”,他們與“讀者”之間有“借閱”和“預訂”的關聯。n類間關系n確定聯系類型:在關聯、繼承、聚合與依賴中,屬于“關聯”n確定重數:圖書館信息系統類圖:借閱書刊時序圖 : 讀者 : 讀者 : Item : Item : Title : Title : Borrower : Borrower : Loan : Loan1: find borrower2: 3: find item4: 5: find title6: 7: identify8: 9: create10:
12、 沒有預訂預訂預訂狀態圖問題域迭代理解n由于書和期刊的屬性不同,因此,加以區分,稍作調整。n修改后的用例圖n圖7.19n最終的類圖n圖7.20設計工作流設計工作流n設計是整個分析模型的精化和擴充,即擴充模型元素的語義以及增加新的元素。n設計工作流類一般被組織成具有良好接口的設計包(Package)和設計子系統(Subsystem),而描述則體現了類的對象如何協同工作,實現用例的功能。 n設計工作流的主要工作是位于精化階段的最后部分和構造階段的開始部分的主要建模活動。設計工作流n建立設計的靜態模型n對類內部做細化,增加重要的屬性和操作n對類進行區分:實體類、控制類、界面類n實體類是用于對必須存儲
13、的信息和相關行為建模的類 ,用于保存和更新一些現象的有關信息,例如:事件、人員或者一些現實生活中的對象。實體類通常都是永久性的,它們所具有的屬性和關系是長期需要的對應于C/S架構的數據層n控制類用于對一個或幾個用例所特有的控制行為進行建模,它描述的用例的業務邏輯的實現,控制類的設計與用例實現有著很大的關系。在有些情況下,一個用例可能對應多個控制類對象。控制類有效將業務邏輯獨立于實體數據和邊界控制,專注于處理業務邏輯,控制類會將特有的操作和實體類分離,者有利于實體類的統一化和提高復用性。 對應于C/S架構的邏輯層n邊界類是系統內部與系統外部的角色之間進行交互建模的類,角色通過它來與控制對象交互,
14、實現用例的任務。其形式可以是:為業務主角操作提供的一個GUI,或者系統與其他的系統之間進行一個交互的接口,所以當外部的GUI變化時,或者是通信協議有變化時,只需要修改邊界類就可以了,不用再去修改控制類和實體類。對應C/S架構的界面層n根據需要,對類圖中的類進行增補,使其更完善。n引入接口、tagged value,constraint,note等,對類間關系進行補充,語義進行深入描述。n劃分子系統,組合成包n以上工作可以在原分析階段類圖上修改n建立設計的動態模型n對類間消息以及狀態的變化等,繼續細化與深化。n根據需要,引入tagged value,constraint,note等。n可以在分析
15、階段動態圖的基礎上修改n檢驗和改進設計模型n檢驗標準同分析模型n引起修改:n與用戶需求不符合,或用戶需求變更。n對問題域有新的理解,更加深入。n優化邏輯視圖。n根據實際需要,考慮具體實現以及環境等。UML制品n類圖,以及并發視圖里的四種圖nUML的通用機制n便條/注釋n修飾nUML擴展機制nTagged value,contraint,stereoType圖書館信息系統設計工作流n類圖n增加類的屬性及操作,標注屬性的類型,以及可見性n根據C/S架構,確定3個子系統n補充數據相關類和界面相關類n增加persistent,封裝數據庫相關存儲機制和操作,控制類從其繼承n增加若干界面類,一般形式是主界
16、面+若干子界面用戶界面包業務處理包數據庫包n設置一些語義限制和約束,設置sterotype,加注note等。n業務處理包n圖7.22 : 讀者 : 讀者 : Main window : Main window : Lending item : Lending item : Item : Item : Title : Title : Borrower : Borrower : Loan : Loan1: find2: find3: find borrower4: find5: find6: find item7: find8: find9: find title10: update11: upd
17、ate12: identify borrower13: create loan實現工作流實現工作流n實現工作流的目的包括以層次化的子系統形式定義代碼的組織結構;以組件的形式(源文件、二進制文件、可執行文件)實現類和對象;將開發出的組件作為單元進行測試以及集成由單個開發者(或小組)所產生的結果,使其成為可執行的系統。n實現是關于把設計模型轉換成可執行代碼的過程。n實現工作流是構建階段的焦點。實現工作流n建立系統物理結構圖n建立組件圖:類的實現文件可以表示成一個組件n建立展開圖:首先確定硬件環境和硬件之間連接關系,再描述節點內的組件n實現系統n編程n測試n安裝部署n軟件打包、發布、安裝調試n檢驗系統并改進n改bugUML制品n在實現工作流中,主要有六種制品:n組件圖軟件系統實現的框
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高科技行業從業證明書(5篇)
- 2025年四川省達州市中考地理試題(無答案)
- 剝離技術方案
- 加強法制建設-推進依法治國試題及答案
- 北林園林專業人才培養方案
- 商務黃藍撞色執行力培訓
- 領導力培訓如何成為優 秀的培訓工程師
- 風能與太陽能的協同發展及未來趨勢預測
- 非遺項目在青年群體中的傳播與影響
- 顧客旅程優化提升新零售體驗的策略
- 科學二年級第二學期雙減期末綜合測評方案
- 關于涉農企業稅收風險管理的實踐和思考
- 6.醫院感染綜合性監測制度
- 05S502閥門井圖集
- 定語從句語法講解
- 畢業設計英文文獻中文翻譯_TCP分離器_基于可重構硬件的TCPIP流量監控
- 輪扣式支架模板施工方案
- 貨物及服務招標和外貿代理服務商資格遴選項目遴選文件.docx
- 雙門通道控制(共20頁)
- 圖像的頻域增強
- 法蘭標準(excel版本)化工部HG20592-2009
評論
0/150
提交評論