




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、1.1 軟件的發(fā)展歷史軟件的發(fā)展歷史1.軟件的發(fā)展歷史 2.軟件的概念和特點(diǎn) 3.軟件的分類 4.軟件危機(jī) 1.軟件的發(fā)展歷史軟件的發(fā)展歷史 1. 早期階段程序的質(zhì)量完全依賴于程序員個(gè)人的技巧。2. 第二階段人們開始采用“軟件工程”的方法來解決“軟件危機(jī)”問題。3. 第三階段 軟件開發(fā)技術(shù)的度量問題受到重視,最著名的有軟件工作量估計(jì)COCOMO模型、軟件過程改進(jìn)模型CMM等。4. 第四階段面向?qū)ο蠹夹g(shù)在許多領(lǐng)域迅速取代了傳統(tǒng)軟件開發(fā)方法。 2.軟件的概念和特點(diǎn)軟件的概念和特點(diǎn)軟件的概念: (1)能夠完成預(yù)定功能和性能的可執(zhí)行指令;(2)使得程序能夠適當(dāng)?shù)夭僮餍畔⒌臄?shù)據(jù)結(jié)構(gòu);(3)描述程序的操作
2、和使用的文檔。軟件具有的特點(diǎn):(1)軟件是邏輯的,而不是物理的產(chǎn)品。(2)軟件是由開發(fā)或工程化而形成的,沒有明顯的制造過程。 (3)軟件在運(yùn)行和使用期間,不存在磨損和老化問題,但它存在退化問題。 (4)大多數(shù)軟件是自定的,而不是通過已有構(gòu)件組裝而成的。(5)軟件成本相當(dāng)昂貴。 (6)軟件本身是復(fù)雜的。3.軟件的分類軟件的分類 從不同角度對(duì)計(jì)算機(jī)軟件做適當(dāng)?shù)姆诸?1.基于軟件功能的劃分(1)系統(tǒng)軟件(2)支撐軟件(3) 應(yīng)用軟件2.基于軟件運(yùn)作方式的劃分(1)實(shí)時(shí)處理軟件,(2)分時(shí)軟件,(3)交互式軟件,(4)批處理軟件。3.基于軟件規(guī)模的劃分4.基于軟件失效的影響進(jìn)行劃分5.基于軟件服務(wù)對(duì)象
3、的范圍進(jìn)行劃分4.軟件危機(jī)軟件危機(jī) 1. 軟件危機(jī)的表現(xiàn) (1)軟件開發(fā)的進(jìn)度難以控制,經(jīng)常出現(xiàn)經(jīng)費(fèi)超預(yù)算、完成期限一再拖延的現(xiàn)象。 (2)軟件需求在開發(fā)初期不明確,導(dǎo)致矛盾在后期集中暴露,從而對(duì)整個(gè)開發(fā)過程帶來災(zāi)難性的后果。(3)由于缺乏完整規(guī)范的資料,加之軟件測試不充分,從而造成軟件質(zhì)量低下,運(yùn)行中出現(xiàn)大量問題。 4.軟件危機(jī)軟件危機(jī) 2.危機(jī)的原因 用戶對(duì)軟件需求的描述不精確 。軟件開發(fā)人員對(duì)用戶需求的理解與用戶的本來愿望有差異 。各類人員的信息交流不及時(shí)、不準(zhǔn)確、有時(shí)還會(huì)產(chǎn)生誤解。開發(fā)人員產(chǎn)生疏漏和錯(cuò)誤。缺乏有力的方法和工具方面的支持 。軟件產(chǎn)品的特殊性和人智力的局限性 。 1.2 軟
4、件工程與軟件過程軟件工程與軟件過程1. 軟件工程的概念 2.軟件工程項(xiàng)目的基本目標(biāo) 3.軟件工程學(xué)的原則 4.軟件過程與軟件生存周期 5.常見的軟件開發(fā)模型 1. 軟件工程的概念軟件工程的概念 軟件工程是一種層次化的技術(shù)。過程、方法和工具是軟件工程的三個(gè)要素。(1) 軟件工程過程是進(jìn)行一系列有組織的活動(dòng),從而能夠合理和及時(shí)地開發(fā)出計(jì)算機(jī)軟件。(2) 軟件工程方法為軟件開發(fā)提供“如何做”的技術(shù),它包括了項(xiàng)目計(jì)劃、需求分析、系統(tǒng)設(shè)計(jì)、程序?qū)崿F(xiàn)、測試與維護(hù)等一系列的任務(wù)。 (3) 軟件工具為過程和方法提供自動(dòng)的或半自動(dòng)的支持。這些軟件工具被集成起來,建立起一個(gè)支持軟件開發(fā)的系統(tǒng),稱之為計(jì)算機(jī)輔助軟件
5、工程(CASE,Computer Aided Software Engineering)2 軟件工程項(xiàng)目的基本目標(biāo) 目標(biāo)如下: (1) 合理預(yù)算開發(fā)成本,付出較低的開發(fā)費(fèi)用;(2) 實(shí)現(xiàn)預(yù)期的軟件功能,達(dá)到較好的軟件性能,滿足用戶的需求;(3) 提高所開發(fā)軟件的可維護(hù)性,降低維護(hù)費(fèi)用; (4) 提高軟件開發(fā)生產(chǎn)率,及時(shí)交付使用。3. 軟件工程學(xué)的原則 軟件工程項(xiàng)目的目標(biāo)適用于所有的軟件系統(tǒng)開發(fā)。為了達(dá)到這些目標(biāo),在軟件開發(fā)過程中必須遵循下列軟件工程原則: 抽象、信息隱藏、模塊化、局部化、一致性、完整性和可驗(yàn)證性。4.軟件過程與軟件生存周期 v軟件過程是為獲得軟件產(chǎn)品,在軟件工具支持下由軟件工程
6、師完成的一系列軟件工程活動(dòng)。不同的組織有不同的軟件過程,這些活動(dòng)可以重疊,執(zhí)行時(shí)也可以有迭代。 v軟件生存周期是指軟件產(chǎn)品從考慮其概念開始到該軟件產(chǎn)品交付使用,直至最終退役為止的整個(gè)過程,一般包括計(jì)劃、分析、設(shè)計(jì)、實(shí)現(xiàn)、測試、集成、交付、維護(hù)等階段。5 常見的軟件開發(fā)模型 v軟件開發(fā)模型是對(duì)軟件過程的建模,即用一定的流程將各個(gè)環(huán)節(jié)連接起來,并可用規(guī)范的方式操作全過程 。1.邊做邊改模型(Build-and-Fix Model) 2.瀑布模型(Waterfall Model) 3.快速原型模型(Rapid Prototype Model) 4.增量模型(Incremental Model) 5.
7、螺旋模型(Spiral Model) 1.邊做邊改模型(Build-and-Fix Model)在這種模型中,既沒有規(guī)格說明,也沒有經(jīng)過設(shè)計(jì),軟件隨著客戶的需要一次又一次地不斷被修改,如圖所示v 2.瀑布模型(Waterfall Model) 瀑布模型強(qiáng)調(diào)文檔的作用,并要求每個(gè)階段都要仔細(xì)驗(yàn)證。但是,這種模型的線性過程太理想化,已不再適合現(xiàn)代的軟件開發(fā)模式,幾乎被業(yè)界拋棄 v3.快速原型模型(Rapid Prototype Model)快速原型模型的第一步是建造一個(gè)快速原型,實(shí)現(xiàn)客戶或未來的用戶與系統(tǒng)的交互,用戶或客戶對(duì)原型進(jìn)行評(píng)價(jià),進(jìn)一步細(xì)化待開發(fā)軟件的需求。通過逐步調(diào)整原型使其滿足客戶的要
8、求,開發(fā)人員可以確定客戶的真正需求是什么;第二步則在第一步的基礎(chǔ)上開發(fā)客戶滿意的軟件產(chǎn)品。 v4.增量模型(Incremental Model)與建造大廈相同,軟件也是一步一步建造起來的。在增量模型中,軟件被作為一系列的增量構(gòu)件來設(shè)計(jì)、實(shí)現(xiàn)、集成和測試,每一個(gè)構(gòu)件是由多種相互作用的模塊所形成的提供特定功能的代碼片段構(gòu)成,如圖所示。 v5.螺旋模型(Spiral Model)1988年,Barry Boehm正式發(fā)表了軟件系統(tǒng)開發(fā)的“螺旋模型”,它將瀑布模型和快速原型模型結(jié)合起來,強(qiáng)調(diào)了其他模型所忽視的風(fēng)險(xiǎn)分析,特別適合于大型復(fù)雜的系統(tǒng)。 v 各種模型的比較 模型 優(yōu)點(diǎn) 缺點(diǎn) 瀑布模型 文檔驅(qū)動(dòng)
9、系統(tǒng) 可能不滿足客戶的需求快速原型模型 關(guān)注滿足客戶需求 可能導(dǎo)致系統(tǒng)設(shè)計(jì)差、效率低,難以維護(hù)增量模型 開發(fā)早期反饋及時(shí),易于維護(hù) 需要開放式體系結(jié)構(gòu),可能會(huì)設(shè)計(jì)差、效率低螺旋模型 風(fēng)險(xiǎn)驅(qū)動(dòng) 分析人員需要有經(jīng)驗(yàn)且經(jīng)過充分訓(xùn)練1.4 常用軟件開發(fā)方法簡介常用軟件開發(fā)方法簡介v1.結(jié)構(gòu)化方法v2.面向數(shù)據(jù)結(jié)構(gòu)的軟件開發(fā)方法v3.面向問題的分析法v4.原型化方法 v5.面向?qū)ο蟮能浖_發(fā)方法v6.可視化開發(fā)方法 習(xí)題一習(xí)題一v 1.什么是軟件工程過程?它包含那些過程?v 2.什么是軟件生存周期模型?有哪些主要模型?v 3.什么是軟件生存周期?它有那些活動(dòng)?v 4.什么是軟件開發(fā)方法?有那些主要方法?v 5.結(jié)構(gòu)化方法總的執(zhí)導(dǎo)思想是什么?v 6.軟件開發(fā)的目標(biāo)是什么?v 7.原型的作用是什么?v 8.瀑布模型有那些局限性?v 9.漸增模型有哪幾種?它們各有何特點(diǎn)?v 10.增量模型的基本
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 住宅室內(nèi)裝修合同
- 三農(nóng)村基層法治建設(shè)與實(shí)踐方案
- 模板安裝施工方案
- 建筑施工工程承包合同條例
- 鋪筑施工方案
- 洗手間防水卷材的施工方案
- 《大數(shù)據(jù)技術(shù)導(dǎo)論》-教案
- 安徽省宿州市靈璧縣2024-2025學(xué)年上學(xué)期八年級(jí)數(shù)學(xué)期末試卷(原卷版+解析版)
- 自貢賓館消防施工方案
- 年產(chǎn)1000噸微生物菌劑項(xiàng)目環(huán)評(píng)報(bào)告表
- 智能制造市場現(xiàn)狀及發(fā)展前景分析報(bào)告
- (高清版)WST 406-2024 臨床血液檢驗(yàn)常用項(xiàng)目分析質(zhì)量標(biāo)準(zhǔn)
- 擠包絕緣直流電纜脈沖電聲法(PEA)空間電荷測試方法
- 上海市疾控中心招聘信息考試試題及答案
- 消防安全技術(shù)綜合能力要點(diǎn)概述
- DL-T 5148-2021水工建筑物水泥灌漿施工技術(shù)條件-PDF解密
- 第8版精神病學(xué)
- 旅游經(jīng)濟(jì)發(fā)展背景下廣西民宿客棧的發(fā)展現(xiàn)狀、問題和對(duì)策分析-基于桂林市調(diào)查分析研究 旅游管理專業(yè)
- 道路施工安全隱患及防范措施
- 新生兒魚鱗病個(gè)案護(hù)理
- 生物質(zhì)燃料的資源開發(fā)與利用
評(píng)論
0/150
提交評(píng)論