




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、word軟件工程概論知識點總結第一章軟件定義:是計算機系統(tǒng)中與硬件相互依存的另一局部,包括程序、數據和相關文檔的完整集合。軟件特性:形態(tài)特性、智能特性、開發(fā)特性、質量特性、生產特性、管理特性、環(huán)境特性、維護特性、廢棄特性、應用特性。軟件分類。 (1) 系統(tǒng)軟件 (2) 應用軟件 (3) 支撐軟件 (4) 可復用軟件 軟件危機的原因:1)缺乏軟件開發(fā)的經驗和有關軟件開發(fā)數據的積累,使得開發(fā)工作的方案很難制定。2)軟件人員與用戶的交流存在障礙,除了知識背景的差異,缺少適宜的交流方法和需求描述工具也是重要的一個原因。3軟件開發(fā)過程不標準,缺少方法論和標準的指導,軟件難以維護。4隨著軟件規(guī)模的增大,其
2、復雜性往往會呈指數級升高。5缺少有效的軟件評測手段,提交用戶的軟件質量差軟件工程的定義:1指導軟件開發(fā)和維護的工程性學科,它以計算機科學理論和其他相關學科的理論為指導,采用工程化的概念、原理技術和方法進行軟件的開發(fā)和維護,把經過時間考慮而證明是正確的管理技術和當前能夠得到的最好的技術方法結合起來,以較少的代價獲得高質量的軟件并維護2.軟件工程的目標:運用先進的軟件開發(fā)技術和管理方法來提高軟件的質量和生產率,也就是要以較短 周期、較低的本錢生產出高質量的軟件產品,并最終實現軟件的工業(yè)化生產。3.軟件的生存周期:軟件孕育、誕生、成長、成熟、衰亡的生存過程。由軟件定義、軟件開發(fā)和運行維護三個時期組成
3、。軟件定義:解決“做什么的問題;軟件開發(fā):解決“如何做的問題,分為概要設計、詳細設計、編碼和測試四個階段;維護:使軟件持久的滿足用戶的需求。4.開發(fā)過程中的典型文檔a.軟件需求規(guī)格說明書:描述將要開發(fā)的軟件做什么。b.工程方案:描述將要完成的任務及其順序,并估計所需要的時間及工作量。c.軟件測試方案:描述如何測試軟件,確保軟件應實現規(guī)定的功能,并到達預期的性能。d.軟件設計說明書:描述軟件的結構,包括概要設計及詳細設計。e.用戶手冊:描述如何使用軟件各階段根本任務:問題定義與可行性研究、需求分析、軟件設計、程序編碼和單元測試、集成測試和系統(tǒng)測試。5.軟件生存期模型:瀑布模型。優(yōu)點:強迫開發(fā)人員
4、標準化方法、嚴格規(guī)定每個階段必須提交的文檔、要求每個階段交出的所有產品必須經過驗證。缺點:完全依賴書面規(guī)格說明,可能會導致產品與用戶需求有差異、只適用于工程開始時需求已確定的情況。需求分析、規(guī)格說明、設計、編碼、綜合測試、維護快速原型模型。優(yōu)點:易于滿足用戶真實需求、已通過與用戶的交互驗證,能正確描述用戶需求、產品開發(fā)根本上按線性順序、規(guī)格文檔說明正確描述了用戶需求,后期錯誤率和返工率很低、開發(fā)人員建立原型系統(tǒng)時學到的東西有助于減少后期的錯誤率、快速開發(fā)有助于節(jié)約本錢,原型的用途是獲取用戶的正真需求。增量模型。優(yōu)點:較短時間內能提交有用產品、逐步增加產品有助于用戶適應學習、工程失敗風險較低、優(yōu)
5、先級最高的效勞首先交付,那么系統(tǒng)核心效勞接受最多測試,一般不會失敗。注意:新的構件參加系統(tǒng)時必須不破壞已開發(fā)出的產品、體系結構必須開放,易于向其中參加新構件。螺旋模型。四個象限:目標設定、風險估計與弱化、開發(fā)與驗證、方案。優(yōu)點有利于已有軟件的重用,也有助于把軟件質量作為開發(fā)的一個重要目標、減少了過多測試或測試缺乏帶來的風險、維護和開發(fā)之間沒有本質區(qū)別。缺點:此模型為風險驅動,要求開發(fā)人員必須具有豐富的風險評估經驗,否那么會意識不到風險的出現導致失敗。6.統(tǒng)一過程的6個核心工作流:業(yè)務建模、需求、分析與設計、實現、測試、部署7.統(tǒng)一過程的4個階段:初始階段、細化階段、構造階段、移交階段. a.主
6、要關注工程方案和風險評估,其目的是確定是否值得開發(fā)目標系統(tǒng)。b.細化階段關心定義系統(tǒng)的總體框架,目標是:細化初始需求,細化體系結構,監(jiān)控風險并細化他們的優(yōu)先級,細化業(yè)務案例以及制定工程管理方案。c.構造階段是建立系統(tǒng),構造系統(tǒng)的第一個具有操作性的版本,以能夠交付給客戶進行測試版本結束。d.移交階段包含測試時期,以發(fā)布完完整的系統(tǒng)而終止,其目標是確保系統(tǒng)真正滿足客戶的需求。 第二章1.軟件工程方法學:軟件生命周期全過程中使用的一整套技術的集合成為方法學,也稱為范型。三要素:方法、工具、過程2.傳統(tǒng)方法的特點:傳統(tǒng)方法學把軟件生命周期的全過程依次劃分為假設干個階段,然后順序地逐步完成每個階段的任務
7、。每一個階段的開始和結束都有嚴格的標準,對于任何兩個相鄰的階段而言,前一個階段的結束標準就是后一階段的開始標準。2面向對象方法的特點:面向對象方法是將數據和對數據的操作緊密地結合起來的方法,其出發(fā)點和根本原那么是盡量模擬人類習慣的思維方式,使開發(fā)軟件的方法和過程盡可能接近人類認識問題和解決問題的方法與過程,適用于大型、復雜及交互性比擬強的系統(tǒng)3.形式化方法學:是一種基于形式化數學變換的軟件開發(fā)方法,它可將系統(tǒng)的規(guī)格說明轉換為可執(zhí)行的程序。特點:軟件需求規(guī)格說明書被細化為用數學記號表達的詳細形式化規(guī)格說明;設計、實現和單元測試等開發(fā)過程由一個變換開發(fā)過程代替,通過一系列變換將形式化的規(guī)格說明細化
8、成為程序。面向對象=對象+類+繼承+消息通信,面向對象程序的根本組成單位是類,核心是對象。面向對象的開發(fā)方法:Booch方法,Rumbaugh方法,Coad和Yourdon方法,JacobsonOSSE方法,Wirfs-Brock方法4. 類.現實生活中的對象經過抽象,映射為程序中的對象。對象在程序中是通過一種抽象數據類型來描述的,這種抽象數據類型稱為類Class。 封裝。面向對象的封裝特性與其抽象特性密切相關。封裝是一種信息隱蔽技術,就是利用抽象數據類型將數據和基于數據的操作封裝在一起。用戶只能看到對象的封裝界面信息,對象的內部細節(jié)對用戶是隱蔽的。 封裝的定義是:(1) 清楚的邊界,所有對象
9、的內部信息被限定在這個邊界內;(2) 接口,即對象向外界提供的方法,外界可以通過這些方法與對象進行交互;(3) 受保護的內部實現,即軟件對象功能的實現細節(jié),實現細節(jié)不能從類外訪問。5. UML的特點:a.統(tǒng)一標準。b.面向對象。c.可視化,表達能力強大。d.獨立于過程。e.容易掌握使用。f.與編程語言的關系6. 軟件工具是指能支持軟件生存周期中某一階段如系統(tǒng)定義、需求分析、設計、編碼、測試或維護等的需要而使用的軟件工具。軟件工具的開展:50年代末期出現了程序設計語言,60年代末提出軟件工程的概念,80年代中期提出了軟件過程的新概念,如今,軟件工具重視用戶界面的設計,不斷地采用新理論和新技術第三
10、章軟件需求分析階段的任務:需求獲取、需求分析、需求定義和需求驗證。結構化分析方法:是一種面向數據流進行需求分析的方法。結構化設計方法的分類:一類是根據系統(tǒng)的數據流進行設計,稱為面向數據流的設計,或稱過程驅動的設計;另一類是根據系統(tǒng)的數據結構進行設計,稱為面向數據結構的設計,或稱數據驅動的設計。需求獲取是軟件生存期中決定性的一步,涉及客戶、用戶及開發(fā)方。需求獲取的問題:系統(tǒng)的目標或范圍問題、需求不準確性問題、需求的易變問題需求獲取的任務:發(fā)現和分析問題,并分析問題的原因和結果的關系、與用戶進行各種方式的交流,并使用調查研究方法收集信息、按照數據過程和接口觀察問題的不同側面、將獲取的需求文檔化,形
11、式有用例、決策表、決策樹等。需求獲取的原那么:深入淺出、以流程為主線。需求獲取的過程:開發(fā)高層的業(yè)務模型、定義工程范圍和高層需求、識別用戶類和用戶代表、獲取具體的需求、確定目標系統(tǒng)的業(yè)務工作流、需求整理與總結(功能需求、性能需求、環(huán)境需求、可靠性需求、平安保密需求、用戶界面需求、資源使用需求、軟件本錢消耗與開發(fā)進度需求)。獲取具體的需求:與用戶進行交流、現有產品或競爭產品的描述文檔、系統(tǒng)需求規(guī)格說明、當前系統(tǒng)的問題報告和改良要求、市場調查和用戶問卷調查、觀察用戶如何工作。軟件需求分析階段的任務:需求獲取、需求分析完整性、正確性、合理性、可行性、充分性、需求定義、需求驗證。數據字典:以詞條的方式
12、定義在數據模型、功能模型和行為模型中出現的數據對象及控制信息的特性,給出它們的準確定義包括數據流、加工、數據文件、數據元素,以及數據源點和數據匯點。數據字典精確地、嚴格地定義了每一個與系統(tǒng)相關的數據元素。、第四章結構化設計方法是在模塊化、自頂向下逐步細化及結構華程序設計技術根底之上開展起來的。結構化設計方法可以分為兩類,一類是根據系統(tǒng)的數據流進行設計,稱為面向數據流設計或稱過程驅動設計;另一類是根據系統(tǒng)的數據結構進行設計,成為面向數據結構設計,或稱數據驅動設計。軟件設計過程包括一套原理、概念和實踐,可以指導高質量的系統(tǒng)或產品開發(fā)。軟件設計的原那么:分而治之、模塊獨立性耦合和內聚、提高抽象層次、
13、復用性設計、靈活性性設計降低耦合提高內聚、建立抽象、不要將代碼寫死、拋出異常、使用并創(chuàng)立可復用代碼結構化設計立方體圖分為概要設計體系結構設計、接口設計、數據設計和詳細設計過程設計模塊的4個類型:傳入模塊、傳出模塊、變換模塊、協(xié)調模塊接口設計概述:模塊或軟件構件間的接口設計、軟件與其他軟硬件系統(tǒng)之間的接口設計、軟件與人之間的交互設計。程序流程圖程序框圖特點:直觀、清晰、易于學習和掌握,5種根本控制結構:順序型、選擇型、先判定、后判定、多情況。任何復雜的程序流程圖都是由者個根本類型嵌套而成。第五章機器語言二進制代碼、匯編語言更直觀、符號指令與機器指令相對應、高級程序設計語言用途廣泛、有大量軟件庫,
14、ALGLOL,FORTRAN,COBOL,Basic,Pascal,C,C+,Lisp,Prolog,Ada、第四代語言面向問題、非過程化程度高4GL缺點:整體能力不如3GL,只能面向專項應用、抽象級別較高,系統(tǒng)運行開銷大效率低、缺乏統(tǒng)一的工業(yè)標準,品種繁多差異大、主要基于數據庫應用的領域,不宜于科學計算、實時系統(tǒng)和系統(tǒng)軟件開發(fā)。4GL分類:查詢語言和報表生成器、圖形語言、應用生成器、形式化規(guī)格說明語言。第六章軟件測試是在軟件投入生產性運行之前,對軟件需求分析、設計規(guī)格說明和編碼的最終復審,是軟件質量控制的關鍵步驟。軟件測試的對象:需求分析、概要設計、詳細設計及程序編碼等階段所得的文檔資料,包
15、括需求規(guī)格說明、概要設計規(guī)格說明、詳細設計規(guī)格說明以及源程序。確認是一系列的活動和過程,目的在于證實在一個恰當的外部環(huán)境中軟件的邏輯正確性,分為靜態(tài)確認和動態(tài)確認。驗證是試圖證明在軟件生存期各個階段以及階段間的邏輯協(xié)調性、完備性和正確性。確認與測試都屬于軟件測試。黑盒測試:產品的功能設計規(guī)格,可以通過測試證明每個實現了的功能是否滿足要求根據軟件的外部特性用列設計:a.等價類劃分;b.邊界值分析。白盒測試:產品的內部工作過程,可以通過測試證明每種內部操作是否符合設計規(guī)格要求,所有內部成分是否已經過檢查對軟件的過程性細節(jié)作細致的檢查。用例設計:a.邏輯覆蓋;b.語句覆蓋;c.判定覆蓋;d.條件覆蓋
16、;e.判定條件覆蓋;f.條件組合覆蓋;g.路徑覆蓋。軟件測試:步驟:單元測試、組裝測試、確認測試和系統(tǒng)測試。單元測試的內容:模塊接口測試、局部數據結構測試、路徑測試、錯誤處理測試、邊界測試。第七章UML模型:UML模型是由事物、關系和圖組成。UML事物:結構事物類、主動類、接口、對象、用例、參與者、協(xié)作、構件、節(jié)點、行為事物交互、狀態(tài)機、分組事物包、注釋事物注釋UML關系:依賴關系、關聯關系普通關聯、限定關聯、關聯類、聚合圖:類圖、用例圖、交互圖、狀態(tài)圖、活動圖和實現圖。第八章面向對象分析的三個模型:用例和場景構成的功能模型用例模型、類和對象表示的靜態(tài)模型對象模型、狀態(tài)圖和順序圖表示的動態(tài)模型
17、交互模型建立用例模型過程:確定業(yè)務參與者;確定業(yè)務需求用例。對象模型:劃分主題;確定類與對象;確定關聯;確定屬性;確定效勞。第九章1.軟件體系結構:軟件體系結構是具有一定形式的結構化元素,即構件的集合,包括處理構件、數據2.構件和連接構件。處理構件負責對數據進行加工,數據構件是被加工的信息,連接構件把體系結構的不同局部組組合連接起來。3.模式:是從軟甲設計過程中總結出來的,是針對特定問題的解決方案。劃分為3類,體系結構模式,設計模式,慣用法。4.風格:風格是帶有一種傾向性的模式。同一個問題可以用不同的解決問題的方案或模式,但我們根據經驗,通常會強烈傾向于采用特定的模式,這就是風格。5.框架:框架是一個待實例化的完整系統(tǒng),定義了軟件
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 健康教育教案中班40篇講課件
- 玉溪職業(yè)技術學院《排水管網》2023-2024學年第二學期期末試卷
- 蘭州博文科技學院《樂理(二)》2023-2024學年第二學期期末試卷
- 三亞城市職業(yè)學院《海洋技術專業(yè)英語1》2023-2024學年第二學期期末試卷
- 南開大學《物流運籌學》2023-2024學年第二學期期末試卷
- 撫順師范高等專科學?!夺t(yī)學影像檢查技術實驗》2023-2024學年第二學期期末試卷
- 呂梁師范高等??茖W?!睹袼孜幕耪摗?023-2024學年第二學期期末試卷
- 寧波財經學院《Pr電影剪輯藝術》2023-2024學年第二學期期末試卷
- 中醫(yī)藥材廠講課件
- 天津工程職業(yè)技術學院《大學體育》2023-2024學年第二學期期末試卷
- 化工設備操作工培訓資料課件
- petrel RE詳細培訓資料
- 等級醫(yī)院評審匯報課件
- 火場偵察和督查的組織與實施
- 2021年中日青年交流中心有限公司二十一世紀飯店校園招聘筆試試題及答案解析
- 食用菌生產技術 大球蓋菇栽培技術課件
- 小班語言課《水果歌》PPT
- TSG11-2020 鍋爐安全技術規(guī)程
- 人才培養(yǎng)方案編寫質量標準
- 靜脈輸液-PPT課件
- (外研社)新編進出口英語函電答案-Unit-2-11-包含部分test-yourself
評論
0/150
提交評論