版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
第一章軟件工程概述8/18/20231第一章軟件工程概述8/5/20231目錄1.1軟件
1.1.1軟件的概念 1.1.2軟件的發(fā)展 1.1.3軟件的特點
1.1.4軟件的生產(chǎn)過程 1.1.5軟件的分類1.2軟件工程概念
1.2.1軟件危機
1.2.2軟件工程
1.2.3軟件工程的原則1.3軟件生存周期與軟件開發(fā)模型
8/18/20232目錄1.1軟件8/5/202321.1軟件軟件的概念通常把各種不同功能的程序,包括用戶為自己的特定目的編寫的程序、檢查和診斷機器系統(tǒng)的程序、支持用戶應用程序運行的系統(tǒng)程序、管理和控制機器系統(tǒng)資源的程序等稱為軟件。具體表現(xiàn)為:在運行中能夠提供所希望的功能和性能的指令集使程序能夠正確運行的數(shù)據(jù)結構描述程序研制過程及方法所用的文檔8/18/202331.1軟件軟件的概念8/5/202331.1軟件2.軟件的發(fā)展經(jīng)歷4個階段8/18/202341.1軟件2.軟件的發(fā)展8/5/20234Evolutionofsoftware
早期
第二階段
面向批處理
多用戶
有限的分布
實時
自定義軟件
數(shù)據(jù)庫
軟件產(chǎn)品
19501960197019808/18/20235Evolutionofsoftware早期Evolutionofsoftware
早期
第二階段第三階段
面向批處理
多用戶
分布式系統(tǒng)
有限的分布
實時
嵌入“智能”
自定義軟件
數(shù)據(jù)庫
低成本硬件
軟件產(chǎn)品
消費者的影響
195019601970198019908/18/20236Evolutionofsoftware早期Evolutionofsoftware
早期
第二階段第三階段第四階段
面向批處理
多用戶
分布式系統(tǒng)
強大的桌面系統(tǒng)
有限的分布
實時
嵌入“智能”
面向?qū)ο蠹夹g
自定義軟件
數(shù)據(jù)庫
低成本硬件
專家系統(tǒng)
軟件產(chǎn)品
消費者的影響
人工神經(jīng)網(wǎng)絡
并行計算
網(wǎng)絡計算機1950196019701980199020058/18/20237Evolutionofsoftware早期1.1軟件3.軟件的特點軟件是一個邏輯的而不是物理的產(chǎn)品。
軟件具有與硬件不同的特點:軟件是由開發(fā)或工程化而形成的,而不是傳統(tǒng)意義上的制造產(chǎn)生的;軟件不會“磨損”;大多數(shù)軟件是自定義的,而不是通過已有構件組裝的。維護不同.8/18/202381.1軟件3.軟件的特點8/5/202381.1軟件4.軟件生產(chǎn)過程應用系統(tǒng)8/18/202391.1軟件4.軟件生產(chǎn)過程應用8/5/202391.1.4軟件生產(chǎn)過程應用構件提取車間應用構件庫領域1領域2應用系統(tǒng)8/18/2023101.1.4軟件生產(chǎn)過程應用構件應用領域領域應用8/5/21.1.4軟件生產(chǎn)過程應用構件提取車間應用構件庫構件生產(chǎn)車間領域1領域2應用系統(tǒng)12341基礎構件,2功能構件3接口構件,4用戶界面構件8/18/2023111.1.4軟件生產(chǎn)過程應用構件應用構件生領域領域應用121.1.4軟件生產(chǎn)過程應用構件提取車間應用構件庫構件生產(chǎn)車間構件庫組裝車間領域1領域2應用系統(tǒng)...12341基礎構件,2功能構件3接口構件,4用戶界面構件8/18/2023121.1.4軟件生產(chǎn)過程應用構件應用構件生構件庫組裝領域1.1.5軟件的分類基于功能劃分:基于軟件工作方法劃分:基于軟件規(guī)模劃分基于軟件失效的影響劃分基于軟件服務對象劃分8/18/2023131.1.5軟件的分類基于功能劃分:8/5/2023131.1.5軟件的分類基于功能劃分:系統(tǒng)軟件:與計算機硬件緊密配合,使計算機各個不見與相關軟件及數(shù)據(jù)協(xié)調(diào)高效工作的軟件支撐軟件:協(xié)助用戶開發(fā)軟件的工具性軟件,包括幫助程序人員開發(fā)軟件產(chǎn)品的工具和幫助管理人員控制開發(fā)軟件的進程的工具應用軟件:在特定領域內(nèi)開發(fā),為特定目的服務的一類軟件。8/18/2023141.1.5軟件的分類基于功能劃分:8/5/2023141.1.5軟件的分類基于軟件工作方法劃分:實時處理軟件:在事件或數(shù)據(jù)產(chǎn)生時,立即處理,并及時反饋信號,控制需要檢測和控制的過程的軟件。分時軟件:允許多個聯(lián)機用戶同時使用計算機,系統(tǒng)把處理機事件輪流分配給各聯(lián)機擁護,使各用戶都感到只是自己在使用計算機的軟件。交互式軟件:能實現(xiàn)人機通信的軟件批處理軟件:把一組輸入作業(yè)或一批數(shù)據(jù)以成批處理的方式一次運行,按照順序逐個處理的軟件。8/18/2023151.1.5軟件的分類基于軟件工作方法劃分:8/5/20231.1.5軟件的分類基于軟件規(guī)模劃分微型軟件:一個人在幾天之內(nèi)完成的、程序不超過500行語句且僅供個人專用的軟件。小型軟件:一個人在半年之內(nèi)完成的2000行以內(nèi)的程序。中型軟件:5個人以內(nèi)在一年多時間里完成的5000到5萬行的程序。大型軟件:5至10人在兩年多的時間里完成的5萬到10萬行的程序甚大型軟件:100至1000人參加,用4到5年的時間完成的具有100萬行程序的軟件項目。極大型軟件:2000到5000人參加,10年內(nèi)完成的1000萬行以內(nèi)的程序。8/18/2023161.1.5軟件的分類基于軟件規(guī)模劃分8/5/2023161.1.5軟件的分類基于軟件失效的影響劃分關鍵軟件的特點:可靠性質(zhì)量要求高常與完成重要功能的大系統(tǒng)的處理不見相聯(lián)含有的程序可能對人員、公眾、設備或設施的安全造成影響。還可能影響到環(huán)境的質(zhì)量和關系到國家的安全和機密。8/18/2023171.1.5軟件的分類基于軟件失效的影響劃分8/5/20231.1.5軟件的分類基于軟件服務對象劃分定制軟件:受某個特定客戶的委托,由一個或多個軟件開發(fā)機構在合同的約束下開發(fā)出來的軟件。產(chǎn)品軟件:由軟件開發(fā)機構開發(fā)出來直接提供給時常,或是為千百個用戶服務的軟件。8/18/2023181.1.5軟件的分類基于軟件服務對象劃分8/5/202311.2軟件工程概念“軟件工程”術語首次出現(xiàn):1968年NATO會議軟件工程方法:是采用工程的概念、原理、技術和方法來開發(fā)與維護軟件,把經(jīng)過時間考驗而證明正確的管理技術和當前能夠得到的最好的技術方法結合起來。8/18/2023191.2軟件工程概念“軟件工程”術語首次出現(xiàn):1968年NA1.2.1軟件危機軟件危機:軟件開發(fā)和維護過程中遇到的一系列嚴重問題8/18/2023201.2.1軟件危機軟件危機:8/5/2023201.2.1軟件危機軟件危機的主要特征軟件開發(fā)周期大大超過規(guī)定日期;軟件系統(tǒng)開發(fā)成本高,周期長,質(zhì)量差,滿足不了市場需求;軟件質(zhì)量無保證軟件系統(tǒng)開發(fā)人員數(shù)量少,質(zhì)量低.軟件系統(tǒng)維護難度大.軟件開發(fā)缺乏合適的工具和方法軟件的版權問題得不到保證8/18/2023211.2.1軟件危機軟件危機的主要特征8/5/202321改正一個問題需付出的代價需求分析結構設計詳細設計編碼集成測試系統(tǒng)測試現(xiàn)場改正一個問題的估計費用改正一個問題估計的工作量20200200010005.02.50.050.5(美元)(人天)8/18/202322改正一個問題需付出的代價需結構設計詳細設計編碼集成測試系統(tǒng)測yet,SuccessHasn
tComeEasily31%53%16%Successfully(成功)Challenged(挑戰(zhàn))Canceled(失敗)8/18/202323yet,SuccessHasntComeEasil軟件成功的標準:用戶在使用用戶使用軟件很容易做完要做的事失敗的根本原因:
開發(fā)人員寫出的軟件達不到用戶要求:
人的能力問題.當前技術發(fā)展問題系統(tǒng)平臺問題8/18/202324軟件成功的標準:用戶在使用8/5/202324中國軟件產(chǎn)業(yè):挑戰(zhàn)挑戰(zhàn):外國軟件打入軟件侵權行為軟件開發(fā)投資力度不足軟件人才結構不合理,缺乏高級系統(tǒng) 程序員和項目負責人。軟件人員缺乏軟件工程化的概念。8/18/202325中國軟件產(chǎn)業(yè):挑戰(zhàn)挑戰(zhàn):8/5/2023251.2.2軟件工程(softwareengineering)什么是軟件工程?軟件工程是應用計算機科學、數(shù)學及管理科學等原理開發(fā)軟件的工程。它借鑒傳統(tǒng)工程的原則、方法,以提高質(zhì)量,降低成本為目的。軟件工程為了經(jīng)濟地獲得可靠的和能在實際機器上高效運行的軟件而建立和使用的好的工程原則。8/18/2023261.2.2軟件工程(softwareengineerin1.2.2軟件工程(softwareengineering)軟件工程一種層次化結構工具方法過程質(zhì)量焦點Softwareengineeringlayers8/18/2023271.2.2軟件工程(softwareengineerin1.2.2軟件工程(softwareengineering)軟件工程一種層次化結構質(zhì)量焦點:支持軟件工程的根基就在于對質(zhì)量的關注。過程:軟件工程的過程將技術層結合在一起,使計算機軟件合理和及時開發(fā)出來。方法:涵蓋一系列的任務:需求分析、設計、編程、測試和維護。工具:對過程、方法提供自動或半自動的支持。例CASE集成軟件、硬件或一個軟件工程數(shù)據(jù)庫。8/18/2023281.2.2軟件工程(softwareengineerin軟件工程是一門交叉學科軟件開發(fā)模型軟件開發(fā)方法軟件立項到終止的全過程軟件開發(fā)工具軟件開發(fā)環(huán)境計算機輔助軟件工程(CASE)軟件工程管理軟件工程經(jīng)濟學?軟件工程的主要研究內(nèi)容8/18/202329軟件工程是一門交叉學科軟件開發(fā)模型?軟8/5/202329軟件工程框架可用性性性確正合算選取適宜的開發(fā)模型采用合適的設計方法提供高質(zhì)量的工程支持重視軟件工程的管理基本過程原則
目標過
程支持過程組織過程8/18/202330軟件工程框架可用性性性確正合算選取適宜的開發(fā)模型采用合適的設“軟件工程”課程的教學與實踐(1)立足于系統(tǒng)的整體。(2)講授系統(tǒng)分析、系統(tǒng)需求、系統(tǒng)設計、系統(tǒng)實現(xiàn)、系統(tǒng)測試及維護的理論和方法。(3)運用所學軟件和技術構筑一理想的系統(tǒng)。與其它軟件專業(yè)課的區(qū)別:8/18/202331“軟件工程”課程的教學與實踐(1)立足于系統(tǒng)的整體。與其它“軟件工程”課程的教學與實踐
對軟件的認識:上升程序系統(tǒng)思維定式:上升程序員系統(tǒng)工程師(系統(tǒng)分析員)8/18/202332“軟件工程”課程的教學與實踐對軟件的認識:8/5/2023系統(tǒng)分析員的地位用戶分析員程序員8/18/202333系統(tǒng)分析員的地位用戶分析員程序員8/5/202333“一個好的工業(yè),應有一套良好的標準來配套”軟件的工業(yè)化生產(chǎn)過程應具備的特點:明確的工作步驟詳細具體的規(guī)范化文檔明確的質(zhì)量評價標準1.2.2軟件工程(softwareengineering)8/18/202334“一個好的工業(yè),應有一套良好的標準來配套”1.2.2軟件工軟件工程技術的兩個明顯特點:
強調(diào)規(guī)范化強調(diào)文檔化1.2.2軟件工程(softwareengineering)8/18/202335軟件工程技術的兩個明顯特點:1.2.2軟件工程(soft1.分解 基本思想:從時間上或規(guī)模上將一個復雜抽象問題分成若干較小的、相對獨立的、容易求解的子問題,然后分別求解。例:軟件瀑布模型、結構化分析方法、模塊化設計等都運用了分解原則1.2.3軟件工程的原則8/18/2023361.分解1.2.3軟件工程的原則8/5/2023362.抽象和信息隱蔽 盡量將可變因素隱藏在一個模塊內(nèi),將處理細節(jié)隱藏在下層,而將具體做什么抽象到上一層做簡化,從而保證模塊的獨立性。1.2.3軟件工程的原則8/18/2023372.抽象和信息隱蔽1.2.3軟件工程的原則8/5/20233.一致性軟件文件格式一致工作流程一致開發(fā)過程標準化、統(tǒng)一化1.2.3軟件工程的原則8/18/2023383.一致性1.2.3軟件工程的原則8/5/2023384.確定性軟件開發(fā)過程要用確定的形式表達需求,表達的軟件功能應該可預測。1.2.3軟件工程的原則8/18/2023394.確定性1.2.3軟件工程的原則8/5/2023391.3.1軟件生存周期SoftwareLifeCycle軟件產(chǎn)品或軟件系統(tǒng)從提出、設計、投入使用到被淘汰的全過程。軟件生存周期的階段:問題定義可行性分析需求分析概要設計詳細設計編碼測試運行與維護8/18/2023401.3.1軟件生存周期SoftwareLifeCy1.3.2軟件開發(fā)模型軟件開發(fā)模型是跨越整個軟件生存周期的系統(tǒng)開發(fā)、運做、維護所實施的全部工作和任務的結構框架。8/18/2023411.3.2軟件開發(fā)模型軟件開發(fā)模型是跨越整個軟件生存周期的1.3.2.1瀑布模型可行性研究與計劃需求分析設計編碼運行維護測試定義階段開發(fā)階段維護階段8/18/2023421.3.2.1瀑布模型可行性研究與計劃需求分析設計編碼運行1.3.2.1瀑布模型特點階段間具有順序性和依賴性。推遲實現(xiàn)的觀點。每個階段必須完成規(guī)定的文檔每個階段結束前完成文檔審查,及早改正錯誤。8/18/2023431.3.2.1瀑布模型特點8/5/2023431.3.2.2原型模型又稱快速成型模型一般用于最終系統(tǒng)的早期用戶評價,開發(fā)工期短,質(zhì)量有保證8/18/2023441.3.2.2原型模型又稱快速成型模型8/5/2023441.3.2.2原型模型聽取用戶意見建造/修改原型用戶測試運行原型模型范型8/18/2023451.3.2.2原型模型聽取用建造/修改用戶測試模型范型8/原型化軟件生存期模型系統(tǒng)需求分析定義生成原型系統(tǒng)設計程序設計編碼測試運行和維護原型化含原型化的軟件生存期原型化軟件生存期模型系統(tǒng)需求生成系統(tǒng)程序編碼測試運行原型1.3.2.2原型模型優(yōu)點可以處理模糊需求原型模型系統(tǒng)可以作為培訓環(huán)境,有利于用戶培訓給用戶更改系統(tǒng)的機會可以降低系統(tǒng)開發(fā)風險易維護、友好開發(fā)費用降低、時間縮短8/18/2023471.3.2.2原型模型優(yōu)點8/5/2023471.3.2.2原型模型缺點易把次要部分當作主要框架,作出原型不切題原型迭代可能不收斂。原型過快收斂,忽略了一些基本點資源規(guī)劃和管理比較困難容易遺忘用戶環(huán)境和原型環(huán)境的差異。8/18/2023481.3.2.2原型模型缺點8/5/2023481.3.2.3演化模型針對事先不能完整定義需求的軟件開發(fā)開發(fā)過程(1)根據(jù)用戶給出的待開發(fā)系統(tǒng)的核心需求,先開發(fā)出核心系統(tǒng)。(2)用戶試用后,提出精化系統(tǒng)、增強系統(tǒng)能力的需求,開發(fā)人員實施開發(fā)的迭代過程。8/18/2023491.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣東松山職業(yè)技術學院《工程制圖基礎》2023-2024學年第一學期期末試卷
- 廣東汕頭幼兒師范高等??茖W校《時裝表演藝術》2023-2024學年第一學期期末試卷
- 廣東南方職業(yè)學院《市場調(diào)研》2023-2024學年第一學期期末試卷
- 廣東茂名幼兒師范??茖W?!独碡斉c稅收籌劃》2023-2024學年第一學期期末試卷
- 廣東理工職業(yè)學院《幼兒藝術教育與活動指導(美術)》2023-2024學年第一學期期末試卷
- 從“愚昧”到“科學”:科學技術簡史(清華大學)學習通測試及答案
- 【高考解碼】2021屆高三生物二輪復習專題-生物與環(huán)境檢測試題(B)
- 2024全光智慧城市發(fā)展報告
- 內(nèi)蒙古包頭市一機一中2014-2021學年高一上學期期中政治試題-含解析
- 【中學教材全解】2020年秋高中物理必修一課時學案:第四章-牛頓運動定律-第5節(jié)-牛頓第三定律
- 中國古典文獻學(全套)
- 內(nèi)燃機車常見故障分析及處理1733
- 反恐認證全套文件表格優(yōu)質(zhì)資料
- 住院醫(yī)師規(guī)范化培訓臨床實踐能力結業(yè)考核基本技能操作評分表(氣管插管術)
- 談心談話記錄表 (空白表)
- GB/T 39879-2021疑似毒品中鴉片五種成分檢驗氣相色譜和氣相色譜-質(zhì)譜法
- Unit10單元基礎知識點和語法點歸納 人教版英語九年級
- 自控原理課件1(英文版)
- GB/T 14048.14-2006低壓開關設備和控制設備第5-5部分:控制電路電器和開關元件具有機械鎖閂功能的電氣緊急制動裝置
- 2023年上海市市高考物理一模試卷含解析
- 西方政治制度史ppt-西方政治制度史Historyof課件
評論
0/150
提交評論