版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、CQUPT 葛君伟1软件工程葛君伟 教授 博士重庆邮电大学图书馆馆长电话箱:gejwCQUPT葛葛君伟2主要参考考文献张海藩,软件工工程,人人民邮电电出版社社,2010。麻志毅,面向对对象分析析与设计计,机械械工业出出版社,2010年2月。RogerS.Pressman,SoftwareEngineering:APractitionersApproach,机械工工业出版版社,2011.8。Object-Orientedand ClassicalSoftwareEngineering,Sixthedition,StephenR.Schach, 2005CQUPT葛葛君
2、伟3问题1什么是软软件?CQUPT葛葛君伟4问题2你是如何何开发一一个软件件系统的的?CQUPT葛葛君伟5概论软件工程程的基本本概念CQUPT葛葛君伟6概论软件工程程的基本本概念软件在当当今的信信息社会会中占有有重要的的地位,软件产产业是信信息社会会的支柱柱产业。据统计,软件工工程师在在规模上上大大超超过了硬硬件工程程师,二二者的比比例几乎乎达到20:1。我国高高等院校校计算机机相关专专业约有有95%的学生毕毕业后从从事软件件开发与与服务工工作。2009年我国软软件与信信息服务务外包产产业保持持了较快快发展,产业规规模继续续扩大,全年收收入接近近2000亿,同比比增长约约24.5%。根据人事事
3、部的统统计,未未来五年年内,每每年仅国国内市场场在软件件相关行行业上的的人才需需求就高高达80万。据估估算其中中高端软软件人才才缺口达达20万。CQUPT葛葛君伟7SOFTWAREISEVERYWHEREGetcashfrom an ATM,make aphonecall,anddriveour cars.A typicalcellphone contains2 millionlinesofsoftwarecode in 2005; by2010itlikelyhave10timesasmany.General MotorsCorp.estimatesthatby2010itscarseach
4、 have100millionlinesofcode.CQUPT葛葛君伟8ITisnowone of thelargest corporateexpensesoutside employee costsOrganizations andgovernmentsspendanestimated$1trilliononIThardware,software, andservicesworldwide.Theaveragecompany spendsabout4 to 5percentofrevenue on IT.Thecompanies thatare highlyITdependentsucha
5、sfinancialand telecommunicationscompaniesspendingmore than10percentonit.CQUPT葛葛君伟9Governmentsarebig consumersofsoftwareTheUnitedKingdomhadmorethan100majorgovernmentITprojectsunderwaythattotaled$20.3billion.TheU.S. governmentcataloged1200 civilian IT projectscosting morethan$60billion, plusanother$16
6、billionformilitarysoftware.CQUPT葛葛君伟10Governmentsarebig consumersofsoftwareAnyone of these projects cancostover $1 billion. Forexample,thecomputermodernizationeffortattheU.S. DepartmentofVeteransAffairsisprojectedtorun$3.5 billion,whileautomating thehealthrecordsoftheUKsNationalHealthServiceislikely
7、tocostmore than$14.3billionfordevelopmentand another$50.8billionfordeployment.Such megasoftwareprojectsarenow muchmorecommon, as smallerIToperationsarejoined into“systemsofsystems.”Airtrafficcontrolisa prime example, becauseitrelies on connections among dozensofnetworksthat providecommunications, we
8、ather, navigation, andotherdata.2020-02-09JunweiGe11#includevoid main()inta,b;coutab;intc;c=a/b;int d=a%b;coutna/b=cend;coutna%b=dend;问题1请讨论以以下C+程序的作作用和不不足?/I/O流库头文文件/输出提示示语/对a、b变量输入入/变量可随随用随定定义/输出a除以b的商/输出a除以b的余数2020-02-09JunweiGe12问题2你应如何何开发一一个电信信业务管管理系统统?2020-02-09JunweiGe13乡村土坯坯房是如如何盖的的?2020-02-
9、09JunweiGe14据中央电电视台说说,鸟巢的设设计图纸纸有150多张,由它们转转化而来来的施工工图纸有有2万多张。看看北京京鸟巢是是如何建建设的?CQUPT葛葛君伟15概论软件工程程的基本本概念软件的含含义软件是程程序、数数据和相相关文档档的集合合。当运行时时,能够够提供所所要求的的功能和和性能的的指令或或程序集集合;该程序能能够满意意地处理理信息的的数据结结构;该文档能能够描述述程序的的功能需需求以及及操作和和使用方方法。CQUPT葛葛君伟16概论软件工程程的基本本概念软件发展展的三个个阶段高级语言言出现之之前(约约1946年1956年);高级语言言出现到到软件工工程出现现之前(约19
10、56年年1969年年);软件工程程阶段(1969年至今)。CQUPT葛葛君伟17概论软件工程程的基本本概念软件工程程的定义义软件工程程是工程程技术在在软件中中的应用用;通过过这一应应用,使使计算机机设备的的能力借借助于计计算机程程序、过过程和有有关文档档成为对对人类有有用的东东西。软件工程程是软件件工程师师用工具具和技术术(方法法),按按照某一一过程和和范例来来构造软软件,从从而增强强软件产产品的质质量,更更有效地地解决问问题。软件工程程是一种种工程形形式,它它应用计计算机科科学和数数学原理理,针对对软件问问题获得得一种经经济有效效的解决决方案。软件工程程用系统统的、规规范的、可度量量的方法法
11、,开发发、运行行和维护护软件。CQUPT葛葛君伟18概论软件工程程的基本本概念为什么提提出软件件工程?1960年代末期期,计算算机程序序在复杂杂度、规规模和应应用领域域等方面面的增长长引人注注目,导导致上千千亿资金金花费在在软件开开发上。软件产品品在帮助助人们获获得更高高的工作作和生产产效率,更方便便的生活活环境的的同时,在产品品开发的的成本、工期、质量等等方面却却存在严严重问题题。成本超出出预算工期一拖拖再拖质量得不不到保证证上述问题题导致软软件危机机,其特特征是微观上,完工日日期一再再拖后、经费一一再超支支,甚至至工程最最终宣告告失败。宏观上、从整个个社会对对软件的的需求来来看,软软件危机
12、机的实质质是软件件产品的的供应跟跟不上需需求的增增长。CQUPT葛葛君伟19CancelingERPInOctober 2004, thegiantBritish foodretailerJSainsburyPLC hadtowriteoffitsUS$526millioninvestment in an automatedsupply-chainmanagementsystem.Itseemsthat merchandise wasstuckinthecompanys depotsandwarehousesandwas notgetting throughtomanyofitsstores.
13、Sainsburywas forcedtohire about 3000additionalclerkstostockits shelvesmanuallyCQUPT葛葛君伟20OxfordHealth PlansNewbillingsystemcannot keepupwithexpandingbusiness, resultinginuncollectedpaymentsof$400 millionfrom patients and$650 millionowed to caregivers.October 1997announcement of quarterlyloss trigger
14、s stock price to dropfrom$68to$26 in oneday, wipingout$3.4billion in corporatevalue.Companylaterpays investors$225 milliontosettle lawsuits.CQUPT葛葛君伟21SydneyWaterCorp.Project to automate customer information andbilling forAustraliaslargest water provider is canceled in 2002, duetoinadequate planning
15、,numerouschangerequests, andcost andscheduleoverruns.COST:$33.2millionCQUPT葛葛君伟22LondonStockExchangeEfforttodesign newstocksettlement systemisscrappedin1993,aftersevenyears,becauseofoverlycomplexandcumbersomedesignand poorprojectmanagement.COST:$600 millionCQUPT葛葛君伟23国内失败败案例资源一号号02型飞行两年年,在1473圈,变轨轨没
16、有成成功发现是潜潜通道问问题。系系统实现现是分散散到五个个子程序序,变量量在前一一个模块块被清掉掉,需要要姿态正正常,才才能开发发动机。方法:把把部分程程序重新新设计,再送上上去CQUPT葛葛君伟24国内失败败案例三号卫星星2004年11月发射,12月-05.1,有四次次进入异异常工作作模式。分析:异异常指令令内存存传下来来分析,发现是是轨道计计算发现现寻址跳跳变。减减法运算算指令,是否带带进位关关系到结结果正确确。CQUPT葛葛君伟25国内失败败案例神州飞船船返回的前前天晚上上,发现现异常,发现发发动机通通讯有短短暂不成成功。神州二号号发射逃逸逸模式,发出指指令却没没有转化化到逃逸逸模式。问
17、题:时时间清零零问题CQUPT葛葛君伟26Theproblemonly getsworseasITgrowsubiquitousOftheITprojectsthatareinitiated,from5 to 15 percentwill be abandonedbeforeorshortlyafterdeliveryashopelessly inadequate.Many otherswill arrivelate andover budgetorrequire massivereworking.FewITprojects, in other words,trulysucceed.CQUPT
18、葛葛君伟27WHEN ASOFTWAREPROJECTFAILS,itjeopardizesanorganizationsprospects.itmaystealthe companysentirefuture.A poorlyimplementedresourceplanningsystemledFoxMeyerDrugCo., a$5billionwholesaledrugdistributioncompanyinCarrollton,Texas,toplummetinto bankruptcyin1996.CQUPT葛葛君伟28WHEN ASOFTWAREPROJECTFAILS,ITf
19、ailure in governmentcan imperilnationalsecurity.The$170million VCF(FBIsVirtualCase File) systeminstead ended withoutany systems being deployed.ITfailurescanstunteconomicgrowth andquality of life.AIRJAM:TheU.S.Federal Aviation Administration spent $2.6billiontryingtoupgradeitsair-trafficcontrolsystem
20、from1981,only to canceltheprojectin1994.Gridlocked skies arestillwith us today.由航班延延误造成成的经济济损失累累计高达达500亿美元。CQUPT葛葛君伟29WHEN ASOFTWAREPROJECTFAILS,Failurecanbedefinedasthetotalabandonmentofaproject beforeorshortly after it is delivered.In2004,theU.S.government spent $60billion on software (notcounting
21、the embedded software in weaponssystems).A 5percentfailure rate(at least)means$3billion wasprobablywasted.A 15 to 20 percentfailurerate (more probably),whichhavebudgets of $10million or more, means that$25-75 billionwas probably wasted,bothgovernment andcorporatefor last5years.CQUPT葛葛君伟30WHEN ASOFTW
22、AREPROJECTFAILSThefailuredoesnt reflectprojectsthat exceedtheirbudgetswhich mostprojectsdo,that deliveredlatewhich themajorityare,that havetostartoveronce aprojectisabandoned, orthat arebug-ridden systemswhichhavetoberepeatedly reworked.发生用户户诉讼的的项目。包括以上上所有浪浪费的费费用,仅仅美国每每年在软软件开发发上浪费费的费用用就在60-70billion
23、美元。这这些钱可以发射射太空飞飞船100次,建造由24颗卫星组组成的GPS系统,或或者从头研制制开发Boeing777飞机,还还要剩余余几billion美元。CQUPT葛葛君伟31概论软件危机机为什么提提出软件件工程?造成软件件危机的的原因软件产品品是复杂杂的人造造系统,具有复复杂性、不可预预见性和和易变性性,难以以处理。个人和小小组非常常有效的的开发小小型软件件的编程程技术和和过程,在开发发大型、复杂系系统时难难以发挥挥同样的的作用。软件是知知识产品品,技术术更新快快,行业业竞争激激烈,难难以在可可以接受受的成本本和工期期内提供供高质量量的产品品。CQUPT葛葛君伟32概论软件危机机以下是具
24、具体原因因:软件工程程的建设设目标在在工程进进行期间间会不断断地变更更,原因因是技术术的进步步,周围围环境的的变化和和用户使使用后要要求的提提高。软件部件件的重复复利用处处于很低低的水平平。开发发者很少少能够“从不同同厂商采采购软部部件,再再加上自自己的东东西,迅迅速形成成一个系系统”。软件不可可靠、不不可维护护、不可可移植导导致开发发和维护护费用激激增。由于缺乏乏软件开开发的经经验和关关于软件件开发数数据的积积累,使使得开发发工作的的计划很很难制定定和实施施。CQUPT葛葛君伟33概论软件危机机以下是具具体原因因:作为软件件设计依依据的需需求,在在开发的的初期阶阶段提得得不够明明确,或或是未
25、能能得到确确切的表表达。开开发工作作开始后后,软件件人员和和用户又又未能及及时交换换意见,使得一一些问题题不能及及时得到到解决而而隐藏起起来,造造成开发发后期矛矛盾的集集中暴露露。开发过程程没有统统一的、公认的的方法或或规范指指导,参参加人员员各行其其事。加加之不重重视文字字资料工工作,设设计和实实现过程程的资料料很不完完整,或或是每个个工作与与其他人人的接口口部分被被忽视。未能在测测试阶段段充分做做好检测测工作,提交用用户的软软件质量量差,在在运行中中暴露出出大量的的问题。特别是是,软件件测试不不能证明明软件完完全正确确,且事事后的更更改不一一定能增增进软件件的质量量。CQUPT葛葛君伟34
26、概论软件工程程软件工程程的作用用解决软件件危机;从“技术术”和“技术管管理”的的角度来来研究和和探讨软软件的设设计、开开发和维维护问题题。软件工程程将数据据流、控控制流、事件驱驱动、状状态机变变换、面面向对象象等方法法规范化化、模式式化,并并制作相相应的工工作,使使得软件件生产率率更高,质量更更好,成成本更低低。CQUPT葛葛君伟35概论软件工程程软件工程程的地位位1991年,ACM和IEEE-CS的计算学学科教程程CC1991专题组将将软件工工程列为为计算学学科的九九个知识识领域之之一。2001年,CC2001将计算科科学划分分为5个相对独独立的部部分:计计算机科科学,计计算机工工程,软软件
27、工程程,信息息系统和和信息技技术。2004年8月,全世世界500多位来指指大学、科研机机构和企企业的专专家、教教授推出出了软件件工程知知识体(SWEBOK)和软件工工程教育育知识体体(SEEK),标志着着软件工工程学科科在世界界范围正正式确立立。2011年,教育育部正式式将软件件工程列列为一级级学科。CQUPT葛葛君伟36概论软件工程程软件工程程的十个个知识域域软件需求求软件工程程基础软件设计计软件工程程核心软件构造造软件测试试软件维护护软件配置置管理软件工程程管理基础设施施管理,项目管管理,度度量和控控制计划划软件工程程过程软件工程程工具和和方法软件质量量CQUPT葛葛君伟37概论软件工程程
28、软件工程程的基本本原理用分阶段段的生命命周期计计划严格格管理坚持进行行阶段评评审实行严格格的产品品控制,重点是是实行基基准配置置管理采用先进进的程序序设计技技术,提提高软件件开发和和维护的的效率结果应能能清楚地地审查开发小组组的人员员应该少少而精承认不断断改进软软件工程程实践的的必要性性CQUPT葛葛君伟38概论软件工程程软件工程程方法学学软件工程程:技术术与管理理紧密结结合的工工程学科科。软件工程程方法学学:在软软件生命命周期全全过程中中使用的的一整套套方法技技术(Methodology/Paradigm)。传统方法法学生命周期期方法学学或结构构化范型型。面向对象象方法学学以数据为为主线,将
29、数据据和对数数据的操操作紧密密结合的的方法。CQUPT葛葛君伟39概论软件工程程的特点点软件工程程包含的的四个关关键元素素方法(methods)语言(languages)工具(tools)过程(procedures)CQUPT葛葛君伟40概论软件工程程的特点点软件工程程现阶段段特点强调文档档的重要要性对“形式化”描述的要要求正在在增加原型开发发方法和和Demo示范的做做法日益益流行开发队伍伍变得精精干质量控制制将逐步步得到重重视软件重用用与软构构件的思思想在实实施上有有所表现现CQUPT葛葛君伟41概论软件的生生命周期期软件工程程的传统统途径生命周周期方法法学对复杂问问题进行行分解逐步完成成每
30、个阶阶段的任任务阶段审查查的主要要标准是是高质量量的文档档CQUPT葛葛君伟42概论软件的生生命周期期软件的生生命周期期(LifeCycle):计划需求分析析设计程序编写写测试运行维护护等六个个步骤要求在软软件的整整个生命命周期进进行工程程化管理理。CQUPT葛葛君伟43概论软件的生生命周期期软件的生生命周期期(LifeCycle),:软件定义义或系统统分析问题定义义可行性研研究需求分析析CQUPT葛葛君伟44概论软件的生生命周期期软件的生生命周期期(LifeCycle),:开发系统设计计总体设计计详细设计计系统实现现编码和单单元测试试综合测试试CQUPT葛葛君伟45概论软件的生生命周期期软件的生生命周期期(LifeCycle):维护再再定义和和再开发
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海科技大学《中外艺术鉴赏》2025-2026学年期末试卷
- 沈阳体育学院《财务管理》2025-2026学年期末试卷
- 沈阳师范大学《非线性编辑》2025-2026学年期末试卷
- 太原理工大学《电气工程基础》2025-2026学年期末试卷
- 沈阳师范大学《当代世界经济与政治》2025-2026学年期末试卷
- 唐山海运职业学院《口腔局部解剖》2025-2026学年期末试卷
- 太原理工大学《卫生保健》2025-2026学年期末试卷
- 山西经贸职业学院《海洋科学导论》2025-2026学年期末试卷
- 上海视觉艺术学院《跨国公司经营与管理》2025-2026学年期末试卷
- 石家庄幼儿师范高等专科学校《营销传播创意与策划》2025-2026学年期末试卷
- 2025年浙江宁波城建投资集团有限公司招聘笔试参考题库含答案解析
- 高中生艾滋病预防教育课件
- 2025-2030年中国隔音窗通风口行业市场现状供需分析及投资评估规划分析研究报告
- 路面铣刨合同协议
- 投行业务管理制度
- VTE相关知识培训课件
- 语文七年级下册 第二单元 单元整体分析
- 2.3品味美好情感 课 件 -2024-2025学年统编版道德与法治七年级下册
- 梯笼安装施工方案
- 三菱FX系列PLC原理及应用 课件 第2章三菱FX3U系列PLC组成和软元件
- 英文介绍长城的教育课件
评论
0/150
提交评论