軟件工程師評(píng)職稱論文
軟件工程師評(píng)職稱論文
軟件工程是一門研究用工程化方法構(gòu)建和維護(hù)有效的、實(shí)用的和高質(zhì)量的軟件的學(xué)科。下面是由學(xué)習(xí)啦小編整理的軟件工程師評(píng)職稱論文,謝謝你的閱讀。
軟件工程師評(píng)職稱論文篇一
淺析軟件工程
摘要:軟件工程專業(yè)是計(jì)算機(jī)領(lǐng)域發(fā)展最快的學(xué)科分支之一,軟件工程(Software Engineering,簡(jiǎn)稱為SE)是一門研究用工程化方法構(gòu)建和維護(hù)有效的、實(shí)用的和高質(zhì)量的軟件的學(xué)科。這一學(xué)科包括許多的內(nèi)容,具體來(lái)講有程序設(shè)計(jì)語(yǔ)言,數(shù)據(jù)庫(kù),軟件開發(fā)工具,系統(tǒng)平臺(tái),標(biāo)準(zhǔn),設(shè)計(jì)模式等。當(dāng)今社會(huì),網(wǎng)絡(luò)化迅速發(fā)展,軟件的應(yīng)用領(lǐng)域越來(lái)越廣?,F(xiàn)在比較普遍的軟件有電子郵件,人機(jī)界面,辦公套件,操作系統(tǒng),游戲等。目前,基本上每個(gè)行業(yè)都會(huì)某種程度的運(yùn)用到計(jì)算機(jī)軟件。這些應(yīng)用對(duì)于推動(dòng)經(jīng)濟(jì)和社會(huì)的發(fā)展起到了舉足輕重的作用,提高了工作效率,改善了人們的生活質(zhì)量。
關(guān)鍵詞:軟件工程 計(jì)算機(jī)領(lǐng)域 程序設(shè)計(jì) 開發(fā)工具 設(shè)計(jì)模式 生命周期、軟件開發(fā)
1 概述
軟件工程是研究和應(yīng)用如何以系統(tǒng)性的、規(guī)范化的、可定量的過(guò)程化方法去開發(fā)和維護(hù)軟件,以及如何把經(jīng)過(guò)時(shí)間考驗(yàn)而證明正確的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來(lái)的學(xué)科。這一學(xué)科包括許多的內(nèi)容,具體來(lái)講有程序設(shè)計(jì)語(yǔ)言,數(shù)據(jù)庫(kù),軟件開發(fā)工具,系統(tǒng)平臺(tái),標(biāo)準(zhǔn),設(shè)計(jì)模式等。當(dāng)今社會(huì),網(wǎng)絡(luò)化迅速發(fā)展,軟件的應(yīng)用領(lǐng)域越來(lái)越廣?,F(xiàn)在比較普遍的軟件有電子郵件,人機(jī)界面,辦公套件,操作系統(tǒng),游戲等。目前,基本上每個(gè)行業(yè)都會(huì)某種程度的運(yùn)用到計(jì)算機(jī)軟件。這些應(yīng)用對(duì)于推動(dòng)經(jīng)濟(jì)和社會(huì)的發(fā)展起到了舉足輕重的作用,提高了工作效率,改善了人們的生活質(zhì)量。
我們究竟是將軟件的開發(fā)看成一門科學(xué),還是將其看成是一門工程,關(guān)于這個(gè)問(wèn)題已經(jīng)討論了很長(zhǎng)時(shí)間了。事實(shí)上,軟件的開發(fā)具備這兩者的特征。但是我們不能將二者混淆了。大多數(shù)人認(rèn)為軟件工程基于計(jì)算機(jī)科學(xué)和信息科學(xué)就像是傳統(tǒng)意義上的工程學(xué)之于物理和化學(xué)。在世界各個(gè)國(guó)家,尤其是美國(guó)大約有40%的軟件工程師都有計(jì)算機(jī)科學(xué)的學(xué)位。他們可能不經(jīng)常運(yùn)用到計(jì)算機(jī)科學(xué)上的知識(shí),但是會(huì)經(jīng)常運(yùn)用到軟件工程上的知識(shí)。許多應(yīng)用都需要軟件工程,在軟件開發(fā)的許多程序中也需要軟件工程。軟件工程的主要作用就是指導(dǎo)軟件項(xiàng)目的方方面面。在軟件工程中,軟件開發(fā)與各種市場(chǎng)活動(dòng)緊密相連。軟件工程的方法學(xué)認(rèn)為程序員在開發(fā)軟件的時(shí)候是處在一個(gè)團(tuán)隊(duì)中的,而且在編寫程序時(shí)要符合軟件的需求,設(shè)計(jì),以及客戶的利益。
伴隨著開發(fā)技術(shù)的不斷進(jìn)步,軟件開發(fā)過(guò)程也在不斷的改進(jìn)。從早期的瀑布式(Waterfall)的開發(fā)模型直到最近開始興起的敏捷開發(fā)方法(Agile),表現(xiàn)出來(lái)的是隨著時(shí)代的變化,軟件產(chǎn)業(yè)對(duì)于開發(fā)過(guò)程的認(rèn)識(shí)也在不斷的變化,對(duì)于各種類型項(xiàng)目的理解方法也在發(fā)生著變化。在美國(guó)曾經(jīng)有權(quán)威機(jī)構(gòu)對(duì)軟件組織的績(jī)效做過(guò)評(píng)估,所得到結(jié)論是:軟件工程的專業(yè)分工不足,是造成品質(zhì)低落、時(shí)程延誤、預(yù)算超支的最關(guān)鍵因素。2003年,The Standish Group年度報(bào)告指出,在他們調(diào)查的13522個(gè)專案中,有66%的軟件專案失敗、82%超出時(shí)程、48%推出時(shí)缺乏必需的功能,總計(jì)約550億美元浪費(fèi)在不良的計(jì)劃、預(yù)算或軟件估算上。
2 軟件工程的需求分析
有一種觀點(diǎn)認(rèn)為軟件工程是學(xué)習(xí)怎么做軟件的,對(duì)吧?我認(rèn)為,這種觀點(diǎn)算對(duì),但不是全對(duì)。得到一個(gè)軟件產(chǎn)品,自然是軟件工程的目的所在,但是軟件工程所包含的卻不僅僅是這些。就拿軟件業(yè)界比較常見的例子來(lái)給大家講一下,這個(gè)例子就是蓋房子,我們蓋房子,是不是就買塊地,然后準(zhǔn)備好建材,就哐當(dāng)哐當(dāng)?shù)亻_始建房子了呢?大家明白不是這樣,要建好一座房子,先要對(duì)土地進(jìn)行測(cè)量勘察,確定可以在上面建房屋,之后還得先規(guī)劃出整個(gè)房子的藍(lán)圖來(lái),接下來(lái)才是對(duì)根據(jù)藍(lán)圖開始建房子。建好房子后,還得經(jīng)過(guò)一些檢測(cè),比如甲醛有沒(méi)有超標(biāo)啊,包工頭有沒(méi)有偷工減料啊,這些都合格之后才能交付使用。于是有人入住了,住久了,發(fā)現(xiàn)浴室漏水,那就得修補(bǔ)一下。再住久了,住了幾十年,房子舊得不成樣子了,這時(shí)候它的壽命也到了終點(diǎn)了。
軟件工程之所以叫軟件工程,就是因?yàn)樗褂昧斯こ虒W(xué)方法來(lái)幫助軟件開發(fā),建筑也是一門工程學(xué),所以它們之間是會(huì)有些共通之處的,不信?請(qǐng)看:首先,我們?cè)趯?duì)土地進(jìn)行測(cè)量勘察的時(shí)候,是在確定它是否適宜建房子,在軟件工程上來(lái)講,這個(gè)術(shù)語(yǔ)叫“可行性分析”,可行性分析的任務(wù)就是確定開發(fā)這個(gè)軟件是否在技術(shù)上可以做到,在資金上有充足支持,在市場(chǎng)上能夠受歡迎,如果答案是肯定的,那么就可以繼續(xù)下一步的開發(fā)步驟。規(guī)劃出房子的藍(lán)圖,在軟件工程上被分為兩個(gè)過(guò)程:“需求分析”、“設(shè)計(jì)”。需求分析就是得到軟件需要做什么,需要實(shí)現(xiàn)什么功能。而設(shè)計(jì)就是告訴開發(fā)人員怎么實(shí)現(xiàn)這些功能。也就是規(guī)劃出軟件的一個(gè)藍(lán)圖,在“編碼”階段再對(duì)其進(jìn)行實(shí)現(xiàn),這就對(duì)應(yīng)著建房的關(guān)鍵階段,就是按照藍(lán)圖蓋好房子啦。房子在入住前需要檢測(cè)是否合格,軟件在交付給用戶使用的時(shí)候自然也需要檢測(cè)是否合格,這個(gè)階段叫做“測(cè)試”。檢測(cè)合格了,那就可以交付給用戶使用,在市場(chǎng)上銷售。軟件不可能完美無(wú)缺,所以在使用過(guò)程中,一定會(huì)出現(xiàn)某些問(wèn)題,這時(shí)候就要將問(wèn)題提交給軟件開發(fā)人員,修復(fù)問(wèn)題,這個(gè)階段就是軟件過(guò)程中的“維護(hù)”階段。過(guò)了一段時(shí)間,這段時(shí)間可能很長(zhǎng),也可能很短,這軟件已經(jīng)不適應(yīng)生產(chǎn)力的發(fā)展了,那么就可以正式宣告這軟件壽終正寢了,至此,軟件的生命周期才正式結(jié)束。
我們還要注意,軟件生命周期包括制定計(jì)劃、需求分析和定義、軟件設(shè)計(jì)、程序編碼、軟件測(cè)試、運(yùn)行維護(hù)這六個(gè)階段,是指一個(gè)計(jì)算機(jī)軟件從功能確定、設(shè)計(jì)直到不再使用該軟件的全過(guò)程。
軟件工程,正是貫穿在一個(gè)軟件的整個(gè)生命周期中的。從開發(fā)某個(gè)軟件的計(jì)劃被提起或者立項(xiàng),軟件工程就開始發(fā)揮著作用,用自己的一套方法體系,來(lái)指導(dǎo)軟件開發(fā)的整個(gè)過(guò)程。因此軟件工程不等于編程,編程只是軟件工程整個(gè)過(guò)程中的一個(gè)重要環(huán)節(jié)而已。據(jù)統(tǒng)計(jì),在整個(gè)開發(fā)周期中,平均編碼這個(gè)過(guò)程只占了整個(gè)周期的大約30%的時(shí)間。
3 軟件工程原則
軟件工程學(xué)主要是用來(lái)對(duì)軟件開發(fā)和維護(hù)進(jìn)行指導(dǎo),是為了經(jīng)濟(jì)地獲得能夠在實(shí)際機(jī)器上有效運(yùn)行的可靠軟件而建立和使用的一系列完整的工程化原則。它充分的運(yùn)用計(jì)算機(jī)科學(xué)、數(shù)學(xué)及管理科學(xué)等方面的知識(shí),并借鑒傳統(tǒng)工程的原則、方法來(lái)完成開發(fā)軟件的任務(wù),這樣就能夠最大限度的開發(fā)高質(zhì)量的軟件,并且能夠減少成本。
點(diǎn)擊下頁(yè)還有更多>>>軟件工程師評(píng)職稱論文