有途網(wǎng)

軟件工程專業(yè)學什么 軟件工程專業(yè)知識域構成

莊鑫2022-01-27 08:40:40

高考后選擇軟件工程專業(yè)的同學或者正在讀軟件工程專業(yè)的同學,你們當初選擇這個專業(yè)的時候或者學到現(xiàn)在,是否在迷茫:軟件工程專業(yè)應該怎么學?下面有途網(wǎng)小編給大家分享一下軟件工程專業(yè)學什么,軟件工程專業(yè)知識域構成,希望對你有幫助。

軟件工程專業(yè)學什么 軟件工程專業(yè)知識域構成

軟件工程專業(yè)學什么

主干學科:馬克思主義理論、大學外語、高等數(shù)學、大學物理、物理實驗、線性代數(shù)、概率論與數(shù)理統(tǒng)計、程序設計語言、數(shù)據(jù)結構、離散數(shù)學、操作系統(tǒng)、編譯技術、軟件工程概論、統(tǒng)一建模語言、軟件體系結構、軟件需求、軟件項目管理

該專業(yè)除了學習公共基礎課外,還將系統(tǒng)學習離散數(shù)學、數(shù)據(jù)結構、算法分析、面向對象程序設計、現(xiàn)代操作系統(tǒng)、數(shù)據(jù)庫原理與實現(xiàn)技術、編譯原理、軟件工程、軟件項目管理、計算機安全等課程,根據(jù)學生的興趣還可以選修一些其它選修課。

實踐環(huán)節(jié):畢業(yè)實習、課程設計、計算機工程實踐、生產(chǎn)實習、畢業(yè)設計(論文)。

軟件工程專業(yè)知識域構成

(1)軟件需求

軟件需求描述解決現(xiàn)實世界某個問題的軟件產(chǎn)品,及對軟件產(chǎn)品的約束。軟件需求涉及需求抽取、需求分析、建立需求規(guī)格說明和確認,涉及建模、軟件開發(fā)的技術、經(jīng)濟、時間可行性分析。軟件需求直接影響軟件設計、軟件測試、軟件維護、軟件配置管理、軟件工程管理、軟件工程過程和軟件質(zhì)量等。

(2)軟件設計

設計是軟件工程最核心的內(nèi)容。設計既是“過程”,也是這個過程的“結果”。軟件設計由軟件體系結構設計、軟件詳細設計兩種活動組成。它涉及軟件體系結構、構件、接口、以及系統(tǒng)或構件的其它特征,還涉及軟件設計質(zhì)量分析和評估、軟件設計的符號、軟件設計策略和方法等。

(3)軟件構造

通過編碼、單元測試、集成測試、調(diào)試、確認這些活動,生成可用的、有意義的軟件。軟件構造除要求符合設計功能外,還要求控制和降低程序復雜性、預計變更、進行程序驗證和制定軟件構造標準。軟件構造與軟件配置管理、工具和方法、軟件質(zhì)量密切相關。

(4)軟件測試

測試是軟件生存周期的重要部分,涉及測試的標準、測試技術、測試度量和測試過程。測試不再是編碼完成后才開始的活動,測試的目的是標識缺陷和問題,改善產(chǎn)品質(zhì)量。軟件測試應該圍繞整個開發(fā)和維護過程。測試在需求階段就應該開始,測試計劃和規(guī)程必須系統(tǒng),并隨著開發(fā)的進展不斷求精。正確的軟件工程質(zhì)量觀是預防,避免缺陷和問題比改正好。代碼生成前的主要測試手段是靜態(tài)技術(檢查),代碼生成后采用動態(tài)技術(執(zhí)行代碼)。測試的重點是動態(tài)技術,從程序無限的執(zhí)行域中選擇一個有限的測試用例集,動態(tài)地驗證程序是否達到預期行為。

(5)軟件維護

軟件產(chǎn)品交付后,需要改正軟件的缺陷、提高軟件性能或其他屬性、使軟件產(chǎn)品適應新的環(huán)境。軟件維護是軟件進化的繼續(xù)。軟件維護要支持系統(tǒng)快速地、便捷地滿足新的需求。基于服務的軟件維護越來越受到重視。軟件維護是軟件生存周期的組成部分。然而,歷史上維護從未受到重視。情況有了改變,軟件組織力圖使軟件運營時間更長,軟件維護成為令人關注的焦點。

(6)軟件配置管理

為了系統(tǒng)的控制配置變更,維護整個系統(tǒng)生命周期中配置的一致性和可追蹤性,必須按時間管理軟件的不同配置,包括配置管理過程的管理、軟件配置鑒別、配置管理控制、配置管理狀態(tài)記錄、配置管理審計、軟件發(fā)布和交付管理等。

(7)軟件工程管理

運用管理活動,如計劃、協(xié)調(diào)、度量、監(jiān)控、控制和報告,確保軟件開發(fā)和維護是系統(tǒng)的、規(guī)范的、可度量的。它涉及基礎設施管理;項目管理;度量和控制計劃三個層次。度量是軟件管理決策的基礎。近年來軟件度量的標準、測度、方法、規(guī)范發(fā)展較快。

(8)軟件工程過程

管理軟件工程過程的目的是,實現(xiàn)一個新的或者更好的過程。軟件工程過程關注軟件過程的定義、實現(xiàn)、評估、測量、管理、變更、改進,以及過程和產(chǎn)品的度量。軟件工程過程分為,①圍繞軟件生存周期過程的技術和管理活動,即需求獲取、軟件開發(fā)、維護和退役的各種活動。②對軟件生存周期的定義、實現(xiàn)、評估、度量、管理、變更和改進。

(9)軟件工程工具和方法

軟件開發(fā)工具是以計算機為基礎的,用于輔助軟件生存周期過程。通常,工具是為特定的軟件工程方法設計的,以減少手工操作的負擔、使軟件工程更加系統(tǒng)化。軟件工具的種類很多,從支持個人到整個生存周期。軟件工具分為:需求工具、設計工具、構造工具、測試工具、維護工具、配置管理工具、工程管理工具、工程過程工具、軟件質(zhì)量工具等。

軟件工程方法支持軟件工程活動,使軟件開發(fā)更加系統(tǒng),并能獲得成功。軟件開發(fā)方法不斷發(fā)展。當前,軟件工程方法分為:①啟發(fā)式方法,包括結構化方法、面向數(shù)據(jù)方法、面向對象方法和特定域方法;②基于數(shù)學的形式化方法;③用軟件工程多種途徑實現(xiàn)的原型方法,原型方法幫助確定軟件需求、軟件體系結構,用戶界面等。

(10)軟件質(zhì)量

軟件質(zhì)量貫穿整個軟件生存周期,涉及軟件質(zhì)量需求、軟件質(zhì)量度量、軟件屬性檢測、軟件質(zhì)量管理技術和過程等。

SWEBOK還把軟件工程相關學科列為知識域,它們是軟件工程發(fā)展不可或缺的部分。相關學科知識域包括計算機工程、計算機科學、數(shù)學、管理學、項目管理、質(zhì)量管理、系統(tǒng)工程學和軟件人類工程學八個領域。

熱門推薦

最新文章