软件工程复习资料大整合(另附多套试卷!).docVIP

软件工程复习资料大整合(另附多套试卷!).doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程复习资料大整合(另附多套试卷!)

软件工程复习资料大整合 软件危机:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题 软件危机原因: 方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。 软件工程:指导计算机软件开发和维护的工程学科,采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济的开发出高质量的软件并有效地维护它。 消除软件危机(软件工程的基本原理) 用分阶段的生命周期计划严格管理 坚持进行阶段评审 实行严格的产品控制 采用现代程序设计技术 结果应能清楚的审查 开发小组的人员应该少而精 承认不断改进软件工程实践的必要性 软件工程方法学:传统方法学和面向对象方法学 3要素:方法、工具和过程 软件生命3周期:软件定义、软件开发和运行维护 8阶段: 问题定义 可行性研究 需求分析 总体设计 详细设计 编码和单元测试 综合测试 软件维护 过程模型:瀑布模型,快速原型模型,增量模型,螺旋模型,喷泉模型 第二章 可行性研究 可行性研究目的:用最小的代价在尽可能短的时间内确定问题是否能够解决。 从三个方面研究每种解法的可行性(1)技术可行性(2)经济可行性(3)操作可行性 数据流图是数据在系统各部件之间流动的情况,程序流程图是对数据加工处理的控制过程。 数据元素组成数据的方式有3种:1、顺序2、选择 3、重复 4、可选 数据字典用途:最重要是作为分析阶段的工具;数据字典中包含的每个数据元素的控制信息是很有价值的。很容易估计改变一个数据将产生的影响;数据字典是开发数据库的第一步 实现:卡片:名字、别名、描述、定义、位置。 第三章:需求分析 需求分析:分析系统做什么,确定逻辑功能 需求分析3种模型:数据模型(E-R图)功能模型(数据流图)和行为模型(状态转换图) 模块是程序对象有名字的集合 第五章 总体设计 模块独立的概念是模块化、抽象、信息隐藏和局部化概念的直接结果 模块化就是将系统划分为若干个模块,每个模块完成一个子功能。模块化的目的是将系统“分而治之”,模块化能够降低问题的复杂性,使软件结构清晰,易阅读、易理解,易于测试和调试,因而也有助于提高软件的可靠性。 模块的独立性,是指软件系统中每个模块只涉及软件要求的具体的子功能 耦合性:模块之间联系的紧密程度。内聚性:模块内部联系的紧密程度。 独立性强:强高内聚低耦合 偶然内聚、逻辑内聚、时间内聚 中内聚:过程内聚、通信内聚 高内聚:顺序内聚,功能内聚(高) 启发规则: 1、改进软件结构提高模块独立性 2、模块规模应该适中 3、深度、宽度、扇出和扇入都应适当 4、模块的作用域应该在控制域之内 5、力争降低模块接口的复杂程度 6、设计单入口单出口的模块 7、模块功能应该可以预测 面向数据流的设计方法: 目标是给出设计软件结构的一个系统化的途径 概念:面向数据流的设计方法把信息流映射成软件结构,信息流的类型决定了映射的方法,信息流有两种类型:1、变换流2、事物流。 变换分析:是一系列设计步骤的总称,经过这些步骤把具有变换流特点的数据流图按预先确定的模式映射成软件结构。 第六章、详细设计 详细设计阶段的关键任务是确定怎样具体的实现用户需要的软件系统,也就是要设计出程序的“蓝图”。除了应该保证软件按的可靠性之外,使将来编写出的程序可读性好、容易理解、容易测试、容易修改和维护,是详细设计阶段最重要的目标。结构程序设计技术是实现上述目标的基本保证,是进行详细设计的逻辑基础。 3种基本的控制结构:顺序、选择、循环(DO-WHILE),最基本的是顺序和循环结构。 什么是结构程序设计? 经典定义为:如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的。 理论上,这3种基本控制结构就可以实现任何单入口单出口的程序,但是为了实际使用方便起见,常常还允许使用DO-UNTIL和DO_CASE两种控制结构。 人机界面4个设计问题:系统响应时间、用户帮助设施、出错信息处理和命令交互。 人机界面设计指南:1、一般交互指南、信息显示指南、数据输入指南。 过程设计应该在数据设计、体系结构设计和接口设计完成之后进行,他的任务是设计解体的详细步骤。工具:描述程序处理过程的工具称为过程设计的工具。 程序流程图,他是历史最悠久、使用最广泛的描述过程设计的方法,然而也是用的最混乱的一种方法。它的主要优点是对控制流程的描绘很直观,便于初学者掌握, 盒图(N-S图):特点是a、功能域明确 b、不可能任意转移控制c、很容易确定局部结合全程数据的作用域d、很容易表现嵌套关系,也可以表示模块的层次结构。(p125) 过程设计语言 (PDL)也称为伪码 第七章 实现 编码和测

文档评论(0)

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

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

1亿VIP精品文档

相关文档