第一章軟件危機與軟件工程_第1頁
第一章軟件危機與軟件工程_第2頁
第一章軟件危機與軟件工程_第3頁
第一章軟件危機與軟件工程_第4頁
第一章軟件危機與軟件工程_第5頁
已閱讀5頁,還剩58頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、12參考書目參考書目 1 1、 Software Engineering Software Engineering A Practitioners Approach A Practitioners Approach Roger S. Pressman Roger S. Pressman (英文版(英文版 第四版)第四版)機械工業(yè)出版社機械工業(yè)出版社 2 2、軟件工程、軟件工程實踐者的研究方法實踐者的研究方法 Roger S.PressmanRoger S.Pressman 鄭人杰等譯鄭人杰等譯 機械工業(yè)出版社機械工業(yè)出版社 3 3、 Software Engineering- Software

2、 Engineering- Theory and PracticeTheory and Practice Shari Lawrence Pfleeger Shari Lawrence Pfleeger 高等教育出版社高等教育出版社 4 4、軟件工程、軟件工程理論與實踐理論與實踐 吳丹等譯吳丹等譯 清華大學(xué)出版社清華大學(xué)出版社 5 5、 The Mythical MAN-MONTH The Mythical MAN-MONTH Frederick P.Brooks,Jr Frederick P.Brooks,Jr(IBM360IBM360之父之父) 6 6、 Software Engineeri

3、ng, Software Engineering, Ian SommervilleIan Sommerville ( (英英) )(V68V68) 機工機工 7 7、現(xiàn)代軟件工程(上、中、下)、現(xiàn)代軟件工程(上、中、下) 周之英周之英 科學(xué)出版社科學(xué)出版社 8 8、 軟件能力成熟度模型軟件能力成熟度模型 何新貴等何新貴等 清華大學(xué)出版社清華大學(xué)出版社 9 9、軟件測試、軟件測試 (Software Testing A Craftsmans Software Testing A Craftsmans Approach (Seconfd Approach (Seconfd Edition Edit

4、ion)) )韓柯韓柯 杜旭濤杜旭濤 譯譯 機械工業(yè)出版社機械工業(yè)出版社310.10.軟件測試軟件測試 (Soft Testing (Second Edition)Soft Testing (Second Edition)) 張小松張小松 王鈺王鈺 等譯等譯 機械工業(yè)出版社機械工業(yè)出版社11.11.基于基于RUPRUP的軟件測試實踐的軟件測試實踐 姚登峰姚登峰 主編主編 清華大學(xué)出版社清華大學(xué)出版社各類標(biāo)準(zhǔn)各類標(biāo)準(zhǔn): : 國際、國家、企業(yè)、行業(yè)國際、國家、企業(yè)、行業(yè) 4n教材教材計算機專業(yè)本科生計算機專業(yè)本科生齊治昌等,齊治昌等, 軟件工程軟件工程第版第版 高教出版社,高教出版社,2009 2

5、009 學(xué)時:30+16(30授課+16上機) 學(xué)分:學(xué)分:2.52.5工程碩士工程碩士 張海藩張海藩 清華大學(xué)出版社清華大學(xué)出版社 學(xué)時:30+16(30授課+16上機) 學(xué)分:學(xué)分:5推薦的站點推薦的站點6 平時成績 30% + 期末考試 70% =總評 100% 作業(yè)可紙介(最好雙面打印)或通過e-mail提交7軟件工程的內(nèi)容軟件工程的內(nèi)容一般涉及一般涉及: :工序,規(guī)范,質(zhì)量,工具,人工序,規(guī)范,質(zhì)量,工具,人( (管理管理) )工序:確切的工作步驟工序:確切的工作步驟規(guī)范:描述、表示的標(biāo)準(zhǔn)(圖紙),文檔規(guī)范規(guī)范:描述、表示

6、的標(biāo)準(zhǔn)(圖紙),文檔規(guī)范質(zhì)量:質(zhì)量要求,軟件質(zhì)量保證質(zhì)量:質(zhì)量要求,軟件質(zhì)量保證工具:開發(fā)、編程工具,集成開發(fā)環(huán)境(測試等)工具:開發(fā)、編程工具,集成開發(fā)環(huán)境(測試等)人人( (管理管理) ):項目管理:項目管理8軟件工程知識結(jié)構(gòu)1.SWEBOK是以美國聯(lián)邦航空管理局改進(jìn)其軟件采購、開發(fā)和是以美國聯(lián)邦航空管理局改進(jìn)其軟件采購、開發(fā)和維護過程項目中的一部分結(jié)果而形成的。維護過程項目中的一部分結(jié)果而形成的。2.考慮了多方面的因素考慮了多方面的因素 ,特別是系統(tǒng)工程特別是系統(tǒng)工程9n針對針對CC2004CC2004報告,報告,IEEE/ACMIEEE/ACM軟件工程學(xué)科組于軟件工程學(xué)科組于20042

7、004年年5 5月月2121日公布了軟件工程教育知識體系日公布了軟件工程教育知識體系(Software (Software Engineering Education Knowledge-SEEK)Engineering Education Knowledge-SEEK)的最終報的最終報告,這份報告:告,這份報告:針對軟件工程本科教育的課程知識領(lǐng)域,針對軟件工程本科教育的課程知識領(lǐng)域,給出了相關(guān)的領(lǐng)域方向的課程知識單元和知識點的配給出了相關(guān)的領(lǐng)域方向的課程知識單元和知識點的配置,以及參考課程計劃置,以及參考課程計劃。 n20042004年年6 6月月2323日,日,IEEEIEEE的另一個學(xué)科

8、組,的另一個學(xué)科組,也公布了也公布了軟件工程知識體系軟件工程知識體系(Software Engineering Body of (Software Engineering Body of Knowledge-SWEBOK)Knowledge-SWEBOK)的更新版的更新版,它被軟件行業(yè)稱為它被軟件行業(yè)稱為軟件軟件工程教育的基本法。工程教育的基本法。 這兩個知識體系分別面向本科軟件工程教育和軟這兩個知識體系分別面向本科軟件工程教育和軟件工程行業(yè)教育和從業(yè)要求。件工程行業(yè)教育和從業(yè)要求。10軟件工程知識結(jié)構(gòu)11SWEBOKSWEBOK的體系結(jié)構(gòu)的體系結(jié)構(gòu)軟件工程知識體系軟件工程知識體系劃分為劃分為

9、知識目錄知識目錄組成組成知識領(lǐng)域知識領(lǐng)域組成組成知識單元知識單元12操作定義(一)操作定義(一)知識:用來描述規(guī)則的整個內(nèi)容:信息、術(shù)語、知識:用來描述規(guī)則的整個內(nèi)容:信息、術(shù)語、 產(chǎn)品、數(shù)據(jù)、角色、方法、流程、技術(shù)、產(chǎn)品、數(shù)據(jù)、角色、方法、流程、技術(shù)、 實踐、過程和文獻(xiàn)。實踐、過程和文獻(xiàn)。知識體系(知識體系(BOK):軟件工程知識的層次描述,):軟件工程知識的層次描述, 它將知識組織及結(jié)構(gòu)劃為三級:它將知識組織及結(jié)構(gòu)劃為三級: 知識目錄知識目錄、知識領(lǐng)域知識領(lǐng)域和和知識單元知識單元。13操作定義(二)操作定義(二) 知識目錄(知識目錄(KCKC):):軟件工程的子規(guī)則,用于描述軟軟件工程的子

10、規(guī)則,用于描述軟件工程知識領(lǐng)域的重要部分。知識目錄用于組織、件工程知識領(lǐng)域的重要部分。知識目錄用于組織、分類和描述軟件工程知識體系的高層結(jié)構(gòu)元素。分類和描述軟件工程知識體系的高層結(jié)構(gòu)元素。 知識目錄由知識領(lǐng)域構(gòu)成。知識目錄由知識領(lǐng)域構(gòu)成。知識領(lǐng)域(知識領(lǐng)域(KAKA):):描述軟件工程知識的知識目錄的描述軟件工程知識的知識目錄的進(jìn)一步細(xì)分,按照繼承或聚化與知識目錄相關(guān)。進(jìn)一步細(xì)分,按照繼承或聚化與知識目錄相關(guān)。 知識領(lǐng)域由知識單元構(gòu)成。知識領(lǐng)域由知識單元構(gòu)成。知識單元(知識單元(KUKU):):描述軟件工程知識的基本構(gòu)件知描述軟件工程知識的基本構(gòu)件知識領(lǐng)域的細(xì)分,它具有明確的描述?;诖四康?,

11、識領(lǐng)域的細(xì)分,它具有明確的描述?;诖四康?,知識單元是原子級的,也就是說它不可能再分為更知識單元是原子級的,也就是說它不可能再分為更簡單的、或更基本的元素。簡單的、或更基本的元素。141 1、計算基礎(chǔ)、計算基礎(chǔ) 本目錄關(guān)注計算的知識、概念、理論、原則、方本目錄關(guān)注計算的知識、概念、理論、原則、方法、技能和應(yīng)用。它是軟件開發(fā)和軟件工程規(guī)則的基法、技能和應(yīng)用。它是軟件開發(fā)和軟件工程規(guī)則的基礎(chǔ)。礎(chǔ)。 1.1 1.1 算法和數(shù)據(jù)結(jié)構(gòu)算法和數(shù)據(jù)結(jié)構(gòu) 1.2 1.2 計算機體系結(jié)構(gòu)計算機體系結(jié)構(gòu) 1.3 1.3 數(shù)學(xué)基礎(chǔ)數(shù)學(xué)基礎(chǔ) 1.4 1.4 操作系統(tǒng)操作系統(tǒng) 1.5 1.5 程序設(shè)計語言程序設(shè)計語言1

12、52 2、軟件產(chǎn)品工程、軟件產(chǎn)品工程 本目錄關(guān)注生產(chǎn)正確的、一致的軟件產(chǎn)品的已本目錄關(guān)注生產(chǎn)正確的、一致的軟件產(chǎn)品的已定義的活動的集合。定義的活動的集合。 軟件產(chǎn)品工程軟件產(chǎn)品工程包括生產(chǎn)軟件產(chǎn)品的技術(shù)活動,包括生產(chǎn)軟件產(chǎn)品的技術(shù)活動,如需求工程、設(shè)計、編碼和測試。如需求工程、設(shè)計、編碼和測試。這些工程活動涉這些工程活動涉及軟件工作產(chǎn)品文檔化和可回朔維護,以及確保一及軟件工作產(chǎn)品文檔化和可回朔維護,以及確保一致性的活動。本目錄包括軟件生命周期內(nèi)階段轉(zhuǎn)換致性的活動。本目錄包括軟件生命周期內(nèi)階段轉(zhuǎn)換以及交付給客戶高質(zhì)量軟件產(chǎn)品的知識。以及交付給客戶高質(zhì)量軟件產(chǎn)品的知識。2.12.1軟件需求工程軟件

13、需求工程2.2 2.2 軟件設(shè)計軟件設(shè)計2.3 2.3 軟件編碼軟件編碼2.4 2.4 軟件測試軟件測試2.5 2.5 軟件運行和維護軟件運行和維護163 3、軟件管理、軟件管理 本目錄關(guān)注本目錄關(guān)注計算的管理軟件產(chǎn)品和項目的、計算的管理軟件產(chǎn)品和項目的、概念、方法和技術(shù)。概念、方法和技術(shù)。軟件管理包括與項目管理、軟件管理包括與項目管理、風(fēng)險管理、軟件質(zhì)量和配置管理有關(guān)的活動。風(fēng)險管理、軟件質(zhì)量和配置管理有關(guān)的活動。3.1軟件項目管理軟件項目管理3.2 軟件風(fēng)險管理軟件風(fēng)險管理3.3 軟件質(zhì)量管理軟件質(zhì)量管理3.4 軟件配置管理軟件配置管理3.5 軟件過程管理軟件過程管理3.6 軟件采購軟件采

14、購174 4、軟件領(lǐng)域、軟件領(lǐng)域 本目錄關(guān)注計算的知識、概念、理論、原本目錄關(guān)注計算的知識、概念、理論、原則、方法、技能和應(yīng)用。它是軟件開發(fā)和軟件則、方法、技能和應(yīng)用。它是軟件開發(fā)和軟件工程規(guī)則的基礎(chǔ)。工程規(guī)則的基礎(chǔ)。4.1人工智能人工智能4.2 數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)4.3 人機交互人機交互4.4 數(shù)值和符號計算數(shù)值和符號計算4.5 計算機仿真計算機仿真4.6 實時系統(tǒng)實時系統(tǒng)182.1 軟件需求工程軟件需求工程 本領(lǐng)域關(guān)注對軟件產(chǎn)品所解決的需求本領(lǐng)域關(guān)注對軟件產(chǎn)品所解決的需求建立共同的理解。建立共同的理解。 它包括軟件系統(tǒng)真正需要的一系列轉(zhuǎn)它包括軟件系統(tǒng)真正需要的一系列轉(zhuǎn)換以及將需要的陳述轉(zhuǎn)

15、換為完整的、無二換以及將需要的陳述轉(zhuǎn)換為完整的、無二義性的需求描述、按照規(guī)格說明書的標(biāo)準(zhǔn)義性的需求描述、按照規(guī)格說明書的標(biāo)準(zhǔn)文檔化。文檔化。 本領(lǐng)域包括需求導(dǎo)入、分析及規(guī)格化本領(lǐng)域包括需求導(dǎo)入、分析及規(guī)格化的技術(shù)。的技術(shù)。192.2 軟件設(shè)計軟件設(shè)計 本領(lǐng)域關(guān)注需求描述如何轉(zhuǎn)換為需求實現(xiàn)。本領(lǐng)域關(guān)注需求描述如何轉(zhuǎn)換為需求實現(xiàn)。 軟件設(shè)計由體系結(jié)構(gòu)的設(shè)計、抽象規(guī)范的軟件設(shè)計由體系結(jié)構(gòu)的設(shè)計、抽象規(guī)范的設(shè)計、接口設(shè)計、構(gòu)件設(shè)計、數(shù)據(jù)結(jié)構(gòu)設(shè)計和設(shè)計、接口設(shè)計、構(gòu)件設(shè)計、數(shù)據(jù)結(jié)構(gòu)設(shè)計和算法設(shè)計等活動構(gòu)成。算法設(shè)計等活動構(gòu)成。 軟件設(shè)計使用一系列表示的技術(shù)和表格,軟件設(shè)計使用一系列表示的技術(shù)和表格,每一

16、項技術(shù)和表格提供獲取和表示系統(tǒng)不同視每一項技術(shù)和表格提供獲取和表示系統(tǒng)不同視圖的能力。圖的能力。202.3 軟件編碼軟件編碼 本領(lǐng)域關(guān)注在設(shè)計文檔中標(biāo)示和描述的本領(lǐng)域關(guān)注在設(shè)計文檔中標(biāo)示和描述的軟件構(gòu)件的構(gòu)造知識。軟件構(gòu)件的構(gòu)造知識。 本領(lǐng)域的知識包括將設(shè)計轉(zhuǎn)換為可實現(xiàn)本領(lǐng)域的知識包括將設(shè)計轉(zhuǎn)換為可實現(xiàn)的語言、程序編碼風(fēng)格以及程序文檔的開發(fā)的語言、程序編碼風(fēng)格以及程序文檔的開發(fā)和使用。和使用。212.4 軟件測試軟件測試 本領(lǐng)域關(guān)注需求所描述的問題的正確解本領(lǐng)域關(guān)注需求所描述的問題的正確解決方案被開發(fā)。測試是多階段的過程,這些決方案被開發(fā)。測試是多階段的過程,這些過程包括的活動有驗證軟件產(chǎn)品、

17、從最基本過程包括的活動有驗證軟件產(chǎn)品、從最基本的元素到完整的集成系統(tǒng)。的元素到完整的集成系統(tǒng)。 本領(lǐng)域包括的活動有單元測試、性能測本領(lǐng)域包括的活動有單元測試、性能測試、集成測試、系統(tǒng)測試和可接受性測試。試、集成測試、系統(tǒng)測試和可接受性測試。222.5 軟件運行和維護軟件運行和維護 本領(lǐng)域包括支持軟件系統(tǒng)變更、演進(jìn)和本領(lǐng)域包括支持軟件系統(tǒng)變更、演進(jìn)和生存能力的概念、方法、過程和技術(shù)。生存能力的概念、方法、過程和技術(shù)。 起始于系統(tǒng)的開發(fā)和配置;接下來是安起始于系統(tǒng)的開發(fā)和配置;接下來是安裝,日常運行和維護以及為提高系統(tǒng)可維護裝,日常運行和維護以及為提高系統(tǒng)可維護性和由系統(tǒng)需求變更所引起的系統(tǒng)變更。

18、性和由系統(tǒng)需求變更所引起的系統(tǒng)變更。 本領(lǐng)域的知識支持理解軟件系統(tǒng)是如何本領(lǐng)域的知識支持理解軟件系統(tǒng)是如何演進(jìn)的、研究和分析維護費用、進(jìn)行有效維演進(jìn)的、研究和分析維護費用、進(jìn)行有效維護所需的過程以及處理遺留系統(tǒng)的策略。護所需的過程以及處理遺留系統(tǒng)的策略。233.1 軟件項目管理軟件項目管理 本領(lǐng)域涉及項目目標(biāo)定義、項目需要和本領(lǐng)域涉及項目目標(biāo)定義、項目需要和資源評估、被執(zhí)行的工作估算、建立必要的資源評估、被執(zhí)行的工作估算、建立必要的承諾和為執(zhí)行的工作定義計劃。承諾和為執(zhí)行的工作定義計劃。243.2 軟件風(fēng)險管理軟件風(fēng)險管理 本領(lǐng)域關(guān)注管理風(fēng)險的概念、方法和技本領(lǐng)域關(guān)注管理風(fēng)險的概念、方法和技術(shù)

19、,該風(fēng)險威脅軟件產(chǎn)品計劃。術(shù),該風(fēng)險威脅軟件產(chǎn)品計劃。 風(fēng)險管理包括:風(fēng)險識別、風(fēng)險分析、風(fēng)險管理包括:風(fēng)險識別、風(fēng)險分析、風(fēng)險監(jiān)控、風(fēng)險緩和和制訂風(fēng)險計劃等活動。風(fēng)險監(jiān)控、風(fēng)險緩和和制訂風(fēng)險計劃等活動。253.3 軟件質(zhì)量管理軟件質(zhì)量管理 本領(lǐng)域關(guān)注生產(chǎn)高質(zhì)量的軟件產(chǎn)品的概本領(lǐng)域關(guān)注生產(chǎn)高質(zhì)量的軟件產(chǎn)品的概念、方法、技術(shù)、流程和標(biāo)準(zhǔn)。念、方法、技術(shù)、流程和標(biāo)準(zhǔn)。 本領(lǐng)域的知識有質(zhì)量計劃和控制、確認(rèn)本領(lǐng)域的知識有質(zhì)量計劃和控制、確認(rèn)和驗證活動、產(chǎn)品和過程屬性的測量及軟件和驗證活動、產(chǎn)品和過程屬性的測量及軟件的依賴性和可靠性。的依賴性和可靠性。263.4 軟件配置管理軟件配置管理 本領(lǐng)域關(guān)注在軟

20、件系統(tǒng)的整個生命周期本領(lǐng)域關(guān)注在軟件系統(tǒng)的整個生命周期過程中在每一個離散的點識別其系統(tǒng)配置、過程中在每一個離散的點識別其系統(tǒng)配置、并系統(tǒng)地控制配置的變更、維護配置的整體并系統(tǒng)地控制配置的變更、維護配置的整體性和可回溯性的規(guī)則。性和可回溯性的規(guī)則。273.5 軟件過程管理軟件過程管理 本領(lǐng)域關(guān)注軟件開發(fā)過程技術(shù)方面的管理。本領(lǐng)域關(guān)注軟件開發(fā)過程技術(shù)方面的管理。 本領(lǐng)域包括下列軟件過程元素方面的知識:本領(lǐng)域包括下列軟件過程元素方面的知識: 人們用來開發(fā)和維護軟件和相關(guān)產(chǎn)品的活動、方法、人們用來開發(fā)和維護軟件和相關(guān)產(chǎn)品的活動、方法、實踐和轉(zhuǎn)換。實踐和轉(zhuǎn)換。 同時也包括確保在一個組織內(nèi)部過程按照所期望

21、的在同時也包括確保在一個組織內(nèi)部過程按照所期望的在執(zhí)行;也就是說遵循被定義的過程以及過程的改進(jìn)是執(zhí)行;也就是說遵循被定義的過程以及過程的改進(jìn)是為了滿足組織的目標(biāo)。為了滿足組織的目標(biāo)。 本領(lǐng)域包括的知識有建立基于組織需要基礎(chǔ)上的本領(lǐng)域包括的知識有建立基于組織需要基礎(chǔ)上的被使用的同時可作為系統(tǒng)改進(jìn)基礎(chǔ)的過程。被使用的同時可作為系統(tǒng)改進(jìn)基礎(chǔ)的過程。283.6 軟件采購軟件采購 本領(lǐng)域關(guān)注的知識是通過合同的形式從本領(lǐng)域關(guān)注的知識是通過合同的形式從本機構(gòu)外的軟件開發(fā)者采購客戶的軟件系統(tǒng)。本機構(gòu)外的軟件開發(fā)者采購客戶的軟件系統(tǒng)。 本領(lǐng)域包括采購活動的知識如采購、合本領(lǐng)域包括采購活動的知識如采購、合同、性能

22、評估及提供軟件系統(tǒng)的未來支持。同、性能評估及提供軟件系統(tǒng)的未來支持。29 “軟件工程軟件工程”課程課程 與其它軟件專業(yè)課的區(qū)別與其它軟件專業(yè)課的區(qū)別 30 “ “軟件工程軟件工程”課程教學(xué)與實踐課程教學(xué)與實踐的目標(biāo)的目標(biāo)u 轉(zhuǎn)變轉(zhuǎn)變對軟件的認(rèn)識:對軟件的認(rèn)識: 上升上升 程序程序 系統(tǒng)系統(tǒng)u 轉(zhuǎn)變轉(zhuǎn)變思維定式:思維定式: 上升上升 程序員程序員 系統(tǒng)工程師系統(tǒng)工程師 ( (系統(tǒng)分析員系統(tǒng)分析員) )n 工程化訓(xùn)練工程化訓(xùn)練31系統(tǒng)分析員的地位系統(tǒng)分析員的地位用戶用戶分析員分析員程序員程序員32“一個好的工業(yè),應(yīng)有一套良好的標(biāo)準(zhǔn)配套”軟件的工業(yè)化生產(chǎn)過程應(yīng)具備的特點:軟件的工業(yè)化生產(chǎn)過程應(yīng)具備的

23、特點:n明確的工作步驟明確的工作步驟n詳細(xì)具體的規(guī)范化文檔詳細(xì)具體的規(guī)范化文檔n明確的質(zhì)量評價標(biāo)準(zhǔn)明確的質(zhì)量評價標(biāo)準(zhǔn)33軟件產(chǎn)品的標(biāo)準(zhǔn)化軟件產(chǎn)品的標(biāo)準(zhǔn)化軟件開發(fā)過程的標(biāo)準(zhǔn)化軟件開發(fā)過程的標(biāo)準(zhǔn)化34軟件工程技術(shù)的兩個明顯特點:軟件工程技術(shù)的兩個明顯特點:u 強調(diào)規(guī)范化u 強調(diào)文檔化35第一章第一章 軟件危機與軟件工程軟件危機與軟件工程 軟件:軟件:SoftSoft+ +ware ware 上世紀(jì)上世紀(jì)6060年代初傳入國內(nèi)。年代初傳入國內(nèi)。36n軟件是計算機系統(tǒng)中與硬件相互依存的另一部軟件是計算機系統(tǒng)中與硬件相互依存的另一部分,是程序、數(shù)據(jù)及其相關(guān)文檔的完整集合。分,是程序、數(shù)據(jù)及其相關(guān)文檔的完

24、整集合。37第一章第一章 軟件危機與軟件工程軟件危機與軟件工程38第一章第一章 軟件危機與軟件工程軟件危機與軟件工程39第一章第一章 軟件危機與軟件工程軟件危機與軟件工程4041第一章第一章 軟件危機與軟件工程軟件危機與軟件工程42第一章第一章 軟件危機與軟件工程軟件危機與軟件工程43第一章第一章 軟件危機與軟件工程軟件危機與軟件工程 1.1. 正確認(rèn)識計算機軟件是基礎(chǔ)正確認(rèn)識計算機軟件是基礎(chǔ)。44Evolution of software 早期 第二階段 第三階段 第四階段 面向批處理 多用戶 分布式系統(tǒng) 強大的桌面系統(tǒng) 有限的分布 實時 嵌入“智能” 面向?qū)ο蠹夹g(shù) 自定義軟件 數(shù)據(jù)庫 低成

25、本硬件 專家系統(tǒng)統(tǒng) 軟件產(chǎn)品 消費者的影響消費者的影響 人工神經(jīng)網(wǎng)絡(luò) 并行計算 網(wǎng)絡(luò)計算機195019601970198019902000452.2.不是個人不是個人”技藝技藝”, ,是科學(xué)產(chǎn)物是科學(xué)產(chǎn)物, ,是管理嚴(yán)密的工程項是管理嚴(yán)密的工程項目目3.3.采用有效的方法和技術(shù)采用有效的方法和技術(shù)4.4.工具和軟件工程支撐環(huán)境工具和軟件工程支撐環(huán)境 從管理和技術(shù)兩方面研究如何更好的開發(fā)和維護從管理和技術(shù)兩方面研究如何更好的開發(fā)和維護解決途徑解決途徑 組織管理組織管理 工程項目管理方法工程項目管理方法 技術(shù)措施技術(shù)措施 軟件開發(fā)技術(shù)與方法軟件開發(fā)技術(shù)與方法 軟件工具軟件工具46 19681968

26、年年由由NATO ( (北大西洋公約組織北大西洋公約組織) )在德國在德國Garmish召開的學(xué)術(shù)召開的學(xué)術(shù)會議會議上,上,F(xiàn)ritz Fritz BauerBauer首先提出了首先提出了“軟件工程軟件工程”概念。概念。47軟件工程軟件工程的定義的定義Fritz BauerFritz Bauer在在NATONATO會議會議上給出的上給出的定義:定義: “軟件工程軟件工程是是為了經(jīng)濟地獲得可靠為了經(jīng)濟地獲得可靠的和能在實際機器上高效運行的軟件而的和能在實際機器上高效運行的軟件而確立和使用的健全的工程原理(方確立和使用的健全的工程原理(方法)法)?!?48軟件工程的定義軟件工程的定義 IEEEIE

27、EE【IEEIEEE E8383】 IEEEIEEE【IEEIEEE9E93 3】給出了一個更加綜合的定義:給出了一個更加綜合的定義: “將系統(tǒng)化的、規(guī)范的、可度量的方將系統(tǒng)化的、規(guī)范的、可度量的方法應(yīng)用于軟件的開發(fā)、運行和維護的過法應(yīng)用于軟件的開發(fā)、運行和維護的過程,即將工程化應(yīng)用于軟件中程,即將工程化應(yīng)用于軟件中。”49軟件工程軟件工程的定義的定義 50第一章第一章 軟件危機與軟件工程軟件危機與軟件工程51第一章第一章 軟件危機與軟件工程軟件危機與軟件工程 52第一章第一章 軟件危機與軟件工程軟件危機與軟件工程53 軟件技術(shù)面臨的問題軟件技術(shù)面臨的問題n 復(fù)雜性復(fù)雜性n 生產(chǎn)率生產(chǎn)率 54

28、n例:Windows95有1000萬行代碼 Windows2000有5000萬行代碼Exchange2000和 Windows2000開發(fā)人員結(jié)構(gòu)Exchange2000Windows2000項目經(jīng)理25人約250人開發(fā)人員140人約1700人測試人員350人約3200人55 軟件危機的主要特征軟件危機的主要特征n 軟件開發(fā)周期大大超過規(guī)定日期軟件開發(fā)周期大大超過規(guī)定日期; ;n 軟件開發(fā)成本嚴(yán)重超標(biāo)軟件開發(fā)成本嚴(yán)重超標(biāo); ;n 軟件質(zhì)量軟件質(zhì)量難于難于保證。保證。56改正一個問題需付出的代價改正一個問題需付出的代價需需求求分分析析結(jié)結(jié)構(gòu)構(gòu)設(shè)設(shè)計計詳詳細(xì)細(xì)設(shè)設(shè)計計編編碼碼集集成成測測試試系系統(tǒng)

29、統(tǒng)測測試試現(xiàn)現(xiàn)場場改正改正一個一個問題問題的估的估計費計費用用改正改正一個一個問題問題估計估計的工的工作量作量20200200010005.02.50.050.5(美元)(人天)57 成功的標(biāo)準(zhǔn):成功的標(biāo)準(zhǔn):s用戶在s用戶可很容易做完要做的事 失敗的根本原因:失敗的根本原因:開發(fā)人員寫出的東西達(dá)不到用戶要求(人的問題、技術(shù)問題)58 處在十字路口的中國軟件產(chǎn)業(yè)n 主權(quán)大國必須建立基于自主技術(shù)的、主權(quán)大國必須建立基于自主技術(shù)的、 完整的軟件產(chǎn)業(yè)體系。完整的軟件產(chǎn)業(yè)體系。 軟件本國提供率:中國軟件本國提供率:中國1/31/3左右,美國左右,美國97%97%n “ “印度模式印度模式”還是還是“中國

30、模式中國模式”n 軟件人才結(jié)構(gòu)不合理,軟件人才結(jié)構(gòu)不合理, 缺乏缺乏中中高級高級軟件人才,軟件人才, 軟件人員缺乏軟件工程化的概念。軟件人員缺乏軟件工程化的概念。59軟件工程是一門交叉學(xué)科軟件工程是一門交叉學(xué)科軟件工程的主要研究內(nèi)容軟件工程的主要研究內(nèi)容u軟件開發(fā)軟件開發(fā)技術(shù)技術(shù): : 軟件開發(fā)方法軟件開發(fā)方法學(xué)學(xué) 軟件開發(fā)過程軟件開發(fā)過程 軟件工具軟件工具和軟件工程和軟件工程環(huán)境環(huán)境 u軟件工程管理軟件工程管理: : 軟件管理軟件管理學(xué)學(xué) 軟件經(jīng)濟學(xué)軟件經(jīng)濟學(xué) 軟件軟件心理學(xué)心理學(xué) 軟件工程所包含的內(nèi)容不是一成不變的,隨著人軟件工程所包含的內(nèi)容不是一成不變的,隨著人們對軟件系統(tǒng)的研制開發(fā)和生

31、產(chǎn)的理解。應(yīng)用發(fā)展的們對軟件系統(tǒng)的研制開發(fā)和生產(chǎn)的理解。應(yīng)用發(fā)展的眼光看待它。眼光看待它。60軟件工程軟件工程 一種層次化技術(shù)工具工具方法方法過程過程質(zhì)量焦點質(zhì)量焦點Software engineering layers軟件工程軟件工程三個要素:三個要素:方法、工具、過程方法、工具、過程61軟件工程框架軟件工程框架可可用用性性性性性性確確正正合合算算選取適宜的開發(fā)模型選取適宜的開發(fā)模型采用合適的設(shè)計方法采用合適的設(shè)計方法提供高質(zhì)量的工程支持提供高質(zhì)量的工程支持重視軟件工程的管理重視軟件工程的管理基基本本過過程程原則原則 目標(biāo)目標(biāo)過過程程支支持持過過程程組組織織過過程程62軟件軟件工程與一般工程的差異工程與一般工程的差異u軟件是邏輯軟件是邏輯產(chǎn)品產(chǎn)品而不是而不是實物實物產(chǎn)品產(chǎn)品u軟件的功能軟件的功能依賴于硬件和軟件的運行環(huán)境依賴于硬件和軟件的運行環(huán)境以及人們對它的操作以及人們對它的操作u軟件設(shè)計的復(fù)雜性軟件設(shè)計的復(fù)雜性u軟件特征:軟件特征: 功能的多樣性功能的多樣性 實現(xiàn)的多樣性實現(xiàn)的多樣性 能見度低能見度低 軟件結(jié)構(gòu)合理性差軟件結(jié)構(gòu)合理

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論