当前位置首页 > 汽车/机械/制造 > 机械软件
搜柄,搜必应! 快速导航 | 使用教程

软件工程软件工程介绍

文档格式:PPT| 44 页|大小 394.50KB|2024-11-02 发布|举报 | 版权申诉
第1页
第2页
第3页
下载文档到电脑,查找使用更方便 还剩页未读,继续阅读>>
1 / 44
此文档下载收益归作者所有 下载文档
  • 版权提示
  • 文本预览
  • 常见问题
  • 单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,软件工程,第,1,章,软件工程介绍,1.1,软件与软件的复杂度,什么是软件?(站在软件工程的角度看),软件就是:,一个或多个计算机程序,其执行时能提供所期望的功能和性能,一个或多个数据结构,这些结构使得程序能够完全操纵信息,一个或多个文档,这些文档描述了程序分析、设计、实现和维护的细节,软件的定义:,面向过程的程序,=,算法,+,数据结构,面向对象的程序,=,对象,+,消息,面向构件的程序,=,构件,+,构架,50,年代:软件,=,程序,60,年代:软件,=,程序,+,文档(分析、设 计、测试、维护,但不包括管理文档),70,年代:软件,=,程序,+,文档,+,数据(初始化数据、测试数据、研发数据、运行数据、维护数据、工程数据、项目管理数据等),1984,年美国开始认识到软件管理是一个过程管理,,1991,年出现,CMM1.0,,,96,年出现,UML,软件工作产品”,开发过程中产生的各种软件,“软件产品”,最后交付的软件,1.1,软件与软件的复杂度,IEEE Standard Glossary of Software Engineering Terminology,给出了有关软件的定义:,软件是计算机程序、规程以及运行计算机系统可能需要的相关文档和数据。

    计算机程序,是计算机设备可以接受的一系列指令和说明,为计算机执行提供所需的功能和性能数据,是事实、概念或指令的结构化表示,能够被计算机设备接收、理解或处理文档,是描述程序研制过程、方法及使用的图文材料1.1,软件与软件的复杂度,IEEE Standard Glossary of Software Engineering Terminology,给出了有关软件的定义(英文版):,Software.Computer programs,procedures,and possibly associated documentation and data peraining to the operation of a computer system.,1.1,软件与软件的复杂度,软件的分类:,(,1,)按功能分:系统软件、支撑软件、应用软件,(,2,)按规模分:大型、中型、小型,(,3,)按工作方式分:实时,/,分时、交互,/,批处理,(,4,),按服务对象分:定制软件、产品软件(或称为通用软件),(,5,)按销售方式分:定单软件、非定单软件,1.1,软件与软件的复杂度,软件的特征,软件是设计开发的,而不是传统意义上生产制造的,软件不会磨损,大多数软件仍然是定制的,而不是通过已有构件组装而成,虽然软件业内向着基于构件的构造模式发展,从对比的角度理解这三点:,软件是开发出来的,不是制造出来的,软件可能被“废弃”,但不会“用坏”,软件大部分是定制的,而不是装配的,1.1,软件与软件的复杂度,软件的特征,抽象性:逻辑实体,可记录,但看不到,可复制性:与开发成本相比,复制成本很低,1.1,软件与软件的复杂度,软件的复杂度,更高的技术复杂性,-,嵌入式,实时的,分布式的,不可出错的,-,定制的,空前的,可复用的,-,高性能的,较低的技术复杂度,-,大部分是4,GL,或基于组件技术的,-,应用反向工程,-,基于交互式的对性能要求不高,较高管理复杂度,-,大范围,-,合同契约性,-,受很多人制约的,-“,项目”型的,较低的管理复杂度,-,小范围,-,非正式的,-,简单的资金运作,-“,产品”型的,防御,MIS,系统,防御,武器系统,信息,交换,CASE,工具,国际空中运输,控制系统,企业,IS,(IS,应用),商业,编译器,商业制表软件,IS,应用,分布式对象,小型科学模拟,大型组织/实体仿真模拟,一个比较中等的项目,-5-10,人,-10-15,个月的开发周期,-3-5,个外部界面,-,一些不可知的事情&风险,嵌入式,车用软件,IS,应用,GUI/RDB,计算机软件发展的四个阶段:,1.早期时代(60年代中期之前)程序设计阶段,硬件通用,软件专用;程序规模小,编写者和使用者为同一人(同组人)。

    计算机的主要应用为快速计算,出现了,Algol,、,Fortran,等编程语言2.第二代(60年代中期-70年代中期)程序系统阶段,出现“软件作坊”、产品软件;“个体化”开发方法计算机的应用开始涉及到各种以非数值计算的商业业务领域,交互技术、数据库、操作系统等得到发展,出现了,Pascal,、,Cobol,等编程语言和关系数据库管理系统为标志的,结构化,软件技术瀑布模型得到普遍使用3.第三代(70年代中期之后,-80,年代)软件工程阶段,软件开发成为一门新兴的工程学科软件工程软件开发过程得到管理、工程化了出现了,COCOMO,模型、,CMM,等以,Smalltalk,、,C+,为代表的面向对象技术崛起,传统的结构化技术受到严峻的考验,1.1,软件与软件的复杂度,计算机软件发展的四个阶段:,4.20,世纪,90,年代,至今,Internet,技术的迅速发展使软件系统从封闭走向开放,异构环境下的分布式软件的开发成为一种主流需求,软件复用和构件技术成为技术热点,出现了,J2EE,、,COM+,、,CORBA,为代表的,3,个分支现在网格计算、,Web Service,、云计算、普适计算(,Pervasive Computing,)等技术发展迅速。

    1.1,软件与软件的复杂度,1.1,软件与软件的复杂度,1.1,软件与软件的复杂度,中国软件产业大事记,1984,年:中国软件行业协会成立,当时的电子工业部部长江泽民任名誉会长,杨天行任理事长1985,年:成立中国软件技术公司(中软总公司的前身);长城,0520c,微型机汉字处理软件,HM,和汉字排序软件,SM,向国外出口1986,年:电子工业部向国务院报送了,关于建立和发展我国软件产业的报告,1988,年第一次全国软件会议召开;金山公司、用友公司成立1989,年:北大华光激光照排系统获中国发明专利金奖1990,年:原中国计算机软件技术公司与中国计算机服务公司合并,成立中国计算机软件与技术服务总公司,开始研发自主知识产权操作系统1991,年:,中华人民共和国著作权法,正式实施,,计算机软件保护条例,颁布1992,年:,计算机软件著作权登记办法,颁布与实施1994,年:金山、巨人、王码,480,等,20,多种流行的字处理软件进入各类办公系统中中国软件产业大事记,1996,年:希望公司,UCDOS,占有当时,72,的中文平台市场;东软公司上市1997,年:第一届中国软件博览会召开,1998,年:,Linux,进入中国;国产财务软件占有,65,的国内市场份额。

    2000,年:国务院颁布,鼓励软件和集成电路产业发展的若干政策,的第,18,号文件,双软认证启动2001,年:信息产业部与原国家计委命名,11,个城市的软件园为“国家软件产业基地”;金蝶、用友上市2002,年:国务院下发,振兴软件产业行动纲要,的,47,号文件,以作为对,18,号文精神的延续和细化,全国,35,所高校的示范性软件学院开始招生2003,年:国内软件行业共完成销售收入,1633,亿元,同比增长,48.5,1.2,软件与软件危机,防不胜防的软件错误,例,1,:,1963,年,美国,飞往火星的火箭爆炸,损失$10,million.,原因:,FORTRAN,循环,DO 5 I=1,3,误写为,DO 5 I=1,.,3,例,3,:,1996年,,ESA,的火箭处女航失败,升空后仅飞行40秒就偏离了其预定轨道,该火箭被远程控制所毁并失去她携带的4个卫星,损失达,5亿美元,原因:,惯性参考系方面的问题,未经讨论和解决,例2:,1996年,美国,飞往哥伦比亚城市,C,ali,的,客机失事,,163人中仅4人生还,原因:,关于目的地坐标的、由一个字符构成的计算机命令的错误输入,两,相距,132英里,的城,市,坐标在南美航空表中,代码相同,1.2,软件与软件危机,防不胜防的软件错误,例,5,:,1994,年,英特尔奔腾浮点除法软件缺陷,导致为自己的行为道歉并花费,4亿多美元,更换坏芯片.,原因:,芯片发布前已发现问题,但,管理层忽略了,;软件缺陷被发现时,英特尔,试图掩饰该问题的严重性,;受到压力时,英特尔承诺更换芯片但要求用户证明自己受到软件缺陷的影响,.,(4195835/3145727)3145727-4195835=0,例,4,:,1994-1995,年,迪斯尼的狮子王,第一个面向儿童的多媒体光盘游戏,,投诉电话被打爆,.,原因:,未对市场上的各种,P,C,机型进行正确测试,软件在大众使用的常见系统中难以运行,1.2,软件与软件危机,防不胜防的软件错误,例,7,:,1991,年,美国爱国者导弹防御系统在几次对抗导弹战役中失利,多哈战误击毙,28名,美军士兵.,原因:,一个很小的系统时钟错误积累,可能拖延,14小时并造成跟踪系统失去准确度,,多哈战中系统拖延了,100多个,小时,例,6,:,1999,年,美国航天局火星基地登陆飞船在试图登陆火星表面时失踪.,原因:,为省钱而简化确定何时关闭推进器的装置,导致飞船着陆时误更改一个数据位,两个测试小组的独立工作做的很好,,但从未走在一起,防不胜防的软件错误,软件开发成本,Cost,Testing,Requirements,Design and,Implementation,1.2,软件与软件危机,60,年代(软件史前)的软件危机:,(,1,)对软件开发的进度和成本无法估计,(,2,)用户对已经开发完成的软件的满意度非常低,(,3,)软件质量无法保证,(,4,)软件开发后的维护工作很难进行,(,5,)软件通常没有合适的文档资料,(,6,)软件成本在系统总成本中所占的比例越来越高,(,7,)软件开发的生产率跟不上需求,1962,年美国水手,号因导航软件一个语句的语义错误,导致偏离航线,任务失败。

    阿波罗,8,号因计算机软件错误,造成存储器信息丢失阿波罗,14,号在飞行的,10,天中,出现了,18,个软件错误美国,IBM,公司的,OS/360,系统,花了几千人很多年的努力而失败,所以,在,20,世纪,60,年代,就开始提出所谓“软件危机”的概念,软件危机:,软件的可靠性没有保障、维护费用不断上升、进度无法预测、成本增长无法控制、程序员无限度增加等,形成软件开发局面失控的状态,而另一方面,根据摩尔定律:硬件成本每隔,18,个月就降低一半,例如:存储器每年降低,40%,、主机硬件的性价比每十年提高一个数量级,软件人从,60,年代开始,就面临巨大的生存压力,而其中最具典型的是美国人佛雷德里克,.,布鲁克斯(,Frederick P.Brooks JR.,)和他的,人月神化,1.2,软件与软件危机,软件危机的现实意义:,为什么要担心软件危机?,软件作为一个产业,什么时候可以开始赢利?,与其他产品的历史发展不同,,软件开发的历史,具有最典型的社会历史发展的特性,(,1,)与建筑技术、制造技术、计算机硬件技术不同,(,2,)虽然在工具、技术手段上,可以同步进步,(,3,)方法、管理水平,不会自动进步,手工作坊依然普遍存在,原因是什么:,什么是手工作坊:,(,1,)个人对所负责的“局部”负责、在这个局部是完全个性化和自由的,系统就是由几个这样的“局部”构成的,(,2,)没有任何设计文档和可用于维护的资料,(,3,)没有评审和独立的系统测试,(,4,)进度、成本、质量是不可预测的,1.2,软件与软件危机,人月神话(,The Mythical Man-Month,),一本畅销,20,年经久不衰、具有深远影响的书。

    作者美国,IBM,公司,被认为是,IBM System,/360,和,OS/360,之父,曾担任,360,系统项目,经理的,Frederick P.Brooks,博士1975,。

    点击阅读更多内容
    最新文档
    2025年作风建设学习教育开展情况的报告范文.docx
    在2025年民营企业座谈会上的主持讲话范文.docx
    在2025年全县教育领域群众身边不正之风和腐败问题集中整治调度会上的讲话范文.docx
    工委副书记在2025年机关DeepSeek应用专题辅导培训班开班仪式上的讲话范文.docx
    在2025年DeepSeek大模型政务应用培训会上的讲话范文.docx
    在青年干部培训结业典礼上的讲话文稿.docx
    2025年副书记防汛工作会议上的讲话范文.docx
    2025年主管商务部门党组书记在理论学习中心组会上研讨发言文稿.docx
    2025年国企党委关于干部职工思想政治工作情况的报告范文.docx
    在机关单位作风建设学习教育突出问题专项整治工作部署会议上的讲话范文.docx
    医院领导2025年党风廉政建设推进会上的讲话范文.docx
    2025年关于开展“以案促改”工作实施方案供参考.docx
    在2025年安全生产专项整治暨化工行业风险防控部署会上的讲话范文.docx
    领导干部在“十五五”发展规划编制启动会上的讲话文稿.docx
    2025年书记在慰问老干部暨情况通报会上的主持讲话提纲范文.docx
    2025年作风建设实施方案文稿.docx
    在2025年DeepSeek政务应用培训会上的讲话范文.docx
    2025年领导在DeepSeek政务应用培训会上的讲话参考范文.docx
    2025年国企党委关于干部职工思想政治工作情况的报告文稿.docx
    在青年干部培养工作座谈会上的讲话范文.docx
    卖家[上传人]:zhuwuneng
    资质:实名认证
    相关文档
    正为您匹配相似的精品文档