版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第第3章章 面向?qū)ο筌浖_發(fā)技術(shù)面向?qū)ο筌浖_發(fā)技術(shù) 本章簡介本章引見面向?qū)ο蟪绦蛟O(shè)計言語、軟件開發(fā)的方法與過程、面向?qū)ο蟮姆治雠c設(shè)計的軟件開發(fā)方法,面向?qū)ο蟮能浖_發(fā)方法與UML模型的關(guān)系,對UML圖在軟件開發(fā)階段所處的位置也作簡要闡明。 面向?qū)ο缶幊萄哉Z 面向?qū)ο蟾拍畹挠蓙鞳OP的簡史C+言語Java言語當(dāng)前新推出的IDE幾乎都是面向?qū)ο蟮?,例如,Oracle9i JDeveloper,C+ Builder。軟件開發(fā)的方法與過程 軟件開發(fā)的方法與過程,描畫了在系統(tǒng)開發(fā)過程中各開發(fā)階段之間的順序,以及從前一階段到后一階段的過渡原那么。 軟件開發(fā)的方法定義了一種設(shè)計與實現(xiàn)軟件的方法,并確定了需
2、求執(zhí)行的義務(wù)以及這些義務(wù)的輸出。 過程要定義一個在組織中開發(fā)軟件需求執(zhí)行的義務(wù)序列,這能夠會包括技術(shù)性的與非技術(shù)性的內(nèi)容。 瀑布模型Waterfall Model。 面向?qū)ο蟮南到y(tǒng)開發(fā)模型,例如,螺線模型Spiral Model。 構(gòu)造性的方法定義了功能分解、建立數(shù)據(jù)流程圖以及過程圖。面向?qū)ο蠓椒敲葱枨蠼㈩惻c對象圖,建立類的形狀轉(zhuǎn)換圖,以及建立音訊序列圖 瀑布模型 瀑布模型定義了軟件開發(fā)周期中根本的過程和步驟,并就它們的作用與順序提供了指點。 瀑布模型將軟件系統(tǒng)的開發(fā)分為7個階段:需求匯總、分析、構(gòu)造設(shè)計、系統(tǒng)設(shè)計、實現(xiàn)、測試、配置并操作,如圖3.1所示。 瀑布模型 螺線模型 螺線模型是瀑
3、布模型與快速原型方法的結(jié)合,因此具有兩種方法的優(yōu)點。 螺線模型是由分析、設(shè)計、實現(xiàn)和測試4個部分組成的迭代模型,每一個周期都是一次迭代過程。每迭代一次,系統(tǒng)就生成一個新版本,軟件開發(fā)就前進一個層次。 螺線模型提供了大型軟件設(shè)計的宏觀過程,在早期就留意到軟件重用、軟件進化和快速原型螺線模型 分析設(shè)計實現(xiàn)測試面向?qū)ο筌浖_發(fā)方法 面向?qū)ο筌浖_發(fā)方法就是將面向?qū)ο蠹夹g(shù)運用于軟件開發(fā)的整個過程,包括OOA、OOD和OOP。 在分析階段要確定系統(tǒng)做什么,要對現(xiàn)實世界中的概念進展籠統(tǒng),構(gòu)造出對象和類; 在設(shè)計階段要確定系統(tǒng)如何實現(xiàn)預(yù)期目的,要把分析階段的模型進展分解和細化,得到系統(tǒng)實施的詳細方案。這樣,
4、設(shè)計的結(jié)果很容易用面向?qū)ο蟮某绦蛟O(shè)計言語來實現(xiàn)。 面向?qū)ο蟮姆治?面向?qū)ο蟮姆治龇椒▽④浖到y(tǒng)描畫成一組對象的集合,采用籠統(tǒng)的對象模型、記號系統(tǒng)和方法。 主要的面向?qū)ο蟮姆治龇椒ㄓ校篊oad與Yourdon的面向?qū)ο蟮姆治龇椒?、Bailin的面向?qū)ο蟮臉?gòu)造化分析方法和Shlaer與Mellor的面向?qū)ο蟮姆治龇椒ā?Coad與Yourdon的面向?qū)ο蠓治龇椒ǚ譃?個步驟:發(fā)現(xiàn)對象和類、標識構(gòu)造、定義主題詞、描畫屬性、描畫外部效力操作 1發(fā)現(xiàn)對象和類 Coad與Yourdon的OOA方法中,用粗圓角的方框表示類,分為3個部分,分別放類名、屬性和操作;類的對象用細的方框來表示。在運用這種方法進展分
5、析時,不用拘泥于Coad與Yourdon的表示方法,可以采用UML中的表示方法來表示類和對象。 2標識構(gòu)造 在Coad與Yourdon的OOA方法中,將普通 特殊構(gòu)造用半圓記號表示,普通的類在上,特殊的類在下,半圓指向普通化的類。用三角記號表示整體 部分構(gòu)造,用連線銜接對象,整體對象在上,部分對象在下。如今,各種方法的表示都可以一致為UML表示法,所以在標識構(gòu)造時,也可以采用UML中的表示方法。 3定義主題詞 在現(xiàn)實的系統(tǒng)中,往往存在大量的對象和構(gòu)造,因此要加上一個主題層,對問題空間進展高度概括和總結(jié),從一個更高的角度來調(diào)查整個系統(tǒng)。定義主題時,首先要找出系統(tǒng)中最主要的類,然后按問題的子領(lǐng)域來
6、對這些候選主題進展挑選,并思索主題間的相互依賴和交互作用,使彼此的相互影響到達最小。 4描畫屬性屬性是描畫類中每個對象的特征的數(shù)據(jù)。要從有關(guān)問題領(lǐng)域與系統(tǒng)責(zé)任的描畫中識別屬性,并經(jīng)過普通 特殊構(gòu)造中的承繼關(guān)系,將屬性放到適當(dāng)?shù)奈恢?。為每個屬性確定一個易了解的名字,加上一些描畫以及對屬性闡明的約束。 5. 描畫外部效力普通情況下,對象包含的操作主要有:對象的創(chuàng)建與初始化、對象的銜接、存取對象的屬性值、釋放對象、計算、監(jiān)視等。用適當(dāng)?shù)拿謥順俗R這些操作,并加上適當(dāng)?shù)奈淖只驁D表闡明。最后,將一切的OOA文檔聚集起來,包括:5層OOA模型主題、類 對象、構(gòu)造、屬性和操作、類 對象闡明和必要的輔助文檔。
7、 面向?qū)ο蟮脑O(shè)計 面向?qū)ο蟮脑O(shè)計是把分析階段得到的需求轉(zhuǎn)變成符合本錢和質(zhì)量要求的、籠統(tǒng)的系統(tǒng)實現(xiàn)方案的過程。從分析到設(shè)計,是一個逐漸擴展模型的過程?;蛘哒f,面向?qū)ο蟮脑O(shè)計就是用面向?qū)ο蟮挠^念建立求解域模型的過程。 Coad和Yourdon的OOD方法 Coad和Yourdon提出的OOD方法,由4部分組成:問題領(lǐng)域部件設(shè)計、用戶界面部件設(shè)計、義務(wù)管理部件設(shè)計和數(shù)據(jù)管理部件設(shè)計。每個部件由主題詞、對象及類、構(gòu)造、屬性和外部效力5層組成,如圖3.3所示。 設(shè)計階段的四個組成部分 Wirfs Brock的責(zé)任驅(qū)動設(shè)計 Wirfs Brock的責(zé)任驅(qū)動設(shè)計方法,也稱為CRC方法,其中心是用類所承當(dāng)?shù)呢?zé)
8、任來描畫系統(tǒng)。這種方法采用責(zé)任把封裝的概念帶到分析與設(shè)計的活動中去,經(jīng)過客戶 效力器模型來改良封裝性。 可以采用CRC卡來記錄初始的設(shè)計。每個類寫在一張卡上,類的名字在頂部,責(zé)任寫在左邊,完成責(zé)任時需求為其提供效力的協(xié)作者的類名寫在責(zé)任的右邊,如圖3.4所示。 CRC卡 Booch的OOD 其方法主要包括以下步驟:1標識類與對象。2標識類與對象的語義。3標識類與對象之間的關(guān)系。4實現(xiàn)類與對象。 對象模型化技術(shù) OMT以面向?qū)ο笏枷霝楦?,?jīng)過構(gòu)造一組相關(guān)的模型來確定系統(tǒng)的需求、有關(guān)的設(shè)計和實現(xiàn)原那么,再將問題領(lǐng)域的分析模型變換成實現(xiàn)領(lǐng)域的計算機模型。 在OMT方法中,主要用到3種面向?qū)ο筌浖?/p>
9、型:對象模型、動態(tài)模型和功能模型對象模型化技術(shù)對象模型主要描畫系統(tǒng)中對象的靜態(tài)構(gòu)造,表示系統(tǒng)中的對象、類及之間的靜態(tài)聯(lián)絡(luò),包括分析對象模型和設(shè)計對象模型。分析對象模型描畫了問題領(lǐng)域中的類、類的屬性、操作以及類之間的承繼、聚集和關(guān)聯(lián)關(guān)系。設(shè)計對象模型描畫了實現(xiàn)領(lǐng)域中的類、類的屬性、方法和類之間的承繼、聚集和依賴等關(guān)系。 對象模型化技術(shù)在UML中,將各種方法運用的符號進展了一致,因此如今可以運用UML表示法來描畫對象模型。 動態(tài)模型描畫了系統(tǒng)中的動態(tài)行為,即與時間有關(guān)的方面以及操作發(fā)生的順序。動態(tài)模型用形狀轉(zhuǎn)換圖表示,每個形狀轉(zhuǎn)換圖描畫了系統(tǒng)中對一個類的對象允許的事件和形狀序列。圖中的事件對應(yīng)于對
10、象模型中的操作,而動作那么對應(yīng)于功能模型中的功能。 對象模型化技術(shù)功能模型用數(shù)據(jù)流圖來表示,描畫了系統(tǒng)中與值轉(zhuǎn)換有關(guān)的情況,包括函數(shù)、映射、約束和功能性依賴。動態(tài)模型和功能模型都是對象模型的補充。 OMT設(shè)計方法包括分析、系統(tǒng)設(shè)計和對象設(shè)計3個步驟。 對象模型化技術(shù)分析階段要對描畫系統(tǒng)需求的問題陳說進展處置,產(chǎn)生一個方式化的模型,描畫系統(tǒng)中的對象、對象之間的關(guān)系、動態(tài)的控制流和數(shù)據(jù)的函數(shù)性轉(zhuǎn)換。系統(tǒng)設(shè)計階段決議系統(tǒng)的整體構(gòu)造,以對象模型為根據(jù),將系統(tǒng)劃分成子系統(tǒng),并實現(xiàn)并發(fā)在對象設(shè)計階段,要設(shè)計系統(tǒng)中主要函數(shù)的實現(xiàn)算法,對分析模型進展求精和優(yōu)化,產(chǎn)生一個適用的設(shè)計方案。 設(shè)計方式 設(shè)計方式通常
11、包括方式的描畫、UML圖,方式要處理的問題范圍、范例代碼、其他競爭的設(shè)計方式選擇、這些選擇中的有關(guān)協(xié)定等。設(shè)計方式正在成為通用的處理方案,由于它很容易運用于特殊的軟件開發(fā)工程之中 UML模型和視圖 UMLUnified Modeling Language,一致建模言語是一種用于建立商業(yè)模型及軟件系統(tǒng)模型的規(guī)范言語和圖形符號,它能以圖表方式對軟件系統(tǒng)進展可視化描畫,是“軟件分析與設(shè)計中的規(guī)范言語。 UML定義了一種籠統(tǒng)的用來描畫軟件系統(tǒng)構(gòu)造和行為的言語,還定義了一種規(guī)范的用來建立模型元素視圖的圖形符號。普通地,可以將UML規(guī)范圖分為構(gòu)造圖和行為圖。 1UML構(gòu)造圖 1類圖Class Diagra
12、ms 描畫系統(tǒng)中一組類和接口間的靜態(tài)關(guān)系,這些關(guān)系既包括類之間的承繼關(guān)系,也包括類之間的關(guān)聯(lián)關(guān)系。2對象圖Object Diagrams 提供在指定時辰位于類實例間的關(guān)系的快照視圖。在以一種靜態(tài)的方法保管并闡明系統(tǒng)內(nèi)復(fù)雜的動態(tài)時,對象圖會很有用。 3組件圖Compenent Diagrams 描畫系統(tǒng)的靜態(tài)實現(xiàn)視圖,顯示了一組組件和它們之間的關(guān)系。組件代表的是模型中邏輯籠統(tǒng)的物理實現(xiàn),例如,類和它們的交互。4部署圖Deployment Diagrams 描畫在一個系統(tǒng)構(gòu)造視圖中物理節(jié)點的鏈接,節(jié)點是為執(zhí)行一個或多個組件提供物理操作環(huán)境的計算資源。 2UML行為圖 1用例圖Use Case Diagrams 經(jīng)過描畫一組用例與其執(zhí)行者之間的關(guān)系,為系統(tǒng)、子系統(tǒng)或類的行為建立模型。2活動圖Activity Diagrams 顯示了一個系統(tǒng)的活動流,包括從活動到活動的延續(xù)流,以及執(zhí)行這些活動或由這些活動產(chǎn)生的對象。 3形狀圖Statechart Diagrams 描畫一系列對象的內(nèi)部形狀以及形狀的變化和轉(zhuǎn)移,常用于給對象的事件順序行為建模。4順序圖Sequence Diagrams 經(jīng)過強調(diào)音訊的時間順序,描畫對象間的相互關(guān)系。這些對象是類的典型實例,且可以描畫其他的分類者,例如,執(zhí)行者、組件或節(jié)點。5協(xié)作圖Collaboration Diagrams描
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度文化創(chuàng)意產(chǎn)業(yè)承攬合同補充協(xié)議4篇
- 2025年度LED照明產(chǎn)品照明設(shè)計大賽獨家代理銷售合同3篇
- 2024私企股份轉(zhuǎn)讓及數(shù)字貨幣應(yīng)用合作合同3篇
- 2025年度智能廚房櫥柜系統(tǒng)安裝合同4篇
- 2024食品行業(yè)健康檢測合同
- 2024維修服務(wù)協(xié)議書-城市照明設(shè)施維護管理合同3篇
- 2024隗蓉與科技公司關(guān)于機器人技術(shù)研發(fā)的合同
- 2025年度智能交通系統(tǒng)建設(shè)項目承包合同范本4篇
- 2025年度玻璃幕墻工程節(jié)能保溫材料研發(fā)與生產(chǎn)合同3篇
- 2025年度智能化溫室大棚建設(shè)一體化工程合同書4篇
- 2022年湖北省武漢市中考數(shù)學(xué)試卷含解析
- TLFSA 003-2020 危害分析與關(guān)鍵控制點(HACCP)體系調(diào)味面制品生產(chǎn)企業(yè)要求
- LY/T 2244.3-2014自然保護區(qū)保護成效評估技術(shù)導(dǎo)則第3部分:景觀保護
- 紀律教育月批評與自我批評五篇
- GB/T 26480-2011閥門的檢驗和試驗
- GB/T 13342-2007船用往復(fù)式液壓缸通用技術(shù)條件
- 藥店員工教育培訓(xùn)資料
- GB 20371-2016食品安全國家標準食品加工用植物蛋白
- 【英語手寫體】26英文字母手寫體描紅書寫字帖
- 實習(xí)護生壓瘡相關(guān)知識掌握情況及預(yù)防態(tài)度的調(diào)查問卷
- 《駱駝祥子》第(9、10、11、12)章檢測題
評論
0/150
提交評論