軟件工程基礎(chǔ)與實(shí)例分析第01章-軟件工程基礎(chǔ)概述課件_第1頁
軟件工程基礎(chǔ)與實(shí)例分析第01章-軟件工程基礎(chǔ)概述課件_第2頁
軟件工程基礎(chǔ)與實(shí)例分析第01章-軟件工程基礎(chǔ)概述課件_第3頁
軟件工程基礎(chǔ)與實(shí)例分析第01章-軟件工程基礎(chǔ)概述課件_第4頁
軟件工程基礎(chǔ)與實(shí)例分析第01章-軟件工程基礎(chǔ)概述課件_第5頁
已閱讀5頁,還剩22頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、學(xué)習(xí)目的 體驗(yàn)軟件工程各階段的主要工作,特別注意吸取教訓(xùn); 學(xué)會(huì)與他人合作,培養(yǎng)團(tuán)隊(duì)精神。各章節(jié)主要內(nèi)容第一章 軟件工程概述第二章 可行性研究(重點(diǎn))第三章 需求分析(重點(diǎn))第四章 總體設(shè)計(jì)(重點(diǎn))第五章 詳細(xì)設(shè)計(jì)(重點(diǎn))第六章 編碼第七章 測(cè)試第八章 維護(hù)第九章 面向?qū)ο蟮姆治鲈O(shè)計(jì)與實(shí)現(xiàn)第十章 UML開發(fā)方法第十一章 描繪UML的未來第十二章 面向?qū)ο髮?shí)例 銀行系統(tǒng)的分析與設(shè)計(jì)第十三章 傳統(tǒng)軟件工程實(shí)例-教學(xué)管理系統(tǒng)分析與設(shè)計(jì)第一章 軟件工程概述主要學(xué)習(xí)內(nèi)容:軟件軟件工程概軟件生存周期常用軟件開發(fā)過程模型軟件開發(fā)方法簡(jiǎn)述軟件文檔軟件是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的另一部分,它是包括程序,數(shù)據(jù)及

2、其相關(guān)文檔的完整集合程序是按事先設(shè)計(jì)的功能和性能要求執(zhí)行的指令序列數(shù)據(jù)是使程序能正常操縱信息的數(shù)據(jù)結(jié)構(gòu)文檔是與程序開發(fā),維護(hù)和使用有關(guān)的圖文材料1.1 軟件1.1.1軟件的概念及特點(diǎn)1. 軟件的概念2. 軟件的特點(diǎn)(1)軟件是一種抽象的邏輯實(shí)體。(2)軟件是一種通過人們智力活動(dòng),把知識(shí)與技術(shù)轉(zhuǎn)化為信息的一種產(chǎn)品,是在研制、開發(fā)中被創(chuàng)造出來的。(3)軟件需要維護(hù)。主要是因?yàn)樵谲浖纳嫫谥?,為了使它能夠適應(yīng)硬件、軟件環(huán)境的變化以及用戶新的要求,必須進(jìn)行多次修改(維護(hù))。(4)軟件的開發(fā)和運(yùn)行受到計(jì)算機(jī)硬件、操作系統(tǒng)的限制。(5)軟件開發(fā)至今尚未擺脫手工開發(fā)方式。很多軟件仍然是“定制”的,這使得軟

3、件的開發(fā)效率受到很大限制。(6)軟件的開發(fā)是一個(gè)復(fù)雜的過程。(7)軟件的成本相當(dāng)昂貴。軟件開發(fā)需要投入大量的、高強(qiáng)度的腦力勞動(dòng),成本很高。1.1.2軟件的分類1.按軟件的功能進(jìn)行劃分:系統(tǒng)軟件支持軟件應(yīng)用軟件2.基于軟件規(guī)模進(jìn)行劃分類別 參加人員數(shù) 研制期限 源程序行數(shù) 微型 1 14周 0.5k 小型 1 16月 1k2k中型 25 12年 5k50k大型 520 23年 50k100k甚大型 1001000 45年 1M(=1000k)極大型 20005000 510年 1M10M3. 基于軟件工作方式劃分: 實(shí)時(shí)處理軟件 分時(shí)軟件 交互式軟件 批處理軟件1.1.3 軟件危機(jī)的原因及解決途

4、徑 1.產(chǎn)生軟件危機(jī)的原因 (1)忽視軟件開發(fā)前期的需求分析。(2)沒有統(tǒng)一的、規(guī)范的方法論的指導(dǎo)。(3)忽視軟件文檔也是造成開發(fā)效率低下的原因。(4)忽視測(cè)試階段的工作,提交用戶的軟件質(zhì)量差(5)輕視軟件的維護(hù)。1.1.3 軟件危機(jī)的原因及解決途徑2.解決軟件危機(jī)的途徑 技術(shù)措施管理措施按工程化的原則和方法組織軟件開發(fā)工作是有效的,是擺脫軟件危機(jī)的一個(gè)主要出路。軟件工程正是從管理和技術(shù)兩方面研究如何更好地開發(fā)和維護(hù)計(jì)算機(jī)軟件的學(xué)科。1.2 軟件工程概念1.2.1 軟件工程的定義和內(nèi)容1軟件工程的定義Boehm:運(yùn)用現(xiàn)代科學(xué)技術(shù)知識(shí)來設(shè)計(jì)并構(gòu)造計(jì)算機(jī)程序及為開發(fā)、運(yùn)行和維護(hù)這些程序所必需的相關(guān)

5、文件資料IEEE:軟件工程是開發(fā)、運(yùn)行、維護(hù)和修復(fù)軟件的系統(tǒng)方法Fritz Bauer:建立并使用完善的工程化原則,以較經(jīng)濟(jì)的手段獲得能在實(shí)際機(jī)器上有效運(yùn)行的可靠軟件的一系列方法1.2軟件工程概念1.2.1 軟件工程的定義和內(nèi)容2.軟件工程的內(nèi)容 工具方法過程 質(zhì)量保證圖1-1 軟件工程層次圖軟件工程是一種層次化的技術(shù),如圖1-1 所示。和其他工程方法一樣,軟件工程是以質(zhì)量為關(guān)注焦點(diǎn),以相關(guān)的現(xiàn)代化管理為理念。軟件工程的基礎(chǔ)是過程層。軟件工程的過程是為獲得軟件產(chǎn)品,在軟件工具支持下由軟件人員完成的一系列軟件工程的活動(dòng),貫穿于軟件開發(fā)的各個(gè)環(huán)節(jié)。它定義了方法使用的順序、要求交付的文檔資料,是軟件

6、開發(fā)各個(gè)階段完成的標(biāo)志。1.2軟件工程概念1.2.2 軟件工程的基本原理 1用分階段的生存周期計(jì)劃嚴(yán)格管理開發(fā)過程。2堅(jiān)持進(jìn)行階段評(píng)審。3實(shí)行嚴(yán)格的產(chǎn)品控制。4采用現(xiàn)代程序設(shè)計(jì)技術(shù)。5明確地規(guī)定開發(fā)小組的責(zé)任和產(chǎn)品標(biāo)準(zhǔn)。6開發(fā)小組的人員應(yīng)少而精。7承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性。1.3 軟件生存周期 圖1-2軟件的生存周期軟件測(cè)試評(píng)價(jià)運(yùn)行編碼軟件設(shè)計(jì)需求分析可行性研究1.4 常用軟件開發(fā)過程模型1.4.1瀑布模型軟件設(shè)計(jì)計(jì)劃階段開發(fā)階段維護(hù)階段可行性研究需求分析編 碼軟件測(cè)試運(yùn)行、維護(hù)圖1-3瀑布模型1.4 常用軟件開發(fā)過程模型1.4.2 快速原型模型原型快速分析運(yùn)行評(píng)價(jià)構(gòu)造執(zhí)行程序快速分析

7、需求說明構(gòu)造原型原 型運(yùn)行原型評(píng)價(jià)原型修改意見修改類型修改意見停止修改修改說明需求分析需求說明設(shè) 計(jì)設(shè)計(jì)說明編 碼測(cè) 試源程序清單軟件產(chǎn)品維 護(hù)1.4 常用軟件開發(fā)過程模型 1.4.3 螺旋模型1.4 常用軟件開發(fā)過程模型1.4.4 噴泉模型1.5 軟件開發(fā)方法簡(jiǎn)述1.5.1 面向數(shù)據(jù)流的結(jié)構(gòu)化方法面向數(shù)據(jù)流的結(jié)構(gòu)化方法,是由E.Yourdon 和L.L.Constantine提出的,是20世紀(jì)80年代使用最廣泛的軟件開發(fā)方法。該方法是建立在軟件生存周期模型基礎(chǔ)上,采用結(jié)構(gòu)化分析方法對(duì)軟件進(jìn)行分析,然后用結(jié)構(gòu)化設(shè)計(jì)方法進(jìn)行總體設(shè)計(jì)和詳細(xì)設(shè)計(jì),最后是結(jié)構(gòu)化編程。1.5 軟件開發(fā)方法簡(jiǎn)述1.5.2

8、 面向數(shù)據(jù)結(jié)構(gòu)的Jackson方法面向數(shù)據(jù)結(jié)構(gòu)方法是根據(jù)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)程序處理過程的方法,側(cè)重?cái)?shù)據(jù)結(jié)構(gòu)而不是數(shù)據(jù)流。在許多應(yīng)用領(lǐng)域中信息都有清楚的層次結(jié)構(gòu),輸入信息、信息的內(nèi)部存儲(chǔ)、輸出信息也都有一定的數(shù)據(jù)結(jié)構(gòu)。 1.5 軟件開發(fā)方法簡(jiǎn)述 1.5.3 面向?qū)ο蟮姆椒ǎ?)Booch方法 (2)OMT方法(3)OOSE方法(4)Coad/Yourdon的面向?qū)ο蠓治龊驮O(shè)計(jì)方法 (5)UML 1.6 軟件文檔 1.6.1軟件文檔在軟件開發(fā)中的地位和 作用 1軟件文檔在軟件開發(fā)中的地位軟件開發(fā)是一個(gè)系統(tǒng)工程,從軟件的生存周期角度出發(fā),科學(xué)的編制軟件文檔很有必要。軟件文檔也稱文件,通常指的是一些記錄的數(shù)

9、據(jù)和數(shù)據(jù)媒體,它具有固定不變的形式,可被人和計(jì)算機(jī)閱讀。在軟件工程中,文檔常常用來表示對(duì)活動(dòng)、需求、過程或結(jié)果進(jìn)行描述、定義、規(guī)定、報(bào)告或認(rèn)證的任何書面或圖示的信息,他們描述和規(guī)定了軟件設(shè)計(jì)和實(shí)現(xiàn)的細(xì)節(jié),說明使用軟件的操作命令。 1.6 軟件文檔 2文檔的作用(1)提高軟件開發(fā)過程的能見度。把開發(fā)過程中發(fā)生的事件以某種可閱讀的形式記錄在文檔中。管理人員可把這些記載下來的材料作為檢查軟件開發(fā)進(jìn)度和開發(fā)質(zhì)量的依據(jù),實(shí)現(xiàn)對(duì)軟件開發(fā)的工程管理。(2)提高開發(fā)效率。軟件文檔的編制,使得開發(fā)人員對(duì)各個(gè)階段的工作都進(jìn)行周密思考、并且可及早發(fā)現(xiàn)錯(cuò)誤,便于及時(shí)加以糾正。(3)作為開發(fā)人員在一定階段的工作成果和結(jié)

10、束標(biāo)志。(4)記錄開發(fā)過程中有關(guān)信息,便于協(xié)調(diào)以后的軟件開發(fā)、使用和維護(hù)。(5)提供對(duì)軟件的運(yùn)行、維護(hù)和培訓(xùn)的有關(guān)信息,便于管理人員、開發(fā)人員、操作人員、用戶之間協(xié)作、交流和了解,使軟件開發(fā)活動(dòng)更科學(xué)有效。(6)便于潛在用戶了解軟件的功能、性能等各項(xiàng)指標(biāo),為選購符合自己需要的軟件提供依據(jù)。 1.6 軟件文檔 1.6.2 軟件文檔的種類及寫作要求 1軟件文檔的種類(1)根據(jù)形式,軟件文檔可以分為兩類:1)工作表格,包括開發(fā)過程中填寫的各種圖表;2)文檔或文件,包括應(yīng)編制的技術(shù)資料或技術(shù)管理資料。1.6 軟件文檔 1.6.2 軟件文檔的種類及 寫作要求 1軟件文檔的種類 (2)按照文檔產(chǎn)生和使用的范圍 軟件文檔用戶文檔用戶手冊(cè)操作手冊(cè)維護(hù)修改建議軟件需求(規(guī)格)說明書開發(fā)文檔項(xiàng)目開發(fā)計(jì)劃可行性研究報(bào)告軟件

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論