(一)軟件工程部分(60分)
一、考試要求
要求考生全面系統(tǒng)地掌握軟件工程的基本概念、軟件工程的常用過程模
型、軟件的生命周期、面向對象的軟件分析、設計、開發(fā)和測試方法,并能靈
活運用;能夠利用軟件工程的基本知識,為應用系統(tǒng)構造有效的需求、設計和
測試方案;能夠初步分析軟件方案的合理性。
二、考試內容
1)軟件工程的基本概念:a:軟件工程的概念、組成部分b:軟件的生命周期、各階段的作用、各階段輸入輸出之間的關系c:軟件開發(fā)團隊的基本角色構成及各自的職責
2)軟件生命周期模型與軟件項目管理:a:瀑布模型、增量模型、演化模型,各自的特征、過程和應用場景b:敏捷方法與過程模型,包括用戶故事、測試驅動開發(fā)、結對編程、持續(xù)
集成、快速迭代/快速交付等,以極限編程XP為代表c:針對特定軟件產品/項目的特征,選擇恰當的過程模型d:軟件項目管理的基本過程;軟件項目規(guī)劃(規(guī)模估算、成本估算、進度計劃等)e:軟件風險管理的基本概念與方法
3)軟件需求工程:a:需求工程的階段劃分及各自之間的關系b:需求的分類、需求好壞的評判標準c:面向對象的需求分析模型與方法(用例模型、領域模型、時序模型,三種分析類及其關系)d:需求規(guī)格說明的基本構成
4)軟件設計:a:軟件設計的階段劃分、各自的作用、彼此之間的關系b:軟件架構的基本概念、常見的軟件架構樣式(數據流、主程序-子過程、層次化架構、以數據為中心的架構、基于事件的架構、模型-視圖-控制器MVC)c:面向對象語言(OOP)的基本概念(繼承、多態(tài)、接口、委托等),面向對象基本設計原則(單一職責原則、里氏替換原則、依賴倒置原則等)d:面向對象的設計方法(架構設計、類的屬性/方法/狀態(tài)設計、由類模型向關系數據模式的映射;部署模型)e:統(tǒng)一建模語言(UML)的常用模型視圖(用例圖、活動圖、類圖、時序圖、狀態(tài)圖、部署圖、包圖等)f:面向典型非功能需求的軟件設計方法(效率、并發(fā)度、可靠性、可擴展性、可復用性、安全性等)
5)軟件測試與質量保證:a:軟件測試的階段劃分、軟件測試的類型、測試用例b:常見的黑盒測試方法及應用(等價類劃分、邊界值方法等)c:常見的白盒測試方法及應用(基本路徑法、循環(huán)測試等)d:根據需求規(guī)約和程序源代碼設計軟件測試用例e:代碼評審與代碼優(yōu)化的基本方法
6)軟件配置管理:a:軟件演化的基本思想b:軟件維護的基本類型、基本過程c:軟件配置管理,版本控制系統(tǒng)(VCS)的基本構成與流程d:Git的工作原理、數據存儲結構、常用指令
三、試卷結構
a)題型結構:a:選擇題(16分)b:簡答題(20分)c:應用題(24分)
b)注意事項:選擇題和簡答題主要考核基本概念和基本思想;應用題考核根據給定的應用場景和指定的軟件工程方法進行需求分析、設計、測試的能力。
四、參考書目
1.Rogers S.Pressman.Software Engineering:A Practitioner’s Approach(Eighth Edition).(鄭人杰等譯,《軟件工程:實踐者的研究方法》,機械工業(yè)出版社,2016年11月)
2.軟件工程概論(第3版).機械工業(yè)出版社,2020年1月
(二)C語言程序設計部分(45分)
一、考試要求
要求考生掌握用計算機處理問題的思維方法,掌握C語言的基本語法、基本控制結構、常用的算法、問題求解方法和程序設計方法,具備綜合運用所學知識獨立解決與計算相關的工程技術問題的程序設計、實現和調試能力。
二、考試內容
1)問題的抽象、建模和算法描述:a:算法的基本概念b:算法的流程圖描述方法
2)基本控制結構:a:選擇結構的三種控制方式(單分支、雙分支、多分支)b:循環(huán)結構的三種控制方式(計數控制、條件控制和標記控制)c:流程轉移控制的基本方法d:基本控制結構的嵌套
3)函數和常用的問題求解方法:a:函數定義,函數調用,函數原型,函數的參數傳遞,防御式編程b:分治與遞歸,函數的遞歸調用,遞歸函數的設計方法c:枚舉(即窮舉)d:遞推(正向遞推、反向逆推)
4)數組和常用的算法:a:一維數組和二維數組的定義、初始化和引用b:一維數組、二維數組做函數參數向函數傳遞一維數組和二維數組c:字符數組或字符指針做函數參數向函數傳遞字符串d:常用的字符串處理操作(字符串的復制、連接、比較、計算長度,子串
的插入、刪除、修改、匹配等)e:常用的排序算法(選擇排序、冒泡排序、插入排序)f:常用的查找算法(順序查找、折半查找)
5)指針:a:指針變量的定義、初始化和解引用b:指針變量做函數參數c:指針數組d:函數指針
6)結構體和共用體:a:結構體變量、結構體數組和結構體指針b:結構體變量、結構體數組或結構體指針做函數參數向函數傳遞結構體c:共用體類型d:結構體和共用體占內存的字節(jié)數,內存對齊e:動態(tài)內存分配函數和動態(tài)數據結構,鏈表(單向鏈表、循環(huán)鏈表)、堆棧、隊列的基本操作
7)文件操作:a:文件的打開和關閉b:二進制文件和文本文件c:文件的順序讀寫
三、試卷題型結構:a:程序理解題(5分)b:程序改錯題(5分)c:程序補全題(10分)d:程序設計題(25分)
四、參考書目
1.蘇小紅,趙玲玲,孫志崗,王宇穎,C語言程序設計(第4版),高等教育出版社,2019.07
2.蘇小紅,王甜甜,趙玲玲,范江波,車萬翔,C語言程序設計學習指導(第4版),高等教育出版社,2019.09
(三)數據結構部分(45分)
一、考試要求
1.要求考生全面系統(tǒng)地掌握數據結構與算法的基本概念、數據的邏輯結構和存儲結構及操作算法,并能靈活運用;能夠利用數據結構和算法的基本知識,為應用問題設計有效的數據結構和算法;能夠分析算法的復雜性。
2.要求能夠用C/C++/Java等程序設計語言描述數據結構和算法。
注:考試內容范圍主要以參考書目1為標準,帶*號部分不在考試范圍之內。
二、考試內容
1)數據結構與算法的概念:a:數據結構與算法及其相關的基本概念b:算法及其復雜性分析
2)線性表:a:線性結構及其操作算法b:線性表的應用及算法
3)樹與二叉樹:a:二叉樹的定義、性質、表示、遍歷算法b:樹的表示、操作算法c:森林與二叉樹關系d:樹與二叉樹的應用及算法
4)圖及其相關算法:a:圖的相關概念b:圖的存儲結構與搜索算法c:圖的應用及算法
5)查找與排序:a:查找與排序的相關概念b:典型算法的描述及復雜性分析c:查找與排序算法的應用
三、試卷結構
a)題型結構:a:選擇題(0—20分)b:填空題(0-10分)c:簡答題(0—20分)d:算法設計題(0—20分)
注:題型分數在以上范圍內浮動,總分為45分
b)注意事項:算法設計題,必須包含算法的基本思想、存儲結構設計和算法的描述
四、參考書目
1.張巖,李秀坤,劉顯敏數據結構與算法(第5版),高等教育出版社,2020.2
2.嚴蔚敏,吳偉民,數據結構(C語言版),清華大學出版社,2002.09
以上就是有關哈爾濱工業(yè)大學834軟件工程基礎考研大綱的相關介紹,相信對于各位23考研人的報考備考可作一定參考。如果想要了解更多考研院校、考研專業(yè)信息,歡迎前往高頓考研頻道!等你呦~(悄悄告訴大家點擊下方圖片可以免費獲得考研各科備考資料哦~)