UML面向對象科學出版社鄒盛榮主編.ppt
《UML面向對象科學出版社鄒盛榮主編.ppt》由會員分享,可在線閱讀,更多相關《UML面向對象科學出版社鄒盛榮主編.ppt(30頁珍藏版)》請在裝配圖網上搜索。
UML系統(tǒng)建模,,第1章 緒論,-2-,模型,,模型是對現(xiàn)實世界的簡化,為什么工程師要建造模型(models)?為什么航天工程師要建造航天器的模型?為什么橋梁工程師要建造橋的模型?提供這些模型的目的是什么? 這些工程師建造模型來查明他們的設計是否可以正常工作。航天工程師建造好了航天器的模型,然后把他們放入風洞中了解這些航天器是否可以飛行。橋梁工程師建造橋的模型來了解橋能否接立起來。建筑工程師建造建筑的模型了解客戶是否喜歡這種建筑模樣。通過建立模型來驗證事物是否可工作。,,為了更好的了解一個過程或事物,人們通常根據(jù)所研究對象的某些特征 (形狀、結構或行為等) 建立相關的模型 模型是從一個特定視點對系統(tǒng)進行的抽象 它可以是實物模型,例如建筑模型、教學模型、玩具等 也可以是抽象數(shù)字或圖示模型,例如數(shù)學公式或圖形等,目錄,UML的發(fā)展史,1,日常生活中的應用,本課程學習中需要注意的問題,3,2,開發(fā)軟件為什么需要模型,在開發(fā)軟件的過程中,開發(fā)者在動手編寫程序之前需要研究和分析軟件的諸多復雜和紛亂的問題 用戶需求的準確描述問題 功能與功能之間的關系問題 軟件的質量和性能問題 軟件的結構組成問題 建立幾十個甚至幾百個程序或組件之間的關聯(lián)問題等等 在這個復雜的開發(fā)過程中,我們最關注的還是開發(fā)者之間的交流問題,,軟件開發(fā)中能否消除技術人員與非技術人員(用戶)之間、使用不同技術的開發(fā)人員之間、不同功能使用者之間的等等交流障礙是軟件開發(fā)成功的關鍵 直觀的軟件模型將有助于軟件工程師與他們進行有效的交流,,軟件設計者可以通過建立需求模型來實現(xiàn)技術人員與非技術人員(用戶)之間的交流 在軟件的設計中,設計人員首先要把描述系統(tǒng)功能需求的自然語言形式轉化為軟件程序的邏輯形式,在這個轉化過程中,設計人員要借助許多模型來完成最終的程序設計模型 在軟件的實施、測試和部署中,模型為不同領域的技術人員在軟件和硬件的實施、測試和部署中提供有效的交流平臺 軟件模型是最有效的軟件文檔保存形式,軟件模型在開發(fā)團隊人員的培訓、學習和知識的傳遞和傳播等方面起著非常重要的作用,開發(fā)軟件為什么需要模型,軟件開發(fā)中需要建立 -需求模型 分析 模型 設計模型 實施模型 測試模型 部署模型 在系統(tǒng)開發(fā)生命周期中,需要從多角度來建立模型才能全面、準確地分析和設計軟件系統(tǒng),,軟件模型有多種表達方式或語言 開發(fā)者們經過多年的實踐發(fā)現(xiàn),以圖形符號為基礎的統(tǒng)一建模語言(Unified Modeling Language,UML) 描述軟件模型既簡單又清晰,,《UML系統(tǒng)建?!肥且婚T與軟件開發(fā)密切相關的建模方法。1968年產生軟件工程,后來面向對象的分析與設計方法的發(fā)展在20世紀80年代末至20世紀90年代中出現(xiàn)了一個高潮,UML是這個高潮的產物。 它不僅統(tǒng)一了Booch、Rumbaugh和Jacobson的表示方法,而且對其有了進一步的發(fā)展,并最終統(tǒng)一為大眾所接受的標準建模語言。,1.1 UML的發(fā)展史,,1.2 日常生活中的應用,UML的目標是以面向對象相關圖的方式來描述任何類型的系統(tǒng)。最常用的是建立軟件系統(tǒng)的模型,以及處理復雜數(shù)據(jù)的信息系統(tǒng)、具有實時要求的工業(yè)系統(tǒng)或工業(yè)過程,但它同樣可以用于描述非軟件領域的系統(tǒng),如機械系統(tǒng)、企業(yè)機構或業(yè)務過程等,1. 3 本課程學習中需要注意的問題,(1)小型案例在第三章講述,主要引導學生觀察了解UML常用的9種圖的畫法及作用,畫法簡單易用,便于學習,可立即上手。 (2)中型案例在全書的第二部分按章節(jié)講述,中型案例按照統(tǒng)一過程的過程流在每章結尾處展開示例。,,(3)大型案例是介紹大型軟件可能涉及到人命關天的安全系統(tǒng),還有一些大型復雜系統(tǒng)的需求是很難說清或抽取的,在書的第十二章重點詳細的講述這種系統(tǒng)建模過程中的復雜網絡需求獲取方法和形式化方法技術的補充。,怎樣成為優(yōu)秀的軟件模型設計者,1. 人遠比技術重要 2. 理解你要實現(xiàn)的東西 3. 謙虛是必須的品格,永遠認識到自己的不足 4. 需求就是需求,必須照辦 5. 比起需求的改變,更多的是你對需求的理解發(fā)生改變,6. 經常閱讀別人的設計 7. 降低軟件模塊間的耦合度 8. 提高軟件的內聚性 9. 考慮軟件的移植性 10. 接受變化,擁抱變化,11. 不要低估對軟件規(guī)模的需求 12. 性能僅僅是很多設計因素之一 13. 管理接口 14. 簡單可靠的設計,不斷的重構代碼 15. 證明你的設計在實踐中可行,16. 應用已知的模式 17. 研究每個模型的長處和弱點 18. 在現(xiàn)有任務中應用多個模型 19. 理解完整的過程 20. 常做測試,早做測試 21. 不斷的將工作歸檔 22. 技術常變,基本原理不會,,,,,,,At a stand-up meeting, each team member in turn answers five questions: What have I done since yesterday’s meeting? What am I working on today? What problems are preventing me from achieving this? What have we forgotten? What did I learn that I would like to share with the team?,At a stand-up meeting, each team member in turn answers five questions: What have I done since yesterday’s meeting? What am I working on today? What problems are preventing me from achieving this? What have we forgotten? What did I learn that I would like to share with the team?,Ethical Issues,Developers and maintainers need to be Hard working Intelligent Sensible Up to date and, above all, Ethical IEEE-CS ACM Software Engineering Code of Ethics and Professional Practice www.acm.org/serving/se/code.htm,,Eight Principles: 1. PUBLIC - Software engineers shall act consistently with the public interest. 2. CLIENT AND EMPLOYER - Software engineers shall act in a manner that is in the best interests of their client and employer consistent with the public interest. 3. PRODUCT - Software engineers shall ensure that their products and related modifications meet the highest professional standards possible. 4. JUDGMENT - Software engineers shall maintain integrity and independence in their professional judgment. 5. MANAGEMENT - Software engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance. 6. PROFESSION - Software engineers shall advance the integrity and reputation of the profession consistent with the public interest. 7. COLLEAGUES - Software engineers shall be fair to and supportive of their colleagues. 8. SELF - Software engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession.,-26-,學習路線圖,,本書的核心過程,-27-,-28-,開發(fā)過程解析,業(yè)務建模:用軟件建模方法描述業(yè)務流程;其目標是認識業(yè)務本質,該業(yè)務本質是后續(xù)用例建模的基礎 用例建模:采用UML用例建模技術描述軟件需求,該需求模型將為后續(xù)用例分析提供輸入 用例分析:采用UML用例分析技術分析軟件需求,建立軟件系統(tǒng)的分析模型 架構設計:在系統(tǒng)的全局范圍內,以分析模型為基礎,設計系統(tǒng)的架構 構件設計:根據(jù)架構設計的成果,將分析模型細化,設計系統(tǒng)構件的實現(xiàn)細節(jié) 代碼實現(xiàn):將系統(tǒng)構件映射到目標語言上,,知識點框圖 按軟件RUP過程設置: 需求 : 1. 域 2. 商業(yè)模型(用例圖) 3. 初始需求(功能和非功能需求) 分析: 1,類抽取 實體類 功能模型 (用例的劇本) 類圖 (名詞抽取法) 動態(tài)模型 (狀態(tài)圖) 2,用例的細化和實現(xiàn) 合作圖、順序圖 設計 1,屬性的格式 2,操作的分配和細化 實現(xiàn) 測試 維護,Thank you !,- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- UML 面向 對象 科學出版社 鄒盛榮 主編
裝配圖網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
鏈接地址:http://www.zhongcaozhi.com.cn/p-2894979.html