




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1.軟件危機(jī)的概念:軟件危機(jī)是指在計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程中所遇到的一系
列嚴(yán)峻的問題。
2.產(chǎn)生軟件危機(jī)的緣由:一方面與軟件本身的特點(diǎn)有關(guān),另一方面也和軟
件開發(fā)與維護(hù)的方法不正確有關(guān)。
3.軟件工程的定義:是指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的一門工程學(xué)科。具體
如下:
開發(fā)進(jìn)度難以估計(jì),開發(fā)質(zhì)量難以衡量
設(shè)計(jì)中的錯(cuò)誤很難維護(hù)
規(guī)模浩大,而且程序困難性將隨著程序規(guī)模的增加而呈指數(shù)上升。
4.怎樣解決軟件危機(jī)?
⑴對軟件要有正確的相識
⑵軟件開發(fā)應(yīng)當(dāng)是一種組織良好、管理嚴(yán)密、各類人員協(xié)同協(xié)作、共同完
成的工程項(xiàng)目。
⑶應(yīng)當(dāng)推廣運(yùn)用在實(shí)踐中總結(jié)出來的開發(fā)軟件的勝利的技術(shù)和方法。
(4).應(yīng)當(dāng)開發(fā)和運(yùn)用更好的軟件工具。
5.可行性探討的任務(wù)?
⑴須要進(jìn)一步分析和澄清問題定義。
⑵導(dǎo)出系統(tǒng)的邏輯模型。
⑶最根木的任務(wù)是對以后的行動(dòng)方針提出建議。
6.需求分析
1.功能需求
這方面的需求指定系統(tǒng)必需供應(yīng)的服務(wù)。通過需求分析應(yīng)當(dāng)劃分出
系統(tǒng)必需完成的全部功能。
2.性能需求
軟件開發(fā)的技術(shù)性指標(biāo)。
例如:存儲容量限制
執(zhí)行速度、響應(yīng)時(shí)間
吞吐量
7.形式化說明技術(shù)
Z語言:形式化的規(guī)格說明語言中,較典型的一種語言。
用Z語言描述的,最簡潔的形式化規(guī)格說明含有四個(gè)部分:
(1)給定的集合,數(shù)據(jù)類型與常數(shù);
(2)狀態(tài)定義;
(3)初始狀態(tài);
(4)操作;
8.總體設(shè)計(jì)
模塊化:采納模塊化原理可以使軟件結(jié)構(gòu)清楚,簡潔設(shè)計(jì)也簡潔閱讀和理
解、測試。
抽象:抽象就是抽出事物的本質(zhì)特性而短暫不考慮它們的細(xì)微環(huán)節(jié)。
逐步求精:逐步求精:為了能集中精力解決主要問題而盡量推遲對問題
細(xì)微環(huán)節(jié)的考慮。
信息隱藏和局部化:該原理有利于提高模塊的內(nèi)聚性。
模塊獨(dú)立:模塊獨(dú)立重要性理由:
第一,有效的模塊化的軟件比較簡潔開發(fā)出來。
其次,獨(dú)立的模塊比較簡潔測試和維護(hù)。
9.具體設(shè)計(jì)
第一章
L軟件危機(jī)的概念:軟件危機(jī)是指在計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程中所遇
到的一系列嚴(yán)峻的問題。
2.產(chǎn)生軟件危機(jī)的緣由:(1)開發(fā)人員方面,對軟件產(chǎn)品缺乏正確相識,
沒有真正理解軟件產(chǎn)品是一個(gè)完整的配置組成。造成開發(fā)中制定安排盲
目、編程草率,不考慮維護(hù)工作的必要性。⑵軟件本身方面,對于計(jì)算
機(jī)系統(tǒng)來說,軟件是邏輯部件,軟件開發(fā)過程沒有統(tǒng)一的、公認(rèn)的方法論
和規(guī)范指導(dǎo),造成軟件維護(hù)困難。(3)尤其是隨著軟件規(guī)模越來越大,困難
程度越來越高,原有軟件開發(fā)方式效率不高、質(zhì)量不能保證、成本過高、研
制周期不易估計(jì)、維護(hù)困難等一系列問題更為突出,技術(shù)的發(fā)展已經(jīng)遠(yuǎn)遠(yuǎn)
不能適應(yīng)社會需求。
〃3.軟件配置的主要包括程序、文文件和數(shù)據(jù)等成分。
4.軟件工程的定義:軟件工程是應(yīng)用計(jì)算機(jī)科學(xué)、數(shù)學(xué)與管理科學(xué)等原理
開發(fā)軟件的工程。它借鑒傳統(tǒng)工程的原則、方法,以提高質(zhì)量,降低成本
為目的。
//5.所謂基準(zhǔn)配置又稱基線配置。
6.通常把在軟件生命周期全過程中運(yùn)用的一整套技術(shù)方法的集合稱為方法
學(xué),也稱為范型
7.軟件工程方法學(xué)包含三個(gè)要素:方法、工具和過程。
8.目前運(yùn)用得最廣泛的軟件工程方法學(xué),分別是傳統(tǒng)方法學(xué)和面對對象方
法學(xué)
9.傳統(tǒng)方法學(xué)也稱為生命周期方法學(xué)或結(jié)構(gòu)化范型
10.面對對象方法學(xué)的四個(gè)要點(diǎn):1.把對象作為融合了數(shù)據(jù)與在數(shù)據(jù)上的
操作行為的統(tǒng)一的軟件構(gòu)件2.把全部對象都劃分成類3.依據(jù)父類(或稱
為基類)與子類(或稱為派生類)的關(guān)系,把若干個(gè)相關(guān)類組成一個(gè)層次
結(jié)構(gòu)的系統(tǒng)(也稱為類等級)。4.對象彼此間僅能通過發(fā)送消息相互聯(lián)系。
1L軟件生命周期:軟件定義(問題定義,可行性探討,需求分析)、軟件
開發(fā)(總體設(shè)計(jì),具體設(shè)計(jì),編碼,單元測試,總體測試)、運(yùn)行維護(hù)(長
久地滿意用戶的須要)
12.最基本的測試是集成測試和驗(yàn)收測試。
13.瀑布模型,快速原型模型,增量模型,螺旋模型,噴泉模型,概念,方
法.優(yōu)缺點(diǎn),區(qū)分。
14.所謂構(gòu)件就是功能清楚的模塊或子系統(tǒng)
15.RUP(Rational統(tǒng)一過程)軟件開發(fā)的生命周期是一個(gè)二維的生命周
期模型
16.“極限”二字的含義是指把好的開發(fā)實(shí)踐運(yùn)用到極致
17.微軟過程把軟件生命周期劃分為成5個(gè)階段:規(guī)劃階段,設(shè)計(jì)階段,
開發(fā)階段,穩(wěn)定階段,發(fā)布階段。
18.面對對象方法=對象+類+繼承+用消息通信
其次章可行性探討
19.可行性探討的目的就是用最小的代價(jià)在盡可能多的時(shí)間內(nèi)確定問題能
否能夠解決。
20.可行性包括:技術(shù)可行性,經(jīng)濟(jì)可行性,操作可行性。
21.系統(tǒng)流程圖是概括地描繪物理系統(tǒng)的傳統(tǒng)工具。它的基本思想是用圖
形符號以黑盒子形式描繪組成系統(tǒng)的每個(gè)部件(程序,文文件,數(shù)據(jù)庫,
人工過程等)o系統(tǒng)流程圖表達(dá)的是數(shù)據(jù)在系統(tǒng)各部件之間流淌的狀況,
而不是對數(shù)據(jù)加工處理的限制過程,因此盡管系統(tǒng)流程圖的某些符號和程
序流程圖的符號形式相同,但是它卻是物理數(shù)據(jù)流程圖而不是程序流程
圖。
22.書庫流圖(DFD)是一種圖形化技術(shù),它描繪信息流和數(shù)據(jù)從輸入移動(dòng)到
輸出的過程中所經(jīng)受的變換。在數(shù)據(jù)流程圖中沒有任何具體的物理部件,
它只描繪數(shù)據(jù)在軟件中流淌和被處理的邏輯過程。數(shù)據(jù)流程圖是系統(tǒng)邏輯
功能的圖形表示。
23.用系統(tǒng)流程圖描繪一個(gè)系統(tǒng)時(shí),系統(tǒng)的功能和實(shí)現(xiàn)每個(gè)功能的具體方
案是混在一起的。
24.有數(shù)據(jù)元素組成的數(shù)據(jù)的方式只有下述3種基本類型:依次(即以確
定次序連接兩個(gè)或多個(gè)重量)。選擇即從兩個(gè)或多個(gè)可能的元素中選取一
個(gè)重復(fù)即把指定的重量重復(fù)零次或多次。
笫三章
25.訪談?dòng)袃煞N基本形式,分別是正式的和非正式的訪談
26.所謂情景分析就是對用戶將來運(yùn)用目標(biāo)系統(tǒng)解決某個(gè)具體問題的方法
和結(jié)果進(jìn)行分析
27.結(jié)構(gòu)化分析方法就是面對數(shù)據(jù)流自頂向下逐步求精進(jìn)行需求分析的方
法。
28.運(yùn)用簡易的應(yīng)用規(guī)格說明技術(shù)分析需求的典型過程:(總結(jié)出來)
29.快速原型就是快速建立起來的旨在演示目標(biāo)系統(tǒng)主要功能的可運(yùn)行的
程序。
30.所謂模型就是為了理解事物而對事物作出的一種抽象,是對事物的一
種無岐義的書面描述。
31.需求分析過程應(yīng)當(dāng)建立3種模型,它們分別是數(shù)據(jù)模型,功能模型,
行為模型.
32.概念性數(shù)據(jù)模型是一種面對問題的數(shù)據(jù)模型,是依據(jù)用戶的觀點(diǎn)對數(shù)
據(jù)建立的模型
33.數(shù)據(jù)對象是對軟件必需理解的符合信息的抽象。
34.數(shù)據(jù)對象彼此之間相互連接的方式稱為聯(lián)系,也稱為關(guān)系。聯(lián)系可分
為3種類型:一對一聯(lián)系,一對多聯(lián)系,多對多聯(lián)系。
35.狀態(tài)時(shí)任何可以被視察到的系統(tǒng)行為模式,一個(gè)狀態(tài)代表系統(tǒng)的一種
行為模式。
36.事務(wù)就是引起系統(tǒng)做動(dòng)作或(和)轉(zhuǎn)換狀態(tài)的限制信息。
37.IPO圖是輸入,處理,輸出圖的簡稱。
38.軟件的驗(yàn)證:一樣性,完整性,現(xiàn)實(shí)性,有效性
第五章
42.總體設(shè)計(jì)過程通常由兩個(gè)主要階段組成:系統(tǒng)設(shè)計(jì)階段,確定系統(tǒng)的
具體實(shí)現(xiàn)方案;結(jié)構(gòu)設(shè)計(jì)階段,確定軟件結(jié)構(gòu)。
43.模塊是由邊界元素限定的相鄰程序元素(例如,數(shù)據(jù)說明,可執(zhí)行的
語句)的序列。
44.抽象就是抽出事物的本質(zhì)特性而短暫不考慮它們的細(xì)微環(huán)節(jié)。
45.逐步求精定義:為了能集中精力解決主要問題而盡量推遲對問題細(xì)微
環(huán)節(jié)的考慮。
46.抽象程序?qū)Τ橄蟮臄?shù)據(jù)進(jìn)行某些特定的運(yùn)算并用某些合適的記號(可
能是自然語言)來表示。
47.信息隱藏,信息隱藏的原理,
48.局部化就是把一些關(guān)系親密的軟件元素物理的放得彼此靠近。
49.耦合是對一個(gè)軟件結(jié)構(gòu)內(nèi)不同模塊之間互連程度的度量。
50.數(shù)據(jù)耦合是低耦合,限制耦合式中等程度的耦合,最高程度的耦合式
內(nèi)容耦合。
51.假如一個(gè)模塊完成一組任務(wù),這些任務(wù)彼此間即使有關(guān)系,關(guān)系也是
很松散的,就叫做偶然內(nèi)聚。
52.中內(nèi)聚主要有兩類:假如一個(gè)模塊內(nèi)的處理元素是相關(guān)的,而且必需
以特定次序執(zhí)行,則稱為過程內(nèi)聚。
53.高內(nèi)聚也有兩類:假如一個(gè)模塊內(nèi)的處理元素和同一個(gè)功能親密相關(guān),
而且這些處理必需依次執(zhí)行,則稱為依次內(nèi)聚。深度表示軟件結(jié)構(gòu)中限制
的層數(shù),它往往能粗略的標(biāo)記一個(gè)系統(tǒng)的大小和困難程度。
54.寬度是軟件結(jié)構(gòu)內(nèi)同一個(gè)層次上的模塊總數(shù)的最大值。
55.扇出事一個(gè)模塊干脆限制(調(diào)用)的模塊數(shù)目。
56.一個(gè)模塊的扇入表明有多少個(gè)上級模塊干脆調(diào)用它。
57.設(shè)計(jì)的很好的軟件結(jié)構(gòu)通常頂層扇出比較高,中層扇出比較少,底層
扇入到公共的好用模塊中去(底層模塊有高扇出)
58.模塊的作用域應(yīng)當(dāng)在限制域之內(nèi)(2種方法)?????
59.面對數(shù)據(jù)流的設(shè)計(jì)方法把信息流映像成軟件成結(jié)構(gòu),信息流的類型確
定了映射的方法。信息流有兩種類型:變換流,事務(wù)流。
60.總體設(shè)計(jì)階段的基本目的是用比較抽象概括的方式確定系統(tǒng)如何完成
預(yù)定的任務(wù),也就是說,應(yīng)當(dāng)確定系統(tǒng)的物理配置方案。并且進(jìn)而確定組
成系統(tǒng)的每個(gè)程序的結(jié)構(gòu)。
61.在進(jìn)行軟件結(jié)構(gòu)設(shè)計(jì)時(shí)應(yīng)當(dāng)遵循的最主要的原理是模塊獨(dú)立原理。
62.
第六章
63.結(jié)構(gòu)程序設(shè)計(jì)的經(jīng)典定義:假如一個(gè)程序的代碼僅僅通過依次,選擇
和循環(huán)這3種基本結(jié)構(gòu)進(jìn)行連接,并且每個(gè)代碼塊只有一個(gè)入口和一個(gè)出
口,則稱這個(gè)程序是結(jié)構(gòu)化的。
64.系統(tǒng)響應(yīng)時(shí)間指從用戶完成某個(gè)限制動(dòng)作(例如,按回車鍵或單擊鼠
標(biāo)),到軟件給出預(yù)期的響應(yīng)(輸出信息或動(dòng)作)之間的這段時(shí)間。
65.系統(tǒng)響應(yīng)時(shí)間有兩個(gè)重要的屬性:長度和易變性。
66.易變性指系統(tǒng)響應(yīng)時(shí)間相對于平均響應(yīng)時(shí)間的偏差。
67.一般交互指南涉與信息顯示,數(shù)據(jù)輸入和系統(tǒng)整體限制。
68.過程涉與的工具:程序流程圖,盒圖,PAD圖,判定表,判定樹
69.PDL作為一種設(shè)計(jì)工具有如下一些特點(diǎn)(要求看懂偽碼)
第七章
70.通常把編碼和測試統(tǒng)稱為實(shí)現(xiàn)。
71.編碼和單元測試屬于軟件生命周期的同一個(gè)階段。
72.編碼的標(biāo)準(zhǔn):1.系統(tǒng)用戶的要求2.可以運(yùn)用的編譯程序3.可以得到的
軟件工具4.工程規(guī)模5.程序員的學(xué)問6.軟件可移植性要求7.軟件的應(yīng)用
領(lǐng)域
73.所謂程序內(nèi)部的文文件包括恰當(dāng)?shù)臉?biāo)識符、適當(dāng)?shù)淖⑨尯统绦虻囊曈X
組織等。
74.當(dāng)多個(gè)變量名在一個(gè)語句中說明時(shí),應(yīng)當(dāng)按字母依次排列這些變量。
75.效率主要指處理機(jī)時(shí)間和內(nèi)存容量兩個(gè)方面。
76.在大型計(jì)算機(jī)中必需考慮操作系統(tǒng)頁式調(diào)度的特點(diǎn),一般說來,運(yùn)用
能保持功能域的結(jié)構(gòu)化限制結(jié)構(gòu),是提高效率的好方法。
77.二級內(nèi)存的輸入輸出應(yīng)當(dāng)以信息組為單位進(jìn)行。
78.測試階段的根本目標(biāo)是盡可能地發(fā)覺并解除軟件中潛藏的錯(cuò)誤,最終
把一個(gè)高質(zhì)量的軟件系統(tǒng)交給用戶運(yùn)用。
79.軟件測試的目標(biāo):1.測試是為了發(fā)覺程序中的錯(cuò)誤而執(zhí)行程序的過程
2.好的測試方案是發(fā)覺了至今為止發(fā)覺的錯(cuò)誤的測試3.勝利的測試是發(fā)
覺了至今為止尚未發(fā)覺的錯(cuò)誤的測試。
80.測試的正確定義是“為了發(fā)覺程序中的錯(cuò)誤而執(zhí)行程序的過程”。
第八章
81.軟件工程的主要目標(biāo)就是要提高軟件的可維護(hù)性,削減軟件維護(hù)所須
要的工作量,降低軟件系統(tǒng)的總成本。
82.所謂軟件維護(hù)就是在軟件應(yīng)經(jīng)交付運(yùn)用之后,為了改正錯(cuò)誤或滿意新
的須要而修改軟件的過程。
83.四種維護(hù)的定義:1.改正性維護(hù)2.適應(yīng)性維護(hù)3.完善性維護(hù)4.預(yù)防性
維護(hù)。P189
84.用于維護(hù)工作的勞動(dòng)可以分成生產(chǎn)性活動(dòng)和非生產(chǎn)性活動(dòng)°
85.每個(gè)維護(hù)要求都通過維護(hù)管理員轉(zhuǎn)交給熟識該產(chǎn)品的系統(tǒng)管理員去評
價(jià)。
86.適應(yīng)性維護(hù)和完善性維護(hù)的要求沿著相同的事務(wù)流通路前進(jìn)。
87.當(dāng)發(fā)生惡性的軟件問題時(shí),就出現(xiàn)所謂的“救火”維護(hù)要求。
88..評價(jià)維護(hù)活動(dòng):1.每次程序運(yùn)行平均失效的次數(shù)2、用于每一類維護(hù)
活動(dòng)的總?cè)藭r(shí)數(shù)。3.平均每個(gè)程序、每種語言、每種維護(hù)類型所作的程序
變動(dòng)數(shù)4.維護(hù)過程中增加或刪除一種源語句平均花費(fèi)的人時(shí)數(shù)5.維護(hù)每
種語言平均花費(fèi)的人時(shí)數(shù)6.一張維護(hù)要求表的平均周轉(zhuǎn)時(shí)間7.不同維護(hù)
類型所占的百分比。
89.可以把軟件的可維護(hù)性定性的定義為:維護(hù)人員理解,改正,改動(dòng)或
改進(jìn)這個(gè)軟件的難易程度。
90.確定軟件可維護(hù)性的因素:1.可理解性可測試性可修改性可移植性
可重用性
91.所謂重用是指同一事物不做修改或稍加改動(dòng)就在不同環(huán)境中多次重復(fù)
運(yùn)用。
92.軟件系統(tǒng)的文文件可以分為用戶文文件和系統(tǒng)文文件兩類。用戶文文
件主要描述系統(tǒng)功能和運(yùn)用方法,并不關(guān)切這些功能是怎樣實(shí)現(xiàn)的;系統(tǒng)
文文件描述系統(tǒng)發(fā)設(shè)計(jì)、實(shí)現(xiàn)和測試等各方面的內(nèi)容預(yù)防性維護(hù)方法是由
Miller提出來的,他把這種方法定義為“把今日的方法學(xué)應(yīng)用到昨天的系
統(tǒng)上,以支持明天的需求
第九章面對對象方法學(xué)引論
93.使描述問題的‘問題空間'(也稱為問題域)與實(shí)現(xiàn)解法的解空間(也
稱為求解域)在結(jié)構(gòu)上盡可能一樣。
94.人們把計(jì)算機(jī)中的實(shí)體稱為解空間對象。
95.對對象施加的操作就是該對象的行為。
96.面對對象方法學(xué)的優(yōu)點(diǎn):1.與人類習(xí)慣的思維方法一樣2.穩(wěn)定性好3.
可重用性好4.輕易開發(fā)大型軟件軟件產(chǎn)品5.可維護(hù)性好
97.面對對象方法學(xué)的基本原則是依據(jù)人類習(xí)慣的思維方法建立問題域的
模型,開發(fā)出盡可能直觀、自然地表現(xiàn)求解的軟件系統(tǒng)。
98.傳統(tǒng)的軟件重用技術(shù)是利用標(biāo)準(zhǔn)函數(shù)庫。
99.對象的概念:在應(yīng)用領(lǐng)域中有意義的、與所要解決的問題有關(guān)系的任
何事物都可以作為對象,它既可以是具體的物理實(shí)體的抽象,也可以是認(rèn)
為的概念,或者是任何有明確邊界和意義的東西。
1。0.通常把對象的操作稱為服務(wù)或方法。
101.對象的定義:定義1.對象是具有相同狀態(tài)的一組操作的集合定義2.
對象是對問題域中某個(gè)東西的抽象,這種抽象反映了系統(tǒng)保存有關(guān)這個(gè)東
西的信息或它交互的實(shí)力,也就是說,對象是對屬性值和操作的封裝。
1。2.對象是封裝可數(shù)據(jù)結(jié)構(gòu)與可以施加在這些數(shù)據(jù)結(jié)構(gòu)上的操作的封裝
體
103.對象中的數(shù)據(jù)表示對象的狀態(tài),一個(gè)對象的狀態(tài)只能由該對象的操作
來變更。
104.對象的特點(diǎn):1.以資料為中心2.對像是主動(dòng)的3.實(shí)現(xiàn)了數(shù)據(jù)封裝4.
本質(zhì)上具有并行性5.模塊獨(dú)立性好
1。5.類是具有相同屬性和行為的一個(gè)或多個(gè)對象的描述。
1。6.類是支持繼承的抽象的抽象數(shù)據(jù)類型,而對象就是類的實(shí)例。
1。7.實(shí)例就是由某個(gè)特定的類型所描述的一個(gè)具體的對象。
1。8.消息就是要求某個(gè)對象執(zhí)行在定義它的那個(gè)類中所定義的某個(gè)操作
的規(guī)格說明
1。9.消息的3個(gè)組成部分:1.接收消息的對象2.消息選擇符(也稱為消息
名)3.零個(gè)或多個(gè)變元
110.方法就是對象所能執(zhí)行的操作,也就是類中所定義的服務(wù),方法描述
了對象執(zhí)行操作的算法,響應(yīng)消息的方法,在C++語言中把方法稱為成員
函數(shù)。
111.屬性就是類中所定義的數(shù)據(jù),它是對客觀世界實(shí)體所具有的性質(zhì)的抽
象。類中的每個(gè)實(shí)例都有自己特有的屬性值。在C++語言中把屬性稱為數(shù)
據(jù)成員。
112.所謂封裝就是把某個(gè)事物包起來,使外界不知道該事物的具體內(nèi)容。
113.對象具有封裝性的條件:1.有一個(gè)清矮地邊界2.有確定的界面(即協(xié)
議)3.受愛護(hù)的內(nèi)部實(shí)現(xiàn)。
114.對象類實(shí)質(zhì)上是抽象數(shù)據(jù)類型。
115.繼承是指能夠干脆獲得已有的性質(zhì)和特征,而不必重復(fù)定義它們,在
面對對象的軟件技術(shù)中,繼承是子類自動(dòng)地共享基類中定義的數(shù)據(jù)和方法
的機(jī)制。繼承具有傳遞性
116.多態(tài)性是指子類對象可以像父類對象那樣運(yùn)用,同樣的消息既可以發(fā)
送給父類對象也可以發(fā)送給子類對象。也就是說,在類等級的不同層次中
可以共享(公用)一個(gè)行為(方法)的名字,然而不同層次中的每個(gè)類卻
各自按自己的需求來實(shí)現(xiàn)這個(gè)行為。
117.在C++語言中,多態(tài)性事通過虛函數(shù)來實(shí)現(xiàn)的。虛函數(shù)機(jī)制使得程序
員能在一個(gè)類等級中運(yùn)用相同函數(shù)的多個(gè)不同版本,在運(yùn)行時(shí)刻才依據(jù)接
收消息的對象所屬于的類,確定究竟執(zhí)行哪個(gè)特定的版本,這稱為動(dòng)態(tài)聯(lián)
編,也叫滯后聯(lián)編。
118.函數(shù)重載是指在同一作用域內(nèi)的若干參數(shù)特征不同的函數(shù)可以運(yùn)用
相同的函數(shù)名字;運(yùn)算符重載是指同一運(yùn)算符可以施加與不同類型的操作
數(shù)上面。
119.在C++語言中函數(shù)重載時(shí)通過靜態(tài)聯(lián)編(也叫從前聯(lián)編)實(shí)現(xiàn)的。
120.通常須要建立3種形式的模型,它們分別是描述系統(tǒng)數(shù)據(jù)結(jié)構(gòu)的對象
模型,描述系統(tǒng)限制結(jié)構(gòu)的動(dòng)態(tài)模型和描述系統(tǒng)功能的功能模型。
121.類圖描述類與類之間的靜態(tài)關(guān)系。
123.類的屬性中還可以有一種能夠該類全部對象共享的屬性,稱為類的作
用域?qū)傩?,也稱為類變數(shù).
124.關(guān)聯(lián)表示兩個(gè)類的對象之間存在某種語義上的聯(lián)系。
125.關(guān)聯(lián):一般關(guān)聯(lián),關(guān)聯(lián)的角色,限定關(guān)聯(lián),關(guān)聯(lián)類P219
126.聚集也稱為聚合,是關(guān)聯(lián)的特例。聚集表示類與類之間的關(guān)系式整體
與部分的關(guān)系。
127.除了一般聚集之外,還有特別的聚集關(guān)系,分別是共享聚集和組合聚
集。
128.沒有具體對象的類稱為抽象類。抽象類通常作為父類,用于描述其它
類(子類)的公共屬性和行為。
129.多重繼承指的是,一個(gè)子類可以同時(shí)多次繼承同一個(gè)上層基類
130.與多重繼承相反的是不相交繼承,即一個(gè)子類不能多次繼承同一個(gè)基
類
131完全繼承指的是父類的全部子類都已在類的圖中窮舉出來了。
132不完全繼承與完全繼承恰好相反,父類的子類并沒有都窮舉出來,隨
著對問題理解的深化,可不斷補(bǔ)充和維護(hù)。
133依靠和細(xì)化:1.依靠關(guān)系2.細(xì)化關(guān)系
134.動(dòng)態(tài)模型它規(guī)定了對象模型中的對象的合法變更序列。
136.所謂狀態(tài)是對對象屬性值的一種抽象
137.一個(gè)觸發(fā)行為稱作一個(gè)事務(wù)
138.一個(gè)事務(wù)分開兩個(gè)狀態(tài),一個(gè)狀態(tài)隔開兩個(gè)事務(wù),事務(wù)表示時(shí)刻,狀
態(tài)代表時(shí)間間隔。
139.功能模型有一組數(shù)據(jù)流程圖組成。
140.一幅用例圖包含的模型元素有系統(tǒng)、行為者、用力與用例之間的關(guān)系。
141.用例的定義:一個(gè)用例是可以被行為者感受到的、系統(tǒng)的一個(gè)完整的
功能。
142.行為者指與系統(tǒng)交互的人或其它系統(tǒng),它代表外部實(shí)體。
143.行為者代表一種角色,而不是某個(gè)具體的人或物。
144.可以把行為者分成主行為者和副行為者,還可以分成主動(dòng)行為者和被
動(dòng)行為者。
145.UML用例之間主要有擴(kuò)展和運(yùn)用兩種關(guān)系,它們是泛化關(guān)系的兩種
不同形式。
第十章
146.面對對象分析(OOA)的關(guān)鍵是識別出問題域內(nèi)的類和對象,并分
析它們相互間的關(guān)系,最終建立起問題域的簡潔、精確、可理解的正確模
型。
146.一個(gè)用例必需至少與一個(gè)行為者相關(guān)聯(lián)。
147.面對對象分析,就是抽取和整理用戶需求并建立問題域精確模型的過
程。
148.面對對象建模型得到的模型包含形同的3個(gè)要素,即靜態(tài)結(jié)構(gòu)(對象
模型)、交互次序(動(dòng)態(tài)模型)和數(shù)據(jù)變換(功能模型)。
149.困難問題(大型系統(tǒng))的對象模型通常由下述5個(gè)層次組成:主題層、
類與對象層、結(jié)構(gòu)層、屬性層、服務(wù)層。
150.建立對象模型的5項(xiàng)主要活動(dòng):找出類與對象,識別結(jié)構(gòu),識別主題,
定義屬性,定義服務(wù)。
151.需求陳述的內(nèi)容包括:問題范圍,功能需求,性能需求,應(yīng)用環(huán)境與
假設(shè)條件等。
152.面對對象分析首要的工作,是建立問題域的對象模型。這個(gè)模型描述
了現(xiàn)實(shí)世界中的“類與對象”以與它們之間的關(guān)系,表示了目標(biāo)系統(tǒng)的靜
態(tài)數(shù)據(jù)結(jié)構(gòu)°
153.典型的工作步驟是:首先確定對象類和關(guān)聯(lián)(因?yàn)樗鼈冇绊懴到y(tǒng)整體
結(jié)構(gòu)和解決問題的方法),對于大型困難問題還要進(jìn)一步劃分出若干主題;
然后給類和關(guān)聯(lián)增加屬性,以進(jìn)一步描述它們;接下來利用適當(dāng)?shù)睦^承關(guān)
系進(jìn)一步合并和組織類。而對類中操作的最終確定,則須要等到建立了動(dòng)
態(tài)模型和功能模型之后,因?yàn)檫@兩個(gè)子模型更精確地描述了對類中供應(yīng)的
服務(wù)的需求。
154.非正式分析:這種分析方法以用自然語言書寫的需求陳述為依據(jù),把
陳述中的名詞作為類與對象的候選者,用形容詞作為確定屬性的線索,把
動(dòng)詞作為服務(wù)(操作)的候選者。
155.本身具有屬性需獨(dú)立存在的操作,應(yīng)當(dāng)作為類與對象。
156.可以運(yùn)用兩種建立繼承(即泛化)關(guān)系:自底向上自頂向下
157.建立動(dòng)態(tài)模型的第一步,是編寫典型交互行為的腳本。
158.腳本是指系統(tǒng)在某一執(zhí)行時(shí)間期間內(nèi)的交互過程,以便對目標(biāo)系統(tǒng)的
行為有更具體的相識。
159.功能模型表明白系統(tǒng)中數(shù)據(jù)之間的依靠關(guān)系,以與有關(guān)的數(shù)據(jù)處理功
能,它由一組數(shù)據(jù)流程圖組成。
160.應(yīng)當(dāng)細(xì)致比照狀態(tài)圖和數(shù)據(jù)流程圖,以便更正確地確定對象應(yīng)當(dāng)供應(yīng)
的服務(wù)。
161.盡量利用繼承機(jī)制以削減所須要定義的服務(wù)數(shù)目。
第十一章面對對象設(shè)計(jì)
162.設(shè)計(jì)則是把分析階段得到的需求轉(zhuǎn)變成符合成本和質(zhì)量要求的,抽象
的系統(tǒng)實(shí)現(xiàn)方案的過程。
163.系統(tǒng)設(shè)計(jì)確定實(shí)現(xiàn)系統(tǒng)的策略和目標(biāo)系統(tǒng)系統(tǒng)的高層結(jié)構(gòu)。對象設(shè)計(jì)
確定解空間中的類,關(guān)聯(lián),接口形式與實(shí)現(xiàn)服務(wù)的算法。
164.所謂優(yōu)秀設(shè)計(jì),就是權(quán)衡了各種因素,從而使得系統(tǒng)在其整個(gè)生命周
期中的總開銷最小的設(shè)計(jì)。
165.面對對象設(shè)計(jì)準(zhǔn)則:1.模塊化2.抽象3.信息隱藏4.弱耦合5.強(qiáng)內(nèi)聚
6.可重用
166.在面對對象設(shè)計(jì)中存在下述3種內(nèi)聚;1.服務(wù)內(nèi)聚2.類內(nèi)聚3.一般-
特別內(nèi)聚
167.重用有兩個(gè)方面的含義:一是盡量運(yùn)用已有的類(包括開發(fā)環(huán)境供應(yīng)
的類庫,與以往開發(fā)類似系統(tǒng)時(shí)創(chuàng)建的類),二是假如的確須要?jiǎng)?chuàng)建新類,
則在設(shè)計(jì)這些新類的協(xié)議時(shí),應(yīng)當(dāng)考慮將來的可重復(fù)運(yùn)用性。
168.保證設(shè)計(jì)結(jié)果清楚易懂的主要因素如%1.用詞一樣2.運(yùn)用已有的協(xié)
議3.削減消息模式的數(shù)目4.避開模糊的定義
169.一個(gè)類供應(yīng)的公共服務(wù)不超過7個(gè)
170.消息中參數(shù)不要超過3個(gè)
171.一般只有3-5行源程序語句。
172.通常把類屬的體系結(jié)構(gòu)模板稱為領(lǐng)域體系結(jié)構(gòu)。
173.面對對象技術(shù)中的“類”,是比較志向的可重用軟構(gòu)件,不妨稱之為
類構(gòu)件。類構(gòu)件有3種重用方式,分別是實(shí)例重用、繼承重用、和多態(tài)重
用
174.可重用軟構(gòu)件應(yīng)具備的特點(diǎn):1.模塊獨(dú)立強(qiáng)2.具有高度可塑性3.接
口清楚,簡明、牢靠。
175.轉(zhuǎn)換接口,是為了克服與表示方法、數(shù)據(jù)結(jié)構(gòu)或硬件特點(diǎn)相關(guān)的操作
給重用帶來的困難而設(shè)計(jì)的,這類接口是每個(gè)類構(gòu)件在重用時(shí)都必需重新
定義的服務(wù)的集合。當(dāng)運(yùn)用C++語言編程時(shí),應(yīng)當(dāng)在根類(或適當(dāng)?shù)幕悾?/p>
中,把屬于轉(zhuǎn)換接口的服務(wù)定義為純虛函數(shù)。
176.當(dāng)用C++語言實(shí)現(xiàn)時(shí),在基類中把這類服務(wù)定義為一般的虛函數(shù)。
177.
178.系統(tǒng)的主要組成部分稱為子系統(tǒng)
179.子系統(tǒng)的數(shù)目應(yīng)當(dāng)與系統(tǒng)規(guī)?;酒ヅ?。
180.子系統(tǒng)之間的兩種交互方式:客戶-供貨商關(guān)系同等伙伴關(guān)系
181.層次結(jié)構(gòu)又可以進(jìn)一步劃分成兩種模式:封閉式和開放式。
182.窄菱模式,闊菱模式P271
183.所謂吩咐層次,實(shí)質(zhì)上是用過程抽象機(jī)制組織起來的、可供選用的服
務(wù)的表示。
184.所謂限制線,是一條編輯狀態(tài)圖集合的路徑,在這條路徑上每次只有
一個(gè)對象是活動(dòng)的。在計(jì)算機(jī)系統(tǒng)中用任務(wù)實(shí)現(xiàn)限制線,一般認(rèn)為是進(jìn)程
的別名。通常把多個(gè)任務(wù)的并發(fā)執(zhí)行稱為多任務(wù)。
185.事務(wù)通常是表明某些數(shù)據(jù)到達(dá)的信號。
186.時(shí)間驅(qū)動(dòng)型任務(wù)的工作過程如下:任務(wù)設(shè)置了喚醒時(shí)間后進(jìn)入睡眠狀
態(tài);任務(wù)睡眠(不消耗處理器時(shí)間),等待來自系統(tǒng)的中斷;一旦接收到
這種中斷,任務(wù)就被喚醒并做他的工作,通知有關(guān)的對象,然后該任務(wù)又
回到睡眠狀態(tài)。
187.設(shè)計(jì)者必需通過計(jì)算系統(tǒng)載荷(即每秒處理的業(yè)務(wù)數(shù)與處理一個(gè)業(yè)務(wù)
所花費(fèi)的時(shí)間),來估算所須要的CPU(或其它固件)的處理實(shí)力。
188.運(yùn)用硬件實(shí)現(xiàn)某些子系統(tǒng)的主要緣由:1.現(xiàn)有的硬件完全能滿意某些
方面的需求2.專用硬件比通用的CPU性能更高。
189.功能模型指明白系統(tǒng)必需供應(yīng)的服務(wù)。
190.通過某種運(yùn)算而從其它數(shù)據(jù)派生出來的數(shù)據(jù),是一種冗余數(shù)據(jù)。
191.托付:把一類對象作為另一類對象的屬性,從而在兩類對象間建立組
合關(guān)系
第十二章
192.面對對象實(shí)現(xiàn)主要包括兩項(xiàng)工作:把面對對象設(shè)計(jì)結(jié)果翻譯成用某種
程序語言書寫的面對對象程序;測試并調(diào)試面對對象的程序。
193.全部面對對象語言都允許用戶動(dòng)態(tài)創(chuàng)建對象,并且可以用指針引用動(dòng)
態(tài)創(chuàng)建的對象。
194.一般說來,有兩種實(shí)現(xiàn)方法,分別運(yùn)用指針和獨(dú)立的關(guān)聯(lián)對象實(shí)現(xiàn)整
體-部分結(jié)構(gòu)。
195.通常運(yùn)用強(qiáng)類型編譯型語言開發(fā)軟件產(chǎn)品,運(yùn)用弱類型說明型語言快
速開發(fā)原型。
196.所謂參數(shù)化類,就是運(yùn)用一個(gè)或多個(gè)類型去參數(shù)化一個(gè)類的機(jī)制,
197.至少應(yīng)當(dāng)包括下列一些基本的軟件工具:編輯程序,編譯程序或說明
程序,閱讀工具,調(diào)試器等。
198.在開發(fā)大型系統(tǒng)的時(shí)候,須要有系統(tǒng)構(gòu)造工具和變動(dòng)限制工具。
199.提高可重用性的主要準(zhǔn)側(cè):1.提高方法的內(nèi)聚2.減小
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 行政審批改革中的法律分析試題與答案
- 主管護(hù)師考試要點(diǎn)試題及答案
- 2025年主管護(hù)師考試建議試題及答案
- 行政管理在危機(jī)中的應(yīng)對策略試題及答案
- 經(jīng)濟(jì)法概論考試經(jīng)驗(yàn)與試題及答案
- 如何有效培訓(xùn)新入職藥師試題及答案
- 護(hù)理職場人際關(guān)系處理試題及答案
- 中層管理者的角色認(rèn)知與定位課件
- 文化自覺的試題及答案
- 前沿研究助力2025年執(zhí)業(yè)藥師試題及答案
- 保險(xiǎn)行業(yè)保險(xiǎn)理賠風(fēng)險(xiǎn)管理方案
- 外研版英語三年級下冊期中測試卷 (4)及答案
- 快速充電過程中的能量回收技術(shù)研究
- 2024年中國窩溝封閉劑市場調(diào)查研究報(bào)告
- DB5329∕T 113-2024 漾濞泡核桃機(jī)械化初加工技術(shù)規(guī)范
- 大學(xué)生創(chuàng)新創(chuàng)業(yè)基礎(chǔ)學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 沉浸式學(xué)習(xí)讓你學(xué)習(xí)更高效課件高二下學(xué)期高效學(xué)習(xí)主題班會
- 國家開放大學(xué)《管理信息系統(tǒng)》大作業(yè)參考答案
- TCAICC 001-2024 張家界莓茶質(zhì)量等級評價(jià)
- 人教版一下數(shù)學(xué)克的認(rèn)識公開課課件
- 走進(jìn)重高-培優(yōu)講義-數(shù)學(xué)-八年級-上冊-(浙教版)
評論
0/150
提交評論