摘要:軟件評測師是軟考中級考試科目之一,為方便考生對所學知識點的檢測,希賽軟考頻道為考生帶來軟考軟件評測師考試知識點填空檢測的內容,本文為軟考軟件評測師考試知識點填空檢測(8)。
為方便軟考考生對軟件評測師考試知識點的檢測,希賽軟考頻道為考生帶來軟考軟件評測師考試知識點填空檢測的內容(完整版可在本文文首本文資料處或文末的資料下載欄目下載)。
軟考軟件評測師考試知識點填空檢測(8)內容如下:
第8章 軟件工程
軟件工程
·軟件工程
是指應用計算機科學、數學系管理科學等原理,以工程化的原則和方法來解決軟件問題的工程,其目的是提高軟件生產率、提高_______、降低_______。
·三要素
_______:是指完成軟件開發的各項任務的技術方法。
_______:是指為運用方法而提供的軟件工程支撐環境。
_______:是指為獲得高質量的軟件所需要完成的一系列任務的框架。
軟件生命周期
·可行性分析與項目開發計劃
這個階段主要確定軟件的_______及其_______。必須要回答的問題是:要解決的問題是什么?該問題有可行的解決辦法嗎?若有解決的辦法,則需要多少費用?需要多少資源?需要多少時間?要回答這些問題,就要進行問題定義、可行性分析,制定項目開發計劃。可行性分析與項目計劃階段的參加人員有用戶、項目負責人和系統分析師。該階段產生的主要文檔有可行性分析報告和項目開發計劃。
·需求分析
這個階段的任務不是具體解決問題,而是準確地確定_______,確定軟件系統的_______、
_______、_______和_______等要求,從而確定系統的邏輯模型。該階段的參加人員有用戶、項目負責人和系統分析師。該階段產生的主要文檔有_______。
·概要設計
就是設計軟件的_______、明確軟件由_______,這些模塊的層次結構是怎樣的,這些模塊的調用關系是怎樣的,每個模塊的功能是什么。同時,還要設計該項目的應用系統的總體數據結構和數據庫結構,即應用系統要存儲什么數據,這些數據是什么樣的結構,它們之間有什么關系。該階段的參加人員有系統分析師和軟件設計師。該階段產生的主要文檔有_______。
·詳細設計
該階段的主要任務是對每個模塊完成的功能進行_______,要把功能描述轉變為精確的、結構化的過程描述。即該模塊的控制結構是怎樣的,先做什么,后做什么,有什么樣的條件判定,有些什么重復處理等,并用相應的表示工具把這些控制結構表示出來。該階段參加的人員有軟件設計師和程序員。該階段產生的主要文檔有_______。
·編碼
該階段就是把每個模塊的控制結構轉換成計算機可接受的程序代碼,即寫成某種特定程序設計語言表示的源程序清單。
·測試
是在設計測試用例的基礎上檢查軟件的各個組成部分。該階段主要文檔有軟件測試計劃、測試用例和軟件測試報告。
·維護
是軟件生命周期中時間最長的階段。已交付的軟件投入正式使用后,便進入軟件維護階段。
需求的層次
·系統需求
從系統的角度來說明軟件的需求。
·_______
規定了開發人員必須在系統中實現的軟件功能。
·_______
指系統必須具備的屬性和品質;可細分為:軟件質量屬性(如:可維護性、可靠性、效率等)和其他的非功能需求。
·_______
限制條件或補充規約;通常是對系統的一些約束說明;如:必須采用國有自主知識產權的數據庫系統,必須運行在UNIX操作系統之下等。
需求的特征
·_______:每一項需求都必須將所要實現的功能描述清楚,使設計人員獲得設計和實現這些功能所需的必要信息。
·_______:每一項需求都必須準確地陳述其要開發的功能:只有用戶代表才能確定需求的正確性。
·_______:每一項需求都必須是在已知的系統或環境內可以實現的:建立數學模型,進行仿真。
·_______:每項需求都是編寫文檔的根源,每項需求都需要回溯到具體用戶:用戶需求,跟蹤矩陣。
·_______:對所有的需求,讀者只能有一個明確統一的解釋:形式化的語言、圖、表。
·_______:檢查每一項需求是否能通過測試用例或其它驗證方法。
聚合
衡量模塊______________。
·偶然聚合:__________________________________________。
·邏輯聚合:__________________________________________。
·時間聚合:__________________________________________。
·過程聚合:__________________________________________。
·通信聚合:__________________________________________。
·順序聚合:__________________________________________。
·功能聚合:__________________________________________。
耦合
度量_____________________。
·非直接耦合:___________________________________。
·數據耦合:___________________________________。
·標記耦合:___________________________________。
·控制耦合:___________________________________。
·外部耦合:___________________________________。
·公共耦合:___________________________________。
·內容耦合:___________________________________。
維護
·系統可維護性的評價指標
_______:是指理解、改正、改動、改進軟件的難易程度。
_______:指維護人員理解軟件的結構、接口、功能和內部過程的難易程度。
_______:是指測試和診斷軟件錯誤的難易程度。
_______:是指修改軟件的難易程度。
·維護分類(ISO/IEC14764)
更正性維護:___________________________________。
適應性維護:___________________________________。
完善性維護:___________________________________。
預防性維護:___________________________________。
數據流圖/數據字典
·數據流圖(Data Flow Diagram,DFD)
是一種最常用的結構化分析工具,從______________的角度,以圖形的方式刻畫系統內數據的運動情況。
是一種能全面地描述______________的主要工具,可以用少數幾種符號綜合地反映出信息在系統中的流動、處理和存儲的情況。
數據流圖具有抽象性和概括性。
·數據流圖設計注意事項
自外向內,自頂向下,逐層細化,完善求精;
保持______________的平衡;
保持數據守恒;
加工細節隱藏;
簡化加工間的關系;
均勻分解;
適當取名,避免空洞的名字;
表現的是_______而不是_______;
每個加工必須既有_______,又有_______。
·數據字典
對數據流圖的重要補充和說明。
是以特定格式記錄下來的、對系統的數據流圖中各個基本要素(_______、_______、_______和_______)的內容和特征所做的完整的定義和說明。
·數據流圖的基本圖形元素
_______:由一組固定成分的數據組成,表示數據的流向。
_______:描述了輸入數據流到輸出數據流之間的變換,也就是輸入數據流經過什么處理后變成了輸出數據流。
_______:用來存儲數據。
_______:是指存在于軟件系統之外的人員或組織,它指出系統所需數據的發源地(源)和系統所產生的數據的歸宿地(宿)。
軟件開發模型/方法
·瀑布模型
是將軟件生存周期中的各個活動規定為依線性順序連接的若干個階段的模型,包括需求分析、設計、編碼、測試、運行與維護。它規定了由前至后、相互銜接的固定次序;以項目階段評審和文檔控制為手段有效地對整個開發過程進行指導;
其優點是:______________;強調開發的階段性早期計劃及需求調查和產品測試;
其缺點是:____________________________;在開始的2~3個階段中,很難評估真正的進度狀態;當項目結束時,出現大量的集成和測試工作;直到項目結束之前,都不能演示系統的能力;需求或設計中的錯誤往往只有到了項目后期才能夠被發現,對項目風險控制能力較弱,從而導致項目常常延期完成,開發費用超出預期。
·V模型
是瀑布模型的一個變體,描述了質量保證活動和溝通、建模相關活動以及早期構建相關的活動之間的關系。
其特點是:_____________________。
其優點是:糾正了不重視測試階段重要性的錯誤認識,將測試分等級,并和前面的開發階段對應起來;
其缺點是:_____________________。
·原型模型
開始于溝通,其目的是定義軟件的總體目標,標識需求,然后快速制定原型開發的計劃,確定原型的目標和范圍,采用快速設計方式對其進行建模,并構建原型。
其優點是:__________________________________________;
其缺點是:__________________________________________。
分類:可分為探索型原型、實驗型原型和演化型原型;
·增量模型
融合了瀑布模型的基本成分和原型實現的迭代特征,假設可以將需求分段為一系列增量產品,每一增量可以分別開發。
其特點:______________往往是核心產品;客戶對每個增量的使用和評估都作為下一個增量發布的新的特征和功能;增量模型強調每一個增量均發布一個可操作的產品。
其優點是:________________________________________________________。
其缺點是:________________________________________________________。
·螺旋模型
采用一種周期性的方法來進行系統開發,結合_______和_______;每一周期都包括_______、_______、_______和_______4個階段,進行迭代。
其優點是:_________________________________________________。
其缺點是:_________________________________________________。
·噴泉模型
是一種以用戶需求為動力,以對象作為驅動的模型,適合于______________。使軟件開發過程自下而上,周期的各階段具有相互迭代和無間隙的特性。
其優點是:_________________________________________________;
其缺點是:_________________________________________________。
·結構化方法
基本思想是:用_______的思想,_______的方法,按_______的原則,結構化、模塊化、自頂向下對信息系統進行分析與設計;嚴格區分工作階段,每階段有任務和結果;強調系統開發過程的整體性和全局性;系統開發過程工程化,文檔資料標準化。
·面向對象
出發點和基本原則是:盡可能模擬人類習慣的思維方式,使開發軟件的方法與過程盡可能接近人類認識世界、解決問題的方法與過程;更好的復用性;關鍵在于建立一個全面、合理、統一的模型;_______、_______、_______三個階段,界限不明確。
·Jackson方法
是一種_______;是以_______作為驅動的,是一種基于進程的開發方法,所以適用于時序特點較強的系統,包括數據處理系統和一些實時控制系統。
·統一過程(UP,Unified Process)
是一種以_______驅動、以_______為核心、迭代及增量的軟件過程模型,由UML方法和工具支持,廣泛應用于各類面向對象項目。典型代表:RUP是由Rational公司開發并維護,和一系列軟件開發工具緊密集成。RUP蘊含了大量優秀的實踐方法,如:迭代式軟件開發、需求管理、基于構件的構架應用、建立可視化的軟件模型、軟件質量驗證、軟件變更控制等。
在UP中過程被劃分為4個階段,_______、_______、_______、_______。
角色:描述某個人或者一個小組的行為與職責。RUP預先定義了很多角色。
活動:是一個有明確目的的獨立工作單元。
工件:是活動生成、創建或修改的一段信息。
·敏捷方法
敏捷開發的總體目標是通過“_______、_____________________”使客戶滿意。通過在軟件開發過程中加入靈活性,敏捷方法使用戶能夠在開發周期的后期增加或改變需求。
MVC
MVC全名是Model View Controller,是_______-_______-_______的縮寫,是用一種業務邏輯、數據、界面顯示分離的方法組織代碼,將業務邏輯聚集到一個部件里面,在改進和個性化定制界面及用戶交互的同時,不需要重新編寫業務邏輯。
·控制器:負責______________;主要負責_______和_______的交互。
·視圖:代表用戶交互界面,對于Web應用來說,可以概括為HTML界面,但有可能為XHTML、XML和Applet;主要負責_______,也就是用戶界面。
·模型:就是業務流程/狀態的處理以及業務規則的制定。業務模型的設計可以說是MVC最主要的核心;主要負責_______和_______。
能力成熟度模型
·初始級:___________________________________。
·可重復級:___________________________________。
·已定義級:___________________________________。
·已管理級:___________________________________。
·優化級:___________________________________。
面向對象
·對象:是基本運行時的實體,既包括_______,也包括作用于數據的_______。
·類:類所包含的方法和數據描述一組_______的共同行為和屬性;_______是在_______之上的抽象,_______是_______的具體化,是_______的實例。
·_______:父類和子類之間共享數據和方法的機制。
·封裝:將_______和_______銜接在一起,構成的一個具有______________的描述。
·_______:是多種表現形式;多態性的實現,一般通過在派生類中重定義基類的虛函數來實現。
·_______:描述對操作規范的說明,其只說明操作應該做什么,并沒有定義操作如何做。
·消息:對象之間______________。
·組件:表示軟件系統_______、_______組成部分,封裝了模塊功能的實現。
·_______:將已有的軟件及其有效成分用于構造新的軟件或系統。
·模式:描述了一個不斷重復發生的問題,以及該問題的解決方案;模式由_______、_______、_______3個部分組成。
統一建模語言(Unified Modeling Language,UML)
是一種定義良好、易于表達、功能強大且普遍適用的建模語言。不僅可以支持面向對象的分析與設計,更重要的是能夠有力地支持需求分析開始的軟件開發的全過程。
·UML建立的模型的三個要素:
_______:是對模型中最具有代表性的成分的抽象。
_______:關系把事物結合在一起。
_______:圖聚集了相關的事物。
·關系
_______:是兩個事物間的語義關系,其中一個事物(獨立事物)發生變化會影響另一個事物的語義。
_______:是一種結構關系,描述了一組鏈,鏈是對象之間的鏈接。
_______:是一種特殊的類型關聯,描述了整體和部分間的結構關系。部分獨立于整體。
_______:是聚合的一種特殊形式,暗示局部在整體內部的生存職責。部分依賴于整體。
_______:是一種特殊/一般關系,特殊元素(子元素)的對象可替代一般元素(父元素)的對象。
_______:是類元之間的語義關系,其中的一個類元指定了由另一個類元保證執行的契約。
·靜態建模和動態建模
靜態建模用以描述系統的_______,而動態建模則用以描述系統的_______。
·圖分類
靜態建模機制:_______、_______、_______、_______。
動態建模機制:_______、_______、_______、_______、_______。
·圖
類圖:展現了一組對象、接口、協作和它們之間的關系;類圖用于對系統的靜態設計視圖建模。這種視圖主要支持系統的功能需求,即系統要提供給最終用戶的服務。當對系統的靜態設計視圖建模時,通常以下述方式之一使用類圖:1)_______。2)_______。3)_______。
用例圖:展現了一組_______、_______以及它們之間的關系。(注意:用例之間的三種關系:包含、擴展、泛化)
_______:描述以時間順序組織的對象之間的交互活動。
_______:強調收發消息的對象的結構組織,早期版本稱協作圖。
_______:展現了一個狀態機,由狀態、轉換、事件和活動組成。
_______:描述交互(特別是關注控制流)。
計時圖:描述對象狀態隨時間改變的情況,適合分析_______和_______的任務。
_______:是一種特殊的狀態圖,展現了在系統內從一個活動到另一個活動的流程。
_______:展現了一組構件之間的組織和依賴。
_______:展現了運行處理節點以及其中的構件的配置。
注釋
·_______:在每個程序或模塊的開頭的一段說明,起對程序理解的作用。一般包括:程序的表示、名稱和版本號、程序功能描述、接口與界面描述、輸入/輸出數據說明、開發歷史、與運行環境有關的信息。
·_______:一般嵌在程序之中,與要注釋的部分匹配。注釋一定要在程序編制中書寫。
解釋性注釋不是簡單直譯程序語句,應能說明“做什么”。
熱門:信息系統管理工程師報考指南 | 2025年軟考報名時間及入口
推薦:信息系統項目管理師網絡課堂 |系統架構設計師網絡課程 | 工信部信創認證培訓
活動:25年高項備考 | 軟考機考模擬作答系統 | 網絡工程師網絡課程
備考:章節練習+真題 | 軟考備考學習資料 | 軟考免費課程
課程:論文專題講解 | 信息系統項目管理師試聽課
軟考備考資料免費領取
去領取