軟件工程总结具体.docxVIP

  1. 1、本文档共13页,可阅读全部内容。
  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文档。上传文档
查看更多
軟件工程总结具体

第一章1.什么是软件危机?它有哪些典型表现?为什么会产生软件危机?软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。这些问题表现在以下几个方面:   (1)用户对开发出的软件很难满意。   (2)软件产品的质量往往靠不住。   (3)一般软件很难维护。   (4)软件生产效率很低。   (5)软件开发成本越来越大。   (6)软件成本与开发进度难以估计。   (7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。产生软件危机的原因  (1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。   (2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。  (3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。2.假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及早发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清楚他呢?”应该怎样反驳他? 反驳:发生在编码时期的故障极有可能是需求分析阶段由于操作不当产生的,所以必须及时消除错误,否则,到了后期软件运行和维护阶段再回过头来修改,将会付出更大的代价。3.什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机?  软件工程是指导计算机软件开发和维护的工程学科。   (1) 它采用工程的概念、原理、技术和方法来开发和维护软件;   (2) 它将管理技术与当前经过时间考验的而证明是正确的技术方法结合起来;   (3) 它强调使用生存周期方法学和结构分析和结构技术;   (4) 经过人们长期的努力和探索,围绕着实现软件优质高产这个目标,从技术到管理两个方面做了大量的努力,逐渐形成了软件工程学这一新的学科。消除软件危机的措施:(1)对计算机软件有一个正确的认识(软件≠程序)(2)必须充分认识到软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目。(3)推广使用在实践中总结出来的开发软件的成功技术和方法。(4)开发和使用更好的软件工具1. 技术措施推广和使用在实践中总结出的好的软件开发技术和方法,并不断探索和研究更有效的技术。开发和使用更好的软件工具,包括采用好的开发工具,系统分析和辅助设计工具等,以提高工作效率。2. 管理措施吸收和借鉴人类长期以来从事各类工程项目所积累的行之有效的原理、概念、技术和方法4. 软件生命周期的定义: 一个软件从定义、开发、使用和维护,直到最终被废弃为止的整个过程 软件生命周期的构成:5. 软件生命周期的各个阶段和任务: 定义时期:问题定义 可行性研究 需求分析开发时期:总体设计 详细设计 编码和单元测试 综合测试维护时期:综合测试(1)问题定义:通过对系统实际用户和使用部门负责人的访问调查,明确要解决问题性质、工程目标和规模。(2) 可行性研究:导出系统的高层逻辑模型(数据流图),并在此基础上更准确、更具体的确定工程的规模和目标;更准确的估计系统的成本和效益。(3) 需求分析:和用户密切配合,充分交流信息,以得到用户确认的系统逻辑模型(数据流图、数据字典及简要的算法表示的系统逻辑模型)。(4) 总体设计: 1)提出几种可能的解决方案,权衡各种方案的利弊,并推荐出最佳方案; 2)设计软件的结构,确定软件的模块构成及模块之间的关系。(5) 详细设计:把解决问题的方案具体化,设计出程序的详细规格说明,并包含必要的细节信息。 (6) 编码和单元测试:将详细设计的结果翻译成高级程序设计语言的源程序,并仔细测试编写的每一个模块。(7)综合测试:通过各类型的严格测试与调试,使软件达到预定的要求。1)集成测试:各模块装配后测试;2)验收测试:按规格说明书。(8) 软件维护:通过必要的维护工作使得系统持久的满足用户的需要: 1)改正性维护;2)适应性维护; 3)完善性维护;4)预防性维护6.软件工程的定义: 采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的技术方法结合起来,来指导软件的开发与维护7.软件工程的基本原理:(1) 用分阶段的生命周期计划严格管理 项目概要计划,里程碑计划,项目控制计划,产品控制计划,验证计划

文档评论(0)

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

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

1亿VIP精品文档

相关文档