版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、軟件工程與技術(shù),北京聯(lián)合大學(xué)信息學(xué)院 廖禮萍 E-Mail: , ,本課程學(xué)習(xí)的目的 本課程的主要內(nèi)容 本課程的特點(diǎn) 本課程的教/學(xué)及考核方式 主要參考書(shū)目 實(shí)驗(yàn)安排,課程簡(jiǎn)介,消除錯(cuò)誤地認(rèn)識(shí) 學(xué)習(xí)軟件工程基本理論 學(xué)習(xí)主流的軟件開(kāi)發(fā)方法 熟悉軟件開(kāi)發(fā)過(guò)程 掌握軟件開(kāi)發(fā)全過(guò)程中的各重要階段的任務(wù)及相關(guān)描述方法 ; 如何分析問(wèn)題并設(shè)計(jì)出合理的解決方案 如何保證軟件質(zhì)量 培養(yǎng)軟件工程師的基本素質(zhì),一、本課程學(xué)習(xí)目的,1、軟件工程的基本概念及軟件危機(jī) 2、軟件生存周期及軟件開(kāi)發(fā)模型 3、軟件計(jì)劃 4、軟件分析(需求分析) 5、軟件系統(tǒng)設(shè)計(jì) 6、軟件測(cè)試 7、軟件維護(hù) 8、面向?qū)ο筌浖こ?返回,二、
2、 主要內(nèi)容,1、是專(zhuān)業(yè)課; 2、屬“工程”學(xué)科; 3、是一門(mén)需不斷完善的、發(fā)展的、可創(chuàng)新的學(xué)科。,返回,三、課程特點(diǎn),1、主要參考書(shū)目: 軟件工程技術(shù)及應(yīng)用賈鐵軍著 機(jī)械工業(yè)出版社 2、其他參考書(shū)目: a.軟件工程 楊衛(wèi)東譯 人民郵電出版社 b.實(shí)用面向?qū)ο筌浖こ探坛?殷人昆等譯 電子工業(yè)出版社,返回,四、參考教材,第一章 軟件工程概述,本章要點(diǎn),1軟件的定義及軟件發(fā)展過(guò)程 2軟件危機(jī)及軟件工程的產(chǎn)生 3軟件工程學(xué)定義、本課程學(xué)習(xí)的目的,可執(zhí)行部分,不可執(zhí)行部分,一、軟件的定義、特點(diǎn),1軟件的定義 程序 + 數(shù)據(jù) + 文檔 與計(jì)算機(jī)系統(tǒng)操作有關(guān)的程序、數(shù)據(jù)以及任何與之相關(guān)的文檔的集合。,程序
3、,1軟件的定義: 什么是程序(1/2): 程序: 由程序設(shè)計(jì)語(yǔ)言所描述的、能為計(jì)算機(jī)所識(shí)別、理解和處理的語(yǔ)句序列 程序例子 Main( ) int i, j; / 變量定義 char Str10; i = i + j ; / 語(yǔ)句說(shuō)明 ,一、軟件的定義、特點(diǎn),1軟件的定義: 什么是程序(2/2) 程序設(shè)計(jì)語(yǔ)言具有良好、嚴(yán)格語(yǔ)法和語(yǔ)義 目前程序設(shè)計(jì)語(yǔ)言主要有以下幾種類(lèi)型 面向機(jī)器: 如匯編語(yǔ)言、機(jī)器語(yǔ)言等 面向過(guò)程: 如Fortran, Pascal, C等等 面向?qū)ο? 如Java等等 面向問(wèn)題: 如結(jié)構(gòu)化查詢語(yǔ)言SQL等等,一、軟件的定義、特點(diǎn),1軟件的定義: 什么是文檔: 文檔: 記錄軟件
4、開(kāi)發(fā)活動(dòng)和階段性成果、理解軟件所必需的闡述性資料 需求分析文檔、軟件設(shè)計(jì)文擋、用戶文檔等 編寫(xiě)文檔目的 促進(jìn)對(duì)軟件的開(kāi)發(fā),管理和維護(hù); 便于各種人員(用戶,開(kāi)發(fā)人員)的交流,一、軟件的定義、特點(diǎn),一、軟件的定義、特點(diǎn),2軟件的特點(diǎn) 不會(huì)老化 邏輯產(chǎn)品 (智力, 無(wú)形) 維護(hù)困難和復(fù)雜(完善, 糾錯(cuò),.) 生產(chǎn)只需復(fù)制 軟件開(kāi)發(fā)性質(zhì)如成本、進(jìn)度等難以估計(jì) 軟件的開(kāi)發(fā)更加依賴(lài)于開(kāi)發(fā)人員的業(yè)務(wù)素質(zhì)、智力、人員的合作、組織和管理,二、軟件的發(fā)展過(guò)程 1、20世紀(jì)50年代60年代初:程序設(shè)計(jì)階段 特點(diǎn):個(gè)體化;只有程序清單;以硬件發(fā)展為主 2、20世紀(jì)60年代初70年代初:程序系統(tǒng)階段 特點(diǎn):作坊式;軟
5、件數(shù)量劇增;軟件維護(hù)費(fèi)用驚人;提 出“軟件工廠”概念;出現(xiàn)軟件危機(jī) 3、 70年代 90年代:軟件工程階段 軟件成本劇增;硬件技術(shù) (微電子學(xué))日趨成熟;軟件工程時(shí)代 4、 90年代至今: 現(xiàn)代信息技術(shù)飛速發(fā)展(并行計(jì)算機(jī)處理、三層處理模式、數(shù)據(jù)倉(cāng)庫(kù)、多媒體技術(shù)、網(wǎng)絡(luò)技術(shù)、電子商務(wù)等)稱(chēng)為:網(wǎng)絡(luò)時(shí)代,三、軟件危機(jī),1、軟件危機(jī)定義: 軟件在開(kāi)發(fā)和維護(hù)過(guò)程中遇到的一系列問(wèn)題 困擾學(xué)術(shù)界和工業(yè)界 用戶對(duì)軟件開(kāi)發(fā)缺乏信心 軟件開(kāi)發(fā)的高投入和高風(fēng)險(xiǎn),Crisis!,三、軟件危機(jī),2、軟件危機(jī)的表現(xiàn)(1 of 3) 成本高 IBM 360 OS, 5000多人年,耗時(shí)4年(19631966),花費(fèi)2億多
6、美元 美國(guó)空軍:1955年軟件占總費(fèi)用(計(jì)算機(jī)系統(tǒng))的18%,70年60%,85年達(dá)到85 美國(guó)全球軍事指揮控制系統(tǒng),硬件1億美元,軟件高達(dá)7.2億美元 計(jì)算機(jī)軟件和硬件費(fèi)用比,三、軟件危機(jī),2、軟件危機(jī)的表現(xiàn)(2 of 3) 軟件質(zhì)量得不到保證 軟件應(yīng)用面的擴(kuò)大:科學(xué)計(jì)算、軍事、航空航天、工業(yè)控制、企業(yè)管理、辦公、家庭 軟件越來(lái)越多的應(yīng)用于安全猶關(guān)(safety critical)的系統(tǒng),對(duì)軟件質(zhì)量提出更高的要求 80年代歐洲亞麗安娜火箭的發(fā)射失敗,原因是軟件錯(cuò)誤 美國(guó)阿托拉斯火箭的發(fā)射失敗,原因是軟件故障 英國(guó)1986年開(kāi)發(fā)的辦公室信息系統(tǒng)Folios經(jīng)4年,因性能達(dá)不到要求,1989年取
7、消 日本第5代機(jī)因?yàn)檐浖?wèn)題在投入50億美元后于1993年下馬 由于軟件質(zhì)量問(wèn)題導(dǎo)致失敗的軟件項(xiàng)目非常多,三、軟件危機(jī),2、軟件危機(jī)的表現(xiàn)(3 of 3) 進(jìn)度難以控制 項(xiàng)目延期比比皆是 由于進(jìn)度問(wèn)題而取消的軟件項(xiàng)目較常見(jiàn) 只有一小部分的項(xiàng)目能夠按期完成 維護(hù)非常困難 軟件維護(hù)的多樣性 軟件維護(hù)的復(fù)雜性 軟件維護(hù)的副作用,三、軟件危機(jī),3、軟件危機(jī)包含兩方面問(wèn)題 一、如何開(kāi)發(fā)軟件,以滿足不斷增長(zhǎng),日趨復(fù)雜的需求; 二、如何維護(hù)數(shù)量不斷膨脹的軟件產(chǎn)品。 4、軟件危機(jī)產(chǎn)生的原因 邏輯產(chǎn)品,不同于物理產(chǎn)品 復(fù)雜性高 邏輯產(chǎn)品,邏輯復(fù)雜性,遠(yuǎn)高于硬件復(fù)雜性 軟件的復(fù)雜性隨規(guī)模呈指數(shù)級(jí)上升 規(guī)模大 應(yīng)用
8、擴(kuò)大,代碼量,1000萬(wàn)行,仍在不斷膨脹 影響軟件生產(chǎn)率和質(zhì)量的因素比較復(fù)雜 人員的能力和水平 團(tuán)隊(duì)合作 缺乏有效、系統(tǒng)原理、原則、方法和工具的指導(dǎo)和輔助:,5、對(duì)軟件開(kāi)發(fā)的深層次認(rèn)識(shí): 開(kāi)發(fā)一個(gè)具有一定規(guī)模和復(fù)雜性的軟件系統(tǒng)與編寫(xiě)一個(gè)簡(jiǎn)單的程序不一樣 正如建設(shè)一個(gè)平房和高樓大廈 建造房屋的過(guò)程 確定和分析需求 房子的總體設(shè)計(jì)(建筑平面圖和建筑透視圖) 房子的詳細(xì)設(shè)計(jì)(建筑平面圖的細(xì)化以及規(guī)格說(shuō)明) 識(shí)別并設(shè)計(jì)房子的組成部分 建造房子的每一個(gè)組成部分 測(cè)試房子的每一個(gè)組成部分 把房子的各個(gè)部分集成在一起,在住戶搬進(jìn)來(lái)之前作最后的修改 大型、復(fù)雜軟件系統(tǒng)的開(kāi)發(fā)是一項(xiàng)工程,必須按照工程化的方法組織
9、軟件的生產(chǎn)和管理,必須經(jīng)過(guò)分析、設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試、維護(hù)等一系列軟件過(guò)程和活動(dòng),三、軟件危機(jī),6、解決危機(jī)的技術(shù)途徑 20世紀(jì)60年代爆發(fā),然而實(shí)際上軟件危機(jī)隨著計(jì)算機(jī)軟件的產(chǎn)生而產(chǎn)生,只是在此之前其問(wèn)題的嚴(yán)重性沒(méi)有引起人們的關(guān)注和重視 提出有效的方法和工具支持軟件開(kāi)發(fā) 1968年提出軟件工程概念和思想 20世紀(jì)70年代的結(jié)構(gòu)化軟件開(kāi)發(fā)方法 20世紀(jì)80年代的面向?qū)ο蟮能浖_(kāi)發(fā)方法 新的技術(shù): 軟件重用、快速原型、需求工程 典型技術(shù): COM, Java, C+, J2EE, .Net, . 支撐工具和環(huán)境:Jbuilder, Visual Studio, WebLogic, ,三、軟件危機(jī),7
10、、技術(shù)手段不能完全解決軟件危機(jī) 到了20世紀(jì)90年代,軟件危機(jī)依然存在,甚至更為嚴(yán)重 應(yīng)用變得越來(lái)越大和復(fù)雜,技術(shù)變得更加力不從心 錯(cuò)誤的觀念“只要有好的軟件開(kāi)發(fā)方法和工具就能高效率地開(kāi)發(fā)出高質(zhì)量的軟件”,三、軟件危機(jī),8、解決危機(jī)的管理途徑 問(wèn)題出在哪里? 20世紀(jì)80年代末,美國(guó)工業(yè)界開(kāi)始認(rèn)識(shí)到管理的重要性 美國(guó)的一項(xiàng)研究表明,70%的項(xiàng)目由于管理不善導(dǎo)致難以控制進(jìn)步、成本和質(zhì)量; 進(jìn)一步的研究發(fā)現(xiàn):管理是影響軟件項(xiàng)目成功開(kāi)發(fā)的全局性因素,而技術(shù)只影響局部 如果軟件開(kāi)發(fā)組織不能對(duì)軟件項(xiàng)目進(jìn)行有效管理,就不能充分發(fā)揮軟件開(kāi)發(fā)方法和工具的潛力,也就不能高效率地開(kāi)發(fā)出高質(zhì)量的軟件產(chǎn)品,三、軟件危
11、機(jī),四、軟件工程的提出,解決軟件危機(jī)? 硬件發(fā)展?開(kāi)發(fā)人員增加?軟件開(kāi)發(fā)工具的發(fā)展? 軟件工程! 由于認(rèn)識(shí)到軟件的設(shè)計(jì)、實(shí)現(xiàn)、維護(hù)和傳統(tǒng)的工程規(guī)則有相同的基礎(chǔ)。 1967年NATO的研究組織首次提出“軟件工程” 1968年NATO軟件工程會(huì)議正式提出“軟件工程”概念 1968-至今, 40余年,四、軟件工程的提出,2、軟件工程定義 1968年NATO(北大西洋公約組織)會(huì)議上首次提出軟件工程: 給出了軟件工程的早期定義: 軟件工程是為了經(jīng)濟(jì)地獲得可靠的和能在實(shí)際機(jī)器上高效運(yùn)行的軟件而建立和使用的好的工程原則。(強(qiáng)調(diào)軟件工程的目標(biāo)) IEEE: 軟件工程是(1)將系統(tǒng)化的、規(guī)范的、可度量的方法應(yīng)
12、用于軟件的開(kāi)發(fā)、運(yùn)行和維護(hù)的過(guò)程,即將工程化應(yīng)用于軟件中;(2)(1)中所述方法的研究。 計(jì)算機(jī)科學(xué)技術(shù)百科全書(shū): 所謂軟件工程就是指導(dǎo)計(jì)算機(jī)軟件開(kāi)發(fā)和維護(hù)的工程學(xué)科。采用工程的概念、原理、技術(shù)和方法來(lái)開(kāi)發(fā)與維護(hù)軟件,把經(jīng)過(guò)時(shí)間考驗(yàn)而證明正確的管理技術(shù)和當(dāng)前能夠得到的最先進(jìn)的技術(shù)方法結(jié)合起來(lái)。,思考:其它更準(zhǔn)確的定義?,五、軟件工程的發(fā)展 1、傳統(tǒng)軟件工程 管理:希望實(shí)現(xiàn)軟件開(kāi)發(fā)過(guò)程的工程化。這方面最為著名的成果就是提出了大家都很熟悉的“瀑布式”生命周期模型。它是在60年代末“軟件危機(jī)”后出現(xiàn)的第一個(gè)生命周期模型。如下所示: 分析 設(shè)計(jì) 編碼 測(cè)試 維護(hù) 后來(lái),又有人針對(duì)該模型的不足,提出了快
13、速原型法、螺旋模型、噴泉模型等對(duì)“瀑布式”生命周期模型進(jìn)行補(bǔ)充?,F(xiàn)在,它們?cè)谲浖_(kāi)發(fā)的實(shí)踐中被廣泛采用。 認(rèn)識(shí)到了文檔的標(biāo)準(zhǔn)以及開(kāi)發(fā)者之間、開(kāi)發(fā)者與用戶之間的交流方式的重要性。 方法:側(cè)重與對(duì)軟件開(kāi)發(fā)過(guò)程中分析、設(shè)計(jì)的方法的研究。這方面的重要成果就是在70年代風(fēng)靡一時(shí)的結(jié)構(gòu)化開(kāi)發(fā)方法,即PO(面向過(guò)程的開(kāi)發(fā)或結(jié)構(gòu)化方法)以及結(jié)構(gòu)化的分析、設(shè)計(jì)和相應(yīng)的測(cè)試方法。,六、軟件工程的發(fā)展 2、現(xiàn)代軟件工程 方法: 面向?qū)ο蟮姆治?、設(shè)計(jì)方法(OOA和OOD)的出現(xiàn)使傳統(tǒng)的開(kāi)發(fā)方法發(fā)生了翻天覆地的變化。隨之而來(lái)的是面向?qū)ο蠼UZ(yǔ)言(以UML為代表)、軟件復(fù)用、基于組件的軟件開(kāi)發(fā)等新的方法和領(lǐng)域。 管理:
14、從企業(yè)管理的角度提出的軟件過(guò)程管理。即關(guān)注于軟件生存周期中所實(shí)施的一系列活動(dòng)并通過(guò)過(guò)程度量、過(guò)程評(píng)價(jià)和過(guò)程改進(jìn)等涉及對(duì)所建立的軟件過(guò)程及其實(shí)例進(jìn)行不斷優(yōu)化的活動(dòng)使得軟件過(guò)程循環(huán)往復(fù)、螺旋上升式地發(fā)展。其中最著名的軟件過(guò)程成熟度模型是美國(guó)卡內(nèi)基梅隆大學(xué)軟件工程研究所(SEI)建立的CMM(Capability Maturity Model),即能力成熟度模型。,3、軟件工程三要素 軟件程是一種層次化的技術(shù)。包含了一個(gè)觀點(diǎn),和三要素,如下圖: 工具 + 方法 + 過(guò)程,軟件工程包括兩方面內(nèi)容: 軟件開(kāi)發(fā)技術(shù)包括軟件開(kāi)發(fā)方法學(xué)、軟件工具和軟件工程環(huán)境。 軟件項(xiàng)目管理包括軟件度量、項(xiàng)目估算、進(jìn)度控制、人員組織、配置管理、項(xiàng)目計(jì)劃等。 軟件工程技術(shù)有兩個(gè)明顯的特點(diǎn): 第一,強(qiáng)調(diào)規(guī)范化。 第二,強(qiáng)調(diào)文檔化。,六、克服軟件危機(jī)的途徑,消除 錯(cuò)誤的概念和做法 推廣使用成功的開(kāi)發(fā)技術(shù)和方法 使用軟件工具和軟件工程支持環(huán)境 加強(qiáng)軟件管理,七、軟件工程的基本原理 嚴(yán)格按照軟件生命周期各階
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年大學(xué)大一(數(shù)字媒體技術(shù))數(shù)字媒體交互產(chǎn)品設(shè)計(jì)階段測(cè)試題及答案
- 2025年高職新材料(再生資源應(yīng)用)試題及答案
- 多組學(xué)技術(shù)在環(huán)境危險(xiǎn)因素識(shí)別中的應(yīng)用
- 2025年中職機(jī)械制造與自動(dòng)化(機(jī)械自動(dòng)化操作)試題及答案
- 2025年高職(農(nóng)業(yè)技術(shù))土壤肥料應(yīng)用試題及答案
- 2026年汽車(chē)銷(xiāo)售(成交轉(zhuǎn)化)試題及答案
- 2025年高職印刷媒體技術(shù)(排版工藝)試題及答案
- 2025年大學(xué)(生物工程專(zhuān)業(yè))酶工程試題及答案
- 2025年大學(xué)本科(動(dòng)物醫(yī)學(xué))動(dòng)物傳染病防控試題及答案
- 2025年大學(xué)大二(設(shè)計(jì)學(xué))設(shè)計(jì)方法學(xué)基礎(chǔ)理論測(cè)試題及答案
- 2025至2030中國(guó)供水行業(yè)發(fā)展分析及投資前景與戰(zhàn)略規(guī)劃報(bào)告
- 幼兒語(yǔ)言發(fā)展評(píng)價(jià)量表及使用說(shuō)明
- 2025年河北省職業(yè)院校技能大賽中職組法律實(shí)務(wù)賽項(xiàng)參考試題庫(kù)(含答案)
- DB15∕T 3722-2024 公路基層水泥穩(wěn)定高爐重礦渣混合料設(shè)計(jì)與施工技術(shù)規(guī)范
- 2025年國(guó)家能源集團(tuán)招聘筆試真題及答案
- 擋土墻施工培訓(xùn)
- 企業(yè)環(huán)保管理制度(2025年版)
- 2025至2030中國(guó)掃雪車(chē)行業(yè)發(fā)展趨勢(shì)分析與未來(lái)投資戰(zhàn)略咨詢研究報(bào)告
- 內(nèi)河電動(dòng)船舶充換電模式的經(jīng)濟(jì)性與適用性分析
- 刮板撈渣機(jī)課件
- 《城市軌道交通全自動(dòng)運(yùn)行系統(tǒng)驗(yàn)收規(guī)范》
評(píng)論
0/150
提交評(píng)論