軟件工程總結(jié)
軟件工程總結(jié)
軟件工程的定義1:軟件工程是將系統(tǒng)化的,規(guī)范化的,可度量的方法應(yīng)用于軟件的開發(fā),運(yùn)行和維護(hù)過程,即將工程化應(yīng)用于軟件中的方法的研究。
軟件工程的定義2:開發(fā)運(yùn)行,維護(hù)和修復(fù)軟件的工程方法。
軟檢策略思想:軟件復(fù)用,分而治之,優(yōu)化折中。
軟件的生命周期:軟件生命周期是指一個(gè)計(jì)算機(jī)軟件從功能確定,設(shè)計(jì),到開發(fā)成功投入使用,并在使用中不斷地修改,增補(bǔ)和完善,直到停止該軟件使用的全過程。
它包括制定計(jì)劃(可行性與計(jì)劃研究),需求分析,設(shè)計(jì),程序編碼(實(shí)現(xiàn)),測試及運(yùn)行維護(hù)6個(gè)階段。
軟件開發(fā)模型:瀑布模型,快速原始模型,增量模型,螺旋模型,噴泉模型,組件復(fù)用模型。
軟件開發(fā)過程:
(1)定義;
。2)開發(fā);
。3)驗(yàn)證;
。4)維護(hù)。
軟件開發(fā)的基本方法:傳統(tǒng)的結(jié)構(gòu)化方法,面向?qū)ο蟮姆椒ā?/p>
可行性研究的主要任務(wù):
可行性研究的主要任務(wù)不是具體解決系統(tǒng)中的問題,而是以最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定問題是否值得解決,是否能夠解決。
可行性研究主要包括以下幾個(gè)方面:
1,技術(shù)可行性(風(fēng)險(xiǎn)分析,資源分析和技術(shù)分析);
2,經(jīng)濟(jì)可行性(成本-效益分析);
3,社會(huì)可行性(社會(huì)可行性是指開發(fā)后的系統(tǒng)能否得到社會(huì)的認(rèn)可)
系統(tǒng)模型:物理(框圖),邏輯(流程圖);
系統(tǒng)流程圖在可行性分析階段使用。
成本—效益分析:
成本—效益分析的目的是從經(jīng)濟(jì)角度來評價(jià)開發(fā)一個(gè)新的軟件項(xiàng)目是否可行。
系統(tǒng)的成本包括系統(tǒng)的開發(fā)陳本與運(yùn)營成本。
系統(tǒng)成本包括:
。1)硬件成本;
。2)系統(tǒng)軟件成本;
。3)軟件開發(fā)成本;
。4)施工成本;
(5)用戶培訓(xùn)費(fèi)用;
。6)不可預(yù)見費(fèi)用。
系統(tǒng)的運(yùn)營成本是指發(fā)生在軟件生命周期內(nèi)維持系統(tǒng)運(yùn)行的費(fèi)用,以每年的花費(fèi)量計(jì)算。
它包括:
。1)人員費(fèi)用;
。2)網(wǎng)路使用費(fèi)用;
。3)維修費(fèi)用;
。4)消耗品費(fèi)用。
需求分析的任務(wù)是理解和表達(dá)用戶的需求,描述軟件的功能和性能,確定軟件設(shè)計(jì)的限制和軟件同其他系統(tǒng)元素的借口細(xì)節(jié),定義軟件的其他有效性需求。
數(shù)據(jù)流圖在需求分析階段
ER模型包含“實(shí)體”,“聯(lián)系”和“屬性”三個(gè)階段。
在ER圖中用矩形方框代表實(shí)體
在ER圖中用菱形方框代表聯(lián)系。
在ER圖中用橢圓或圓角矩形表示屬性。
層次框圖是用樹形結(jié)構(gòu)的一系列多層次的矩形框描述數(shù)據(jù)的層次結(jié)構(gòu)。
軟件設(shè)計(jì)的原則:模塊化,抽象化,信息隱蔽,模塊獨(dú)立。
模塊化是指解決一個(gè)復(fù)雜問退時(shí)自頂向下逐層把軟件系統(tǒng)劃分為若干模型的過程。
抽象化是指認(rèn)識(shí)復(fù)雜現(xiàn)象過程中使用的思維工具,即抽出事物本質(zhì)的,共同的特性而暫不考慮它的細(xì)節(jié),不考慮其它因素。
抽象化和逐步求精,模塊化的概念是一致的。
模塊獨(dú)立性的概念是模塊化,抽象化和信息隱蔽的直接產(chǎn)物。
模塊獨(dú)立性可用兩個(gè)定性標(biāo)準(zhǔn)來度量:內(nèi)聚性和耦合性
內(nèi)聚性:又稱塊內(nèi)聯(lián)系,是指模塊的功能強(qiáng)度的度量,即一個(gè)模塊內(nèi)部各個(gè)元素彼此結(jié)合的緊密程度的度量。
耦合性:又稱塊間聯(lián)系,是指軟件系統(tǒng)結(jié)構(gòu)中各模塊間相互聯(lián)系緊密程度的一種度量。
偶然內(nèi)聚:這種模塊內(nèi)各部分之間沒有有意義的關(guān)系或者關(guān)系很松散。
邏輯內(nèi)聚:這種模塊把幾種相關(guān)的功能組合在一起,每次被調(diào)用時(shí),根據(jù)傳送給模塊的控制型參數(shù)來確定應(yīng)執(zhí)行的功能。
時(shí)間內(nèi)聚:這種模塊大多為多功能模塊,但要求模塊的各個(gè)功能必須在同一時(shí)間段執(zhí)行。
工程內(nèi)聚:使用流程圖作為工具設(shè)計(jì)程序的時(shí)候,通過流程圖來確定模塊劃分,把流程圖中的某一部分劃出組成模塊,就是過程內(nèi)聚模塊。
通信內(nèi)聚:一個(gè)模塊內(nèi)各功能部分都使用了相同的輸入數(shù)據(jù),或產(chǎn)生了相同的輸出數(shù)據(jù)。
順序內(nèi)聚:一個(gè)模塊中各個(gè)部分都是完成一項(xiàng)具體的功能而協(xié)同工作,緊密聯(lián)系,不可分割的。
內(nèi)容耦合:如果一個(gè)模塊直接訪問另一個(gè)模塊內(nèi)的內(nèi)部數(shù)據(jù),或一個(gè)模塊不能通過正常入口轉(zhuǎn)到另一個(gè)模塊內(nèi)部,或兩個(gè)模塊有一部分程序代碼重疊(在匯編語言程序中可能出現(xiàn)),或者一個(gè)模塊有多個(gè)入口,則兩個(gè)模塊之間就發(fā)生了內(nèi)容耦合。它是最高程度的耦合,應(yīng)該避免。
公共耦合:如果一組模塊都訪問同一個(gè)公共數(shù)據(jù)環(huán)境,則它們之間的耦合稱為公共耦合。
外部耦合:一組模塊都訪問同一全局簡單變量而不是同一全局?jǐn)?shù)據(jù)結(jié)構(gòu),而且不是通過參數(shù)表傳遞該全局變量的信息,則稱之為外部耦合。
控制耦合:如果一個(gè)模塊把控制信息傳遞給另一個(gè)模塊,對其功能進(jìn)行控制,這種耦合稱為控制耦合。
標(biāo)記耦合:如果一組模塊通過參數(shù)表傳遞記錄信息,這組模塊就是標(biāo)記耦合。事實(shí)上這組模塊共享了某一數(shù)據(jù)結(jié)構(gòu)的子結(jié)構(gòu),而不是簡單變量。
數(shù)據(jù)耦合:如果一個(gè)模塊訪問另一個(gè)模塊彼此之間通過數(shù)據(jù)參數(shù)(不是控制參數(shù),公共數(shù)據(jù)結(jié)構(gòu)或外部變量)來交換輸入,輸出信息,這種耦合稱為數(shù)據(jù)耦合。
非直接耦合:如果兩個(gè)模塊之間沒有直接關(guān)系,它們之間的聯(lián)系完全是通過主模塊的控制和調(diào)用來實(shí)現(xiàn)的,這就是非直接耦合。
數(shù)據(jù)流圖的類型:變換型,事務(wù)型,混合型。
SD方法以數(shù)據(jù)流圖為基礎(chǔ)設(shè)計(jì)系統(tǒng)的模塊結(jié)構(gòu)。
事務(wù)型中間是有事務(wù)中心的!由它來進(jìn)行處理的!
程序設(shè)計(jì)語言的分類:
機(jī)器語言——第一代語言
匯編語言——第二代語言
高級(jí)語言——第三代語言
4GL——第四代語言
變換型數(shù)據(jù)流圖是線形結(jié)構(gòu)的,由輸入,變換(或稱主加工)和輸出三部分組成。
程序的效率:程序執(zhí)行速度的快慢和程序占用存儲(chǔ)空間的大小。
效率要求實(shí)際上就是性能要求對效率追求應(yīng)取決于再需求分析階段確定的效率方面的要求;
程序的效率包括以下三個(gè)方面:程序運(yùn)行時(shí)間;存儲(chǔ)器效率;輸入/輸出的效率。
公式計(jì)算:V(G)=m-n+p
V(G)有向圖G的環(huán)數(shù);
m有向圖G的有向弧數(shù);
n有向圖G的節(jié)點(diǎn)數(shù);
p=1;
軟件測試的目標(biāo):為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程。
軟件測試的常用方法:
黑盒法:已知該程序應(yīng)具備的功能而通過檢測來檢驗(yàn)的它的每一項(xiàng)功能是否能正常使用此方法為黑盒測試。
白盒法:已知程序的內(nèi)部結(jié)構(gòu)和工作過程,通過檢測可檢驗(yàn)產(chǎn)品內(nèi)部動(dòng)作是否符合規(guī)格說明書的規(guī)定,為白盒測試。
用白盒法設(shè)計(jì)測試用例最常用的是邏輯覆蓋法:包括語句覆蓋,判定覆蓋,條件覆蓋,判定/條件覆蓋,條件組合覆蓋,路徑覆蓋。
軟件測試分為4個(gè)步驟進(jìn)行:單元測試,集成測試,確認(rèn)測試,系統(tǒng)測試。
軟件可維護(hù)性的因素:可理解性,可測試性,可修改性。
【軟件工程總結(jié)】相關(guān)文章:
軟件工程專業(yè)畢業(yè)實(shí)習(xí)總結(jié)范文04-24
軟件工程專業(yè)畢業(yè)實(shí)習(xí)總結(jié)范文04-24
軟件工程專業(yè)畢業(yè)實(shí)習(xí)總結(jié)范文04-24
軟件工程專業(yè)畢業(yè)實(shí)習(xí)總結(jié)范文04-24
軟件工程專業(yè)畢業(yè)實(shí)習(xí)總結(jié)范文04-24
軟件工程專業(yè)畢業(yè)實(shí)習(xí)總結(jié)范文04-24
軟件工程專業(yè)畢業(yè)實(shí)習(xí)總結(jié)范文04-24
軟件工程專業(yè)畢業(yè)實(shí)習(xí)總結(jié)范文04-24