软件工程导论期末复习大纲.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程导论期末复习大纲 第一章 软件工程概述(软件=程序+数据+文档) 1.软件危机: 定义:计算机软件的开发和维护过程中所遇到的一系列严重问题。 表现:软件开发的成本和进度估计常常不准确;用户对“已完成的”软件系统不满意的现象经常发生;软件产品的质量往往靠不住;软件常常是不可维护的;软件通常没有适当的文档资料;软件产品供不应求,跟不上计算机普及速度。 产生原因:与软件本身的特点;与关软件开发与维护的方法不正确有关。 解决办法:消除各自为阵的理念;使用在实践中总结出来的成功的经验,探索更有效地技术和方法;开发和使用更好的软件工具。 2.软件工程: 定义:指导计算机软件开发和维护的一门工程学科。 七条基本原理:用分阶段的生命周期计划严格管理;坚持进行阶段评审;实行严格的产品控制;采用现代程序设计技术;结果应能清楚地审查;开发小组的人员应该少而精;承认不断改进软件工程实践的必要性。 3.软件工程方法学: 定义:通常把在软件生命周期全过程中使用的一整套技术方法的集合。 两种方法学:传统方法学、面向对象方法学。 ? ??? ??优点 ? ??? ? 传统方法学:把软件生命周期划分成若干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,降低了整个软件开发过程的困难程度;在每个阶段都采用科学的管理技术和良好的技术方法,每个阶段都从技术和管理两个方面进行严格审查,保证软件的质量;提高了软件的可维护性,提高开发成功率。 ? ??? ? 面向对象方法学:符合人们通常的思维方式,提高了软件的可理解性;对象是相对独立的实体,重用性好;可维护性好。 三种要素:方法、工具、过程。 4.软件生命周期: 软件定义(系统分析):问题定义、可行性研究、需求分析; 软件开发:总体设计+详细设计(——系统设计)、编码和单元测试、+测试(——系统实现); 运行维护:软件维护。 5.软件过程: 生命周期模型:瀑布模型 快速原型模型 增量模型 螺旋模型 喷泉模型 RUP模型 ? ??? ??优点 ? ??? ? 瀑布模型:可强迫开发人员采用规范的方法,严格地规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证;它基本上是一种文档驱动的模型。 ? ??? ??快速原型模型:减少了软件需求不明确给开发工作带来的风险。 ? ??? ? 增量模型:很有用;减少由于软件需求不明确而给开发工作带来的风险;缩短产品提交时间(快)。 ? ??? ? 螺旋模型:对可选方案和约束条件的强调有利于已有软件的重用和把软件质量看作软件开发的一个重要目标;开发者和客户都可以更好地理解和应对风险。 ? ??? ??缺点 ? ??? ? 瀑布模型:不适应需求经常发生变更的环境;每一步的工作都必须以前一阶段的输出为输入(顺序性),可能导致“阻塞”;可能最终开发出的软件产品不能真正满足用户的需要(R:几乎完全依赖于书面的规格说明);用户只能通过文档来了解产品是什么样的。 ? ??? ? 增量模型:软件体系结构必须是开放的;本身是自相矛盾的;具有无法集成的风险。 ? ??? ? 螺旋模型:开发人员需要相当丰富的风险评估经验和专门知识。 ? ??? ??适合场所 ? ??? ? 瀑布模型:用户需求明确、完整、无重大变化的软件项目开发。 ? ??? ? 快速原型模型:需求不完整的软件开发项目。 ? ??? ??增量模型:适用可多批看到和开发时间快的软件产品开发项目。 ? ??? ? 螺旋模型:高风险的大型软件。 ? ??? ? 喷泉模型和RUP模型:需求不稳定、不全面的软件项目开发。 ? ??? ??特点: ? ??? ? 瀑布模型:具有顺序性。 ? ??? ? 快速原型模型:线性顺序进行。 ? ??? ? 增量模型:分批地逐步向用户提交产品,减少全新软件给客户带来的冲击。 ? ??? ? 喷泉模型:迭代、无缝对接 ? ??? ? RUP模型:迭代、渐增 第二章、可行性研究 分析方面:技术可行性、经济可行性、操作可行性 数据流图(DFD) 第三章、需求分析 8个需求:…… 获取需求的方法(综合使用):访谈、面向数据流自顶向下求精、简易的应用规格说明技术、快速建立软件模型。 3.6.状态转换图(会画) 第五章、总体设计 5.2.设计原理:模块化(为什么模块化……)、耦合、内聚、…… 层次图(一般为三层):…… 第六章、详细设计 6.1.结构程序设计(顺序、选择、循环、单入单出……) 6.3.过程实际的工具(描述与算法之间的转换) 6.5.程序复杂程度的定量度量(计算程序复杂程度) 第九章、面向对象方法学引论 三种模型:对象模型、动态模型、功能模型 第十章、面向对象分析 8分大题目。。。 问题: 1、什么是软件工程、软件过程?软件过程与软件工程方法学有何关系

您可能关注的文档

文档评论(0)

186****6410 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档