软件工程概论-计算机软件基础(ppt 114页)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

下一页–主讲:刘志强第15单元软件工程概论下一页上一页停止放映–页教学目标了解软件工程的基本概念掌握软件工程的基本理论、技术和方法,运用于软件的开发和生产下一页上一页停止放映–页教学内容了解软件、软件工程的基本概念–软件的特征–软件危机、软件工程–瀑布模型、原型模型–软件生存周期中各个阶段的任务、实施方法及步骤下一页上一页停止放映–页本单元涉及内容概述–软件的基本概念–软件的发展和软件危机第9章软件工程–9.1软件工程–9.2软件生存周期–9.3软件工程管理下一页上一页停止放映–页一、基本概念软件计算机系统中所有程序、数据结构及有关文档资料的总称。软件是计算机技术和人类智慧高度结合的产物,软件开发不是简单、机械地重复生产,而是创造性的脑力劳动。软件的作用软件是今后信息产业发展的推动力。美国最近在24项高科技领域中调查结果表明,其中18项与软件有关。下一页上一页停止放映–页软件工程学的体系结构软件工程学软件开发技术软件开发方法学软件工具软件工程环境软件工程管理软件管理学软件经济学下一页上一页停止放映–页问题的由来软件内在规律。任何事物有它自己的客观规律和发展轨迹。只有认识了它,才能驾驭它。软件地位及作用。软件是计算机系统中重要的组成部分。但在早期它并没有引起业界的重视。随着计算机技术的发展,随着“软件危机”的出现,以及软件危机对社会危害的增大,软件的地位和作用也越来越重要。软件工程学。业界人士不得不设置专门的学科——软件工程学来研究软件开发、生产的内在规律,用于指导现代工程化的软件生产。下一页上一页停止放映–页软件的特征(与硬件产品比较)软件是逻辑产品软件产品质量的体现方式不同软件产品的失败曲线不同软件产品的成本构成不同软件产品不存在同类零件替换软件产品的静态和动态属性下一页上一页停止放映–页软件是逻辑产品软件产品具有产值、价格、质量和功能的特性,但看不见,是逻辑的、无形的,是脑力劳动的结晶。下一页上一页停止放映–页软件产品质量体现方式不同质量体现方式不同:–实用、可靠、可操作性;–可维护性强–方便用户–不会折旧、损坏、老化下一页上一页停止放映–页软、硬件失败曲线下一页上一页停止放映–需求率4%生产率开发人员成本构成不同:主要投资在研制;软件研制是一种人力、资金密集的产业,而软件生产只是简单的复制、安装和培训。下一页上一页停止放映–页软件产品不存在同类零件替换硬件可更换零部件。当硬件产品中某个部件损坏后,可以用相同的备用部件更换,使硬件系统恢复正常工作。软件不能更换零部件。而软件产品却没有相同的备用部件可言,因为软件出现的每一个故障,要么是由于设计考虑不周造成的,要么是编程错误造成的。由于软件无备用部件可供更换,因而软件维护比硬件维护要复杂得多,成本也高得多。下一页上一页停止放映–页软件产品的静态和动态属性软件是由程序和相关文档资料组成的。程序是具有双重属性的:–交流。它是求解客观问题的逻辑描述,是供阅读和交流的,它的表示是静态的;–执行。程序最终是通过运行去执行特定的操作和数据处理,它又具有极其复杂和丰富内涵的动态属性。程序是否正确的有双重标准:–静态的程序正确与否是检查它的语法和句法是否符合规则要求;–动态的程序正确与否则要动态的测试程序的所有逻辑流结构和数据结构是否正确。–而后一种测试的难度和代价较之前一种要大得多。下一页上一页停止放映–页硬件生产率大幅提高如今,计算机的发展已进入一个新的历史阶段;硬件产品已系列化、标准化,“即插即用”。硬件产品的生产可以采用最高精尖的现代化工具和手段、自动成批生产。生产效率几百万倍的提高。生产能力过剩。返回下一页上一页停止放映–页软件生产率很低伴随计算机的普及,整个社会对计算机应用的需求越来越大。但软件的生产却还沿用“手工作坊”的生产方式,人工编程生产。生产效率仅提高了几倍。生产能力极其低下。返回下一页上一页停止放映–页硬、软件供需失衡社会大量需求,生产成本高,生产过程控制复杂,生产效率低等等因素构成软件生产的恶性循环。由此产生“软件危机”。返回下一页上一页停止放映–页矛盾引发“软件危机”软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。为了研究、解决软件危机,诞生了一门新兴学科——软件工程学。它把软件作为工程对象,从技术措施和组织管理两个方面来研究、解决软件危机。下一页上一页停止放映–页软件危机的具体体现(1)软件开发进度难以预测(2)软件开发成本难以控制(3)用户对软件功能难以满足(4)软件产品质量无法保证(5)软件产品难以维护(6)软件缺少文档资料下一页上一页停止放映–页(1)软件开发进度难以预测拖延工期几个月甚至几年的现象并不罕见,这种现象降低了软件开发组织的信誉。以丹佛新国际机场为例。该机场规模是曼哈顿机场的两倍,宽为希思机场的10倍,可以全天侯同时起降三架喷气式客机;投资1.93亿美元建立了一个地下行李传送系统,总长21英里,有4,000台遥控车,可按不同线路在20家不同的航空公司柜台、登机门和行李领取处之间发送和传递行李;支持该系统的是5,000个电子眼、400台无线电接受机、56台条形码扫描仪和100台计算机。按原定计划要在1993年万圣节前启用,但一直到1994年6月,机场的计划者还无法预测行李系统何时能达到可使机场开放的稳定程度。下一页上一页停止放映–页(2)软件开发成本难以控制投资一再追加,令人难于置信。往往是实际成本比预算成本高出一个数量级。而为了赶进度和节约成本所采取的一些权宜之计又往往损害了软件产品的质量,从而不可避免地会引起用户的不满。下一页上一页停止放映–页(3)用户对产品功能难以满足开发人员和用户之间很难沟通、矛盾很难统一。往往是软件开发人员不能真正了解用户的需求,而用户又不了解计算机求解问题的模式和能力,双方无法用共同熟悉的语言进行交流和描述。在双方互不充分了解的情况下,就仓促上阵设计系统、匆忙着手编写程序,这种“闭门造车”的开发方式必然导致最终的产品不符合用户的实际需要。下一页上一页停止放映–页(4)软件产品质量无法保证系统中的错误难以消除。软件是逻辑产品,质量问题很难以统一的标准度量,因而造成质量控制困难。软件产品并不是没有错误,而是盲目检测很难发现错误,而隐藏下来的错误往往是造成重大事故的隐患。下一页上一页停止放映–页(5)软件产品难以维护软件产品本质上是开发人员的代码化的逻辑思维活动,他人难以替代。除非是开发者本人,否则很难及时检测、排除系统故障。为使系统适应新的硬件环境,或根据用户的需要在原系统中增加一些新的功能,又有可能增加系统中的错误。下一页上一页停止放映–页(6)软件缺少适当的文档资料文档资料是软件必不可少的重要组成部分。实际上,软件的文档资料是开发组织和用户的之间权利和义务的合同书,是系统管理者、总体设计者向开发人员下达的任务书,是系统维护人员的技术指导手册,是用户的操作说明书。缺乏必要的文档资料或者文档资料不合格,将给软件开发和维护带来许多严重的困难和问题。下一页上一页停止放映–页软件生产随规模增大而复杂度增大以美国宇航局的软件系统为例:–1963年水星计划系统200万条指令–1967年双子星座计划系统400万条指令–1973年阿波罗计划系统1000万条指令–1979年哥伦比亚航天飞机系统4000万条指令假设1个人一年生产一万条有效指令,那么是否4000人生产一年,或400人生产10年就能完成任务吗?答案是否定的。一万条指令的复杂度决不仅仅是100条指令复杂度的100倍。下一页上一页停止放映–页典型失败系统的例子IBM公司开发OS/360系统,共有4000多个模块,约100万条指令,投入5000人年,耗资数亿美元,结果还是延期交付。在交付使用后的系统中仍发现大量(2000个以上)的错误。下一页上一页停止放映–页软件危机产生的原因产生软件危机有两个方面的原因:–内部因素。与软件本身的特点有关。内在因素是客观的存在,只能因势利导加以解决。–外部因素。与软件开发和维护的技术方法有关。外部因素是可以完善、提高的。下一页上一页停止放映–页软件特点的因素软件是逻辑产品,是代码化了的人的思维活动。在总体构思时,别人无法管理和干预。在写出程序、并在机器上运行之前,进展情况难以掌握,开发质量也无法评估。这些都给管理和控制带来不便。软件是特定问题在计算机上的运行描述。实际问题的复杂性决定了一个实用软件系统规模往往十分庞大。程序规模越大,控制、管理难度也就越大。下一页上一页停止放映–页软件开发维护技术方法的因素开发人员和用户之间的矛盾。许多软件系统开发失败的主要原因是开发人员在没有准确、完整地了解了用户的需求后就急于编程;用户对需求也往往不能准确、完整地提出。软件产品有其生命周期。在周期的各个阶段有其具体的任务,如何完成任务,各个阶段有不同的技术方法和操作步骤。只有科学的按生命周期各阶段的任务去组织实施,才能保证质量,降低成本;急于求成,不按科学规律、方法实施,只能“事倍功半”,事与愿违。软件产品的使用寿命很长。在这期间因功能的增加、硬件的更新换代,都要对软件进行必要的修改。据统计数据表明,软件维护的费用占总费用的55%~70%。软件工程的一个重要目标就是提高软件的可维护性,减少软件维护的代价。下一页上一页停止放映–页解决软件危机的途径为了解决软件危机就要从技术措施和组织管理两个方面去研究,不断总结经验教训,提高软件产品的生产效率,降低软件开发和维护的成本。开发软件选用最好的开发工具是至关重要的,即

1 / 114
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功