第九章-面向?qū)ο筌浖こ?簡(jiǎn)課件_第1頁(yè)
第九章-面向?qū)ο筌浖こ?簡(jiǎn)課件_第2頁(yè)
第九章-面向?qū)ο筌浖こ?簡(jiǎn)課件_第3頁(yè)
第九章-面向?qū)ο筌浖こ?簡(jiǎn)課件_第4頁(yè)
第九章-面向?qū)ο筌浖こ?簡(jiǎn)課件_第5頁(yè)
已閱讀5頁(yè),還剩40頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第九章面向?qū)ο筌浖こ痰诙糠?/p>

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

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

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

可維護(hù)性好面向?qū)ο筌浖こ?OOSE):

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

該系統(tǒng)應(yīng)該能夠?qū)?shū)籍的基本信息按計(jì)算機(jī)類(lèi)、非計(jì)算機(jī)類(lèi)分別建檔,實(shí)現(xiàn)按書(shū)名、作者、類(lèi)別、出版社等關(guān)鍵字的組合查詢(xún)功能面向?qū)ο蠓治鋈蝿?wù):建立概念模型——反映問(wèn)題域靜態(tài)關(guān)系建立動(dòng)態(tài)模型——反映系統(tǒng)行為建立概念模型(問(wèn)題域建模)目的:幫助理解問(wèn)題域的各種概念、各種名詞、以及它們之間的各種關(guān)系。方法:找到代表事物與概念的“對(duì)象”———發(fā)現(xiàn)類(lèi)——

確定類(lèi)之間的關(guān)聯(lián)——

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

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

1997.11.17UML被OMG接納為標(biāo)準(zhǔn)

1997.9公布UML1.1

工業(yè)化

1997.1公布UML1.0

標(biāo)準(zhǔn)化

1996.6和1996.10UML0.9&0.91

OOPSLA95UnifiedMethod0.8

統(tǒng)一

Booch93OMT-2

分散的各部分

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

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

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

行為圖第三類(lèi)是行為圖,描述系統(tǒng)的動(dòng)態(tài)組成對(duì)象間的交互關(guān)系。——狀態(tài)圖:對(duì)類(lèi)的一種補(bǔ)充描述,描述一類(lèi)對(duì)象的所有可能的狀態(tài)及其轉(zhuǎn)移關(guān)系。——活動(dòng)圖:它描述為滿足用例要求所要進(jìn)行的活動(dòng)以及活動(dòng)間的約束關(guān)系。電梯系統(tǒng)的狀態(tài)圖向第一層下降在第一層上升狀態(tài)下降狀態(tài)空閑狀態(tài)超時(shí)上升(樓層)上升(樓層)到達(dá)(樓層)到達(dá)(樓層)下降(樓層)運(yùn)輸業(yè)務(wù)系統(tǒng)需求模型:UML活動(dòng)圖

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

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

PowerDesigner

-

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

-

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

Rose

Enterprise

-

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

Visio

Professional

-

一個(gè)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論