軟件工程的組成結(jié)構(gòu)
1、軟件需求
軟件需求描述解決現(xiàn)實世界某個問題的軟件產(chǎn)品,及對軟件產(chǎn)品的約束。軟件需求涉及需求抽取、需求分析、建立需求規(guī)格說明和確認,涉及建模、軟件開發(fā)的技術(shù)、經(jīng)濟、時間可行性分析。軟件需求直接影響軟件設計、軟件測試、軟件維護、軟件配置管理、軟件工程管理、軟件工程過程和軟件質(zhì)量等。
2、軟件設計
設計是軟件工程最核心的內(nèi)容。設計既是“過程”,也是這個過程的“結(jié)果”。軟件設計由軟件體系結(jié)構(gòu)設計、軟件詳細設計兩種活動組成。它涉及軟件體系結(jié)構(gòu)、構(gòu)件、接口、以及系統(tǒng)或構(gòu)件的其它特征,還涉及軟件設計質(zhì)量分析和評估、軟件設計的符號、軟件設計策略和方法等。
3、軟件構(gòu)造
通過編碼、單元測試、集成測試、調(diào)試、確認這些活動,生成可用的、有意義的軟件。軟件構(gòu)造除要求符合設計功能外,還要求控制和降低程序復雜性、預計變更、進行程序驗證和制定軟件構(gòu)造標準。軟件構(gòu)造與軟件配置管理、工具和方法、軟件質(zhì)量密切相關(guān)。
4、軟件測試
測試是軟件生存周期的重要部分,涉及測試的標準、測試技術(shù)、測試度量和測試過程。測試不再是編碼完成后才開始的活動,測試的目的是標識缺陷和問題,改善產(chǎn)品質(zhì)量。軟件測試應該圍繞整個開發(fā)和維護過程。測試在需求階段就應該開始,測試計劃和規(guī)程必須系統(tǒng),并隨著開發(fā)的進展不斷求精。正確的軟件工程質(zhì)量觀是預防,避免缺陷和問題比改正好。代碼生成前的主要測試手段是靜態(tài)技術(shù)(檢查),代碼生成后采用動態(tài)技術(shù)(執(zhí)行代碼)。測試的重點是動態(tài)技術(shù),從程序無限的執(zhí)行域中選擇一個有限的測試用例集,動態(tài)地驗證程序是否達到預期行為。
5、軟件維護
軟件產(chǎn)品交付后,需要改正軟件的缺陷、提高軟件性能或其他屬性、使軟件產(chǎn)品適應新的環(huán)境。軟件維護是軟件進化的繼續(xù)。軟件維護要支持系統(tǒng)快速地、便捷地滿足新的需求。基于服務的軟件維護越來越受到重視。軟件維護是軟件生存周期的組成部分。然而,歷史上維護從未受到重視。情況有了改變,軟件組織力圖使軟件運營時間更長,軟件維護成為令人關(guān)注的焦點。
6、軟件配置管理
為了系統(tǒng)的控制配置變更,維護整個系統(tǒng)生命周期中配置的一致性和可追蹤性,必須按時間管理軟件的不同配置,包括配置管理過程的管理、軟件配置鑒別、配置管理控制、配置管理狀態(tài)記錄、配置管理審計、軟件發(fā)布和交付管理等。
7、軟件工程管理
運用管理活動,如計劃、協(xié)調(diào)、度量、監(jiān)控、控制和報告,確保軟件開發(fā)和維護是系統(tǒng)的、規(guī)范的、可度量的。它涉及基礎設施管理;項目管理;度量和控制計劃三個層次。度量是軟件管理決策的基礎。近年來軟件度量的標準、測度、方法、規(guī)范發(fā)展較快。
8、軟件工程過程
管理軟件工程過程的目的是,實現(xiàn)一個新的或者更好的過程。軟件工程過程關(guān)注軟件過程的定義、實現(xiàn)、評估、測量、管理、變更、改進,以及過程和產(chǎn)品的度量。軟件工程過程分為,①圍繞軟件生存周期過程的技術(shù)和管理活動,即需求獲取、軟件開發(fā)、維護和退役的各種活動。②對軟件生存周期的定義、實現(xiàn)、評估、度量、管理、變更和改進
9、軟件工程工具和方法
軟件開發(fā)工具是以計算機為基礎的,用于輔助軟件生存周期過程。通常,工具是為特定的軟件工程方法設計的,以減少手工操作的負擔、使軟件工程更加系統(tǒng)化。軟件工具的種類很多,從支持個人到整個生存周期。軟件工具分為:需求工具、設計工具、構(gòu)造工具、測試工具、維護工具、配置管理工具、工程管理工具、工程過程工具、軟件質(zhì)量工具等。
軟件工程方法支持軟件工程活動,使軟件開發(fā)更加系統(tǒng),并能獲得成功。軟件開發(fā)方法不斷發(fā)展。當前,軟件工程方法分為:①啟發(fā)式方法,包括結(jié)構(gòu)化方法、面向數(shù)據(jù)方法、面向?qū)ο蠓椒ê吞囟ㄓ蚍椒ǎ虎诨跀?shù)學的形式化方法;③用軟件工程多種途徑實現(xiàn)的原型方法,原型方法幫助確定軟件需求、軟件體系結(jié)構(gòu),用戶界面等。
10、軟件質(zhì)量
軟件質(zhì)量貫穿整個軟件生存周期,涉及軟件質(zhì)量需求、軟件質(zhì)量度量、軟件屬性檢測、軟件質(zhì)量管理技術(shù)和過程等。
SWEBOK還把軟件工程相關(guān)學科列為知識域,它們是軟件工程發(fā)展不可或缺的部分。相關(guān)學科知識域包括計算機工程、計算機科學、數(shù)學、管理學、項目管理、質(zhì)量管理、系統(tǒng)工程學和軟件人類工程學八個領域。
軟件工程的主干課程
主干學科:馬克思主義理論、大學外語、高等數(shù)學、大學物理、物理實驗、線性代數(shù)、概率論與數(shù)理統(tǒng)計、程序設計語言、數(shù)據(jù)結(jié)構(gòu)、離散數(shù)學、操作系統(tǒng)、編譯技術(shù)、軟件工程概論、統(tǒng)一建模語言、軟件體系結(jié)構(gòu)、軟件需求、軟件項目管理
該專業(yè)除了學習公共基礎課外,還將系統(tǒng)學習離散數(shù)學、數(shù)據(jù)結(jié)構(gòu)、算法分析、面向?qū)ο蟪绦蛟O計、現(xiàn)代操作系統(tǒng)、數(shù)據(jù)庫原理與實現(xiàn)技術(shù)、編譯原理、軟件工程、軟件項目管理、計算機安全等課程,根據(jù)學生的興趣還可以選修一些其它選修課。
實踐環(huán)節(jié):畢業(yè)實習、課程設計、計算機工程實踐、生產(chǎn)實習、畢業(yè)設計(論文)。
軟件工程的就業(yè)方向和就業(yè)前景
1、就業(yè)方向
本專業(yè)學生畢業(yè)后可以從事各級各類企事業(yè)單位的辦公自動化處理、計算機安裝與維護、網(wǎng)頁制作、計算機網(wǎng)絡和專業(yè)服務器的維護管理和開發(fā)工作、動態(tài)商務網(wǎng)站開發(fā)與管理、軟件測試與開發(fā)及計算機相關(guān)設備的商品貿(mào)易等方面的有關(guān)工作。
除考取國內(nèi)外名牌大學研究生外,主要畢業(yè)去向是計算機軟件專業(yè)公司﹑信息咨詢公司﹑以及金融等其它獨資、合資企業(yè)。
2、就業(yè)前景
中國的軟件行業(yè)規(guī)模不是很大,有些軟件企業(yè)在軟件制作上,也只是采用了一些軟件工程的思想,距離大規(guī)模的工業(yè)化大生產(chǎn)比較還是有一定的差距;原因有管理體制的問題,市場問題,政策問題,也有軟件工程理論不全面和不完善的問題。所以軟件工程的研究和應用,以及中國軟件行業(yè)的進一步發(fā)展,都需要一定的既有軟件工程的理論基礎和研究能力,又有一定的實踐經(jīng)驗的軟件工程科學技術(shù)人員來推動。軟件工程的前途是光明的。
軟件服務外包屬于智力人才密集型現(xiàn)代服務業(yè)。大量著名外包企業(yè)落戶寧波。主要就業(yè)去向包括軟件外包與服務企業(yè)、信息產(chǎn)品與服務企業(yè),擔任程序員、軟件測試員、項目經(jīng)理等工作崗位。
聲明:以上內(nèi)容源于程序系統(tǒng)索引或網(wǎng)民分享提供,僅供您參考使用,不代表本網(wǎng)站的研究觀點,請注意甄別內(nèi)容來源的真實性和權(quán)威性。申請刪除>> 糾錯>>