軟件工程包括哪些 軟件工程專業(yè)學(xué)幾年

笑在燃燒2022-08-12 22:04:121843

什么叫軟件工程?軟件工程的三大要素,軟件工程包含了哪些內(nèi)容,什么是軟件工程?軟件工程包括哪些階段?軟件工程專業(yè)學(xué)什么?軟件工程包含哪些要素。

本文導(dǎo)航

軟件工程學(xué)的是什么

軟件工程一直以來都缺乏一個統(tǒng)一的定義,很多學(xué)者、組織機構(gòu)都分別給出了自己的定義:

Boehm:運用現(xiàn)代科學(xué)技術(shù)知識來設(shè)計并構(gòu)造計算機程序及為開發(fā)、運行和維護(hù)這些程序所必需的相關(guān)文件資料。

IEEE:軟件工程是開發(fā)、運行、維護(hù)和修復(fù)軟件的系統(tǒng)方法。

Fritz Bauer:建立并使用完善的工程化原則,以較經(jīng)濟的手段獲得能在實際機器上有效運行的可靠軟件的一系列方法。

軟件工程學(xué)的內(nèi)容

  軟件工程學(xué)的主要內(nèi)容是軟件開發(fā)技術(shù)和軟件工程管理.

  軟件開發(fā)技術(shù)包含軟件工程方法學(xué)、軟件工具和軟件開發(fā)環(huán)境;軟件工程管理學(xué)包含軟件工程經(jīng)濟學(xué)和軟件管理學(xué)。

軟件工程基本原理

著名軟件工程專家B.Boehm綜合有關(guān)專家和學(xué)者的意見并總結(jié)了多年來開發(fā)軟件的經(jīng)驗,于1983年在一篇論文中提出了軟件工程的七條基本原理。

(1)用分階段的生存周期計劃進(jìn)行嚴(yán)格的管理。

(2)堅持進(jìn)行階段評審。

(3)實行嚴(yán)格的產(chǎn)品控制。

(4)采用現(xiàn)代程序設(shè)計技術(shù)。

(5)軟件工程結(jié)果應(yīng)能清楚地審查。

(6)開發(fā)小組的人員應(yīng)該少而精。

(7)承認(rèn)不斷改進(jìn)軟件工程實踐的必要性。

B.Boehm指出,遵循前六條基本原理,能夠?qū)崿F(xiàn)軟件的工程化生產(chǎn);按照第七條原理,不僅要積極主動地采納新的軟件技術(shù),而且要注意不斷總結(jié)經(jīng)驗。

軟件工程(SoftWare Engineering)的框架可概括為:目標(biāo)、過程和原則。

  (1)軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度。可用性指軟件基本結(jié)構(gòu)、實現(xiàn)及文檔為用戶可用的程度。開銷合宜是指軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。這些目標(biāo)的實現(xiàn)不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。

  (2)軟件工程過程:生產(chǎn)一個最終能滿足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。軟件工程過程主要包括開發(fā)過程、運作過程、維護(hù)過程。它們覆蓋了需求、設(shè)計、實現(xiàn)、確認(rèn)以及維護(hù)等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟件需求規(guī)約。需求分析生成功能規(guī)約。設(shè)計活動一般包括概要設(shè)計和詳細(xì)設(shè)計。概要設(shè)計建立整個軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說明、每一模塊的接口定義。詳細(xì)設(shè)計產(chǎn)生程序員可用的模塊說明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說明及加工描述。實現(xiàn)活動把設(shè)計結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認(rèn)活動貫穿于整個開發(fā)過程,實現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿足用戶的要求。維護(hù)活動包括使用過程中的擴充、修改與完善。伴隨以上過程,還有管理過程、支持過程、培訓(xùn)過程等。

  (3)軟件工程的原則是指圍繞工程設(shè)計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。

軟件工程必須遵循什么原則

圍繞工程設(shè)計、工程支持以及工程管理已提出了以下四條基本原則:

(1)選取適宜的開發(fā)模型

該原則與系統(tǒng)設(shè)計有關(guān)。在系統(tǒng)設(shè)計中,軟件需求、硬件需求以及其它因素間是相互制約和影響的,經(jīng)常需要權(quán)衡。因此,必需認(rèn)識需求定義的易變性,采用適當(dāng)?shù)拈_發(fā)模型,保證軟件產(chǎn)品滿足用戶的要求。

(2)采用合適的設(shè)計方法

在軟件設(shè)計中,通常需要考慮軟件的模塊化、抽象與信息隱蔽、局部化、一致性以及適應(yīng)性等特征。合適的設(shè)計方法有助于這些特征的實現(xiàn),以達(dá)到軟件工程的目標(biāo)。

(3)提供高質(zhì)量的工程支撐

工欲善其事,必先利其器。在軟件工程中,軟件工具與環(huán)境對軟件過程的支持頗為重要。軟件工程項目的質(zhì)量與開銷直接取決于對軟件工程所提供的支撐質(zhì)量和效用。

(4)重視軟件工程的管理

  軟件工程的管理直接影響可用資源的有效利用,生產(chǎn)滿足目標(biāo)的軟件產(chǎn)品以及提高軟件組織的生產(chǎn)能力等問題。因此,僅當(dāng)軟件過程予以有效管理時,才能實現(xiàn)有效的軟件工程。

  軟件工程是指導(dǎo)計算機軟件開發(fā)和維護(hù)的工程學(xué)科。

  采用工程的概念、原理、 技術(shù)和方法來開發(fā)與維護(hù)軟件,把經(jīng)過時間考驗而證明正確的管理技術(shù)和當(dāng)前能夠 得到的最好的技術(shù)方法結(jié)合起來,這就是軟件工程。

  軟件工程強調(diào)使用生存周期方法學(xué)和各種結(jié)構(gòu)分析及結(jié)構(gòu)設(shè)計技術(shù)。它們是在七十年代為了對付應(yīng)用軟件日益增長的復(fù)雜程度、漫長的開發(fā)周期以及用戶對軟件產(chǎn)品經(jīng)常不滿意的狀況而發(fā)展起來的。人類解決復(fù)雜問題時普遍采用的一個策略就是“各個擊破”,也就是對問題進(jìn)行分解然后再分別解決各個子問題的策略。軟件工程采用的生存周期方法學(xué)就是從時間角度對軟件開發(fā)和維護(hù)的復(fù)雜問題進(jìn)行分解,把軟件生存的漫長周期依次劃分為若干個階段,每個階段有相對獨立的任務(wù),然后逐步完成每個階段的任務(wù)。采用軟件工程方法論開發(fā)軟件的時候,從對任務(wù)的抽象邏輯分析開始,一個階段一個階段地進(jìn)行開發(fā)。前一個階段任務(wù)的完成是開始進(jìn)行后一個階段工作的前提和基礎(chǔ),而后一階段任務(wù)的完成通常是使前一階段提出的解法更進(jìn)一步具體化,加進(jìn)了更多的物理細(xì)節(jié)。每一個階段的開始和結(jié)束都有嚴(yán)格標(biāo)準(zhǔn),對于任何兩個相鄰的階段而言,前一階段的結(jié)束標(biāo)準(zhǔn)就是后一階段的開始標(biāo)準(zhǔn)。在每一個階段結(jié)束之前都必須進(jìn)行正式嚴(yán)格的技術(shù)審查和管理復(fù)審,從技術(shù)和管理兩方面對這個階段的開發(fā)成果進(jìn)行檢查,通過之后這個階段才算結(jié)束;如果檢查通不過,則必須進(jìn)行必要的返工,并且返工后還要再經(jīng)過審查。審查的一條主要標(biāo)準(zhǔn)就是每個階段都應(yīng)該交出“最新式的”(即和所開發(fā)的軟件完全一致的)高質(zhì)量的文檔資料,從而保證在軟件開發(fā)工程結(jié)束時有一個完整準(zhǔn)確的軟件配置交付使用。文檔是通信的工具,它們清楚準(zhǔn)確地說明了到這個時候為止,關(guān)于該項工程已經(jīng)知道了什么,同時確立了下一步工作的基礎(chǔ)。此外,文檔也起備忘錄的作用,如果文檔不完整,那么一定是某些工作忘記做了,在進(jìn)入生存周期的下一階段之前,必須補足這些遺漏的細(xì)節(jié)。在完成生存周期每個階段的任務(wù)時,應(yīng)該采用適合該階段任務(wù)特點的系統(tǒng)化的技術(shù)方法──結(jié)構(gòu)分析或結(jié)構(gòu)設(shè)計技術(shù)。

軟件工程四大架構(gòu)

軟件工程包括三個要素:方法、工具和過程。

軟件工程方法為軟件開發(fā)提供了“如何做”的技術(shù)。它包括了多方面的任務(wù),如項目計劃與估算、軟件系統(tǒng)需求分析、數(shù)據(jù)結(jié)構(gòu)、系統(tǒng)總體結(jié)構(gòu)的設(shè)計、算法過程的設(shè)計、編碼、測試以及維護(hù)等。

軟件工具為軟件工程方法提供了自動的或半自動的軟件支撐環(huán)境。目前,已經(jīng)推出了許多軟件工具,這些軟件工具集成起來,建立起稱之為計算機輔助軟件工程(CASE)的軟件開發(fā)支撐系統(tǒng)。CASE將各種軟件工具、開發(fā)機器和一個存放開發(fā)過程信息的工程數(shù)據(jù)庫組合起來形成一個軟件工程環(huán)境。

軟件工程的過程則是將軟件工程的方法和工具綜合起來以達(dá)到合理、及時地進(jìn)行計算機軟件開發(fā)的目的。過程定義了方法使用的順序、要求交付的文檔資料、為保證質(zhì)量和協(xié)調(diào)變化所需要的管理、及軟件開發(fā)各個階段完成的里程碑。

軟件工程是一種層次化的技術(shù)。任何工程方法(包括軟件工程)必須以有組織的質(zhì)量保證為基礎(chǔ)。全面的質(zhì)量管理和類似的理念刺激了不斷的過程改進(jìn),正是這種改進(jìn)導(dǎo)致了更加成熟的軟件工程方法的不斷出現(xiàn)。支持軟件工程的根基就在于對質(zhì)量的關(guān)注。 ...

軟件工程的核心任務(wù)是什么

軟件工程是用工程方法研制和維護(hù)軟件的過程和有關(guān)技術(shù)?軟件研制的四個階段包括需求分析?設(shè)計?實現(xiàn)和測試;軟件維護(hù)指的是使用過程中對已有軟件的修改和完善?軟件工程的主要對象是大型軟件

軟件工程過程包含哪幾個過程

中國的軟件行業(yè)規(guī)模不是很大,有些軟件企業(yè)在軟件制作上,也只是采用了一些軟件工程的思想,距離大規(guī)模的工業(yè)化大生產(chǎn)比較還是有一定的差距;原因有管理體制的問題,市場問題,政策問題,也有軟件工程理論不全面和不完善的問題。所以軟件工程的研究和應(yīng)用,以及中國軟件行業(yè)的進(jìn)一步發(fā)展,都需要一定的既有軟件工程的理論基礎(chǔ)和研究能力,又有一定的實踐經(jīng)驗的軟件工程科學(xué)技術(shù)人員來推動。軟件工程的前途是光明的。

軟件服務(wù)外包屬于智力人才密集型現(xiàn)代服務(wù)業(yè)。大量著名外包企業(yè)落戶寧波。主要就業(yè)去向包括軟件外包與服務(wù)企業(yè)、信息產(chǎn)品與服務(wù)企業(yè),擔(dān)任程序員、軟件測試員、項目經(jīng)理等工作崗位。

軟件工程專業(yè)是一門研究用工程化方法構(gòu)建和維護(hù)有效的、實用的和高質(zhì)量的軟件的學(xué)科。它涉及到程序設(shè)計語言,數(shù)據(jù)庫,軟件開發(fā)工具,系統(tǒng)平臺,標(biāo)準(zhǔn),設(shè)計模式等方面。在現(xiàn)代社會中,軟件應(yīng)用于多個方面。典型的軟件比如有電子郵件,嵌入式系統(tǒng),人機界面,辦公套件,操作系統(tǒng),編譯器,數(shù)據(jù)庫,游戲等。同時,各個行業(yè)幾乎都有計算機軟件的應(yīng)用,比如工業(yè),農(nóng)業(yè),銀行,航空,政府部門等。這些應(yīng)用促進(jìn)了經(jīng)濟和社會的發(fā)展,使得人們的工作更加高效,同時提高了生活質(zhì)量。

相關(guān)學(xué)者、組織機構(gòu)都分別給出了定義:

Boehm:運用現(xiàn)代科學(xué)技術(shù)知識來設(shè)計并構(gòu)造計算機程序及為開發(fā)、運行和維護(hù)這些程序所必需的相關(guān)文件資料。

IEEE:軟件工程是開發(fā)、運行、維護(hù)和修復(fù)軟件的系統(tǒng)方法。

Fritz Bauer:建立并使用完善的工程化原則,以較經(jīng)濟的手段獲得能在實際機器上有效運行的可靠軟件的一系列方法。

軟件工程專業(yè)學(xué)幾年

軟件工程學(xué)的主要內(nèi)容是軟件開發(fā)技術(shù)和軟件工程管理。 軟件開發(fā)技術(shù)包含軟件工程方法學(xué)、軟件工具和軟件開發(fā)環(huán)境;軟件工程管理學(xué)包含軟件工程經(jīng)濟學(xué)和軟件管理學(xué)。 專業(yè)簡介是計算機領(lǐng)域發(fā)展最快的學(xué)科分支之一,國家非常重視軟件行業(yè)的發(fā)展,對軟件人才的培養(yǎng)給予了非常優(yōu)惠的政策。本專業(yè)培養(yǎng)掌握計算機軟件基本理論知識,熟悉軟件開發(fā)和管理技術(shù)、能夠在計算機軟件領(lǐng)域中從事軟件設(shè)計、開發(fā)和管理的高級人才。 主修課程該專業(yè)除了學(xué)習(xí)公共基礎(chǔ)課外,還將系統(tǒng)學(xué)習(xí)離散數(shù)學(xué)、數(shù)據(jù)結(jié)構(gòu)、算法分析、面向?qū)ο蟪绦蛟O(shè)計、現(xiàn)代操作系統(tǒng)、數(shù)據(jù)庫原理與實現(xiàn)技術(shù)、編譯原理、軟件工程、軟件項目管理、計算機安全等課程,根據(jù)學(xué)生的興趣還可以選修一些其它選修課。 畢業(yè)去向除考取國內(nèi)外名牌大學(xué)研究生外,主要畢業(yè)去向是計算機軟件專業(yè)公司﹑信息咨詢公司﹑以及金融等其它獨資、合資企業(yè)。 培養(yǎng)目標(biāo)本專業(yè)培養(yǎng)適應(yīng)社會發(fā)展需求,德、智、體、美全面發(fā)展,具有扎實的計算機應(yīng)用理論和知識基礎(chǔ),掌握軟件工程領(lǐng)域的前沿技術(shù)和軟件開發(fā)方法,具有較強的實踐能力和創(chuàng)新精神,具備較強的軟件項目的系統(tǒng)分析、設(shè)計、開發(fā)和測試能力,能夠按照工程化的原則和方法從事軟件項目開發(fā)和管理的應(yīng)用型人才。 就業(yè)方向本專業(yè)學(xué)生畢業(yè)后可以從事各級各類企事單位的業(yè)辦公自動化處理、計算機安裝與維護(hù)、網(wǎng)頁制作、計算機網(wǎng)絡(luò)和專業(yè)服務(wù)器的維護(hù)管理和開發(fā)工作、動態(tài)商務(wù)網(wǎng)站開發(fā)與管理、軟件測試與開發(fā)及計算機相關(guān)設(shè)備的商品貿(mào)易等方面的有關(guān)工作。 就業(yè)前景分析 目前我國的軟件行業(yè)規(guī)模不是很大,有些軟件企業(yè)在軟件制作上,也只是采用了一些軟件工程的思想,距離大規(guī)模的工業(yè)化大生產(chǎn)比較還是有一定的差距;原因有管理體制的問題,市場問題,政策問題,也有軟件工程理論不全面和不完善的問題。所以軟件工程的研究和應(yīng)用,以及我國軟件行業(yè)的進(jìn)一步發(fā)展,都需要一定的既有軟件工程的理論基礎(chǔ)和研究能力,又有一定的實踐經(jīng)驗的軟件工程科學(xué)技術(shù)人員來推動。軟件工程的前途是光明的。第一年一般都會學(xué)習(xí)數(shù)學(xué)、英語這些公共課。數(shù)學(xué)和英語對你今后來說是非常重要的!英語別指望課能學(xué)到東西,要看你專業(yè)的東西。 除了都要學(xué)的高數(shù),今后還要學(xué)習(xí)其他數(shù)學(xué),例如線代,離散,概率。如果你不學(xué)好數(shù)學(xué),你當(dāng)然也可以寫軟件,但是當(dāng)你想更深入的時候就需要這些數(shù)學(xué)功底了。相對于數(shù)學(xué)來說,英語是必須的,因為今后基本上所有優(yōu)秀的教材和技術(shù)文章都是英文的。

軟件工程涉及哪些領(lǐng)域

軟件工程三要素包括:方法、工具和過程。方法是完成軟件開發(fā)的各項任務(wù)的技術(shù)方法,為軟件開發(fā)提供“如何做”的技術(shù);工具為運用方法而提供的自動的或半自動的軟件工程的支撐環(huán)境;過程是為了獲得高質(zhì)量的軟件所需要完成的一系列任務(wù)的框架。

掃描二維碼推送至手機訪問。

版權(quán)聲明:本文由尚恩教育網(wǎng)發(fā)布,如需轉(zhuǎn)載請注明出處。

本文鏈接:http://www.lmix.com.cn/view/41583.html

標(biāo)簽: 軟件

“軟件工程包括哪些 軟件工程專業(yè)學(xué)幾年” 的相關(guān)文章

計算機和軟件的區(qū)別是什么 計算機科學(xué)與技術(shù)和應(yīng)用技術(shù)區(qū)別

計算機和軟件的區(qū)別是什么 計算機科學(xué)與技術(shù)和應(yīng)用技術(shù)區(qū)別

計算機專業(yè)和軟件專業(yè)有什么區(qū)別?計算機應(yīng)用技術(shù)與軟件技術(shù)區(qū)別,計算機應(yīng)用技術(shù)專業(yè)和軟件技術(shù)專業(yè)有什么不同?計算機科學(xué)與技術(shù)和軟件工程有什么區(qū)別?計算機和軟件的區(qū)別,計算機科學(xué)與技術(shù)和軟件工程區(qū)別是什么?本文導(dǎo)航計算機和軟件工程是一個專業(yè)嗎計算機科學(xué)與技術(shù)和應(yīng)用技術(shù)區(qū)別計算機專業(yè)和軟件工程專業(yè)的區(qū)別軟...

軟件工程是什么學(xué)科 為什么要提出軟件工程的概念

軟件工程是什么學(xué)科 為什么要提出軟件工程的概念

軟件工程是指( )的工程學(xué)科,簡述什么是軟件工程?什么是軟件工程專業(yè)???什么是軟件工程專業(yè)?軟件工程是文科還是理科。本文導(dǎo)航軟件工程分為什么學(xué)為什么要提出軟件工程的概念哪個本科有軟件工程專業(yè)本科軟件工程學(xué)的什么軟件工程專業(yè)對學(xué)科成績有要求嗎軟件工程分為什么學(xué)軟件工程是指計算機軟件開發(fā)和維護(hù)的工程學(xué)科...

848軟件工程有哪些 軟件工程有什么學(xué)科限制

848軟件工程有哪些 軟件工程有什么學(xué)科限制

軟件工程的全部科目有哪些,844軟件工程學(xué)科專業(yè)基礎(chǔ)綜合是什么意思?軟件類專業(yè)包括哪些,軟件工程包括哪些,合工大計算機考研考408嗎?上海理工大學(xué)考研科目是什么?本文導(dǎo)航軟件工程大類包括什么軟件工程有什么學(xué)科限制做軟件的專業(yè)是什么專業(yè)軟件工程包括了幾個階段合工大考研計算機錄取多少人上海理工大學(xué)可以考...

鄭州大學(xué)軟件怎么樣 鄭州大學(xué)的軟件工程專業(yè)怎么樣

鄭州大學(xué)的軟件學(xué)院(三本)怎么樣???鄭州大學(xué)的軟件工程專業(yè)怎么樣?鄭州大學(xué)軟件工程怎么樣???鄭州大學(xué)軟件技術(shù)學(xué)院怎么樣?問下大家,鄭州大學(xué)的軟件工程怎么樣???本文導(dǎo)航鄭州大學(xué)的軟件學(xué)院(三本)怎么樣???鄭州大學(xué)的軟件工程專業(yè)怎么樣為什么河南大學(xué)軟件工程學(xué)費很貴鄭州大學(xué)軟件技術(shù)學(xué)院怎么樣問下大家,鄭...

軟件工程需要什么好 軟件工程要學(xué)幾門課

軟件工程需要什么好 軟件工程要學(xué)幾門課

軟件工程專業(yè)學(xué)些什么好?想成為軟件工程師都應(yīng)學(xué)什么東西?軟件工程要學(xué)什么?軟件工程專業(yè)買什么電腦好?作為一個學(xué)軟件工程的新生,用啥牌子的筆記本電腦比較好,大學(xué)學(xué)軟件工程,建議買什么電腦好?本文導(dǎo)航軟件工程專業(yè)包含哪些軟件工程師怎么算是學(xué)的好的軟件工程要學(xué)幾門課學(xué)軟件工程的學(xué)生用什么電腦最好學(xué)習(xí)軟件編...

軟件編程考什么研 軟件工程考研可選什么專業(yè)

喜歡編程 考研考哪個方向好,女生學(xué)軟件考哪方面的研究生好,軟件工程應(yīng)該考哪個方向的研,考研與軟件編程相關(guān)的專業(yè),考研與軟件編程相關(guān)的專業(yè)有哪些,哪些學(xué)校好,將來想從事軟件編程或網(wǎng)絡(luò)的工作,應(yīng)該考什么專業(yè)的研究生?本文導(dǎo)航計算機考研跟編程能力有關(guān)系嗎女生讀通信研究生好嗎軟件工程讀研可跨哪些專業(yè)考研軟件...

發(fā)表評論

訪客

◎歡迎參與討論,請在這里發(fā)表您的看法和觀點。