2024軟件工程期末復習要點梳理_第1頁
2024軟件工程期末復習要點梳理_第2頁
2024軟件工程期末復習要點梳理_第3頁
2024軟件工程期末復習要點梳理_第4頁
2024軟件工程期末復習要點梳理_第5頁
已閱讀5頁,還剩20頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第一章軟件工程學概論

1、軟件危機產生的原因

軟件自身的特點:難于維護、邏輯好雜

軟件開發與維護的措施不對的:忽視需求分析重要性、輕視軟件維護

書本表述:

1、軟件不同樣于硬件,它是計算機中的邏輯部件而不是物理部件

2、軟件不同樣于一般程序,它的一種明顯特點是規模龐大,并且程序的復雜性將規模

的增長而展現指數上升.

3、軟件自身特有的特點確實給開發和維護帶了某些客觀困難

4、軟件開發與維護有關口勺許多錯誤認識與做法有關(忽視需求分析,輕視軟件維護)

5、對顧客規定沒有完整精確的認識就匆忙開始著手編寫程序

6、在軟件不同樣階段進行修改需要付出時代價是很不相似的

2、軟件危機時體現(什么是軟件危機)

(1)、成本高:

(2)、軟件質量得不到保證:軟件質量問題導致失敗的軟件項目非常多

(3)、進度難以控制:

0?項目延期比比皆是

?由于進度問題而取消H勺軟件項目較常見

?只有一小部分的項目可以按期完畢

0(4)、維護十分困難:

▼軟件維護的多樣性

▼軟件維護的復雜性

▼軟件維護的副作用

3、克服軟件危機

國⑴、管理的角度:

胴軟件開發過程的1研究、文檔H勺原則化以及人員日勺交流方式等

(2)、軟件開發措施的研究

0構造化軟件開發措施,面向對象的開發

4、軟件工程的定義

團概括的說,軟件工程師指導計算機軟件開發和維護的J-門工程學科。采用工程的概念、原

理、技術和措施來開發和維護軟件,把通過時間考驗而證明對H勺日勺管理技術和目前可以得到

的最佳的技術措施結合起來,以經濟地開發出高質量H勺軟件并有效地維護它,這就是軟件工

程。

(1)、軟件工程就是建立和使用一套合理的工程原理,從而經濟地獲得可靠的、可以在實

際機器上高效運行H勺軟件,

0(2).①把系統H勺、規范的、可度量的措施應用于軟件開發、運行和維護的過程,也就是把

工程應用于軟件.②研究①中提到的途徑

團總之:軟件工程是應用計算機科學、數學及管理科學等原理開發軟件日勺工程。他借鑒老式工

程的原理、措施,以提高質量,減少成本為目叢J。

5、軟件工程的本質特性

01、團關注與大型程序的構造

2、中心課題是控制復雜度

3、團軟件常常變化

4、回開發軟件的效率非常重要

團5、國友好的合作是開發軟件的關鍵

團6、軟件必須有效地支持它H勺顧客

7、在軟件工程領域中一股由具有一種文化背景的人替此外一種文化背景的人發明產

6、軟件工程的基本原理

1、用分階段日勺生命周期計劃嚴格管理

2、堅持進行階段評審

團3、實行嚴格的產品控制

團4、采用現代程序設計技術

5、成果應能清晰地審查

6、開發小組應當少而精

07.承認不停改善軟件工程實踐U勺必要性

軟件工程學包括3個要素:措施、工具和過程

7、軟件生命周期

(1)、概念:

軟件生命周期由軟件定義、軟件開發和運行維護(也成軟件維護)3個時期構成。

0(2)內容:

「J問題定義

軟件定義丁可行性研究

需求分析

「總體設計

軟件生命周期(軟件開發工疆

單元測試

綜合測試

飛行維護F久滿足用戶需求

1、問題定義

回答“要處理的問題是什么?“,寫出有關問題性質、工程FIU勺和工程規模的

書面匯報

2、可行性分析

回答〃對于問題與否有行得通的處理措施?即探索問題與否值得去解,

與否有可行的措施

需求分析

確定〃為了處理這個問題,目口勺系統必須做什么“,確定目日勺系統必須具有

哪些功能,得到需求規格闡明書。

4、總體設計

回答”概括地說,應當怎樣實現目H勺系統?",確定程序由哪些模塊構成以及

模間的關系

5、詳細設計

回答”應當怎樣詳細地實現這個系統呢?”,確定實現模塊功能所需要向算

法與數據構造

6、編碼和單元測試

寫出對的的輕易理解、輕易維護的程序模塊,然后仔細測試每個模塊

7、綜合測試

通過多種類型H勺測試(及對應的調試)是軟件抵達預定規定

8、軟件維護

通過多種必要活動是系統持久地滿足顧客需求

8、生命周期模型

(1)、瀑布模型

回老式瀑布模型特點:

1、階段間具有次序性與依賴性

2.推遲實現的觀點

3、質量保證歐I觀點

瀑布模型

長處:

1、可強迫開發人員使用規范H勺措施(例如:構造化技術);

2、嚴格規定每個階段必須提交H勺文檔;

3、規定每個階段交出的所有產品都必須通過驗證。

缺陷:

1、“瀑布模型是由文檔驅動成為重要缺陷

合用范圍:

適合于頤客需求明確、完整、無重大變化的軟件項目開發。

(2)、迅速原型模型

合用范圍:

顧客不能給出完整、精確口勺需求闡明,或者開發者不能確定算法的有效性、操

作系統H勺適應性或人機交互R勺形式等狀況。

(3)、增量模型

回特點:

1、反復的應用瀑布模型的基本成分和原駕模型的迭代特性,每一種線型過程

產生一種“增量”的公布或提交,該增量均是一種可運行的產品。

團2、初期的版本實現顧客的基本需求,并提供應顧客評估的平臺。

回長處:

1、在較短時間內向顧客提交可完畢部分工作的產品;

2、逐漸增長產品功能可以使顧客有較富余的時間學習和適應新產品,從而減

少一種全新的軟件也許給客戶組織帶來的沖擊;

缺陷:

1、軟件體系構造必須是開放的;

2、開發人員既要把軟件系統看作整體。又要當作可獨立"勺構件,互相矛盾;

3、多種構件并行開發,具有無法集成U勺風險。

(4)、螺旋模型

團基本思想:

國使用原型或其他措施來減少風險。

(3合用范圍:

0合用于內部開發大規模軟件項目。

團長處:

1、對可選方案和約束條件時強調有助于已經有軟件的重用,也有助于把軟件質

量作為軟件發"勺一種重要FI的

2、減少了過多測試或測試局限性

3、維護和開發之間并沒有本質區別

缺陷:

1、風險驅動,需要相稱豐富的風險評估經驗和專門知識,否則風險更大

2、伴隨迭代次數日勺增長,工作量加大,軟件開發成本增長

(5)、噴泉模型

何特點:

噴泉模型是一種以顧客需求為動力,以對象為驅動的模型,重要用于采用對象

技術FI勺軟件開發項目。該模型認為軟件開發過程自下而上周期的各階段是互相

迭代和無間隙的特性。

(6)^Rational統一過程

RUP反復一系列周期,每個周期由一種交付給顧客U勺產品結束。每個周期劃分為初

始、細化、構造和移交四個階段,每個階段圍繞著五個關鍵工作流(需求、分析、設

計、實現、測試j分別迭代。

第二章團可行性研究

1>概念(目的)

用最小的代價在盡量短的時間內確定問題與否可以處理,不是處理問題,而是確定

問題與否值得去處理,

2、可行性研究任務

理解客戶的規定及現實環境,從技術、經濟和社會原因等三方面研究并論證本軟件

項目的可行性,編寫可行性研究匯報,制定初步項目開發計劃。

即對軟件開發后來的行動方針提出提議。

3、研究內容

(1)技術可行性使用既有的技術能實現這個系統嗎?

(2)經濟可行性這個系統H勺經濟效益能超過它口勺開發成本嗎?

(3)操作可行件系統H勺操作方式在這個顧客絹織內行得通嗎?

(4)法律可行性新系統開發與否會侵犯法藤'集體或國家利益?

4、數據字典

(1)、內容

1、數據流

團2、數據流分量(即數據元素)

團3、數據存儲

4、處理

團(2)、作用

對于數據流圖中出現的所有被命名口勺圖形元素在字典中作為一種詞條加以定

義,使得每一種圖形元素均有一種確切的定義。

第三章需求分析

1、需求分析的任務

(1)確定對系統內綜合規定

(2)分析系統B勺數據規定

(3)導出系統日勺邏輯模型

(4)修正系統的開發環節

2、獲取需求的措施

(1)訪談

(2)面向數據流自頂向下

(3)簡易時應用規模闡明技術

(4)迅速建立軟件模型

3、實體?關系圖仍63)、層次方框圖(尸68)和IP。圖(尸69)

4、構造化分析模型

根據結構化分析準則,需求分析過程應該

,數據模型(實體-聯系圖)

建立3種模型1功能模型(數據流圖)

【行為模型(狀態轉換圖)

數據模型功能模型

實體聯系圖數據流圖

(E-R圖曉4DFD)

狀態轉換圖

(STD圖)

行為模型

?數據流圖:

團描繪當數據在軟件系統中移動時被變換的邏輯過程,指明系統具有的變換數據的

功能,是建立功能模型的基礎

?實體-聯絡圖:

描繪數據對象及數據對象之間的關系,用于建立數據模型。

?狀態轉換圖:

指明了作為外部事件成果的系統行為。描繪了系統的多種行為模式(稱為“狀

態”)和在不同樣狀態間轉換的I方式。是行為建模H勺基礎

第四章總體設計

1、模塊獨立性與耦合性(尸97)

⑴模塊化

把程序劃提成獨立命名且可獨立訪問H勺模塊,每個模塊完畢一種子功能,把這

些模塊集成起來構成一種整體,可以完畢指定的功能滿足顧客H勺需求

模塊化的長處:

1.使軟件構造清晰,輕易設計也輕易閱讀與理解

2.輕易測試與調試,提高可靠性

3.提高軟件的可修改性

4.有助于軟件開發工程的組織管理

(2)模塊獨立的重要性

。有效的模塊化(即具有獨立的模塊)11勺軟件比較輕易開發出來

。獨立的模塊比較輕易測試和維護

(3)耦合

衡量不同樣模塊彼此間互相依賴(連接)的緊密程度,耦合要低,即每個模塊和

其他模塊之間的關系要簡樸

1、數據耦合:兩個模塊之間通過參數互換信息,并且互換的信息僅僅是數據

2、控制耦合:傳遞H勺信息中有控制信息

3、特性耦合:當把整個數據構造作為參數傳遞而被調用的模塊只需要使用其

中一部分數據元素

4、公共環境耦合:兩個或多種模塊通過一種公共環境互相作用

5、內容耦合:出現一下狀況之一,則為內容耦合:

1、一種模塊訪問另一種模塊的內部數據

2、一種模塊不通過正常入口而轉到另一種模塊的內部

3、兩個模塊有一部分代碼重疊

4、一種模塊有多種入口

數據耦合〈控制耦合〈特性耦合〈公共環境耦合(內容耦合

(4)內聚(P99)

衡量?種模塊內部各個元素彼此結合H勺緊密程度。內聚要高,每個模塊完畢■

種相對獨立的特定子功能

信息隱藏儼96)

應當這樣設計和確定模塊,使得一種模塊內包括的信息(過程和數據)對于不需要

這些信息的模塊來說,是不能訪問的

2、啟發規則

1、改善軟件構造提高模塊獨立性

2、模塊規模應當適中

3、深度、寬度、扇入、扇出都應適中

4、模塊的作用域應當在控制域之內

5、力爭減少模塊接口的復雜度

6、設計單入口、單出口模塊

7、模塊功能應當可以預測

3、層次圖和HIPO圖(Pi。2)

4、面向數據流的設計措施(P104)

(1)概念

面向數據流設計就是把信息流映射成軟件構造,信息流H勺類型決定了映射的措施。

信息流包括變換流、事物流。

(2)變換分析與事務分析(Pi05)

5、小結

i.進行軟件構造設計遵照的最重要的原理是模塊獨立原理

ii.抽象和求精是一-對互補概念

iii.軟件工程師在實踐中總結經驗得出某些很有參照價值日勺啟發式規則

iv.自頂向下逐漸求精是進行軟件構造設計口勺常用途徑

V.用形式化的措施由數據流圖映射出軟件構造

第五章實現

1、選擇程序設計語言

為了使程序輕易測試和維護以減少軟件的總成本,所選用口勺高級語言程序應當有

理想H勺模塊化機制,以及可讀性好H勺控制構造和數據構造:為了便于調試和提高軟件可

靠性,語言特點應當是編譯程序可以盡量多地發現程序中的錯誤;為了減少軟件開發和

維護的成本,選用的高級語言應當有良好11勺獨立編譯機制。

第六章軟件測試

2、測試的概念

(1)測試是為了發現程序中打勺錯誤而執行程序口勺過程

(2)好口勺測試方案是極也許發現了至今為止尚未發現的錯誤口勺測試方案。

(3)成功的測試是發現了至今為止尚未發現H勺錯誤的測試。

測試的過程與環節(P153)

大型軟件的測試過程基本由下述幾種環節構成

(1)模塊測試(單元測試)發現編碼和詳細設計口勺錯誤

(2)子系統測試

(3)系統測試(集成測試)

(4)驗收測試(確認測試)

(5)平行運行

4、單元測試(P153)

著重從下述5個模塊進行測試(重要使用白盒測試技術)

(1)模塊接口

(2)局部數據構造

(3)重要U勺執行通路

(4)出錯處理通路

(5)邊界條件

5、集成測試(P156)

集成測試就是測試和組裝軟件H勺系統化技術,重要目Fl勺是發現與接口有關的問題。

有兩種集成策咯

(1)自頂向下集成

(2)自底向上集成

6、確認測試(P160)

也稱驗收測試,它的目的是驗證軟件的有效性。一般使用黑盒測試法。

7、白盒測試技術(P162)

白盒措施測試軟件時設計測試數據的經典技術

(1)邏輯覆蓋

1、語句覆蓋

2、鑒定覆蓋

3、條件覆蓋

4、鑒定/條件覆蓋

5、條件組合覆蓋

6、點覆蓋

7、邊覆蓋

8、途徑覆蓋

(2)控制構造測試

1、基木途徑測試

2、條件測試

3、循環測試

8、黑盒測試技術(P171)

黑盒測試力圖發現下述類型口勺錯誤:

(1)功能不對時或遺漏了功能。

(2)界面錯誤c

(3)數據構造錯誤或外部訪問數據庫錯誤

(4)性能錯誤

(5)初始化和終止錯誤

黑盒測試用到的技術

(1)等價劃分

(2)邊界值分析

(3)錯誤推測

第七章維護

1、維護的定義(P189)

所謂軟件維護就是在軟件已經交付使用周,為了改正錯誤或滿足新的需要而修改軟

件口勺過程。

根據交付使用之后也許進行H勺4項活動詳細定義軟件維護

(1)改正性維護

糾正在使用過程中暴露出來的錯誤;診斷和改正錯誤的過程,

(2)適應性維護

為了和變化了的環境合適地配合而進行的修改軟件活動

(3)完善性維護

在使用軟件的過程中增長新日勺功能或修改已經有功能,還也許提出一般性的改

善意見H勺過程

(4)防止性維護

為了改善未來的可維護性與可靠性,或為了給未來口勺改善奠定更好的基砒而修

改軟件H勺過程。

2、維護的過程(P192)

(1)維護組織

(2)維護匯報

(3)維護的事件流

(4)保留維護記錄

(5)評價維護活動

3、小結

1、軟件生命周期每個階段的工作都和軟件可維護,生有親密關系。

2、再工程過程可以在完畢任意一種活動之后中斷

第八章面向對象技術

1、面向對象措施學要點rp203)

面向對象措施學的出發點和基本原則,是盡量模擬人類思維措施,是開發軟件盡量

靠近人類認以世界處理問題日勺措施與過程。

2、面向對象措施學長處

1、與人類習慣的思維措施一致

2、穩定性好

3、可重用性好

4、較易開發大型軟件產品

5、可維護性好

3、對象模型》216)

對象模型體現靜態的,構造化U勺系統U勺“數據〃性質。它是對模擬客觀世界實體"勺對

象以及對象彼此之間的關系的映射,描述了系統的靜態構造。

4、動態模型rp223)

動態模型體現瞬時H勺、行為化H勺系統H勺''控制"性質,它規定了對象模型中H勺對象H勺

合法序列。

5、功能模型《0224)

功能模型體現變化日勺系統H勺”功能”性質,他指明了系統應當〃做什么〃,因此更直接反

應了顧客對?目口勺系統的需求。

6、三種模型之間的關系“228)

功能模型指明了系統應當“做什么”:動態模型明確規定了什么時候(即任何種狀況

下接受什么時間的觸發)做;對象模型則定義了做事情口勺實體。

在面向對象措施學中,X寸象模型是最基本的,它為其他兩種模型奠定了基礎,人們

依托對象模型完畢了3中模型H勺集成。下面扼要地論述3種模型之間H勺關系。

三種模型描述了系統的不同樣方面:

對象模型動態模型功能模型

對象的靜態構造與時間和次序有與值的變化有關

及互有關系關的系統性質的系統性質

描述系統的數據控制構造系統的功能

構造

“干事的1主體”“什么時候干”“干什么”

功能模型與對象模型的關系

-對象模型描述了功能模型中的動作對象,數據存儲以及數據流構造

動態模型與對象模型的關系

--狀態轉換驅使行為發生,這些行為在DFD中被映射成處理,它們同步與對象噗

動態模型與

溫馨提示

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

評論

0/150

提交評論