《新》第6章软件工程.pptVIP

  1. 1、本文档共107页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 应用软件设计与开发技术 第六章 软件工程基础 6.1 软件工程概述 6.2 软件详细设计 6.3 结构化分析与设计方法 6.4 测试与调试基本技术 6.1 软件工程概述 6.1.1 软件工程的概念 6.1.2 软件生命周期 6.1.3 软件支援环境 软件工程出现的原因软件危机 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。 现象一:软件开发成本和进度的估计不准确,交付时间一再拖延,造成开发成本超出预算。 案例:1995年,新丹佛国际化机场自动化行李系统的软件出现故障,导致机场延期16个月才正式启用,并且大部分行李采用人工分拣,系统成本超出预算32亿美元。 原因:软件复杂程度高,开发周期长,并且各种变化不断,因此软件项目按期完成交付的很少。 现象二:“已完成”的软件不满足用户的需求 案例:1984年,经过18个月的开发,一个耗资2亿美元的系统支付给了美国威斯康星州的一家健康保险公司。但该系统不能满足用户的正常工作需求,只好追加了6千万美金,又花了3年时间才解决了问题。 原因:软件开发人员不是用户业务的专家,用户不懂计算机软件技术,因此,软件人员按照自己的理解开发出得软件往往不能满足用户的业务需求。 现象三:软件产品的质量没有保证 案例:1996年6月4日,Ariane 5火箭首次发射,在升空大约40秒且高度不到4千米处,火箭突然发生爆炸,该事件造成了50亿美元的损失。事故原因是在Ariane 5中使用了Ariane 4火箭的程序代码,在将64位浮点数转换为16位带符号整数的程序中,更快的运算引擎导致了Ariane 5中的64位数据要比Ariane 4中更长,直接诱发了溢出条件,最终导致了航天计算机的崩溃。 原因:软件质量和可靠性的评估非常困难。这些投资巨大、技术一流、管理规范、测试充分的软件也难保不出现质量问题。 现象四:软件通常没有适当的文档资料或文档与最终交付的软件产品不符。 原因:软件几乎不可能一版保证成功,而是经历反复修改,其中的文档很难与每次的修改保持一致,错误的文档就像错误的地图一样危险。 现象五:软件的可维护程度低。 原因:软件开发过程中,起着重要作用的是开发者的逻辑思维过程。如果若干年后,由其他人来修改,必须要理解开发者当时的思维过程,因此说读懂别人的程序比重新编写的难度更大。 软件危机出现的原因 主要有两个方面: 其一是软件本事的特点; 其二是软件开发过程不成熟。 软件开发过程不成熟的主要表现为: 忽视软件开发前期的调研与分析工作,没有统一、规范的方法论指导,轻视文档管理和质量保证工作,缺乏相关人员之间的沟通。 简陋的小屋—太简单!不要设计 典型helloworld程序—太简单! 不要设计 #includestdio.h int main() { printf(“helloworld!”); //输出helloworld! return 0; } 图书馆图书信息管理软件—复杂!需要设计 6.1.1 软件工程的概念 软件工程学是研究软件开发和维护的普遍原理与技 术的一门工程学科。 所谓软件工程是指,采用工程的概念、原理、技术 和方法指导软件的开发与维护。 把经过实践考验而证明正确的管理方法和先进的软件开发技术结合起来,运用到软件开发和维护过程中,来解决软件危机。 软件定义期:包括问题定义、可行性研究和需求分析三个阶段; 软件开发期:包括系统设计、详细设计、编码和测试四个阶段; 软件维护期:即运行维护阶段。 1.软件定义期 (1)问题定义 确定问题的性质、工程目标以及规模。 分析员应提交书面报告给用户与使用部门负责人进行审查。 (2)可行性研究 进一步研究上一阶段所定义的问题是否可解。 最后还要提交必要的文档。 (3)需求分析 ①确定对系统的综合要求,即功能要求、性能要求、运行要 求以及将来可能会提出的一些要求。 ②对系统的数据要求进行分析。主要包括数据元素的分类和 规范化,描绘实体之间的关系图,进行事务分析与数据库 模型的建立。 ③在前面分析的基础上,推导出系统的详细模型系统。 ④修正开发计划,并建立模型系统。 文档内容:①系统的功能说明 ②系统对数据的要求 ③用户系统描述 2.软件开发期 (1)系统设计 ①提出可选择方案; ②选择合理方案; ③推荐最佳方案; ④功能分解; ⑤设计软件结构; ⑥制定测试计划; ⑦提交文档。 (2)详细设计 (3)编码 ①选择适当的程序设计语言; ②使程序内部有良好的文档资料、规范的数据格式说明、简单清晰的

文档评论(0)

tianjiao123 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档