軟件工程專題
1、軟件工程知識
1.1概述
軟件工程是指應(yīng)用計算機科學(xué)、數(shù)學(xué)及管理科學(xué)等原理,以工程化的原則和方法來解決軟件問題的工程。其目的是提高軟件生產(chǎn)率、提高軟件質(zhì)量、減低軟件成本。
軟件工程是1968年在德國的NATO會議上提出的,希望用工程化的原則和方法來克服軟件危機;而軟件危機就是軟件開發(fā)和維護過程中的各種問題,由于軟件開發(fā)階段缺乏好的方法的指導(dǎo)和好的工具的輔助,而且缺少有關(guān)的文檔,使得大量的軟件難以維護。
軟件生命周期是指由軟件定義、軟件開發(fā)和軟件維護等階段組成的全過程,反映軟件生存期內(nèi)各種工作得組織以及各個階段如何銜接。下表歸納了軟件生存周期各個階段的任務(wù)、參與人員和產(chǎn)生文檔。
常見的軟件開發(fā)模型有瀑布模型、演化模型、螺旋模型和噴泉模型等。
階段 |
任務(wù) |
參與人員 |
產(chǎn)生文檔 | |
軟件定義階段——待開發(fā)軟件要“做什么” | ||||
系統(tǒng)分析 |
確定待開發(fā)軟件的總體要求和適用范圍,以及與之有關(guān)的硬件、支撐軟件的要求 |
用戶、項目負責(zé)人、系統(tǒng)分析員 |
可合并項目計劃書中 | |
軟件項目計劃 |
確定待開發(fā)軟件的目標,對其進行可行性分析,并對資源分配、進度安排等做出合理的計劃 |
用戶、項目負責(zé)人、系統(tǒng)分析員 |
可行性分析報告、項目計劃書 | |
需求分析 |
確定待開發(fā)軟件的功能、性能、界面等要求,從而確定系統(tǒng)的邏輯模型 |
用戶、項目負責(zé)人、系統(tǒng)分析員 |
需求規(guī)格說明書 | |
軟件開發(fā)階段——待開發(fā)軟件“怎么做” | ||||
軟件設(shè)計 |
概要設(shè)計 |
模塊分解,確定軟件的結(jié)構(gòu),模塊的功能和模塊間的接口,以及全局數(shù)據(jù)結(jié)構(gòu)的設(shè)計 |
系統(tǒng)分析員、高級程序員 |
設(shè)計說明書、數(shù)據(jù)說明書、模塊開發(fā)卷宗 |
詳細設(shè)計 |
設(shè)計每個模塊的實現(xiàn)細節(jié)和局部數(shù)據(jù)結(jié)構(gòu)的設(shè)計 |
高級程序員、程序員 | ||
編碼 |
用某種程序語言為每個模塊編寫程序 |
高級程序員、程序員 |
程序清單 | |
軟件測試 |
發(fā)現(xiàn)軟件中的錯誤,并加以糾正 |
高級程序員或系統(tǒng)分析員(另一部門或單位) |
軟件測試計劃、軟件測試用例說明,軟件測試報告 | |
軟件維護階段—開發(fā)后交付使用的軟件的維護 | ||||
軟件維護 |
使軟件適應(yīng)外界環(huán)境的變化、實現(xiàn)功能的擴充和質(zhì)量的改善而修改軟件 |
維護人員 |
維護計劃、維護報告 |
軟件由計算機程序、數(shù)據(jù)及文檔組成,同時與硬件、數(shù)據(jù)庫人、過程等共同構(gòu)成計算機系統(tǒng)。軟件工程包括三個要素:方法、工具和過程。
主要的軟件開發(fā)方法有以下幾種方法:
生命周期法:命周期法認為:每一個軟件系統(tǒng)都有一定的生命周期。軟件的生命周期是指一個軟件系統(tǒng)從其提出、調(diào)查到分析、設(shè)計和有效使用,直至被淘汰或取代的整個期間。軟件生命周期法就是按軟件生命周期的各個階段劃分任務(wù),按一定的規(guī)則和步驟,有效地進行軟件開發(fā)的方法。
通常一個軟件系統(tǒng)的生命周期可分為五個階段:準備階段、分析階段、設(shè)計階段、實施階段、運行與維護階段
原型法:原型法是先根據(jù)用戶的最主要要求,開發(fā)出能實現(xiàn)系統(tǒng)最基本功能的一個原型,再根據(jù)用戶對原型使用與評價的意見,反復(fù)修改完善原型,直到等到用戶滿意的最終系統(tǒng)為止。
原型法分4個階段:確定用戶需求;設(shè)計原型;使用、評價原型;修改、完善原型。
相關(guān)推薦:2010年計算機軟件水平考試時間安排通知北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |