



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第一章軟件工程概述1. 軟件危機(jī) (software crisis) :是指在計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程中所遇到的一系列嚴(yán)重問題。即“兩低一高” 問題:質(zhì)量低、效率低、成本高。軟件危機(jī)也成為“軟件蕭條(depression) ”或“軟件困擾 (afflication) ”2. 軟件危機(jī)主要表現(xiàn)1)開發(fā)成本和進(jìn)度估計(jì)不準(zhǔn)2)用戶對(duì) 已完成的軟件系統(tǒng)不滿意3)軟件質(zhì)量往往靠不住4)軟件常常是不可維護(hù)的5)軟件通常沒有適當(dāng)?shù)奈臋n資料6)軟件成本逐年上升7)軟件開發(fā)生產(chǎn)率滯后于硬件和計(jì)算機(jī)應(yīng)用普及的趨勢(shì)3. 產(chǎn)生軟件危機(jī)的原因1)與軟件本身的特點(diǎn)有關(guān)a. 軟件不同于硬件,是邏輯部件而不是物理部件缺乏可
2、見性難于測(cè)試管理和控制開發(fā)過程困難不會(huì)因使用時(shí)間過長(zhǎng)而被“用壞”難以維護(hù)b.軟件不同于一般程序,規(guī)模龐大,而且程序復(fù)雜性隨著程序規(guī)模的增加而呈指數(shù)上升2)和軟件開發(fā)與維護(hù)的方法不正確有關(guān)a.對(duì)軟件開發(fā)和維護(hù)有關(guān)的錯(cuò)誤認(rèn)識(shí)和作法忽視軟件需求分析的重要性認(rèn)為軟件開發(fā)就是寫程序輕視軟件維護(hù)b. 對(duì)軟件開發(fā)過程與方法的認(rèn)識(shí)與應(yīng)用軟件開發(fā)要經(jīng)歷一個(gè)漫長(zhǎng)的時(shí)期(編程占10-20% )程序僅是完成軟件配置的一個(gè)組成部分軟件開發(fā)方法要有利于軟件維護(hù)4. 軟件的特點(diǎn)(1) 軟件是無形的( intangible )(2) 軟件副本的大批量生產(chǎn)輕而易舉(3) 軟件業(yè)是勞動(dòng)密集型的(4) 一個(gè)沒有經(jīng)過充分訓(xùn)練的軟件開
3、發(fā)人員很容易編寫出難以理解和修改的軟件(5) 軟件本身很容易修改。但由于它的復(fù)雜性,又很難正確地修改。(6) 軟件不像其他的工業(yè)產(chǎn)品那樣會(huì)因使用而磨損,隨著反復(fù)修改,它的設(shè)計(jì)會(huì)逐漸退化5. 消除軟件危機(jī)的途徑1)對(duì)計(jì)算機(jī)軟件的正確認(rèn)識(shí)2)認(rèn)識(shí)到軟件開發(fā)不是個(gè)體勞動(dòng)的神秘技巧, 而是一種組織良好、 管理嚴(yán)密、 各類人員協(xié)同配合、共同完成的工程項(xiàng)目3)推廣使用成功的軟件開發(fā)技術(shù)和方法4)開發(fā)和使用更好的軟件開發(fā)工具總之 , 為了消除軟件危機(jī),既要有技術(shù)措施(方法和工具),又要有必要的組織管理措施。6. 對(duì)工程 的理解:大事情,施工的過程,工程學(xué)科。施工的過程:分析設(shè)計(jì)實(shí)現(xiàn)維護(hù)7.軟件的概念經(jīng)典定義
4、:軟件=程序+文檔+數(shù)據(jù)軟件是計(jì)算機(jī)程序及其有關(guān)的數(shù)據(jù)和文檔的完整集合。計(jì)算機(jī)程序是能夠完成功能的可執(zhí)行的指令序列數(shù)據(jù)是程序能適當(dāng)處理的信息,具有適當(dāng)?shù)臄?shù)據(jù)結(jié)構(gòu)軟件文檔是開發(fā)、使用和維護(hù)程序所需要的圖文資料8. 軟件工程的概念概括地說,軟件工程是指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的工程學(xué)科。采用工程的概念、原理、技術(shù)和方法來開發(fā)與維護(hù)軟件,把經(jīng)過時(shí)間考驗(yàn)而證明正確的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來, 以經(jīng)濟(jì)地開發(fā)出高質(zhì)量的軟件并有效地維護(hù)它,這就是軟件工程。目標(biāo):項(xiàng)目成功(BFC,Better 、 Faster 、 Cheaper )9. 軟件工程的本質(zhì)特征( 1)軟件工程關(guān)注于大型程序的
5、構(gòu)造( 2)軟件工程的中心課題是控制復(fù)雜性( 3)軟件經(jīng)常變化( 4)開發(fā)軟件的效率非常重要( 5)和諧地合作是開發(fā)軟件的關(guān)鍵( 6)軟件必須有效地支持它的用戶( 7)在軟件工程領(lǐng)域中通常由具有一種文化背景的人替具有另一種文化背景的人創(chuàng)造產(chǎn)品10. 軟件工程的基本原理( 1)用分階段的生命周期計(jì)劃進(jìn)行嚴(yán)格管理( 2)堅(jiān)持進(jìn)行階段評(píng)審( 3)實(shí)行嚴(yán)格的產(chǎn)品控制( 4)采用現(xiàn)代程序設(shè)計(jì)技術(shù)( 5)結(jié)果應(yīng)能清楚地審查( 6)開發(fā)小組的人員應(yīng)該少而精( 7)承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性11. 軟件工程方法學(xué)通常把在軟件生命周期全過程中使用的一整套技術(shù)的集合稱為方法學(xué)(methodology),也稱
6、為范型 (paradigm)。1)傳統(tǒng)方法學(xué)(結(jié)構(gòu)化方法學(xué)): SA,SD,SP,ST2)面向?qū)ο蠓椒▽W(xué):OOA,OOD,OOP,OOTS:結(jié)構(gòu)化,structuredOO :面向?qū)ο?,Object OrientedA :分析, AnalysisD:設(shè)計(jì), DesignP:編程, ProgrammingT:測(cè)試, Test12. 軟件工程方法學(xué)三要素,這就是方法、工具和過程。其中:1) 方法是完成軟件開發(fā)任務(wù)的技術(shù)方法,回答“如何做”的問題;2)工具是為方法的運(yùn)用提供自動(dòng)的或半自動(dòng)的軟件支撐環(huán)境;3)過程規(guī)定了完成各項(xiàng)任務(wù)的工作階段、工作內(nèi)容、產(chǎn)品、驗(yàn)收的步驟和完成準(zhǔn)則。第二章軟件過程1. 過
7、程( process ): ISO9000 把過程定義為,把輸入轉(zhuǎn)化為輸出的一組彼此相關(guān)的資源和活動(dòng)。2. 軟件過程 (Software Process): 是為了獲得高質(zhì)量軟件所需要完成的一系列任務(wù)的框架( Framework ),它規(guī)定了完成各項(xiàng)任務(wù)的工作步驟。3. 軟件生命周期軟件生命周期由軟件定義、軟件開發(fā)、和運(yùn)行維護(hù)三個(gè)時(shí)期組成,每個(gè)時(shí)期又可進(jìn)一步劃分成若干個(gè)階段。 (三個(gè)時(shí)期八個(gè)階段 )三個(gè)時(shí)期八個(gè)階段:三個(gè)時(shí)期:軟件定義、軟件開發(fā)、運(yùn)行維護(hù)八個(gè)階段:(1)問題定義(2). 可行性研究(3). 需求分析(4). 概要設(shè)計(jì)(5). 詳細(xì)設(shè)計(jì)(6). 編碼和單元測(cè)試(7). 綜合測(cè)試(
8、8). 軟件維護(hù)4. 軟件開發(fā)模型 ( 在課本的 14 33 頁(yè),了解一下 ) 1 )瀑布模型 (Waterfall)2) 快速原型模型 Prototype3) 增量模型( Incremental Models)4) 噴泉模型5) 螺旋模型6) 統(tǒng)一過程 (rational unified process,RUP)7) 敏捷過程8) 極限編程 (extreme programming,XP)9) 能力成熟模型(capability maturity model,CMM)第三章結(jié)構(gòu)化的分析(SA)1. 需求分析:發(fā)現(xiàn)、求精、建模、規(guī)格說明、復(fù)審的過程。發(fā)現(xiàn):獲取需求,完備、正確、有效求精:細(xì)節(jié)建
9、模:形式化描述規(guī)格說明:詳述復(fù)審:批準(zhǔn)2. 需求分析的準(zhǔn)則1) 必須理解和表示問題的信息域,根據(jù)這條準(zhǔn)則應(yīng)該建立數(shù)據(jù)模型。2)必須定義軟件應(yīng)完成的功能,這條準(zhǔn)則要求建立功能模型。3)必須表示作為外部事件結(jié)果的軟件行為,這條準(zhǔn)則要求建立行為模型。4)必須對(duì)描述信息、功能和行為的模型進(jìn)行分解,用層次的方式展示細(xì)節(jié)。3. 需求獲取的方法1) 訪談?wù)降模菏孪葴?zhǔn)備好的非正式的訪談:開放的,頭腦風(fēng)暴,情景分析2) 面向數(shù)據(jù)流自頂向下求精3) 簡(jiǎn)易的應(yīng)用規(guī)格說明技術(shù)4) 快速建立軟件原型4. 分析建模結(jié)構(gòu)化分析實(shí)質(zhì)上是一種創(chuàng)建模型的活動(dòng)。通過需求分析而建立的模型必須達(dá)到下述的三個(gè)基本目標(biāo):描述用戶的需求。
10、為軟件設(shè)計(jì)工作奠定基礎(chǔ)。定義一組需求,一旦開發(fā)出軟件產(chǎn)品之后,就可以用這組需求為標(biāo)準(zhǔn)來驗(yàn)收該產(chǎn)品。5. 模型 (Model) :是為了理解事物而對(duì)事物作出的一種抽象,是對(duì)事物的書面上的無歧義文字或圖形的描述 .5.1.模型是對(duì)問題的簡(jiǎn)化。5.2.要從多個(gè)角度認(rèn)識(shí)事物。6.分析模型:數(shù)據(jù)模型(實(shí)體聯(lián)系圖)、功能模型(數(shù)據(jù)流圖)、行為模型(狀態(tài)轉(zhuǎn)換圖)。7. 需求分析成果:軟件需求規(guī)格說明8.實(shí)體 -聯(lián)系圖( ER 圖, entity-relationship diagram)(P41, 要求會(huì)畫 )( 1)數(shù)據(jù)模型的主要成分:數(shù)據(jù)對(duì)象,數(shù)據(jù)對(duì)象的屬性,數(shù)據(jù)對(duì)象彼此間相互連接的關(guān)系數(shù)據(jù)對(duì)象:對(duì)軟件
11、必須理解的復(fù)合信息的抽象。屬性:定義了數(shù)據(jù)對(duì)象的性質(zhì)。聯(lián)系:數(shù)據(jù)對(duì)象彼此之間相互連接的方式稱為聯(lián)系,也稱為關(guān)系。類型:一對(duì)一聯(lián)系、一對(duì)多聯(lián)系、多對(duì)多聯(lián)系。聯(lián)系也可以有屬性。( 2)實(shí)體 -聯(lián)系圖的符號(hào)表示:實(shí)體屬性聯(lián)系9. 數(shù)據(jù)流圖( DFD ,Data Flow Diagram ):描繪信息流和數(shù)據(jù)從輸入移動(dòng)到輸出的過程中所經(jīng)受的變換(書本 P43 47 ,要會(huì)畫)10. 數(shù)據(jù)字典( DD: ,Data Dictionary ):是關(guān)于數(shù)據(jù)的信息的集合,是對(duì)數(shù)據(jù)流圖中包含的所有元素的定義的集合(書本 P49 51 ,要會(huì)畫)11. 狀態(tài)轉(zhuǎn)換圖( SD , State Diagram ):通過
12、描繪系統(tǒng)的狀態(tài)及引起系統(tǒng)狀態(tài)轉(zhuǎn)換的事件,來表示系統(tǒng)的行為。用于建立行為模型。狀態(tài):是任何可以被觀察到的系統(tǒng)行為模式。狀態(tài)規(guī)定了系統(tǒng)對(duì)事件的響應(yīng)方式事件:是在某個(gè)特定時(shí)刻發(fā)生的事情,是引起系統(tǒng)做動(dòng)作或(和)轉(zhuǎn)換狀態(tài)的控制信息。(書本 P47 49 )第四章結(jié)構(gòu)化設(shè)計(jì)性能DFD環(huán)境功能將來分析設(shè)計(jì)過程ERDDD數(shù)據(jù)( 五大需求)STD接口架構(gòu)數(shù)據(jù)(四大設(shè)計(jì))內(nèi)存 DS數(shù)據(jù)DB外存file架構(gòu)C/S,B/S四大設(shè)計(jì)構(gòu)件之間的接口接口人機(jī)接口Process過程Procedure (步驟)三型兩化行為模型三型功能模型數(shù)據(jù)模型系統(tǒng)化兩化層次化如何設(shè)計(jì):必須依據(jù)原理、原則、規(guī)則、準(zhǔn)則模塊:是由邊界元素限定的
13、相鄰的程序元素的序列,而且有一個(gè)整體標(biāo)識(shí)符來代表它。模塊化:就是把程序劃分成可獨(dú)立命名且獨(dú)立訪問的模塊, 每個(gè)模塊完成一個(gè)子功能, 把這些模塊集成起來構(gòu)成一個(gè)整體,可以完成指定的功能滿足用戶的需求。( 1) 一組相鄰元素( 2) 一個(gè)邊界( 3) 一個(gè)名字(標(biāo)識(shí)符 ID )Why 模塊化?1) 降低復(fù)雜度2) 有利于團(tuán)隊(duì)分工協(xié)作How to模塊化?Meyer 模塊化5 標(biāo)準(zhǔn)1) 模塊可分解性(降低復(fù)雜性)2) 模塊可組裝性(可重用,reuse )3) 模塊可理解性(易于維護(hù) )4) 模塊連續(xù)性(副作用?。?) 模塊保護(hù)性(屏蔽異常)抽象( abstract ):抽出事物的本質(zhì)特征,而暫時(shí)不考慮
14、它們的細(xì)節(jié)找共性,略特性抓主要,略次要有效降低模塊數(shù)量逐步求精:為了集中精力解決主要問題而盡量推遲對(duì)問題細(xì)節(jié)的考慮。大小粗細(xì)Miller法則:一個(gè)人在任何時(shí)候都只能把精力集中在7± 2 個(gè)知識(shí)塊上。7 ± 2全局變量信息隱藏局部變量塊內(nèi):高內(nèi)聚,一個(gè)模塊只做一件事模塊獨(dú)立參數(shù)少塊間:低耦合,KIS ( keep it simple)類型簡(jiǎn)單結(jié)構(gòu)化設(shè)計(jì)原理:1) 模塊化2) 抽象3) 信息隱藏4) 逐步求精啟發(fā)原則:1) 改進(jìn)軟件結(jié)構(gòu)提高模塊獨(dú)立性2) 模塊規(guī)模應(yīng)該適中(LOC<30 )LOC:lines of code3) 深度、寬度、扇出和扇入都應(yīng)當(dāng)適中( 7
15、77; 24) 模塊的作用域應(yīng)該在控制域之內(nèi)5) 力爭(zhēng)降低模塊接口的復(fù)雜度(接口KIS )6) 設(shè)計(jì)單出口單入口的模塊7) 模塊的功能應(yīng)該可以預(yù)測(cè)note>code原則)設(shè)計(jì)結(jié)果描述工具:建模工具軟件工具工具建模工具開發(fā)工具IPO 圖( Input Process Output):描述模塊(總體)架構(gòu)表示: C/S,B/S , 層次層次圖+IPO 圖=HIPO 圖結(jié)構(gòu)圖:( P76 )Yourdon 提出的結(jié)構(gòu)圖是進(jìn)行軟件結(jié)構(gòu)設(shè)計(jì)的另一個(gè)有力工具面向設(shè)計(jì)流的設(shè)計(jì)方法三種設(shè)計(jì)方法面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方法面向?qū)ο蟮脑O(shè)計(jì)方法設(shè)計(jì)優(yōu)化:無有好優(yōu)精人 機(jī)界面設(shè)計(jì)問題MICUIGUIAUIMMI1.
16、系統(tǒng)響應(yīng)時(shí)間(長(zhǎng)度、易變性)集成式(內(nèi)含,開始就設(shè)計(jì)在軟件中)2. 用戶幫助措施嵌入式 / 附加式(聯(lián)機(jī)文檔)1) 完備性2) 選擇性( menu, F1 , help )3) 如何顯示幫助信息4) 返回 /退出 (ESCescape , 按鈕 )平面5) 怎樣組織幫助信息層次結(jié)構(gòu)(導(dǎo)航)Web 頁(yè)(超鏈接)3.出錯(cuò)信息處理1) 可理解性2) 建設(shè)性3) 警示性4) 視聽性5) 友好性4.命令交互UI 設(shè)計(jì)的重要性:1) 用戶評(píng)價(jià)產(chǎn)品的依據(jù)2) 占總設(shè)計(jì)量的50% 以上3) 涉及到美學(xué)、人機(jī)工程學(xué)、心理學(xué)4) UI 工程師成為一種崗位UI 設(shè)計(jì)原則:以人為本、人性化、美、方便和諧美一致對(duì)稱人機(jī)
17、界面設(shè)計(jì)過程:用戶界面設(shè)計(jì)是一個(gè)迭代的過程建模( UML 的狀態(tài)圖)建立原型(powerpoint,dreamvever)試用評(píng)估界面設(shè)計(jì)指南(看看微軟的界面設(shè)計(jì))1) 一般交互2) 信息顯示3) 數(shù)據(jù)輸入結(jié)構(gòu)化方法學(xué)SASDSPST1965GOTO 語(yǔ)句1968(書本P89 )1972如果一個(gè)程序的代碼塊僅僅通過順序、選擇和循環(huán)這三種控制結(jié)構(gòu)進(jìn)行連接,并且每一個(gè)代碼塊只有一個(gè)入口和一個(gè)出口,則稱這個(gè)程序是結(jié)構(gòu)化的。1) 順序2) 選擇(單路、雙路、多路、多重)3) 循環(huán)( for、 當(dāng)型循環(huán)、直到型循環(huán)、枚舉)過程設(shè)計(jì)工具程序流程圖N-S 盒圖圖PAD 圖UML 活動(dòng)圖判定樹判定表表偽碼語(yǔ)言
18、語(yǔ)言(要會(huì)畫這些圖,會(huì)根據(jù)偽碼語(yǔ)言轉(zhuǎn)化為上述各種圖,還要掌握幾種圖之間的轉(zhuǎn)換)數(shù)據(jù)的三類邏輯結(jié)構(gòu)1) 順序2) 選擇3) 重復(fù)第五章結(jié)構(gòu)化實(shí)現(xiàn)測(cè)試定義:為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程錯(cuò)誤編寫時(shí)產(chǎn)生的故障運(yùn)行時(shí)發(fā)生的測(cè)試具有破壞性,而其它的環(huán)節(jié)都是建設(shè)性的。但是其破壞時(shí)為了更好的建設(shè),保證質(zhì)量的有效途徑測(cè)試的目標(biāo)(G.Myer )1) 定義:測(cè)試是為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過程2) 好的測(cè)試:好的測(cè)試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試方案3) 成功的測(cè)試:成功的測(cè)試是發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試測(cè)試方案目的一組輸入一組輸出(預(yù)期的結(jié)果)測(cè)試的準(zhǔn)則1) 追溯到需求:所有的測(cè)試都
19、應(yīng)該能追溯到用戶的需求2) 及早計(jì)劃:應(yīng)該在測(cè)試之前的相當(dāng)長(zhǎng)時(shí)間,就指定出測(cè)試計(jì)劃3) 2 、 8 定律:把Pareto 原理應(yīng)用于軟件測(cè)試。Pareto誤中的80% 很可能是由程序中20% 的模塊造成的原理告訴我們,測(cè)試發(fā)現(xiàn)的錯(cuò)4) 從小到大:測(cè)試應(yīng)該從“小模塊”開始,并逐步進(jìn)行“大模塊”測(cè)試5) 不可窮盡:窮舉測(cè)試是不可能的6) 第三方(丙方)測(cè)試:為了達(dá)到最佳的測(cè)試效果,應(yīng)該由獨(dú)立的第三方來從事測(cè)試工作所謂最佳效果,就是指最大可能性發(fā)現(xiàn)錯(cuò)誤的測(cè)試,這也是測(cè)試的基本目標(biāo)黑盒測(cè)試:接口處、功能測(cè)試測(cè)試方法白盒測(cè)試:結(jié)構(gòu)測(cè)試流圖 P110 (要會(huì)根據(jù)程序流程圖轉(zhuǎn)化)體現(xiàn)了程序判斷的節(jié)點(diǎn)白盒測(cè)試
20、技術(shù):1) 邏輯覆蓋2) 路徑覆蓋程序的復(fù)雜度度量(P115 ,要會(huì)根據(jù)流圖,計(jì)算出程序的復(fù)雜度)流圖中的區(qū)域數(shù)= 環(huán)形復(fù)雜度3 種方法流圖中的環(huán)形復(fù)雜度= 流圖中的邊數(shù) 圖中節(jié)點(diǎn)數(shù)+ 2流圖中的環(huán)形復(fù)雜度= 圖中判定節(jié)點(diǎn)的數(shù)目+ 1復(fù)雜:指人的體力和腦力受到挑戰(zhàn)獨(dú)立路徑( P115 )定義:是指至少引入程序的一個(gè)新處理語(yǔ)句集合或一個(gè)新條件的路徑自頂向下找法從左向右逐步增加黑盒測(cè)試技術(shù)(P120 )等價(jià)類劃分邊界值分析錯(cuò)誤預(yù)測(cè)測(cè)試步驟(從小到大)單元子系統(tǒng)系統(tǒng)驗(yàn)收平行運(yùn)行集成測(cè)試一邊運(yùn)行新系統(tǒng),一邊運(yùn)行舊系統(tǒng)集成測(cè)試的策略深度優(yōu)先自頂向下寬度優(yōu)先自底向上軟件的可靠性可靠性:時(shí)間段,在規(guī)定的時(shí)間
21、段內(nèi),成功運(yùn)行程序的概率可用性:時(shí)間點(diǎn),在一個(gè)時(shí)間點(diǎn)上,成功運(yùn)行程序的概率MTTF :Mean Time To Failure,平均無故障時(shí)間MTTR :Mean Time To Repair,平均維修時(shí)間測(cè)試發(fā)現(xiàn) bug質(zhì)量排除 bug可靠性第六章面向?qū)ο蠓椒▽W(xué)導(dǎo)論面向觀點(diǎn)、世界觀、軟件觀System?1) 若干部件的集合2) 部件具有獨(dú)立的功能和邊界3) 部件之間具有相互聯(lián)系,這些聯(lián)系構(gòu)成結(jié)構(gòu)4) 部件間相互作用,構(gòu)成運(yùn)動(dòng)對(duì)象( P151 )在研究或解決問題的過程中關(guān)注的人、事物、概念OO ( Object Oriented,面向?qū)ο螅┢鹪磳W(xué)習(xí)、掌握、運(yùn)用面向?qū)ο蠓椒▽W(xué)的四個(gè)要點(diǎn):面向?qū)ο?/p>
22、=對(duì)象+類 +繼承+通信1) 認(rèn)為客觀世界是由各種對(duì)象組成的,任何事物都是對(duì)象,復(fù)雜的對(duì)象可以由比較簡(jiǎn)單的對(duì)象以某種方式組合而成2) 把所有對(duì)象都劃分成各種對(duì)象類,每個(gè)對(duì)象類都定義了一組數(shù)據(jù)和一組方法。3) 按照子類與父類的關(guān)系,把若干個(gè)對(duì)象類組成一個(gè)層次結(jié)構(gòu)的系統(tǒng)4) 對(duì)象彼此之間僅能通過傳遞消息互相通信面向?qū)ο蠓椒▽W(xué)的優(yōu)點(diǎn)1) 與人類習(xí)慣的思維方法一致2) 穩(wěn)定性好3) 可重用性好4) 較易開發(fā)大型軟件產(chǎn)品5) 可維護(hù)性好面向?qū)ο蟮囊恍└拍?.對(duì)象:是封裝了數(shù)據(jù)結(jié)構(gòu)以及可以施加在這些數(shù)據(jù)結(jié)構(gòu)上的操作的封裝體,以唯一標(biāo)識(shí)它的名字,而且向外界提供一組服務(wù)。這個(gè)封裝體有可2. 類:就是對(duì)具有相同
23、數(shù)據(jù)和相同操作的一組相似對(duì)象的定義3. 實(shí)例:就是有某個(gè)特定的類所描述的一個(gè)具體的對(duì)象4. 消息:就是要求某個(gè)對(duì)象執(zhí)行在定義它的那個(gè)類中所定義的某個(gè)操作的規(guī)格說明書5. 方法:就是對(duì)象所能執(zhí)行的操作,也就是類中所定義的服務(wù)6. 屬性:類中說定義的數(shù)據(jù),它是對(duì)客觀世界實(shí)體所具有的性質(zhì)的抽象7. 封裝:就是把某個(gè)事物包起來,使外界不知道該事物的具體內(nèi)容8. 繼承:是指能夠直接獲取已有的性質(zhì)和特征,而不必重復(fù)定義他們9. 多態(tài)性: 是指子類對(duì)象可以像父類對(duì)象那樣使用, 同樣的消息既可以發(fā)送給父類也可以發(fā)送給子類對(duì)象。10. 重載:函數(shù)重載是指在同一作用域內(nèi)的若干個(gè)參數(shù)特征不同的函數(shù)可以使用相同的函數(shù)
24、名字面向?qū)ο蟮娜N關(guān)系:繼承組成關(guān)聯(lián)父類(這個(gè)箭頭是空心的)子類子類對(duì)象的特點(diǎn):( 1) 以數(shù)據(jù)為中心( 2) 實(shí)現(xiàn)了封裝( 3) 本質(zhì)上具有并行性( 4) 模塊獨(dú)立性好面向?qū)ο蠼#汗δ苣P腿N模型的建模工具:對(duì)象模型:類圖功能模型:用例圖(用況圖)類動(dòng)態(tài)模型:狀態(tài)圖,時(shí)序圖對(duì)象模型動(dòng)態(tài)模型(面向?qū)ο竽P停┟嫦驅(qū)ο蟮慕2襟E:系統(tǒng)觀點(diǎn)啥們UML 的9種圖對(duì)象模型:最基本、最核心、最重要狀態(tài)圖:描述了單一對(duì)象,在其生命周期內(nèi)的變化規(guī)律事件 event瞬間的狀態(tài)時(shí)間段時(shí)序圖:多個(gè)對(duì)象的交互。時(shí)序圖的每個(gè)對(duì)象有各自對(duì)應(yīng)一個(gè)狀態(tài)圖第7&8章九個(gè)圖九個(gè)圖架構(gòu)成中心分析設(shè)計(jì)用況驅(qū)動(dòng)增量與迭代Fo
25、r 人for 計(jì)算機(jī)3型5層(課本的p166 )對(duì)象模型3 型功能模型動(dòng)態(tài)模型自頂向下5 層逐步求精啥們之序面向?qū)ο螅?OOA )的任務(wù)與過程分析:搞清楚、弄明白軟件的需求,并根據(jù)需求建模研究需求識(shí)別對(duì)象建立模型面向?qū)ο蠓治龅牟呗裕喝臀鍖樱鹤皂斚蛳?、逐步求精五層:主題層、類與對(duì)象層、結(jié)構(gòu)層、屬性層、服務(wù)層需求陳述P167用戶提供、表現(xiàn)多樣內(nèi)容:范圍、需求、假設(shè)問題:歧義、矛盾對(duì)策:甲乙共商,原型化需求例子ATM(課本P167 )建立對(duì)象模型類:名詞a kind of關(guān)系:part of? .with?詞法分析屬性:量詞(重量、身高、年齡)、形容詞方法:動(dòng)詞候選UC 矩陣篩選確定user cu
26、stomer優(yōu)化建立動(dòng)態(tài)模型順序圖狀態(tài)圖(多對(duì)象)(單一對(duì)象)需求陳述編寫腳本畫順序圖案例研究:電梯系統(tǒng)(課本的P186 P190 )OOAOODOOP(3型4 圖)( 3 型4 圖)for需求for機(jī)器 /實(shí)現(xiàn)3型 4圖:對(duì)象模型類圖功能模型用例圖動(dòng)態(tài)模型順序圖、狀態(tài)圖OOD (面向?qū)ο笤O(shè)計(jì))準(zhǔn)則:P1921. 模塊化2. 抽象3. 信息隱藏4. 弱耦合5. 強(qiáng)內(nèi)聚6. 可重用啟發(fā)規(guī)則:1. 設(shè)計(jì)結(jié)果應(yīng)該清晰易懂2. 一般 /特殊結(jié)構(gòu)的深度應(yīng)適當(dāng)3. 設(shè)計(jì)簡(jiǎn)單的類4. 使用簡(jiǎn)單的協(xié)議5. 使用簡(jiǎn)單的服務(wù)6. 把設(shè)計(jì)變動(dòng)減至最小第 9 章(老師沒講)第 10 章 UML(P232)(自己看,一
27、定要會(huì)畫9 種圖)第11章計(jì)劃管理:就是通過計(jì)劃、組織和控制等一系列的活動(dòng),合理的配置和使用各種資源,以達(dá)到既定目標(biāo)的過程。軟件項(xiàng)目管理:就是通過計(jì)劃、組織、控制等一系列的活動(dòng),合理的配置和使用各種資源,以便在預(yù)定成本和期限內(nèi)開發(fā)符合客戶需要的軟件的過程(類)工程:大的、復(fù)雜的、由眾多人一起完成的(對(duì)象)項(xiàng)目:一個(gè)具體的工程是項(xiàng)目人財(cái)估量工作量物(代碼行)時(shí)軟件配置:程序、文件、數(shù)據(jù)對(duì)軟件的配置進(jìn)行管理的原因:需求的變更是不可避免的風(fēng)險(xiǎn)( risk ):導(dǎo)致失敗的因素識(shí)別評(píng)估避免估算代碼行:估概預(yù)決代碼行LOCKLOC估算量功能點(diǎn)FP ( functionpoints )FP 技術(shù):(具體的計(jì)算方法P253 )程序量工作量進(jìn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 足球隊(duì)體能力量訓(xùn)練的技巧與策略
- 建筑鋼結(jié)構(gòu)安全管理機(jī)械操作安全課件
- 建設(shè)工程施工招標(biāo)文件編制應(yīng)注意的問題學(xué)習(xí)情境二建設(shè)工程招標(biāo)課件
- 夾心餅干的制作85課件
- 江西陶瓷工藝美術(shù)職業(yè)技術(shù)學(xué)院《樹木學(xué)實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 對(duì)外經(jīng)濟(jì)貿(mào)易大學(xué)《高級(jí)計(jì)算機(jī)網(wǎng)絡(luò)》2023-2024學(xué)年第二學(xué)期期末試卷
- 鄖西縣2025年三下數(shù)學(xué)期末經(jīng)典模擬試題含解析
- 2025年拉薩市六年級(jí)下學(xué)期模擬數(shù)學(xué)試題含解析
- 1.1《開放互動(dòng)的世界》課件- 2024-2025學(xué)年統(tǒng)編版道德與法治九年級(jí)下冊(cè)
- 2025年河南省平頂山市部分學(xué)校五下數(shù)學(xué)期末監(jiān)測(cè)模擬試題含答案
- 天津2025年天津市機(jī)關(guān)后勤事務(wù)服務(wù)中心招聘6人筆試歷年參考題庫(kù)附帶答案詳解
- 2025年天津三源電力集團(tuán)限公司社會(huì)招聘33人高頻重點(diǎn)模擬試卷提升(共500題附帶答案詳解)
- 西安2025年陜西西安音樂學(xué)院專任教師招聘20人筆試歷年參考題庫(kù)附帶答案詳解
- 國(guó)家安全與生態(tài)安全
- 培養(yǎng)自律能力主題班會(huì)
- 中職高教版(2023)語(yǔ)文職業(yè)模塊-第一單元1.2寧夏閩寧鎮(zhèn):昔日干沙灘今日金沙灘【課件】
- 巴厘島旅游流程介紹
- 【物理】牛頓第一定律 2024-2025學(xué)年人教版物理八年級(jí)下冊(cè)
- 嬰幼兒電擊傷實(shí)踐操作張春芳講解
- 2025網(wǎng)格員考試題庫(kù)及參考答案
- 2025年湖南有色金屬職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫(kù)含答案解析
評(píng)論
0/150
提交評(píng)論