關(guān)于軟件工程的定義,什么是軟件工程這個問題很多朋友還不知道,今天小六來為大家解答以上的問題,現(xiàn)在讓我們一起來看看吧!
1、軟件工程 (Software Engineering,簡稱為SE)是一門研究用工程化方法構(gòu)建和維護有效的、實用的和高質(zhì)量的軟件的學(xué)科。
2、它涉及到程序設(shè)計語言,數(shù)據(jù)庫,軟件開發(fā)工具,系統(tǒng)平臺,標(biāo)準(zhǔn),設(shè)計模式等方面。
3、 在現(xiàn)代社會中,軟件應(yīng)用于多個方面。
4、典型的軟件比如有電子郵件,嵌入式系統(tǒng),人機界面,辦公套件,操作系統(tǒng),編譯器,數(shù)據(jù)庫,游戲等。
5、同時,各個行業(yè)幾乎都有計算機軟件的應(yīng)用,比如工業(yè),農(nóng)業(yè),銀行,航空,政府部門等。
6、這些應(yīng)用促進了經(jīng)濟和社會的發(fā)展,使得人們的工作更加高效,同時提高了生活質(zhì)量。
7、 軟件工程師是對應(yīng)用軟件創(chuàng)造軟件的人們的統(tǒng)稱,軟件工程師按照所處的領(lǐng)域不同可以分為系統(tǒng)分析員,軟件設(shè)計師,系統(tǒng)架構(gòu)師,程序員,測試員等等。
8、人們也常常用程序員來泛指各種軟件工程師。
9、 軟件工程的主要課程: 外語、高等數(shù)學(xué)、線性代數(shù)、高等代數(shù)、電子技術(shù)基礎(chǔ)、離散數(shù)學(xué)、計算機引論(C語言)、數(shù)據(jù)結(jié)構(gòu)、C++程序設(shè)計、匯編語言程序設(shè)計、算法設(shè)計與分析、計算機組成原理與體系結(jié)構(gòu)、數(shù)據(jù)庫系統(tǒng)、計算機網(wǎng)絡(luò)、軟件工程、軟件測試技術(shù)、軟件需求與項目管理、軟件設(shè)計實例分析、CMM/ISO9000等。
10、 軟件工程(SoftWare Engineering)的框架可概括為:目標(biāo)、過程和原則。
11、 (1)軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。
12、正確性指軟件產(chǎn)品達到預(yù)期功能的程度。
13、可用性指軟件基本結(jié)構(gòu)、實現(xiàn)及文檔為用戶可用的程度。
14、開銷合宜是指軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。
15、這些目標(biāo)的實現(xiàn)不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。
16、 (2)軟件工程過程:生產(chǎn)一個最終能滿足需求且達到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。
17、軟件工程過程主要包括開發(fā)過程、運作過程、維護過程。
18、它們覆蓋了需求、設(shè)計、實現(xiàn)、確認(rèn)以及維護等活動。
19、需求活動包括問題分析和需求分析。
20、問題分析獲取需求定義,又稱軟件需求規(guī)約。
21、需求分析生成功能規(guī)約。
22、設(shè)計活動一般包括概要設(shè)計和詳細(xì)設(shè)計。
23、概要設(shè)計建立整個軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說明、每一模塊的接口定義。
24、詳細(xì)設(shè)計產(chǎn)生程序員可用的模塊說明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說明及加工描述。
25、實現(xiàn)活動把設(shè)計結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。
26、確認(rèn)活動貫穿于整個開發(fā)過程,實現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿足用戶的要求。
27、維護活動包括使用過程中的擴充、修改與完善。
28、伴隨以上過程,還有管理過程、支持過程、培訓(xùn)過程等。
29、 (3)軟件工程的原則是指圍繞工程設(shè)計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。
30、[編輯本段]軟件工程的定義 軟件工程一直以來都缺乏一個統(tǒng)一的定義,很多學(xué)者、組織機構(gòu)都分別給出了自己的定義: ?。?)。
31、Barry Boehm:運用現(xiàn)代科學(xué)技術(shù)知識來設(shè)計并構(gòu)造計算機程序及為開發(fā)、運行和維護這些程序所必需的相關(guān)文件資料。
32、 ?。?)。
33、IEEE在軟件工程術(shù)語匯編中的定義:軟件工程是:1.將系統(tǒng)化的、嚴(yán)格約束的、可量化的方法應(yīng)用于軟件的開發(fā)、運行和維護,即將工程化應(yīng)用于軟件;2.在1中所述方法的研究 ?。?)。
34、Fritz Bauer在NATO會議上給出的定義:建立并使用完善的工程化原則,以較經(jīng)濟的手段獲得能在實際機器上有效運行的可靠軟件的一系列方法。
35、 目前比較認(rèn)可的一種定義認(rèn)為:軟件工程是研究和應(yīng)用如何以系統(tǒng)性的、規(guī)范化的、可定量的過程化方法去開發(fā)和維護軟件,以及如何把經(jīng)過時間考驗而證明正確的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來。
36、 ?。?)。
37、《計算機科學(xué)技術(shù)百科全書》中的定義:軟件工程是應(yīng)用計算機科學(xué)、數(shù)學(xué)及管理科學(xué)等原理,開發(fā)軟件的工程。
38、軟件工程借鑒傳統(tǒng)工程的原則、方法,以提高質(zhì)量、降低成本。
39、其中,計算機科學(xué)、數(shù)學(xué)用于構(gòu)建模型與算法,工程科學(xué)用于制定規(guī)范、設(shè)計范型(paradigm)、評估成本及確定權(quán)衡,管理科學(xué)用于計劃、資源、質(zhì)量、成本等管理。
本文分享完畢,希望對大家有所幫助。
標(biāo)簽:
免責(zé)聲明:本文由用戶上傳,如有侵權(quán)請聯(lián)系刪除!