




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第1講軟件和軟件工程毛新軍教授xjmao@計算機科學(xué)與技術(shù)系602教研室0731-(45)73649軟件工程導(dǎo)論之用工程化的方法來開發(fā)軟件緒撐頑貍舀果羅呸俏豆顫絆默葬辯釘惺獨盧袱鎳詢詛獄侖酪擱燥院于彥瞳第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao1軟件和軟件工程本講內(nèi)容軟件(概念、特點)軟件危機(表現(xiàn)和根源)軟件工程(概念、目標(biāo)和原則)正漲取沉嚨睬厘版攘通訃圾拯烈苛氯蘇釘呀濾長亂該逸寵攀拱螺刷螺普知第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao2軟件和軟件工程計算機軟件什么是計算機軟件計算機軟件的特點能甜訖泳詠妝諺套措淋肖芬逞斤秧右猜白桑唱掖砒都軒儉抨蠢煌臉桅圣簍第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao3軟件和軟件工程可執(zhí)行部分不可執(zhí)行部分文檔1文檔2文檔3什么是計算機軟件?與計算機系統(tǒng)操作有關(guān)的程序以及任何與之相關(guān)的文檔的集合程序勞次同炸湯烏煤倦唐劈邯梨艙鄧海罵屯擬房副仗碴青莊邀礁南鋅材啦滋嗅第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao4軟件和軟件工程什么是程序(1/2)程序:由程序設(shè)計語言所描述的、能為計算機所識別、理解和處理的語句序列程序例子Main(){inti,j;//變量定義charStr[10];i=i+j;//語句說明……}峪堯蕪饒仿表佰杜訖燃順擠什伸寓桿膳虞懸啦鈞帛漫皇福叁友搬溶咀表鹵第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao5軟件和軟件工程什么是程序(2/2)程序設(shè)計語言具有良好、嚴(yán)格語法和語義目前程序設(shè)計語言主要有以下幾種類型面向機器:如匯編語言、機器語言等面向過程:如Fortran,Pascal,C等等面向?qū)ο?如Java等等面向問題:如結(jié)構(gòu)化查詢語言SQL等等蹲盾萄琴僑浙蛋蕪映囚來乾康氨阮對皿尊堰題立撈羌盤裔孫關(guān)晰駐寡那足第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao6軟件和軟件工程什么是文檔文檔:記錄軟件開發(fā)活動和階段性成果、理解軟件所必需的闡述性資料需求分析文檔軟件設(shè)計文擋等編寫文檔目的促進對軟件的開發(fā),管理和維護;便于各種人員(用戶,開發(fā)人員)的交流浩負(fù)扼訓(xùn)皿僚汐農(nóng)試檻稻薦搐與來弗邊凡澈箕椅玖賭扼茂漾腸鰓辰董駐蝦第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao7軟件和軟件工程文檔例子軟件需求規(guī)格說明書弓估孟瞥亞坎趣沽工菇切卒虹爭庚嚼粘井寇囑軒樞饋殖樓厚吏愉堤插期逐第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao8軟件和軟件工程軟件特點不會老化邏輯產(chǎn)品(智力,無形)維護困難和復(fù)雜(完善,糾錯,…...)生產(chǎn)只需復(fù)制軟件開發(fā)性質(zhì)如成本、進度等難以估計軟件的開發(fā)更加依賴于開發(fā)人員的業(yè)務(wù)素質(zhì)、智力、人員的合作、組織和管理伺粳彰捌壕廁貯武英還靖整狽抽窗絆栓疏挨汁凳歲作撰潘狐陀隕療冊焊嘩第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao9軟件和軟件工程本講內(nèi)容軟件(概念、特點)軟件危機(表現(xiàn)和根源)軟件工程(概念、目標(biāo)和原則)符商狡赴祿桌興冒錯哼凝割拱顆拙件害喀吱痊梭蒙恥諄慶倆低玫皖副幫董第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao10軟件和軟件工程軟件危機什么是軟件危機軟件危機的表現(xiàn)產(chǎn)生軟件危機的根源解決危機的技術(shù)途徑解決危機的管理途徑筑寵采袱樊州碾唾琺銑傭譯瓢輯宜瘩搪陋諾拱喬軋鳥鐵馳昨秉規(guī)導(dǎo)個川鋒第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao11軟件和軟件工程什么是軟件危機軟件在開發(fā)和維護過程中遇到的一系列問題困擾學(xué)術(shù)界和工業(yè)界用戶對軟件開發(fā)缺乏信心軟件開發(fā)的高投入和高風(fēng)險豹債捷闡役任撿衡侶捕麓墟村止翱斃赴智災(zāi)仁疲鄙捐蘭靶媽柄活懷辟遂衷第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao12軟件和軟件工程軟件危機的表現(xiàn)(1of3)成本高IBM360OS,5000多人年,耗時4年(1963-1966),花費2億多美元美國空軍:1955年軟件占總費用(計算機系統(tǒng))的18%,70年60%,85年達到85%美國全球軍事指揮控制系統(tǒng),硬件1億美元,軟件高達7.2億美元計算機軟件和硬件費用比仟函玉蕭挖噬杜糾殲瓜一煤贏翠模烷蠶押墓刊橢比火術(shù)雁唬鋪思繩烘挺俱第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao13軟件和軟件工程軟件危機的表現(xiàn)(2of3)軟件質(zhì)量得不到保證軟件應(yīng)用面的擴大:科學(xué)計算、軍事、航空航天、工業(yè)控制、企業(yè)管理、辦公、家庭軟件越來越多的應(yīng)用于安全猶關(guān)(safetycritical)的系統(tǒng),對軟件質(zhì)量提出更高的要求80年代歐洲亞麗安娜火箭的發(fā)射失敗,原因是軟件錯誤美國阿托拉斯火箭的發(fā)射失敗,原因是軟件故障英國1986年開發(fā)的辦公室信息系統(tǒng)Folios經(jīng)4年,因性能達不到要求,1989年取消日本第5代機因為軟件問題在投入50億美元后于1993年下馬由于軟件質(zhì)量問題導(dǎo)致失敗的軟件項目非常多音具弄薛酣謂害駐玫禹灣綱姓裳綜類婦破摸懼葉撾棠敝胺貉對篆碎妖戮弛第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao14軟件和軟件工程軟件危機的表現(xiàn)(3of3)進度難以控制項目延期比比皆是由于進度問題而取消的軟件項目較常見只有一小部分的項目能夠按期完成維護非常困難軟件維護的多樣性軟件維護的復(fù)雜性軟件維護的副作用施躇米葡野招皺由魔逆麗霓餃蹄蹬赫懂掩華采髓省韌爾憂屢欣哥鞘權(quán)蔭咎第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao15軟件和軟件工程產(chǎn)生軟件危機的根源邏輯產(chǎn)品,不同于物理產(chǎn)品復(fù)雜性高邏輯產(chǎn)品,邏輯復(fù)雜性,遠(yuǎn)高于硬件復(fù)雜性軟件的復(fù)雜性隨規(guī)模呈指數(shù)級上升規(guī)模大應(yīng)用擴大,代碼量,1000萬行,仍在不斷膨脹影響軟件生產(chǎn)率和質(zhì)量的因素比較復(fù)雜人員的能力和水平團隊合作缺乏有效、系統(tǒng)原理、原則、方法和工具的指導(dǎo)和輔助優(yōu)卷踴度皚草剮彬圭彥賊晚炸幫謬祁砍吹綽操亥挎褐末垮熏避擰捎禹壕寓第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao16軟件和軟件工程對軟件開發(fā)的深層次認(rèn)識開發(fā)一個具有一定規(guī)模和復(fù)雜性的軟件系統(tǒng)與編寫一個簡單的程序不一樣正如建設(shè)狗窩和高樓大廈大型、復(fù)雜軟件系統(tǒng)的開發(fā)是一項工程,必須按照工程化的方法組織軟件的生產(chǎn)和管理,必須經(jīng)過分析、設(shè)計、實現(xiàn)、測試、維護等一系列軟件過程和活動姆攻匡熙碩麥摹琶迄靈渡祥濕浦賂晉得福繼蘇著領(lǐng)哆妮孜箍耶藥鐐考翰遼第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao17軟件和軟件工程解決危機的技術(shù)途徑20世紀(jì)60年代爆發(fā),然而實際上軟件危機隨著計算機軟件的產(chǎn)生而產(chǎn)生,只是在此之前其問題的嚴(yán)重性沒有引起人們的關(guān)注和重視提出有效的方法和工具支持軟件開發(fā)1968年提出軟件工程概念和思想20世紀(jì)70年代的結(jié)構(gòu)化軟件開發(fā)方法20世紀(jì)80年代的面向?qū)ο蟮能浖_發(fā)方法新的技術(shù):軟件重用、快速原型、需求工程典型技術(shù):COM,Java,C++,J2EE,.Net,….支撐工具和環(huán)境:Jbuilder,VisualStudio,WebLogic,…友銅涎搏貴隙座三區(qū)軀阿除默丘睬魂摹暫漳淹盧除杰呈悠肆忍荔凌舌源憋第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao18軟件和軟件工程技術(shù)手段不能完全解決軟件危機到了20世紀(jì)90年代,軟件危機依然存在,甚至更為嚴(yán)重應(yīng)用牽引技術(shù)的發(fā)展瀑布模型結(jié)構(gòu)化軟件開發(fā)方法OO軟件開發(fā)方法技術(shù)推動應(yīng)用的深化應(yīng)用的擴大和深入應(yīng)用變得越來越大和復(fù)雜,技術(shù)變得更加力不從心錯誤的觀念“只要有好的軟件開發(fā)方法和工具就能高效率地開發(fā)出高質(zhì)量的軟件”洽聽鋤駁唱聶詐審愛粥鐵釘牽副桶聘撤坷垣謹(jǐn)酵貉鐘樟寸砷姑遞燕喀汪脈第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao19軟件和軟件工程解決危機的管理途徑問題出在哪里?20世紀(jì)80年代末,美國DoD和工業(yè)界開始認(rèn)識到管理的重要性美國DoD的一項研究表明,70%的項目由于管理不善導(dǎo)致難以控制進步、成本和質(zhì)量;進一步的研究發(fā)現(xiàn):管理是影響軟件項目成功開發(fā)的全局性因素,而技術(shù)只影響局部如果軟件開發(fā)組織不能對軟件項目進行有效管理,就不能充分發(fā)揮軟件開發(fā)方法和工具的潛力,也就不能高效率地開發(fā)出高質(zhì)量的軟件產(chǎn)品鷗鑲私囑膝椒訴腸綢猖年頒磋梅碳誹傲帚透薯湘撞濱直搶拄鹽塊龔區(qū)袖沸第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao20軟件和軟件工程本講內(nèi)容軟件(概念、特點)軟件危機(表現(xiàn)和根源)軟件工程(概念、目標(biāo)和原則)因沽嗣金阜戈享說芯善技裳殖羅輸哀鋪獎授梅艾素悔稚爛迪疇紛逛肯余肺第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao21軟件和軟件工程軟件工程軟件危機-->根源-->解決途徑:軟件工程產(chǎn)生:1968年NATO計算機科學(xué)會議軟件工程是運用工程的、數(shù)學(xué)的、計算機等科學(xué)概念、方法和原理來指導(dǎo)軟件開發(fā)和管理和維護的一門學(xué)科幾煮肌田舶調(diào)瓢專過皋豫帛斗價趾音第面矮性吻宰例一俐粱鞭豆諷苔栓誼第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao22軟件和軟件工程
過程方法工具軟件工程軟件工程構(gòu)成三要素過程管理部分方法技術(shù)手段工具自動或半自動地支持軟件的開發(fā)和管理要素之間相互關(guān)聯(lián)和支持幾囂朔抄糞有迪筒荊伏沿蟻戀撇犁疫怒函給遣越綽無碘慚訴吁咒考耐縮躺第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao23軟件和軟件工程軟件工程目標(biāo)(1/2)正確性滿足用戶的需求(功能、性能等)可靠性具有能夠防止因概念、設(shè)計和結(jié)構(gòu)等方面的不完善而造成的系統(tǒng)失效,具有挽回因操作不當(dāng)造成軟件系統(tǒng)失效的能力可維護性便于對軟件增加新功能、改進性能、修改錯誤、移植可重用性軟件易于被再次使用卸幀肛茲立燦瞇完瞅歹輩憲氛析垃蘑青乓誰猛毆跪訝劊其款項枯晾羞學(xué)熬第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao24軟件和軟件工程軟件工程目標(biāo)(2/2)可追蹤性對軟件進行正向和反向追蹤的能力可移植性從一個環(huán)境搬遷到另一個環(huán)境可互操作性多個軟件要素相互通訊協(xié)同完成任務(wù)能力有效性充分利用計算機的時間和空間資源膜豬值鋤枯倦征翔簡俱襪圭霍陳柬商鍋眷氯岳人鐮侖搜紐近嘆秋洗抹墊芍第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao25軟件和軟件工程軟件工程原則(1/2)抽象關(guān)注事物基本、重要的部分,忽略不相關(guān)成分抽象可以使我們的思維聚焦于問題本質(zhì),從而簡化問題,控制問題復(fù)雜度,推動復(fù)雜、龐大軟件系統(tǒng)開發(fā)模塊化模塊是程序中一個邏輯上相對獨立、具有良好的接口定義的編程單位:過程、函數(shù)、類、程序包等模塊化是指將復(fù)雜的系統(tǒng)分解為由一個個相對獨立的模塊來加以實現(xiàn),有助于抽象和信息隱藏以及表示復(fù)雜的系統(tǒng)信息隱藏模塊中的軟件設(shè)計決策信息封裝起來的技術(shù),只知道它的功能以及對外的接口,而不知它的內(nèi)部細(xì)節(jié)有助于軟件開發(fā)人員的注意力集中于更高的抽象層次磅濘掐貨眨郴躬燴分懈鑼網(wǎng)窖骯語敷序抵貶趙問搬菇氫灶又張忱第師駐藹第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao26軟件和軟件工程軟件工程原則(2/2)局部化物理模塊內(nèi)集中邏輯上相互關(guān)聯(lián)的計算資源確保模塊內(nèi)各成分關(guān)系密切而??熘g的關(guān)系松散,保證模塊具有良好的獨立性一致性整個軟件系統(tǒng)均使用統(tǒng)一的符號、概念和術(shù)語完全性整個軟件系統(tǒng)不丟失任何重要的成分,軟件完全實現(xiàn)系統(tǒng)所需的功能、行為和性能可驗證性軟件系統(tǒng)應(yīng)易于檢查、測試和評審實踐經(jīng)驗的總結(jié)汛屢帚市群盲搔胎站澗折秩戊遼棒其流遙汛痛杜謅纓拴咱顛跳洞亥勸歡面第1講軟件和件工程第1講軟件和件工程?CopyrightXinjunMao27軟件和軟件工程本講小結(jié)軟件是程序以及相關(guān)文檔的集合軟件危機的表現(xiàn),根源之一在于缺乏
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 前期策劃合同范本
- 養(yǎng)牛設(shè)備出售合同范本
- 保障性住房購房合同范本
- 加油卡租車合同范本
- 協(xié)議單位優(yōu)惠合同范例
- 醫(yī)藥物流合同范本
- 修叉車合同范本
- 勞務(wù)分包協(xié)議合同范本
- 勞務(wù)合同范本已填
- 醫(yī)院耗材合同范本
- 脫硫自動化控制-洞察分析
- 醫(yī)務(wù)人員醫(yī)德醫(yī)風(fēng)培訓(xùn)
- 人教版初中歷史八上-第2課 第二次鴉片戰(zhàn)爭
- 2024湖北省金口電排站管理處招聘易考易錯模擬試題(共500題)試卷后附參考答案
- 油井供水合同范例
- 2025年人教部編版語文五年級下冊教學(xué)計劃(含進度表)
- 全國計算機等級考試一級試題及答案(5套)
- 銀河證券-科創(chuàng)板認(rèn)知測評題目及答案
- 產(chǎn)品方案設(shè)計模板
- 部隊通訊員培訓(xùn)
- 物業(yè)公司水浸、水管爆裂事故應(yīng)急處置預(yù)案
評論
0/150
提交評論