第九章-面向對象軟件工程-簡課件_第1頁
第九章-面向對象軟件工程-簡課件_第2頁
第九章-面向對象軟件工程-簡課件_第3頁
第九章-面向對象軟件工程-簡課件_第4頁
第九章-面向對象軟件工程-簡課件_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

第九章面向對象軟件工程第二部分

現(xiàn)代軟件工程軟件工程的主要發(fā)展過程1.60’S末——提出SE的思想和概念,出現(xiàn)SP等;2.70’S——

出現(xiàn)SA、SD,程序設計方法學等;3.80’S——CASE等成為熱點,出現(xiàn)并流行OO技術;4.90’S——OO等技術成為熱點和主流。OO技術基本思想:盡可能模擬人類習慣的思維方式,使開發(fā)軟件的方法與過程盡可能接近人類認識世界解決問題的方法與過程。它不是從功能上和算法上考慮、而是從系統(tǒng)的組成上來分解問題。傳統(tǒng)軟件開發(fā)方法存在的問題數(shù)據(jù)與功能(處理)分離軟件可復用性差(采用自頂向下分解方法)軟件可維護性差(程序難以閱讀)開發(fā)出的軟件不能滿足用戶要求不能滿足大型軟件系統(tǒng)開發(fā)的需要面向對象技術的優(yōu)點1與人類習慣的思維方式一致2

穩(wěn)定性好3軟件可復用性好4較易開發(fā)大型軟件產(chǎn)品5

可維護性好面向對象軟件工程(OOSE):

OOA、OOD、OOP、OOT等實例分析:個人圖書管理系統(tǒng)系統(tǒng)的需求描述:

該系統(tǒng)應該能夠將書籍的基本信息按計算機類、非計算機類分別建檔,實現(xiàn)按書名、作者、類別、出版社等關鍵字的組合查詢功能面向對象分析任務:建立概念模型——反映問題域靜態(tài)關系建立動態(tài)模型——反映系統(tǒng)行為建立概念模型(問題域建模)目的:幫助理解問題域的各種概念、各種名詞、以及它們之間的各種關系。方法:找到代表事物與概念的“對象”———發(fā)現(xiàn)類——

確定類之間的關聯(lián)——

為類添加職責第一步:發(fā)現(xiàn)類1、找到備選類:——將需求描述中的所有名詞及名詞短語列出,得到備選類列表:

系統(tǒng)書籍基本信息計算機類非計算機類書名作者類別出版社關鍵字2、決定侯選類對備選類進行篩選,得到侯選類列表:書籍計算機類書籍非計算機類書籍借閱記錄借閱記錄列表書籍列表第二步:確定類之間的關聯(lián)1、確定類之間的層次關系2、采用UML中的類圖表示最初的概念模型:書籍列表借閱記錄書籍非計算機類書籍計算機類書籍借閱記錄列表類和實例類(class)是所有有共同特征和信息結構的對象集合一個對象是類的一個實例類定義了對象的屬性和操作實例定義了每一個對象的狀態(tài)類的關系關聯(lián)(有向性)泛化(即繼承)聚合(整體/部分)依賴(從屬)3、加上關聯(lián)描述的概念模型對于較大的系統(tǒng),可以將一些關聯(lián)度大的部分類合成一個包,以便更好地抽象系統(tǒng)書籍列表借閱記錄書籍非計算機類書籍計算機類書籍借閱記錄列表0··*0··10··*111第三步:為類添加職責類所維護的知識(成員變量——屬性)類能夠執(zhí)行的語句(成員方法)書籍列表新增()修改()查詢()統(tǒng)計()借閱記錄書號借閱人借閱時間書籍書號書名類別作者出版社定價非計算機類書籍計算機類書籍借閱記錄列表打?。ǎ?··*0··10··*111三、UML(統(tǒng)一建模語言)面向對象的分析與設計是從建模開始的,故建模語言一直是面向對象方法的一個研究焦點。二十世紀80年代以來,相繼出現(xiàn)了多種面向對象的建模語言,由于用戶很難判斷和區(qū)別這些語言各自的優(yōu)缺點和相互間的差別,故難以找到一種恰當?shù)倪m合自己需要的建模語言。二十世紀90年代中期,三位世界著名的面向對象技術專家G.Booch、J.Rumbaugh和I.Jacobson通力合作,在他們自己提出的Booch方法、OMT方法和OOSE方法等三種方法的基礎上,推出統(tǒng)一建模語言UML(UnifiedModelingLanguage)。UML結合了Booch,OMT,和Jacobson方法的優(yōu)點,統(tǒng)一了符號體系,并從其它的軟件工程方法和工程實踐中吸收了許多經(jīng)過實際檢驗的概念和技術。UML推出后迅速得到工業(yè)界和學術界的廣泛支持,OMG在1997年11月批準將UML作為面向對象技術的標準建模語言,成為20多年來面向對象技術發(fā)展史上的重大里程碑。

1997.11.17UML被OMG接納為標準

1997.9公布UML1.1

工業(yè)化

1997.1公布UML1.0

標準化

1996.6和1996.10UML0.9&0.91

OOPSLA95UnifiedMethod0.8

統(tǒng)一

Booch93OMT-2

分散的各部分

其它方法Booch91OMT-1OOSEUML表示法——可視化圖形建模語言采用圖形表示法,為開發(fā)者或開發(fā)工具使用這些圖形符號和文本語法為系統(tǒng)建模提供了標準。這些圖形符號和文字所表達的是應用級的模型,在語義上它是UML元模型的實例。

UML提供了五類9種基本模型視圖,用于支持從需求分析開始的軟件開發(fā)全過程。UML的9種基本模型圖UseCaseDiagramsUseCaseDiagramsUseCase圖ScenarioDiagramsScenarioDiagrams協(xié)作圖StateDiagramsStateDiagrams組件圖ComponentDiagramsComponentDiagrams配置圖StateDiagramsStateDiagrams對象圖ScenarioDiagramsScenarioDiagrams狀態(tài)圖UseCaseDiagramsUseCaseDiagrams時序圖StateDiagramsStateDiagrams類圖活動圖模型庫UML的9種基本模型圖分成五大類:第一類:用例圖第二類:靜態(tài)圖(類圖、對象圖)第三類:行為圖(狀態(tài)圖、活動圖)第四類:交互圖(時序圖、協(xié)作圖)第五類:實現(xiàn)圖(組件圖、配置圖)UML的模型元素及表示類對象狀態(tài)結點包構件關聯(lián)泛化聚合依賴9種模型圖可以分為五類:第一類是用例圖,從用戶角度描述系統(tǒng)的功能,并指出各功能的操作者。即展示系統(tǒng)外部的各類執(zhí)行者與系統(tǒng)提供的各種用例之間的關系。用例乘客傳感器拖動裝置例如:電梯系統(tǒng)動作者例:運輸業(yè)務管理系統(tǒng)用例圖

電梯系統(tǒng)需求模型:UML用例圖第二類是靜態(tài)圖,包括類圖和對象圖。其中類圖用于定義系統(tǒng)中的類的靜態(tài)結構,包括描述類之間的聯(lián)系以及類的內(nèi)部結構,即類的屬性和操作。對象圖所使用的表示符號與類圖幾乎完全相同。一個對象圖是類圖的一個實例。類名屬性操作名對象名:類名作者名字:String年齡:Integer計算機名字:String內(nèi)存:Integer小影:作者名字=“王小影”年齡=32小影的家用PC:計算機名字=“Dell486”內(nèi)存=64小影的家用PC:計算機名字=“CompaqX”內(nèi)存=32對象圖類圖圖書系統(tǒng)靜態(tài)模型:UML類圖書籍列表新增()修改()查詢()統(tǒng)計()借閱記錄書號借閱人借閱時間書籍書號書名類別作者出版社定價非計算機類書籍計算機類書籍借閱記錄列表打?。ǎ?··*0··10··*111人事管理

行為圖第三類是行為圖,描述系統(tǒng)的動態(tài)組成對象間的交互關系。——狀態(tài)圖:對類的一種補充描述,描述一類對象的所有可能的狀態(tài)及其轉移關系?!顒訄D:它描述為滿足用例要求所要進行的活動以及活動間的約束關系。電梯系統(tǒng)的狀態(tài)圖向第一層下降在第一層上升狀態(tài)下降狀態(tài)空閑狀態(tài)超時上升(樓層)上升(樓層)到達(樓層)到達(樓層)下降(樓層)運輸業(yè)務系統(tǒng)需求模型:UML活動圖

電梯系統(tǒng)動態(tài)模型交互圖第四類是交互圖,描述對象之間的交互關系。一種稱之為時序圖,它強調(diào)對象之間消息發(fā)送的順序,同時也顯示對象之間的交互過程。另一種是協(xié)作圖,它著重描述對象間的協(xié)作關系。二者很相似,如果強調(diào)時間和順序,應當使用時序圖;如果強調(diào)通信關系,則可以選擇協(xié)作圖。時序圖一個時序圖顯示了在一個時間序列中對象的相互作用的安排時序圖:Student注冊流程注冊管理課程1:填入信息2:提交3:增加課程(編號,名稱)4:打開課程?5:打開明細?6:增加(編號)7:增加(明細)課程明細協(xié)作圖一個協(xié)作圖顯示了對象及其與其他對象的鏈接間的相互作用協(xié)作圖:Registrarcourseform:CourseFormtheManager:CurriculumManageraCourse:Course1:設置課程信息2:處理3:增加課程4:新課程實現(xiàn)圖第五類是實現(xiàn)圖,包括組件圖和配置圖。組件圖描述代碼組件的物理結構以及各組件之間的依賴關系。配置圖定義系統(tǒng)中軟硬件的物理體系結構。組件圖組件圖描述了軟件部件之間的組織結構和所屬組件可能是源代碼部件實時部件可執(zhí)行部件組件圖CourseCourseOfferingStudentProfessorCourse.dllPeople.dllCourse課程User用戶Register.exeBilling.exeBillingSystem支付系統(tǒng)配置圖配置圖顯示了實時處理單元和軟件處理的結構配置圖形象化地描述了企業(yè)各構件的物理配置配置圖Registration

注冊處Database數(shù)據(jù)庫Library圖書館Dorm宿舍MainBuilding主樓UML工具軟件Sybase

PowerDesigner

-

一個高端數(shù)據(jù)建模工具。ERWin

-

一個高端數(shù)據(jù)建模工具。Rational

Rose

Enterprise

-

一個高端UML工具,恰如其分的數(shù)據(jù)庫建模支持。

Visio

Professional

-

一個

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論