




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