




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
CQUPT葛君偉1軟件工程葛君偉教授博士重慶郵電大學圖書館館長電話箱:gejw@CQUPT葛君偉1軟件工程葛君偉教授博士CQUPT葛君偉2主要參考文獻張海藩,軟件工程,人民郵電出版社,2010。麻志毅,面向對象分析與設計,機械工業(yè)出版社,2010年2月。RogerS.Pressman,SoftwareEngineering:APractitioner‘sApproach,機械工業(yè)出版社,2011.8。Object-OrientedandClassicalSoftwareEngineering,Sixthedition,StephenR.Schach,2005CQUPT葛君偉2主要參考文獻張海藩,軟件工程,人民郵電出CQUPT葛君偉3問題1
什么是軟件?CQUPT葛君偉3問題1
什么是軟件?CQUPT葛君偉4問題2
你是如何開發(fā)一個軟件系統(tǒng)的?CQUPT葛君偉4問題2
你是如何開發(fā)一個軟件系統(tǒng)的?CQUPT葛君偉5概論
軟件工程的基本概念CQUPT葛君偉5概論
軟件工程的基本概念CQUPT葛君偉6概論
軟件工程的基本概念軟件在當今的信息社會中占有重要的地位,軟件產業(yè)是信息社會的支柱產業(yè)。據(jù)統(tǒng)計,軟件工程師在規(guī)模上大大超過了硬件工程師,二者的比例幾乎達到20:1。我國高等院校計算機相關專業(yè)約有95%的學生畢業(yè)后從事軟件開發(fā)與服務工作。
2009年我國軟件與信息服務外包產業(yè)保持了較快發(fā)展,產業(yè)規(guī)模繼續(xù)擴大,全年收入接近2000億,同比增長約24.5%。
根據(jù)人事部的統(tǒng)計,未來五年內,每年僅國內市場在軟件相關行業(yè)上的人才需求就高達80萬。據(jù)估算其中高端軟件人才缺口達20萬。
CQUPT葛君偉6概論
軟件工程的基本概念軟件在當今的信CQUPT葛君偉7SOFTWAREISEVERYWHEREGetcashfromanATM,makeaphonecall,anddriveourcars.Atypicalcellphonecontains2millionlinesofsoftwarecodein2005;by2010itlikelyhave10timesasmany.GeneralMotorsCorp.estimatesthatby2010itscarseachhave100millionlinesofcode.CQUPT葛君偉7SOFTWAREISEVERYWHECQUPT葛君偉8ITisnowoneofthelargestcorporateexpensesoutsideemployeecostsOrganizationsand
governmentsspendanestimated$1trilliononIThardware,software,andservicesworldwide.Theaveragecompanyspendsabout4to5percentofrevenueonIT.ThecompaniesthatarehighlyITdependent—suchasfinancialandtelecommunicationscompanies—spendingmorethan10percentonit.CQUPT葛君偉8ITisnowoneoftheCQUPT葛君偉9Governmentsarebigconsumersof
software…TheUnitedKingdomhadmorethan100majorgovernmentITprojectsunderwaythattotaled$20.3billion.TheU.S.governmentcataloged1200civilianITprojectscostingmorethan$60billion,plusanother$16billionformilitarysoftware.CQUPT葛君偉9GovernmentsarebigCQUPT葛君偉10Governmentsarebigconsumersof
softwareAnyoneoftheseprojectscancostover$1billion.Forexample,thecomputermodernizationeffortattheU.S.DepartmentofVeteransAffairsisprojectedtorun$3.5billion,whileautomatingthehealthrecordsoftheUK’sNationalHealthServiceislikelytocostmorethan$14.3billionfordevelopmentandanother$50.8billionfordeployment.Suchmegasoftwareprojectsarenowmuchmorecommon,assmallerIToperationsarejoinedinto“systemsofsystems.”Airtrafficcontrolisaprimeexample,becauseitreliesonconnectionsamongdozensofnetworksthatprovidecommunications,weather,navigation,andotherdata.CQUPT葛君偉10Governmentsarebig2022/12/10JunweiGe11#include<iostream.h>
voidmain()
{
inta,b;
cout<<"\ninputa,b=?\n";
cin>>a>>b;
intc;
c=a/b;
intd=a%b;
cout<<"\na/b="<<c<<end;
cout<<"\na%b="<<d<<end;
}
問題1
請討論以下C++程序的作用和不足?//I/O流庫頭文件//輸出提示語//對a、b變量輸入//變量可隨用隨定義//輸出a除以b的商//輸出a除以b的余數(shù)2022/12/8JunweiGe11#include<2022/12/10JunweiGe12問題2
你應如何開發(fā)一個電信業(yè)務管理系統(tǒng)?2022/12/8JunweiGe12問題2
你應如何開2022/12/10JunweiGe13鄉(xiāng)村土坯房是如何蓋的?2022/12/8JunweiGe13鄉(xiāng)村土坯房是如何蓋的2022/12/10JunweiGe14據(jù)中央電視臺說,鳥巢的設計圖紙有150多張,由它們轉化而來的施工圖紙有2萬多張??纯幢本B巢是如何建設的?2022/12/8JunweiGe14據(jù)中央電視臺說,看看CQUPT葛君偉15概論
軟件工程的基本概念軟件的含義軟件是程序、數(shù)據(jù)和相關文檔的集合。當運行時,能夠提供所要求的功能和性能的指令或程序集合;該程序能夠滿意地處理信息的數(shù)據(jù)結構;該文檔能夠描述程序的功能需求以及操作和使用方法。CQUPT葛君偉15概論
軟件工程的基本概念軟件的含義CQUPT葛君偉16概論
軟件工程的基本概念軟件發(fā)展的三個階段高級語言出現(xiàn)之前(約1946年~1956年);高級語言出現(xiàn)到軟件工程出現(xiàn)之前(約1956年~1969年);軟件工程階段(1969年~至今)。CQUPT葛君偉16概論
軟件工程的基本概念軟CQUPT葛君偉17
概論
軟件工程的基本概念軟件工程的定義軟件工程是工程技術在軟件中的應用;通過這一應用,使計算機設備的能力借助于計算機程序、過程和有關文檔成為對人類有用的東西。軟件工程是軟件工程師用工具和技術(方法),按照某一過程和范例來構造軟件,從而增強軟件產品的質量,更有效地解決問題。軟件工程是一種工程形式,它應用計算機科學和數(shù)學原理,針對軟件問題獲得一種經濟有效的解決方案。軟件工程用系統(tǒng)的、規(guī)范的、可度量的方法,開發(fā)、運行和維護軟件。CQUPT葛君偉17
概論
軟件工程的基本概念CQUPT葛君偉18概論
軟件工程的基本概念為什么提出軟件工程?1960年代末期,計算機程序在復雜度、規(guī)模和應用領域等方面的增長引人注目,導致上千億資金花費在軟件開發(fā)上。軟件產品在幫助人們獲得更高的工作和生產效率,更方便的生活環(huán)境的同時,在產品開發(fā)的成本、工期、質量等方面卻存在嚴重問題。成本超出預算工期一拖再拖質量得不到保證上述問題導致軟件危機,其特征是微觀上,完工日期一再拖后、經費一再超支,甚至工程最終宣告失敗。宏觀上、從整個社會對軟件的需求來看,軟件危機的實質是軟件產品的供應跟不上需求的增長。CQUPT葛君偉18概論
軟件工程的基本概念為CQUPT葛君偉19CancelingERPInOctober2004,thegiantBritishfoodretailerJSainsburyPLChadtowriteoffitsUS$526
millioninvestmentinanautomatedsupply-chainmanagementsystem.Itseemsthatmerchandisewasstuckinthecompany’sdepotsandwarehousesandwasnotgettingthroughtomanyofitsstores.Sainsburywasforcedtohireabout3000additionalclerkstostockitsshelvesmanuallyCQUPT葛君偉19CancelingERPInOctCQUPT葛君偉20OxfordHealthPlansNewbillingsystemcannotkeepupwithexpandingbusiness,resultinginuncollectedpaymentsof$400millionfrompatientsand$650millionowedtocaregivers.October1997announcementofquarterlylosstriggersstockpricetodropfrom$68to$26inoneday,wipingout$3.4billionincorporatevalue.Companylaterpaysinvestors$225milliontosettlelawsuits.CQUPT葛君偉20OxfordHealthPlansCQUPT葛君偉21SydneyWaterCorp.ProjecttoautomatecustomerinformationandbillingforAustralia'slargestwaterprovideriscanceledin2002,duetoinadequateplanning,numerouschangerequests,andcostandscheduleoverruns.COST:$33.2millionCQUPT葛君偉21SydneyWaterCorp.PCQUPT葛君偉22LondonStockExchangeEfforttodesignnewstocksettlementsystemisscrappedin1993,aftersevenyears,becauseofoverlycomplexandcumbersomedesignandpoorprojectmanagement.COST:$600millionCQUPT葛君偉22LondonStockExchanCQUPT葛君偉23國內失敗案例…資源一號02型飛行兩年,在1473圈,變軌沒有成功發(fā)現(xiàn)是潛通道問題。系統(tǒng)實現(xiàn)是分散到五個子程序,變量在前一個模塊被清掉,需要姿態(tài)正常,才能開發(fā)動機。方法:把部分程序重新設計,再送上去CQUPT葛君偉23國內失敗案例…資源一號02型CQUPT葛君偉24國內失敗案例…三號衛(wèi)星2004年11月發(fā)射,12月-05.1,有四次進入異常工作模式。分析:異常指令-內存?zhèn)飨聛矸治?,發(fā)現(xiàn)是軌道計算發(fā)現(xiàn)尋址跳變。減法運算指令,是否帶進位關系到結果正確。CQUPT葛君偉24國內失敗案例…三號衛(wèi)星CQUPT葛君偉25國內失敗案例神州飛船返回的前天晚上,發(fā)現(xiàn)異常,發(fā)現(xiàn)發(fā)動機通訊有短暫不成功。神州二號發(fā)射逃逸模式,發(fā)出指令卻沒有轉化到逃逸模式。問題:時間清零問題CQUPT葛君偉25國內失敗案例神州飛船CQUPT葛君偉26TheproblemonlygetsworseasITgrowsubiquitousOftheITprojectsthatareinitiated,from5to15percentwillbeabandonedbeforeorshortlyafterdeliveryashopelesslyinadequate.Manyotherswillarrivelateandoverbudgetorrequiremassivereworking.FewITprojects,inotherwords,trulysucceed.CQUPT葛君偉26TheproblemonlygeCQUPT葛君偉27WHENASOFTWAREPROJECTFAILS,…itjeopardizesanorganization’sprospects.itmaystealthecompany’sentirefuture.ApoorlyimplementedresourceplanningsystemledFoxMeyerDrugCo.,a$5billionwholesaledrugdistributioncompanyinCarrollton,Texas,toplummetintobankruptcyin1996.CQUPT葛君偉27WHENASOFTWAREPROCQUPT葛君偉28WHENASOFTWAREPROJECTFAILS,…ITfailureingovernmentcanimperilnationalsecurity.The$170millionVCF(FBI’sVirtualCaseFile)systeminsteadendedwithoutanysystem’sbeingdeployed.ITfailurescanstunteconomicgrowthandqualityoflife.AIRJAM:TheU.S.FederalAviationAdministrationspent$2.6billiontryingtoupgradeitsair-trafficcontrolsystemfrom1981,onlytocanceltheprojectin1994.Gridlockedskiesarestillwithustoday.由航班延誤造成的經濟損失累計高達500億美元。CQUPT葛君偉28WHENASOFTWAREPROCQUPT葛君偉29WHENASOFTWAREPROJECTFAILS,…Failurecanbedefinedasthetotalabandonmentofaprojectbeforeorshortlyafteritisdelivered.In2004,theU.S.governmentspent$60billiononsoftware(notcountingtheembeddedsoftwareinweaponssystems).A5percentfailurerate(atleast)means$3billionwasprobablywasted.A15to20percentfailurerate(moreprobably),whichhavebudgetsof$10millionormore,meansthat$25-75billionwasprobablywasted,bothgovernmentandcorporateforlast5years.CQUPT葛君偉29WHENASOFTWAREPROCQUPT葛君偉30WHENASOFTWAREPROJECTFAILSThefailuredoesn’treflectprojectsthatexceedtheirbudgets—whichmostprojectsdo,thatdeliveredlate—whichthemajorityare,thathavetostartoveronceaprojectisabandoned,orthatarebug-riddensystemswhichhavetoberepeatedlyreworked.發(fā)生用戶訴訟的項目。包括以上所有浪費的費用,僅美國每年在軟件開發(fā)上浪費的費用就在60-70billion美元。這些錢可以發(fā)射太空飛船100次,建造由24顆衛(wèi)星組成的GPS系統(tǒng),或者從頭研制開發(fā)Boeing777飛機,還要剩余幾billion美元。CQUPT葛君偉30WHENASOFTWAREPROCQUPT葛君偉31概論
軟件危機為什么提出軟件工程?造成軟件危機的原因軟件產品是復雜的人造系統(tǒng),具有復雜性、不可預見性和易變性,難以處理。個人和小組非常有效的開發(fā)小型軟件的編程技術和過程,在開發(fā)大型、復雜系統(tǒng)時難以發(fā)揮同樣的作用。軟件是知識產品,技術更新快,行業(yè)競爭激烈,難以在可以接受的成本和工期內提供高質量的產品。CQUPT葛君偉31概論
軟件危機為什么提出軟件工程?CQUPT葛君偉32概論
軟件危機以下是具體原因:軟件工程的建設目標在工程進行期間會不斷地變更,原因是技術的進步,周圍環(huán)境的變化和用戶使用后要求的提高。軟件部件的重復利用處于很低的水平。開發(fā)者很少能夠“從不同廠商采購軟部件,再加上自己的東西,迅速形成一個系統(tǒng)”。軟件不可靠、不可維護、不可移植導致開發(fā)和維護費用激增。由于缺乏軟件開發(fā)的經驗和關于軟件開發(fā)數(shù)據(jù)的積累,使得開發(fā)工作的計劃很難制定和實施。CQUPT葛君偉32概論
軟件危機以下是具體原因:CQUPT葛君偉33概論
軟件危機以下是具體原因:作為軟件設計依據(jù)的需求,在開發(fā)的初期階段提得不夠明確,或是未能得到確切的表達。開發(fā)工作開始后,軟件人員和用戶又未能及時交換意見,使得一些問題不能及時得到解決而隱藏起來,造成開發(fā)后期矛盾的集中暴露。開發(fā)過程沒有統(tǒng)一的、公認的方法或規(guī)范指導,參加人員各行其事。加之不重視文字資料工作,設計和實現(xiàn)過程的資料很不完整,或是每個工作與其他人的接口部分被忽視。未能在測試階段充分做好檢測工作,提交用戶的軟件質量差,在運行中暴露出大量的問題。特別是,軟件測試不能證明軟件完全正確,且事后的更改不一定能增進軟件的質量。CQUPT葛君偉33概論
軟件危機以下是具體原因:CQUPT葛君偉34概論
軟件工程軟件工程的作用解決軟件危機;從“技術”和“技術管理”的角度來研究和探討軟件的設計、開發(fā)和維護問題。軟件工程將數(shù)據(jù)流、控制流、事件驅動、狀態(tài)機變換、面向對象等方法規(guī)范化、模式化,并制作相應的工作,使得軟件生產率更高,質量更好,成本更低。CQUPT葛君偉34概論
軟件工程軟件工程的作用CQUPT葛君偉35概論
軟件工程軟件工程的地位1991年,ACM和IEEE-CS的計算學科教程CC1991專題組將軟件工程列為計算學科的九個知識領域之一。2001年,CC2001將計算科學劃分為5個相對獨立的部分:計算機科學,計算機工程,軟件工程,信息系統(tǒng)和信息技術。2004年8月,全世界500多位來指大學、科研機構和企業(yè)的專家、教授推出了軟件工程知識體(SWEBOK)和軟件工程教育知識體(SEEK),標志著軟件工程學科在世界范圍正式確立。2011年,教育部正式將軟件工程列為一級學科。CQUPT葛君偉35概論
軟件工程軟件工程的地位CQUPT葛君偉36概論
軟件工程軟件工程的十個知識域軟件需求——軟件工程基礎軟件設計——軟件工程核心軟件構造軟件測試軟件維護軟件配置管理軟件工程管理—基礎設施管理,項目管理,度量和控制計劃軟件工程過程軟件工程工具和方法軟件質量CQUPT葛君偉36概論
軟件工程軟件工程的十個知識域CQUPT葛君偉37概論
軟件工程軟件工程的基本原理用分階段的生命周期計劃嚴格管理堅持進行階段評審實行嚴格的產品控制,重點是實行基準配置管理采用先進的程序設計技術,提高軟件開發(fā)和維護的效率結果應能清楚地審查開發(fā)小組的人員應該少而精承認不斷改進軟件工程實踐的必要性CQUPT葛君偉37概論
軟件工程軟件工程的基本原理CQUPT葛君偉38概論
軟件工程軟件工程方法學軟件工程:技術與管理緊密結合的工程學科。軟件工程方法學:在軟件生命周期全過程中使用的一整套方法技術(Methodology/Paradigm)。傳統(tǒng)方法學—生命周期方法學或結構化范型。面向對象方法學—以數(shù)據(jù)為主線,將數(shù)據(jù)和對數(shù)據(jù)的操作緊密結合的方法。CQUPT葛君偉38概論
軟件工程軟件工程方法學CQUPT葛君偉39概論
軟件工程的特點軟件工程包含的四個關鍵元素方法(methods)語言(languages)工具(tools)過程(procedures)CQUPT葛君偉39概論
軟件工程的特點軟件工程包含的CQUPT葛君偉40概論
軟件工程的特點軟件工程現(xiàn)階段特點強調文檔的重要性對“形式化”描述的要求正在增加原型開發(fā)方法和Demo示范的做法日益流行開發(fā)隊伍變得精干質量控制將逐步得到重視軟件重用與軟構件的思想在實施上有所表現(xiàn)CQUPT葛君偉40概論
軟件工程的特點軟件工程現(xiàn)階段CQUPT葛君偉41概論
軟件的生命周期軟件工程的傳統(tǒng)途徑—生命周期方法學對復雜問題進行分解逐步完成每個階段的任務階段審查的主要標準是高質量的文檔CQUPT葛君偉41概論
軟件的生命周期軟件工程的傳統(tǒng)CQUPT葛君偉42概論
軟件的生命周期軟件的生命周期(LifeCycle):計劃需求分析設計程序編寫測試運行維護等六個步驟要求在軟件的整個生命周期進行工程化管理。CQUPT葛君偉42概論
軟件的生命周期軟件的生命周期CQUPT葛君偉43概論
軟件的生命周期軟件的生命周期(LifeCycle),:軟件定義或系統(tǒng)分析問題定義可行性研究需求分析CQUPT葛君偉43概論
軟件的生命周期軟件的生命周期CQUPT葛君偉44概論
軟件的生命周期軟件的生命周期(LifeCycle),:開發(fā)系統(tǒng)設計總體設計詳細設計系統(tǒng)實現(xiàn)編碼和單元測試綜合測試CQUPT葛君偉44概論
軟件的生命周期軟件的生命周期CQUPT葛君偉45概論
軟件的生命周期軟件的生命周期(LifeCycle):維護—再定義和再開發(fā)過程CQUPT葛君偉45概論
軟件的生命周期軟件的生命周期CQUPT葛君偉46概論
軟件的生命周期生命周期各階段的基本任務問題定義要解決問題的性質工程目標工程規(guī)模CQUPT葛君偉46概論
軟件的生命周期生命周期各階段CQUPT葛君偉47概論
軟件的生命周期生命周期各階段的基本任務可行性研究研究問題的范圍問題的意義是否可以解決成本/效益分析CQUPT葛君偉47概論
軟件的生命周期生命周期各階段CQUPT葛君偉48概論
軟件的生命周期生命周期各階段的基本任務需求分析決定待開發(fā)軟件的功能需求和性能需求寫出軟件需求規(guī)格說明書有初步的系統(tǒng)用戶手冊,提交管理機構評審目前常用的分析方法結構化分析方法面向對象的分析方法。CQUPT葛君偉48概論
軟件的生命周期生命周期各階段CQUPT葛君偉49概論
軟件的生命周期生命周期各階段的基本任務總體設計:考慮幾種可能的解決方案低成本中等成本高成本(十全十美)詳細設計設計程序的詳細規(guī)格說明CQUPT葛君偉49概論
軟件的生命周期生命周期各階段CQUPT葛君偉50概論
軟件的生命周期生命周期各階段的基本任務編碼和單元測試綜合測試集成測試驗收測試用文檔將測試計劃、詳細測試方案和測試結果記錄下來CQUPT葛君偉50概論
軟件的生命周期生命周期各階段CQUPT葛君偉51概論
軟件的生命周期生命周期各階段的基本任務維護維護分類改正性維護—修正錯誤適應性維護—使軟件適應環(huán)境的變化完善性維護—增加新的功能預防性維護—為將來的維護活動做準備CQUPT葛君偉51概論
軟件的生命周期生命周期各階段CQUPT葛君偉52概論
軟件的生命周期生命周期各階段的基本任務維護一般維護步驟提出維護要求分析維護要求提出維護方案審批維護方案確定維護計劃修改軟件設計修改程序復查驗收應記錄維護檔案CQUPT葛君偉52概論
軟件的生命周期生命周期各階段CQUPT葛君偉53概論
技術審查和管理復審審查時間在軟件開發(fā)的每個階段結束時進行,通常先進行技術審查。CQUPT葛君偉53概論
技術審查和管理復審審查時間CQUPT葛君偉54概論
技術審查和管理復審技術審查任務和目的發(fā)現(xiàn)軟件錯誤作用保證軟件質量降低軟件成本CQUPT葛君偉54概論
技術審查和管理復審技術審查CQUPT葛君偉55概論
技術審查和管理復審技術審查方法成立審查小組準備簡要介紹情況閱讀被審查的文檔開審查會返工復查CQUPT葛君偉55概論
技術審查和管理復審技術審查CQUPT葛君偉56概論
技術審查和管理復審管理復審任務和目的從管理角度對各種經濟因素進行審查,以發(fā)現(xiàn)并解決問題。管理復審的對象工程項目的成本工程項目的進度投資回收的前景(效益)管理復審的作用對工程進行管理和控制的主要手段CQUPT葛君偉56概論
技術審查和管理復審管理復審CQUPT葛君偉57軟件工程葛君偉教授博士重慶郵電大學圖書館館長電話箱:gejw@CQUPT葛君偉1軟件工程葛君偉教授博士CQUPT葛君偉58主要參考文獻張海藩,軟件工程,人民郵電出版社,2010。麻志毅,面向對象分析與設計,機械工業(yè)出版社,2010年2月。RogerS.Pressman,SoftwareEngineering:APractitioner‘sApproach,機械工業(yè)出版社,2011.8。Object-OrientedandClassicalSoftwareEngineering,Sixthedition,StephenR.Schach,2005CQUPT葛君偉2主要參考文獻張海藩,軟件工程,人民郵電出CQUPT葛君偉59問題1
什么是軟件?CQUPT葛君偉3問題1
什么是軟件?CQUPT葛君偉60問題2
你是如何開發(fā)一個軟件系統(tǒng)的?CQUPT葛君偉4問題2
你是如何開發(fā)一個軟件系統(tǒng)的?CQUPT葛君偉61概論
軟件工程的基本概念CQUPT葛君偉5概論
軟件工程的基本概念CQUPT葛君偉62概論
軟件工程的基本概念軟件在當今的信息社會中占有重要的地位,軟件產業(yè)是信息社會的支柱產業(yè)。據(jù)統(tǒng)計,軟件工程師在規(guī)模上大大超過了硬件工程師,二者的比例幾乎達到20:1。我國高等院校計算機相關專業(yè)約有95%的學生畢業(yè)后從事軟件開發(fā)與服務工作。
2009年我國軟件與信息服務外包產業(yè)保持了較快發(fā)展,產業(yè)規(guī)模繼續(xù)擴大,全年收入接近2000億,同比增長約24.5%。
根據(jù)人事部的統(tǒng)計,未來五年內,每年僅國內市場在軟件相關行業(yè)上的人才需求就高達80萬。據(jù)估算其中高端軟件人才缺口達20萬。
CQUPT葛君偉6概論
軟件工程的基本概念軟件在當今的信CQUPT葛君偉63SOFTWAREISEVERYWHEREGetcashfromanATM,makeaphonecall,anddriveourcars.Atypicalcellphonecontains2millionlinesofsoftwarecodein2005;by2010itlikelyhave10timesasmany.GeneralMotorsCorp.estimatesthatby2010itscarseachhave100millionlinesofcode.CQUPT葛君偉7SOFTWAREISEVERYWHECQUPT葛君偉64ITisnowoneofthelargestcorporateexpensesoutsideemployeecostsOrganizationsand
governmentsspendanestimated$1trilliononIThardware,software,andservicesworldwide.Theaveragecompanyspendsabout4to5percentofrevenueonIT.ThecompaniesthatarehighlyITdependent—suchasfinancialandtelecommunicationscompanies—spendingmorethan10percentonit.CQUPT葛君偉8ITisnowoneoftheCQUPT葛君偉65Governmentsarebigconsumersof
software…TheUnitedKingdomhadmorethan100majorgovernmentITprojectsunderwaythattotaled$20.3billion.TheU.S.governmentcataloged1200civilianITprojectscostingmorethan$60billion,plusanother$16billionformilitarysoftware.CQUPT葛君偉9GovernmentsarebigCQUPT葛君偉66Governmentsarebigconsumersof
softwareAnyoneoftheseprojectscancostover$1billion.Forexample,thecomputermodernizationeffortattheU.S.DepartmentofVeteransAffairsisprojectedtorun$3.5billion,whileautomatingthehealthrecordsoftheUK’sNationalHealthServiceislikelytocostmorethan$14.3billionfordevelopmentandanother$50.8billionfordeployment.Suchmegasoftwareprojectsarenowmuchmorecommon,assmallerIToperationsarejoinedinto“systemsofsystems.”Airtrafficcontrolisaprimeexample,becauseitreliesonconnectionsamongdozensofnetworksthatprovidecommunications,weather,navigation,andotherdata.CQUPT葛君偉10Governmentsarebig2022/12/10JunweiGe67#include<iostream.h>
voidmain()
{
inta,b;
cout<<"\ninputa,b=?\n";
cin>>a>>b;
intc;
c=a/b;
intd=a%b;
cout<<"\na/b="<<c<<end;
cout<<"\na%b="<<d<<end;
}
問題1
請討論以下C++程序的作用和不足?//I/O流庫頭文件//輸出提示語//對a、b變量輸入//變量可隨用隨定義//輸出a除以b的商//輸出a除以b的余數(shù)2022/12/8JunweiGe11#include<2022/12/10JunweiGe68問題2
你應如何開發(fā)一個電信業(yè)務管理系統(tǒng)?2022/12/8JunweiGe12問題2
你應如何開2022/12/10JunweiGe69鄉(xiāng)村土坯房是如何蓋的?2022/12/8JunweiGe13鄉(xiāng)村土坯房是如何蓋的2022/12/10JunweiGe70據(jù)中央電視臺說,鳥巢的設計圖紙有150多張,由它們轉化而來的施工圖紙有2萬多張。看看北京鳥巢是如何建設的?2022/12/8JunweiGe14據(jù)中央電視臺說,看看CQUPT葛君偉71概論
軟件工程的基本概念軟件的含義軟件是程序、數(shù)據(jù)和相關文檔的集合。當運行時,能夠提供所要求的功能和性能的指令或程序集合;該程序能夠滿意地處理信息的數(shù)據(jù)結構;該文檔能夠描述程序的功能需求以及操作和使用方法。CQUPT葛君偉15概論
軟件工程的基本概念軟件的含義CQUPT葛君偉72概論
軟件工程的基本概念軟件發(fā)展的三個階段高級語言出現(xiàn)之前(約1946年~1956年);高級語言出現(xiàn)到軟件工程出現(xiàn)之前(約1956年~1969年);軟件工程階段(1969年~至今)。CQUPT葛君偉16概論
軟件工程的基本概念軟CQUPT葛君偉73
概論
軟件工程的基本概念軟件工程的定義軟件工程是工程技術在軟件中的應用;通過這一應用,使計算機設備的能力借助于計算機程序、過程和有關文檔成為對人類有用的東西。軟件工程是軟件工程師用工具和技術(方法),按照某一過程和范例來構造軟件,從而增強軟件產品的質量,更有效地解決問題。軟件工程是一種工程形式,它應用計算機科學和數(shù)學原理,針對軟件問題獲得一種經濟有效的解決方案。軟件工程用系統(tǒng)的、規(guī)范的、可度量的方法,開發(fā)、運行和維護軟件。CQUPT葛君偉17
概論
軟件工程的基本概念CQUPT葛君偉74概論
軟件工程的基本概念為什么提出軟件工程?1960年代末期,計算機程序在復雜度、規(guī)模和應用領域等方面的增長引人注目,導致上千億資金花費在軟件開發(fā)上。軟件產品在幫助人們獲得更高的工作和生產效率,更方便的生活環(huán)境的同時,在產品開發(fā)的成本、工期、質量等方面卻存在嚴重問題。成本超出預算工期一拖再拖質量得不到保證上述問題導致軟件危機,其特征是微觀上,完工日期一再拖后、經費一再超支,甚至工程最終宣告失敗。宏觀上、從整個社會對軟件的需求來看,軟件危機的實質是軟件產品的供應跟不上需求的增長。CQUPT葛君偉18概論
軟件工程的基本概念為CQUPT葛君偉75CancelingERPInOctober2004,thegiantBritishfoodretailerJSainsburyPLChadtowriteoffitsUS$526
millioninvestmentinanautomatedsupply-chainmanagementsystem.Itseemsthatmerchandisewasstuckinthecompany’sdepotsandwarehousesandwasnotgettingthroughtomanyofitsstores.Sainsburywasforcedtohireabout3000additionalclerkstostockitsshelvesmanuallyCQUPT葛君偉19CancelingERPInOctCQUPT葛君偉76OxfordHealthPlansNewbillingsystemcannotkeepupwithexpandingbusiness,resultinginuncollectedpaymentsof$400millionfrompatientsand$650millionowedtocaregivers.October1997announcementofquarterlylosstriggersstockpricetodropfrom$68to$26inoneday,wipingout$3.4billionincorporatevalue.Companylaterpaysinvestors$225milliontosettlelawsuits.CQUPT葛君偉20OxfordHealthPlansCQUPT葛君偉77SydneyWaterCorp.ProjecttoautomatecustomerinformationandbillingforAustralia'slargestwaterprovideriscanceledin2002,duetoinadequateplanning,numerouschangerequests,andcostandscheduleoverruns.COST:$33.2millionCQUPT葛君偉21SydneyWaterCorp.PCQUPT葛君偉78LondonStockExchangeEfforttodesignnewstocksettlementsystemisscrappedin1993,aftersevenyears,becauseofoverlycomplexandcumbersomedesignandpoorprojectmanagement.COST:$600millionCQUPT葛君偉22LondonStockExchanCQUPT葛君偉79國內失敗案例…資源一號02型飛行兩年,在1473圈,變軌沒有成功發(fā)現(xiàn)是潛通道問題。系統(tǒng)實現(xiàn)是分散到五個子程序,變量在前一個模塊被清掉,需要姿態(tài)正常,才能開發(fā)動機。方法:把部分程序重新設計,再送上去CQUPT葛君偉23國內失敗案例…資源一號02型CQUPT葛君偉80國內失敗案例…三號衛(wèi)星2004年11月發(fā)射,12月-05.1,有四次進入異常工作模式。分析:異常指令-內存?zhèn)飨聛矸治觯l(fā)現(xiàn)是軌道計算發(fā)現(xiàn)尋址跳變。減法運算指令,是否帶進位關系到結果正確。CQUPT葛君偉24國內失敗案例…三號衛(wèi)星CQUPT葛君偉81國內失敗案例神州飛船返回的前天晚上,發(fā)現(xiàn)異常,發(fā)現(xiàn)發(fā)動機通訊有短暫不成功。神州二號發(fā)射逃逸模式,發(fā)出指令卻沒有轉化到逃逸模式。問題:時間清零問題CQUPT葛君偉25國內失敗案例神州飛船CQUPT葛君偉82TheproblemonlygetsworseasITgrowsubiquitousOftheITprojectsthatareinitiated,from5to15percentwillbeabandonedbeforeorshortlyafterdeliveryashopelesslyinadequate.Manyotherswillarrivelateandoverbudgetorrequiremassivereworking.FewITprojects,inotherwords,trulysucceed.CQUPT葛君偉26TheproblemonlygeCQUPT葛君偉83WHENASOFTWAREPROJECTFAILS,…itjeopardizesanorganization’sprospects.itmaystealthecompany’sentirefuture.ApoorlyimplementedresourceplanningsystemledFoxMeyerDrugCo.,a$5billionwholesaledrugdistributioncompanyinCarrollton,Texas,toplummetintobankruptcyin1996.CQUPT葛君偉27WHENASOFTWAREPROCQUPT葛君偉84WHENASOFTWAREPROJECTFAILS,…ITfailureingovernmentcanimperilnationalsecurity.The$170millionVCF(FBI’sVirtualCaseFile)systeminsteadendedwithoutanysystem’sbeingdeployed.ITfailurescanstunteconomicgrowthandqualityoflife.AIRJAM:TheU.S.FederalAviationAdministrationspent$2.6billiontryingtoupgradeitsair-trafficcontrolsystemfrom1981,onlytocanceltheprojectin1994.Gridlockedskiesarestillwithustoday.由航班延誤造成的經濟損失累計高達500億美元。CQUPT葛君偉28WHENASOFTWAREPROCQUPT葛君偉85WHENASOFTWAREPROJECTFAILS,…Failurecanbedefinedasthetotalabandonmentofaprojectbeforeorshortlyafteritisdelivered.In2004,theU.S.governmentspent$60billiononsoftware(notcountingtheembeddedsoftwareinweaponssystems).A5percentfailurerate(atleast)means$3billionwasprobablywasted.A15to20percentfailurerate(moreprobably),whichhavebudgetsof$10millionormore,meansthat$25-75billionwasprobablywasted,bothgovernmentandcorporateforlast5years.CQUPT葛君偉29WHENASOFTWAREPROCQUPT葛君偉86WHENASOFTWAREPROJECTFAILSThefailuredoesn’treflectprojectsthatexceedtheirbudgets—whichmostprojectsdo,thatdeliveredlate—whichthemajorityare,thathavetostartoveronceaprojectisabandoned,orthatarebug-riddensystemswhichhavetoberepeatedlyreworked.發(fā)生用戶訴訟的項目。包括以上所有浪費的費用,僅美國每年在軟件開發(fā)上浪費的費用就在60-70billion美元。這些錢可以發(fā)射太空飛船100次,建造由24顆衛(wèi)星組成的GPS系統(tǒng),或者從頭研制開發(fā)Boeing777飛機,還要剩余幾billion美元。CQUPT葛君偉30WHENASOFTWAREPROCQUPT葛君偉87概論
軟件危機為什么提出軟件工程?造成軟件危機的原因軟件產品是復雜的人造系統(tǒng),具有復雜性、不可預見性和易變性,難以處理。個人和小組非常有效的開發(fā)小型軟件的編程技術和過程,在開發(fā)大型、復雜系統(tǒng)時難以發(fā)揮同樣的作用。軟件是知識產品,技術更新快,行業(yè)競爭激烈,難以在可以接受的成本和工期內提供高質量的產品。CQUPT葛君偉31概論
軟件危機為什么提出軟件工程?CQUPT葛君偉88概論
軟件危機以下是具體原因:軟件工程的建設目標在工程進行期間會不斷地變更,原因是技術的進步,周圍環(huán)境的變化和用戶使用后要求的提高。軟件部件的重復利用處于很低的水平。開發(fā)者很少能夠“從不同廠商采購軟部件,再加上自己的東西,迅速形成一個系統(tǒng)”。軟件不可靠、不可維護、不可移植導致開發(fā)和維護費用激增。由于缺乏軟件開發(fā)的經驗和關于軟件開發(fā)數(shù)據(jù)的積累,使得開發(fā)工作的計劃很難制定和實施。CQUPT葛君偉32概論
軟件危機以下是具體原因:CQUPT葛君偉89概論
軟件危機以下是具體原因:作為軟件設計依據(jù)的需求,在開發(fā)的初期階段提得不夠明確,或是未能得到確切的表達。開發(fā)工作開始后,軟件人員和用戶又未能及時交換意見,使得一些問題不能及時得到解決而隱藏起來,造成開發(fā)后期矛盾的集中暴露。開發(fā)過程沒有統(tǒng)一的、公認的方法或規(guī)范指導,參加人員各行其事。加之不重視文字資料工作,設計和實現(xiàn)過程的資料很不完整,或是每個工作與其他人的接口部分被忽視。未能在測試階段充分做好檢測工作,提交用戶的軟件質量差,在運行中暴露出大量的問題。特別是,軟件測試不能證明軟件完全正確,且事后的更改不一定能增進軟件的質量。CQUPT葛君偉33概論
軟件危機以下是具體原因:CQUPT葛君偉90概論
軟件工程軟件工程的作用解決軟件危機;從“技術”和“技術管理”的角度來研究和探討軟件的設計、開發(fā)和維護問題。軟件工程將數(shù)據(jù)流、控制流、事件驅動、狀態(tài)機變換、面向對象等方法規(guī)范化、模式化,并制作相應的工作,使得軟件生產率更高,質量更好,成本更低。CQUPT葛君偉34概論
軟件工程軟件工程的作用CQUPT葛君偉91概論
軟件工程軟件工程的地位1991年,ACM和IEEE-CS的計算學科教程CC1991專題組將軟件工程列為計算學科的九個知識領域之一。2001年,CC2001將計算科學劃分為5個相對獨立的部分:計算機科學,計算機工程,軟件工程,信息系統(tǒng)和信息技術。2004年8月,全世界500多位來指大學、科研機構和企業(yè)的專家、教授推出了軟件工程知識體(SWEBOK)和軟件工程教育知識體(SEEK),標志著軟件工程學科在世界范圍正式確立。2011年,教育部正式將軟件工程列為一級學科。CQUPT葛君偉35概論
軟件工程軟件工程的地位CQUPT葛君偉92概論
軟件工程軟件工程的十個知識域軟件需求——軟件工程基礎軟件設計——軟件工程核心軟件構造軟件測試軟件維護軟件配置管理軟件工程管理—基礎設施管理,項目管理,度量和控制計劃軟件工程過程軟件工程工具和方法軟件質量CQUPT葛君偉36概論
軟件工程軟件工程的十個知識域CQUPT葛君偉93概論
軟件工程軟件工程的基本原理用分階段的生命周期計劃嚴格管理堅持進行階段評審實行嚴格的產品控制,重點是實行基準配置管理采用先進的程序設計技術,提高軟件開發(fā)和維護的效率結果應能清
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 返利合同協(xié)議書
- 深入了解2024年紡織品設計師證書考試的問題及答案
- 紡織工程師職業(yè)發(fā)展與實踐經驗分享試題及答案
- 廢油合同協(xié)議書
- 公示合同終止協(xié)議書
- 苗木合同欠款協(xié)議書
- 招標采購合同協(xié)議書范本
- 消毒殺菌協(xié)議書
- 車輛入伙協(xié)議合同協(xié)議
- 月子離婚協(xié)議書
- 博騰變頻器說明書
- 瀝青混凝土拌合站吊裝計算書
- 減速機生產工藝流程圖
- 牛皮基礎知識PPT優(yōu)質課件
- 黃巖區(qū)區(qū)級以下河道管理范圍
- DB32∕T 3921-2020 居住建筑浮筑樓板保溫隔聲工程技術規(guī)程
- 風電場道路及平臺施工組織方案
- 最新幼兒園小朋友認識醫(yī)生和護士PPT課件
- 《蘇東坡傳》精美(課堂PPT)
- 第4章單回路控制系統(tǒng)設計-zhm
- 國標法蘭尺寸對照表
評論
0/150
提交評論