![計算機軟件及應用軟件工程概述_第1頁](http://file4.renrendoc.com/view/c33891b2564ad73ed451ea4e258a40da/c33891b2564ad73ed451ea4e258a40da1.gif)
![計算機軟件及應用軟件工程概述_第2頁](http://file4.renrendoc.com/view/c33891b2564ad73ed451ea4e258a40da/c33891b2564ad73ed451ea4e258a40da2.gif)
![計算機軟件及應用軟件工程概述_第3頁](http://file4.renrendoc.com/view/c33891b2564ad73ed451ea4e258a40da/c33891b2564ad73ed451ea4e258a40da3.gif)
![計算機軟件及應用軟件工程概述_第4頁](http://file4.renrendoc.com/view/c33891b2564ad73ed451ea4e258a40da/c33891b2564ad73ed451ea4e258a40da4.gif)
![計算機軟件及應用軟件工程概述_第5頁](http://file4.renrendoc.com/view/c33891b2564ad73ed451ea4e258a40da/c33891b2564ad73ed451ea4e258a40da5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
軟件工程概述IntroductiontoSoftwareEngineering計算機軟件及應用軟件工程概述全文共95頁,當前為第1頁。本講的主要內(nèi)容1.1有關軟件工程及其課程1.2軟件產(chǎn)業(yè)的發(fā)展背景1.3軟件、軟件產(chǎn)品及其特點1.4軟件危機1.5軟件工程計算機軟件及應用軟件工程概述全文共95頁,當前為第2頁。1.1AboutSoftwareEngineering內(nèi)容豐富,課時有限(抓緊課外時間)基本概念、原理、規(guī)律軟件開發(fā)方法、工具和環(huán)境,軟件開發(fā)過程軟件開發(fā)管理,軟件產(chǎn)品規(guī)范新興學科,發(fā)展迅速實踐性強計算機軟件及應用軟件工程概述全文共95頁,當前為第3頁。參考書籍《軟件工程——實踐者的研究方法》第六版,RogerS.Pressman,機械工業(yè)出版社《軟件工程》第六版,IanSommerville,機械工業(yè)出版社《軟件工程——理論與實踐》第二版,ShariLawrencePfleeger,高等教育出版社《實用軟件工程》第二版,鄭人杰、殷人昆、陶永雷,清華大學出版社計算機軟件及應用軟件工程概述全文共95頁,當前為第4頁。有關SE的一些組織及網(wǎng)站SWEBOK——TheSoftwareEngineeringBodyofKnowledgeACM——AssociationforComputerMachineryIEEE計算機軟件及應用軟件工程概述全文共95頁,當前為第5頁。對軟件工程最淺顯的認識對工程的認識需求分析的重要性設計與實現(xiàn)僅僅是軟件工程的一小部分規(guī)范與標準的重要性工具的重要性質(zhì)量的意義及重要性計算機軟件及應用軟件工程概述全文共95頁,當前為第6頁。人們對軟件開發(fā)的新認識個人技巧→團隊意識效率第一→清晰度第一計算機軟件及應用軟件工程概述全文共95頁,當前為第7頁。1.2軟件產(chǎn)業(yè)發(fā)展的背景人類社會正經(jīng)歷著一場前所未有的由工業(yè)社會向信息社會的巨變,軟件產(chǎn)業(yè)“任重道短”。從1991年起,信息產(chǎn)業(yè)保持了10—20%的增長速度。2000年,全球IT產(chǎn)業(yè)的產(chǎn)值為5000億美元。2001年,全球IT產(chǎn)值首次超過汽車工業(yè)和鋼鐵工業(yè)。硬、軟件開發(fā)人員的比例為1:8軟件,正處于信息技術的核心位置,觸及到人類社會的各個角落和人類文化的各個層次。全球10大軟件企業(yè),有7個在美國,2個在日本。在這輝煌的另一面,“軟件危機”一直折磨著軟件業(yè)界。計算機軟件及應用軟件工程概述全文共95頁,當前為第8頁。人類社會已經(jīng)發(fā)展到信息時代茹毛飲血的石器時代文明初肇的青銅時代工業(yè)革命的蒸汽時代社會化大生產(chǎn)的電氣時代信息膨脹的數(shù)字時代計算機軟件及應用軟件工程概述全文共95頁,當前為第9頁。計算機科學技術的巨大作用開拓人類認識自然改造自然的新資源物質(zhì)資源、能量資源→信息資源增添了人類發(fā)展科學技術的新手段理論推倒、科學實驗、虛擬與現(xiàn)實……提高了人類創(chuàng)造文化的新工具人的行為、思想、言語、行動……引起了人類工作方式與生活方式的變化計算機軟件及應用軟件工程概述全文共95頁,當前為第10頁。軟件的歷史第一個寫軟件的人是AugustaAdaLovelace,1860年嘗試為機械式計算機寫軟件,但失敗了。晶體管的發(fā)明為存儲器的大量應用提供了基礎。50年代,第一臺電子計算機的問世,以寫軟件為職業(yè)的人開始出現(xiàn)。60年代,美國大學開始授予計算機專業(yè)的學位,有了軟件課程。在通用硬件普及的初期,軟件的通用性卻是很有限的。軟件開發(fā)也沒有什么系統(tǒng)的方法可以遵循,是個人電腦的思維過程,帶有強烈的個人色彩。計算機軟件及應用軟件工程概述全文共95頁,當前為第11頁。1.3軟件的定義Software=Program+Data+Document其中:程序是按照事先設計的功能和性能要求執(zhí)行的指令序列;數(shù)據(jù)是使程序能夠正常操縱信息的數(shù)據(jù)結(jié)構;文檔是與程序開發(fā)維護和使用有關的各種圖文資料。計算機軟件及應用軟件工程概述全文共95頁,當前為第12頁。軟件產(chǎn)品的特性是一種邏輯實體,具有高度復雜性和抽象性。軟件發(fā)過程有別于一般物質(zhì)的制造過程。一旦研制開發(fā)成功,就可以大量拷貝同一內(nèi)容的副本。軟件沒有磨損、老化的問題,其生命周期曲線不符合所謂的“浴缸曲線”。對硬件和環(huán)境的依賴性,導致軟件移植問題。尚未完全擺脫手工作坊式的開發(fā)方式,生產(chǎn)效率低下。軟件的成本相當昂貴。軟件工作牽涉到很多社會因素。涉及機構、體制和管理方式、人們的觀念和心理。計算機軟件及應用軟件工程概述全文共95頁,當前為第13頁。計算機軟件及應用軟件工程概述TimeFailurerateWearvs.Deterioration計算機軟件及應用軟件工程概述全文共95頁,當前為第14頁。計算機軟件及應用軟件工程概述Wearvs.Deterioration計算機軟件及應用軟件工程概述全文共95頁,當前為第15頁。計算機軟件及應用軟件工程概述CustomsoftwareGenericsoftwaresystemsoftwarereal-timesoftwarebusinesssoftwareengineering/scientificsoftwareembeddedsoftwareSafety-criticalsoftwareCOTS(CommercialOff-the-shelf)PCsoftwareAIsoftwareWebApps(Webapplications)SoftwareApplications計算機軟件及應用軟件工程概述全文共95頁,當前為第16頁。計算機軟件及應用軟件工程概述?Iwillcreateasoftwaretoupdatethedatabase.
(somesoftware,apieceofsoftware,asoftwaresystem)計算機軟件及應用軟件工程概述全文共95頁,當前為第17頁。1.4軟件危機(SoftwareCrisis)首次提出:1968年北大西洋公約組織在聯(lián)邦德國召開的國際學術會議上。軟件危機是指在計算機軟件的開發(fā)和維護過程中所遇到的一系列嚴重問題??梢园衍浖C概括為兩個方面的問題軟件開發(fā)十分困難,難以滿足不斷增長且日趨復雜的需求;如何維護數(shù)量不斷膨脹的軟件產(chǎn)品。計算機軟件及應用軟件工程概述全文共95頁,當前為第18頁。CrisisorDepressionorChronicAffliction?從軟件工程幾十年的發(fā)展歷程來看,軟件危機不是”crisis”所能形容的,而更象”chronicaffliction”,是一種頑固的慢性痛苦。軟件危機的根本原因是軟件系統(tǒng)高度復雜、難于駕馭和軟件開發(fā)所帶有的個人色彩。計算機軟件及應用軟件工程概述全文共95頁,當前為第19頁。軟件危機的具體表現(xiàn)對開發(fā)成本和進度難以估計。開發(fā)成本超出預算和不能按時交付的現(xiàn)象并不罕見。用戶對“已完成”系統(tǒng)不滿意的現(xiàn)象經(jīng)常發(fā)生。軟件質(zhì)量難以保證。Bug一大堆,Patch一個接一個。軟件的可維護程度非常之低,即“維護墻”問題。軟件通常沒有適當?shù)奈臋n資料。軟件成本在整個系統(tǒng)中比重逐年提高。軟件開發(fā)生產(chǎn)率的提高趕不上硬件發(fā)展和需求增長。計算機軟件及應用軟件工程概述全文共95頁,當前為第20頁。軟件危機產(chǎn)生的原因軟件本身的特點所決定的。軟件開發(fā)和維護的方法不正確(在不斷地發(fā)展之中)忽視軟件開發(fā)前期的需求分析;開發(fā)過程沒有統(tǒng)一的、規(guī)范的方法論的指導,缺乏過程管理,文檔資料不齊全,忽視人與人的交流;忽視測試工作,所提交的軟件質(zhì)量不高;輕視軟件的維護。硬件技術和產(chǎn)品的發(fā)展速度遠遠大于軟件。計算機應用普及—社會對軟件的依賴—對軟件的需求、質(zhì)量和可靠性的要求巨增。設計問題、資源問題使得我們難以支持和增強已有的軟件,即所謂的“維護墻”問題。計算機軟件及應用軟件工程概述全文共95頁,當前為第21頁。計算機軟件及應用軟件工程概述
軟件神話Myths我們已經(jīng)有了一本寫滿軟件開發(fā)標準和規(guī)程的寶典,囊括了可能遇到的任何問題。如果未能按時完成計劃,可以通過增加人數(shù)而趕上進度。將軟件外包給另一家公司就可以完全放手不管了。有了對項目目標的大概了解,便足以開始編寫程序,有關細節(jié)以后再慢慢了解。雖然需求不斷變更,但軟件是彈性的,可以容易地適應這些變更。當完成程序并交付使用時,我們的任務就完成了。知道程序開始運行,才能評估其質(zhì)量。對于一成功的軟件項目,可執(zhí)行程序是唯一交付的成果。軟件工程導致大量無用文檔,并因此降低了工作效率。計算機軟件及應用軟件工程概述全文共95頁,當前為第22頁。1.5軟件工程1968年秋季,NATO(北約)的科技委員會召集了近50名一流的編程人員、計算機科學家和工業(yè)界巨頭,討論和制定擺脫“軟件危機”的對策。FritzBauer在會議上首次提出“軟件工程”概念。軟件工程的目標低成本高質(zhì)量按時交付計算機軟件及應用軟件工程概述全文共95頁,當前為第23頁。軟件工程定義軟件工程是一門研究如何用系統(tǒng)化、規(guī)范化、數(shù)量化等工程原則和方法進行軟件開發(fā)和維護的學科。軟件工程包括兩方面內(nèi)容:軟件開發(fā)技術和軟件項目管理。軟件開發(fā)技術包括軟件開發(fā)方法學、軟件工具和軟件工程環(huán)境。軟件項目管理包括軟件度量、項目估算、進度控制、人員組織、配置管理、項目計劃等。計算機軟件及應用軟件工程概述全文共95頁,當前為第24頁。FritzBauer的定義軟件工程是為了經(jīng)濟地獲得可靠的,能在實際的機器上高效運行的軟件而建立和使用的科學的工程原則。計算機軟件及應用軟件工程概述全文共95頁,當前為第25頁。IEEE的定義軟件工程是(1)將系統(tǒng)化的、規(guī)范的、可度量的方法應用于軟件的開發(fā)、運行和維護的過程,即將工程化思想應用于軟件開發(fā)過程中,(2)上述方法的研究。計算機軟件及應用軟件工程概述全文共95頁,當前為第26頁。軟件工程的本質(zhì)特性關注大型程序的構造軟件工程的中心課題是控制復雜性軟件需求不斷變化旨在提高軟件開發(fā)的效率團隊合作是軟件工程順利實施的關鍵軟件必須有效支持它的用戶由一種文化背景的人替另一種文化背景的人創(chuàng)造產(chǎn)品計算機軟件及應用軟件工程概述全文共95頁,當前為第27頁。軟件工程原則(1)質(zhì)量原則避免產(chǎn)生缺陷(具有恰當?shù)臉藴?、?guī)范、質(zhì)量審計過程等)確保盡早地發(fā)現(xiàn)缺陷并加以改正辨別和消除產(chǎn)生缺陷的原因和征兆根據(jù)標準和規(guī)范對生產(chǎn)的各個過程進行獨立審計(SEI-CMM等)計算機軟件及應用軟件工程概述全文共95頁,當前為第28頁。軟件工程原則(2)管理原則規(guī)定任務和職責制定工作計劃按照計劃跟蹤進度不斷地完善計劃在CMM中有一個PDCA循環(huán)(Plan,Do,Check,Action)計算機軟件及應用軟件工程概述全文共95頁,當前為第29頁。軟件工程原則(3)工程原則分析問題分解任務控制各個部門之間的關系為了更好地貫徹這些原則,實現(xiàn)軟件工程的目標,我們必須連接軟件工程的思想,研究軟件工程的工具、方法、過程和質(zhì)量管理。計算機軟件及應用軟件工程概述全文共95頁,當前為第30頁。B.W.Boehm軟件工程基本原理用分階段的生命周期計劃嚴格管理堅持進行階段評審實行嚴格的產(chǎn)品控制采用先進的程序設計技術開發(fā)過程具有可見性,所獲結(jié)果清楚,便以審查開發(fā)人員少而精承認不斷改進軟件工程實踐的必要性計算機軟件及應用軟件工程概述全文共95頁,當前為第31頁?;€(Baseline)通過正式復審的規(guī)格說明或中間產(chǎn)品(artifact),可以作為進一步開發(fā)的基礎,并且只有通過正式的變更控制過程才能改變它。(IEEE)基線的特征具有明確的標識具有明確的內(nèi)容經(jīng)過正式審批嚴格控制變更計算機軟件及應用軟件工程概述全文共95頁,當前為第32頁。里程碑(Milestone)里程碑是用來說明項目進展情況的事件,通常把一個開發(fā)活動的結(jié)束或一項開發(fā)任務的完成定義為一個里程碑。里程碑必須與軟件開發(fā)工作的進展情況密切相關,里程碑作為任務完成的標志必須非常明顯,即里程碑具有很高的可見性。計算機軟件及應用軟件工程概述全文共95頁,當前為第33頁。軟件工程總體面臨的困難與風險復雜性與大量的細節(jié)(火星探測器的失?。┘夹g的不確定性(技術的發(fā)展與開發(fā)人員對技術的理解程度都不同)由于交流障礙而引起的需求不確定性需求是持續(xù)變化的不斷的修改所帶來的錯誤使得軟件退化人為和市場的風險軟件費用、可靠性、生產(chǎn)率、重用問題難以解決計算機軟件及應用軟件工程概述全文共95頁,當前為第34頁。第一章(第二講)軟件工程過程計算機軟件及應用軟件工程概述全文共95頁,當前為第35頁。本講的主要內(nèi)容軟件工程方法學軟件生命周期軟件過程軟件過程模型計算機軟件及應用軟件工程概述全文共95頁,當前為第36頁。1、軟件工程方法學通常把軟件生命周期全過程中使用的一整套技術方法的集合成為軟件工程方法學(methodology),也成為范型(paradigm)軟件工程方法學的3個要素方法工具過程計算機軟件及應用軟件工程概述全文共95頁,當前為第37頁。傳統(tǒng)的軟件工程方法學結(jié)構化范型或生命周期方法學要么面向行為以功能分解為主(基于數(shù)據(jù)流圖的結(jié)構化分析與設計方法),要么面向數(shù)據(jù)(Jackson方法)計算機軟件及應用軟件工程概述全文共95頁,當前為第38頁。面向?qū)ο蠓椒▽W以數(shù)據(jù)為中心,把數(shù)據(jù)和對數(shù)據(jù)的操作緊密地結(jié)合起來,用對象分解代替?zhèn)鹘y(tǒng)的功能分解。面向?qū)ο蠓椒▽W的4個要點把對象作為融合數(shù)據(jù)和操作的統(tǒng)一的構件把所有對象都劃分成類子類自動擁有父類中定義的數(shù)據(jù)和操作,即繼承對象間僅能通過發(fā)送消息互相聯(lián)系計算機軟件及應用軟件工程概述全文共95頁,當前為第39頁。2、軟件生存周期軟件生存周期(LifeCycle)是指一個軟件從提出開發(fā)要求開始直到該軟件報廢為止的整個時期。把整個生存周期劃分為若干階段,使得每個階段有明確的任務,使規(guī)模大、結(jié)構復雜和管理復雜的軟件開發(fā)變得容易控制和管理。軟件生存周期各階段的劃分應遵循的基本原則:各階段的任務應盡可能相對獨立,同一階段各項任務的性質(zhì)盡可能相同,從而降低每個階段任務的復雜程度,簡化不同階段之間的聯(lián)系,有利于軟件項目開發(fā)的組織管理。計算機軟件及應用軟件工程概述全文共95頁,當前為第40頁。軟件生命周期的階段劃分軟件定義階段問題定義可行性研究需求分析軟件開發(fā)階段總體設計詳細設計編碼和單元測試綜合測試運行階段軟件維護計算機軟件及應用軟件工程概述全文共95頁,當前為第41頁。軟件定義階段問題定義:關于問題性質(zhì)、工程目標和工程規(guī)模的扼要描述可行性研究,即高層的分析和設計過程,以回答是否存在可行的解決方法。需求分析:準確的“做什么”的描述。 計算機軟件及應用軟件工程概述全文共95頁,當前為第42頁。軟件開發(fā)階段概要設計結(jié)構設計,系統(tǒng)設計建立軟件的總體結(jié)構,即模塊結(jié)構詳細設計算法設計,過程設計設計每個模塊的結(jié)構,IPO圖或PDL語言 編碼與單元測試生成源程序代碼和單元測試方案、數(shù)據(jù)和結(jié)果,由編程人員進行 綜合測試通過各種測試和調(diào)試,是軟件達到預訂的要求計算機軟件及應用軟件工程概述全文共95頁,當前為第43頁。軟件運行階段維護通過各種必要的維護活動使系統(tǒng)持久地滿足用戶的需要四種類型的維護改正性維護適應性維護完善性維護預防性維護 計算機軟件及應用軟件工程概述全文共95頁,當前為第44頁。3、軟件工程過程一個過程定義了為達到每個確定的目標,需要什么人在什么時間以何種方式做何種工作(Goal,Who,When,How,What)。軟件工程過程規(guī)定了獲取、供應、開發(fā)、操作和維護軟件時,要實施的過程、活動和任務。其目的是為各種人員提供一個公共的框架,以便用相同的語言進行交流。計算機軟件及應用軟件工程概述全文共95頁,當前為第45頁。Cont.一個開發(fā)機構為開發(fā)特定的軟件需要制訂一系列的工作步驟(軟件工程過程),其中包含和涉及軟件工程所有參與者的各種活動、任務?;镜能浖^程活動包括:規(guī)格說明、開發(fā)、確認和演進。CMM的軟件工程過程包含獲取、供應、開發(fā)、操作、維護、管理、支持七個過程。計算機軟件及應用軟件工程概述全文共95頁,當前為第46頁。過程定義的作用ProcessvsMusicscore用于對Customer,User,Developer,Manager的指導,一個廣泛適用的過程使得所有參與人員更好地理解自己所扮演的角色、他人做什么。促使過程的有機結(jié)合和改善,獲得“最好過程”可以使公司內(nèi)部的培訓標準化。由于過程的可重復性,利于開發(fā)進度的安排,利于成本估算。計算機軟件及應用軟件工程概述全文共95頁,當前為第47頁。統(tǒng)一過程(RUP)RUP的突出特點用況驅(qū)動(系統(tǒng)功能)以構架為中心(表現(xiàn)形式)迭代和增量開發(fā)(過程實施)Return計算機軟件及應用軟件工程概述全文共95頁,當前為第48頁。UML(UnifiedModelingLanguage)1994,OO思想已經(jīng)貫穿整個軟件生存期,具有影響的OOA&D方法達50余種。UML是一種對軟件密集型系統(tǒng)進行可視化、詳述、構造和文檔化的建模語言,主要用于分析和設計階段的系統(tǒng)建模。計算機軟件及應用軟件工程概述全文共95頁,當前為第49頁。1994Booch方法RumbaughOMTCoad/YourdonFireSmith方法JacobsonOOSE……不包含過程指導1997.11.4,OMG計算機軟件及應用軟件工程概述全文共95頁,當前為第50頁。4、軟件過程模型模型所謂模型是為了理解事物而對事物做出的一種抽象,它忽略不必要的細節(jié),是事物的一種抽象形式、一個規(guī)劃、一個程式。軟件開發(fā)模型軟件開發(fā)全部過程、活動和任務的結(jié)構框架。計算機軟件及應用軟件工程概述全文共95頁,當前為第51頁。軟件過程模型的種類瀑布模型快速原型模型針對事先不能完成定義需求的軟件開發(fā)原型系統(tǒng)重在“快速”周期開發(fā)模型(增量和迭代模型)完整的體系結(jié)構的實現(xiàn)確定多次迭代螺旋模型考慮風險因素,由Boehm提出噴泉模型多次重復,無間隙適用于面向?qū)ο蠹夹g(復用技術)計算機軟件及應用軟件工程概述全文共95頁,當前為第52頁。瀑布模型瀑布模型(WaterfallModel)軟件生存周期模型(ClassicLifeCycleModel)線性順序模型(LinearSequentialModel)問題定義需求分析概要設計詳細設計編碼測試維護計算機軟件及應用軟件工程概述全文共95頁,當前為第53頁。瀑布模型的三個特點階段間具有順序性和依賴性推遲實現(xiàn)的觀點質(zhì)量保證的觀點計算機軟件及應用軟件工程概述全文共95頁,當前為第54頁。CosttochangeAfterreleaseDefinitionDevelopment~6x
??????1x60~100xTheimpactofchange計算機軟件及應用軟件工程概述全文共95頁,當前為第55頁。計劃需求分析概要設計詳細設計編碼測試維護環(huán)計劃需求分析運行評價編碼設計TheWaterfallModel
WithMaintenanceCircle計算機軟件及應用軟件工程概述全文共95頁,當前為第56頁。運行維護需求分析概要設計詳細設計編碼單元測試集成測試驗收測試Prototyping系統(tǒng)測試ValidateVerifyTheWaterfallModel
WithPrototyping計算機軟件及應用軟件工程概述全文共95頁,當前為第57頁。瀑布模型的優(yōu)點開發(fā)過程基本上是線性順序的,便于管理基于“明確、完備的需求”,可以獲得好的開發(fā)效果計算機軟件及應用軟件工程概述全文共95頁,當前為第58頁。運行、維護需求分析概要設計詳細設計編碼單元集成測試驗收測試系統(tǒng)測試ValidateRequirementsVerifyDesignTheVModel計算機軟件及應用軟件工程概述全文共95頁,當前為第59頁。OperationalSpecificationModelOperationalSpecification(problem-oriented)
TransformedSpecification(implementation–oriented)
TESTExecuteandReviseSystemRequirements(sometimesinformalorincomplete)DeliveredSystem計算機軟件及應用軟件工程概述全文共95頁,當前為第60頁。TransformationalModelTransformnFormalSpecificationproblem-oriented
Transform2TESTComparewithrequirements;UpdateasneededSystemRequirements(sometimesinformalorincomplete)DeliveredSystemTransform1FormalDevelopmentRecordSequenceoftransformationsPlusrationaleforthem計算機軟件及應用軟件工程概述全文共95頁,當前為第61頁。ThePhasedDevelopmentModelBuildRelease2BuildRelease1BuildRelease3UseRelease2UseRelease1UseRelease3TimeProductionsystemDevelopmentsystemDevelopersUsers計算機軟件及應用軟件工程概述全文共95頁,當前為第62頁。TheIncrementalandIterativeModelIncrementalDevelopmentIterativeDevelopmentcreateformatcreateeditformatcreateEasyquickMorestylescreatePasteeasyMorestylescreatePasteclumsystylescreate計算機軟件及應用軟件工程概述全文共95頁,當前為第63頁。增量開發(fā)的優(yōu)點能在較短的時間內(nèi)向用戶提交可以完成主要功能的產(chǎn)品逐步增加產(chǎn)品的功能,使用戶有充裕的時間學習和適應新產(chǎn)品,減少一個全新的產(chǎn)品給客戶組織帶來的沖擊計算機軟件及應用軟件工程概述全文共95頁,當前為第64頁。TheSpiralModel計算機軟件及應用軟件工程概述全文共95頁,當前為第65頁。螺旋模型的優(yōu)點有利于已有軟件的重用有助于把軟件質(zhì)量作為軟件開發(fā)的一個重要目標減少了過多測試或測試不足所帶來的風險軟件維護與軟件開發(fā)沒有本質(zhì)區(qū)別計算機軟件及應用軟件工程概述全文共95頁,當前為第66頁。問題定義系統(tǒng)測試需求分析概要設計詳細設計編碼單元測試維護集成測試提交運行TheSoftwareDevelopmentProcessinReality計算機軟件及應用軟件工程概述全文共95頁,當前為第67頁。示例分析一假設你開發(fā)一軟件,其功能是把讀入的浮點數(shù)開平方,所得到的結(jié)果精確到小數(shù)點后4位。一旦實現(xiàn)并測試完成后,該產(chǎn)品將被拋棄。你打算選用哪種過程模型?計算機軟件及應用軟件工程概述全文共95頁,當前為第68頁。示例分析1、需求很明確2、實現(xiàn)浮點數(shù)開平方的算法也很成熟
不需要原型過程模型3、一旦實現(xiàn)并測試完成后,該產(chǎn)品將被拋棄,可以不考慮產(chǎn)品的進化問題4、規(guī)模相對較小,功能比較單一 不需要增量模型或螺旋過程模型總之,使用瀑布模型即可計算機軟件及應用軟件工程概述全文共95頁,當前為第69頁。示例分析二你負責一個項目,其工作是管理公司已被廣泛應用的字處理軟件的新版本開發(fā)。由于市場競爭激烈,公司規(guī)定了嚴格的完成期限并且已經(jīng)對外公布。你打算采用哪種過程模型?為什么?計算機軟件及應用軟件工程概述全文共95頁,當前為第70頁。示例分析舊版本相當于一個原型,沒必要再專門開發(fā)一個原型系統(tǒng)公司軟件工程師對該軟件很熟悉,有開發(fā)字處理軟件的豐富經(jīng)驗,具備采用增量模型開發(fā)字處理軟件的技術水平該軟件廣泛使用,需要進一步的改進和擴充,以形成更新的版本結(jié)論:增量模型Return計算機軟件及應用軟件工程概述全文共95頁,當前為第71頁。技術審查和管理復審任務:在軟件生存周期的每個重要的里程碑(一般是每個階段結(jié)束時),對工程項目的成本,實際花費的經(jīng)費,投資回收的前景,項目的進度等經(jīng)濟因素從管理角度進行審查。目的:不讓錯誤進入下一個階段技術審查也是降低軟件成本的一個重要措施在技術審查合格之后再進行管理復審計算機軟件及應用軟件工程概述全文共95頁,當前為第72頁。軟件開發(fā)工具軟件工具一般是指為了支持軟件人員開發(fā)和維護活動而使用的軟件。軟件工具發(fā)展的三個階段工具箱軟件開發(fā)環(huán)境SDE計算機輔助軟件工程CASE(ComputerAidedSoftwareEngineering)工具應該支持軟件生命周期的各個階段RequirementsManagementVisualModelingProgrammingToolQualityAssuranceReturn計算機軟件及應用軟件工程概述全文共95頁,當前為第73頁。什么是軟件危機?它有哪些具體表現(xiàn)?什么是軟件工程?它有哪些本質(zhì)特征?什么是軟件過程?它與軟件工程方法學有何關系?試比較瀑布模型、快速原型模型、增量模型和螺旋模型的優(yōu)缺點,說明各種模型的使用范圍。什么是基線?應有哪些基本特征?什么是里程碑?應有哪些基本特征?作業(yè)一計算機軟件及應用軟件工程概述全文共95頁,當前為第74頁。第二章(第三講)可行性研究與成本效益分析計算機軟件及應用軟件工程概述全文共95頁,當前為第75頁。本講的主要內(nèi)容問題定義與可行性研究可行性研究的任務可行性研究的步驟系統(tǒng)流程圖成本/效益分析GO計算機軟件及應用軟件工程概述全文共95頁,當前為第76頁。1、問題定義問題是什么?問題性質(zhì)工程目標或前景(vision)工程規(guī)模和范圍(scope)問題定義階段結(jié)束的標準提交有關規(guī)模和目標的報告書計算機軟件及應用軟件工程概述全文共95頁,當前為第77頁。軟件可行性研究軟件可行性研究的目的用最小的代價在盡可能短的時間內(nèi)確定該軟件項目是否能夠開發(fā),是否值得去開發(fā)。結(jié)束標準描述系統(tǒng)的高層邏輯模型成本效益分析關于“是否可行”的明確回答Return計算機軟件及應用軟件工程概述全文共95頁,當前為第78頁。2、軟件可行性研究的任務技術可行性經(jīng)濟可行性社會可行性操作可行性Return計算機軟件及應用軟件工程概述全文共95頁,當前為第79頁。3、軟件可行性研究的步驟(1)確定項目規(guī)模和目標(2)研究正在運行的系統(tǒng)(3)建立新系統(tǒng)的高層邏輯模型(4)導出和評價各種方案(5)推薦可行的方案(6)編寫可行性研究報告Return計算機軟件及應用軟件工程概述全文共95頁,當前為第80頁。可行性研究是高層的分析和設計計算機軟件及應用軟件工程概述全文共95頁,當前為第81頁??尚行匝芯繄蟾妫?)引言(2)可行性研究前提(3)對現(xiàn)有系統(tǒng)的分析(4)所建議系統(tǒng)的技術可行性分析(5)所建議系統(tǒng)的經(jīng)濟可行性分析(6)社會因素可行性分析(7)其它可供選擇方案(8)結(jié)論意見計算機軟件及應用軟件工程概述全文共95頁,當前為第82頁。4、系統(tǒng)流程圖系統(tǒng)流程圖是描繪物理系統(tǒng)中各個元素的圖形符號的集合,它表達了系統(tǒng)中各個元素之間的信息流動的情況??尚行匝芯恳鶕?jù)項目的概要范圍、功能、性能等需求,以概括的形式描述現(xiàn)有系統(tǒng)的高層的邏輯模型,并通過概要的設計得到所建議的系統(tǒng)物理模型。Return計算機軟件及應用軟件工程概述全文共95頁,當前為第83頁。一個庫存管理系統(tǒng)的系統(tǒng)流程圖訂貨信息庫存管理模塊報告生成模塊訂貨報告庫存文件輸入變更記錄I/O顯示磁盤聯(lián)機存儲處理文檔計算機軟件及應用軟件工程概述全文共95頁,當前為第84頁。5、成本/效益分析目的:將開發(fā)成本與可能取得的效益比較和權衡,從經(jīng)濟角度評價開發(fā)一個新的軟件項目是否可行。效益分為有形效益和無形效益有形效益可以用貨幣的時間價值、投資回收期、純收人等指標進行度量無形效益主要從性質(zhì)上、心理上進行衡量,很難直接進行量的比較。計算機軟件及應用軟件工程概述全文共95頁,當前為第85頁。成本估計技術代碼行技術任務分解技術自動估計成本技術計算機軟件及應用軟件工程概述全文共95頁,當前為第86頁。成本/效益分析的方法貨幣的時間價值(示例見P41)
F=P(1+i)n→P=F?(1+i)n投資回收期純收入投資回收率
P=F1?(1+i)+F2?(1+i)2+….+Fn?(1+i)n
Return計算機軟件及應用軟件工程概述全
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 護理學個人工作總結(jié)
- 初一歷史老師工作總結(jié)
- 籃球賽活動總結(jié)
- 大學生創(chuàng)業(yè)計劃
- 公司高管勞動合同范本
- 北京課改版歷史七年級下冊第17課《統(tǒng)一多民族國家的鞏固和發(fā)展》聽課評課記錄
- 職工崗位聘任協(xié)議書范本
- 云服務器租賃合同范本
- 八年級上冊歷史人教版同步聽課評課記錄第24課《人民解放戰(zhàn)爭的勝利》
- 蘇科版數(shù)學七年級下冊《7.4 認識三角形》聽評課記錄4
- 四川省瀘州市2024年中考地理試卷(附解析)
- 人教部編版道德與法治八年級下冊:6.3 《國家行政機關》說課稿1
- GE-LM2500+G4航改燃氣輪機在艦船和工業(yè)上的應用
- 2024山東能源集團中級人才庫選拔(高頻重點提升專題訓練)共500題附帶答案詳解
- 鋼鐵是怎樣煉成的讀后感作文700字
- 武漢市江夏區(qū)2022-2023學年七年級上學期期末數(shù)學試卷【帶答案】-109
- 學校物業(yè)服務合同范本專業(yè)版
- SL 288-2014 水利工程施工監(jiān)理規(guī)范
- 部編版八年級語文上冊期末考試卷
- 部編版人教版語文八年級下冊全冊課件
- 2024年02月中央軍委后勤保障部2024年公開招考專業(yè)技能崗位文職人員筆試參考題庫附帶答案詳解
評論
0/150
提交評論