华南理工大学《软件工程》复习要点_第1页
华南理工大学《软件工程》复习要点_第2页
华南理工大学《软件工程》复习要点_第3页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、华南理工大学软件工程复习 要点华南理工大学软件工程复习要点概述软件:程序 +相关文档和配置信息 通用软件,定制产品软件工程 计算机科学 / 系统工程软件过程: 1. 软件描述 2. 软件开发 3. 软件 有效性验证 4. 软件进化软件过程模型: 1. 工作流模型 2. 数据流或活 动模型 3. 角色 / 动作模型(从特定角度提出软件过程的简化描述)1. 瀑布模型开发方法 2. 进化式开发方法 3. 形式化转换 4. 基于可复用的组件的系统组合 软件成本软件工程方法 统一建模语言 UMLCASE工具职业道德1. 机密 2. 工作能力 3. 知识产权 4. 计算机 滥用第三章 软件过程软件描述 软

2、件设计和实现 软件有效性验证 软件进化3. 1软件过程模型瀑布模型:需求定义和分析;系统和软件设计;实现和单元 测试;集成和系统测试;运行和维护进化式开发:探索式开发;抛弃式原型。存在的三个问题:过程不可见,系统结构通常较 差,特殊工具和技术的使用 形式化系统开发: 用形式化数学转换来将系统描述转换成一个可 执行程序。与瀑布模型之间的本质区别:1.软件需求描述被精炼成一个用数学符号表达 的详细的形式化描述2.设计、实现和单元测试的开发过程被一个转换的开发过程所替代,在这个转换的开发过程中,形式化描述经过一系列转换变成一个可执行程in面向复用的开发:1 组件分析2需求修改3使用复用的系统设计4.

3、开发和集成3.2 过程反复混合模型 增量式开发;螺旋式开发。 增量式开发: 瀑布模型的优势在于其简单的管理模型以及设 计和实现的分离, 这使得系统是鲁棒的、 容易修 改的。进化式开发允许需求和设计决策的延迟, 但是也导致了软件的较差结构和难以理解和维 护。增量式开发是一个结合这两个模型的优点的 综合方法。目的:减少返工 好处: 客户无需等到整个系统的实现。 (就可以使用) 客户可以将早期的增量作为原型, 从中获得对后 面系统增量的需求经验。项目总体失败的风险比较低。 重要的系统服务肯定接受了最多的测试, 客户不 太可能遇到失败。螺旋式开发: 每个回路被分成四个部分 目标设置 风险评估和规避 开

4、发和有效 性验证 规划 特点:明确的风险考虑3.3 软件描述 / 非重点 需求工程过程有四个主要阶段: 可行性研究 需求导出和分析 需求描述 需求有效性验证3.4. 软件设计和实现 / 非重点 多次反复的过程, 设计过程中的活动是交替进行 的。设计过程中的一些特别的活动包括: 体系结构设计 抽象描述 接口设计 组件设计 数据结构设计算法设计 设计方法结构化方法 结构化方法所支持的模型:1. 数据流模型 2. 实体 - 关系模型 3. 结构 化模型 4. 面向对象方法 调试过程:错位定位,设计错误修复,程序错误 修复,程序重测3.5 软件有效性验证 / 非重点测试过程:单元测试 模块测试 子系统

5、测试 系统 测试 接受测试(测试)当一个系统要作为软件产品在市场上销售时, 所 要进行的测试称为测试。3.6 软件进化 / 非重点3.7 软件描述第四章 项目管理管理活动项目规划 项目计划:项目调度 条形图,活动网状图管理风险 项目/ 产品/业务第五章 软件需求分类。 用户需求 系统需求 软件设计描述;5.1 功能需求和非功能需求(领域需求)5.2 用户需求 不可能适用任何现实的模型来描述,而是用自 然语言、图表和直观的图形来叙述。用户描述必须遵守的原则:按照设计好的一个 标准的格式书写, 使用一致的语言, 加亮文本突 出关键性的需求,尽量避免使用计算机专业术语。5.3 系统需求结构化语言描述

6、, PDL描述,借口描述。5.4 软件需求文档引言 一般描述,专门需求 附录 索引 第七章 系统模型 上下文模型 行为模型:数据流模型,状态机模型 数据模型 对象模型:继承模型,对象聚合,对象行为建模 CASE工作平台 第八章 软件原型系统开发 软件过程中的原型开发:进化式原型开发 抛弃 式原型开发 快速原型技术:适用动态高级语言 数据库程序 设计 组件和应用集成 用户界面原型开发第十章 体系结构的设计 开发的体系结构模型可能包括: 静态结构模型,动态过程模型,接口模型,关系模型10.1 系统构成 容器模型 客户机 / 服务器模型 抽象机模型10.2 控制模型 集中式控制:调用 - 返回模型;

7、管理者模型 基于事件的控制:事件驱动系统:广播模型;中 断驱动模型10.3 模块化分解 面向对象模型 数据流模型10.4 领域相关的体系结构类模型 >编译器模型:词法分析器,符号表, 语法分析器,语法树,语义分析器 代码生成器 参考体系结构 >OSI 参考模型第十二章 面向对象的设计 面向对象的分析 面向对象的设计 面向对象的程序设计12.1 对象和对象类 操作,方法。泛化分层结构(画图) 并发对象 服务器 主动对象12.2 面向对象设计过程 系统上下文和使用模型 它们的补充模型:1. 系统上下文是一个静态模型, 描述环境中的其 他系统。2. 系统使用模型是一个动态模型, 描述系统

8、实际 上是如何与环境交互的。体系结构的设计 实例:气象台体系软件 三个 层:接口,数据采集,仪器。对象识别设计模型:静态模型,动态模型; 子系统模型, 序列模型,状态机模型;接口对象描述12.3 设计进化 第十九章 检验和有效性验证 有效性验证:我们是否在建立一个正确的产品? 检验:我们是否在正确的建立一个产品? V&V过程软件检查(静态) 软件测试(动态) 缺陷测试,统计性测试 系统需要的信任程度依赖于系统的设计目标、 系 统用户对它的期望和目前的市场环境。 测试和调试的区别: 前者是证明一个软件系统中 存在缺陷的过程, 后者是一个对缺陷定位和修改 的过程。19.1 检验和有效性验证

9、规划 V&V过程的规划应该在开发过程的早期就开始着 手。软件测试计划的结构: 需求跟踪 测试项目 测 试时间安排 测试记录程序 硬件和软件需求 约束19.2 软件检查 程序检查:数据缺陷,控制缺陷,输入 / 输出缺 陷,接口缺陷,存储管理缺陷,异常管理缺陷19.3 自动静态分析控制流分析 数据使用分析 接口分析 信息流分 析 路径分析19.4 净室软件开发方法 形式化描述 增量式的开发 结构化程序设计 静 态检验 系统统计性测试 使用净室过程作为大型系统开发时, 需要:描述团队,开发团队,认证团队第二十章 软件测试 20.1 缺陷测试 目标是找出潜伏的缺陷。 (让系统暴露其不正确 的一

10、面)软件测试的一个特性就是要证明有错, 而不是证明没错。黑盒测试(功能性测试) :适用于由功能构成的 和由对象构成的系统。 等价划分:找出程序必须处理的所有输入类型, 然后做等价划分。边界? 结构化测试(白盒测试) :适用于相对较小的程 序,从函数所用的算法可以找出等价划分。 路径测试:属于一种结构化测试策略。 实例: 二分搜索流图20.2 集成测试 这里的测试是要发现组件交互中的问题。 测试根 据系统描述来做, 在一些系统组件一完成就开始 进行。自顶向下:桩到桩的测试 自底向上:不需要系统体系结构设计的完成就可 以进行。比较:1. 体系结构的有效性 2. 系统演示 3. 测试 的执行 4.

11、测试的观察)接口测试接口类型:1. 参数接口 2. 共享内存接口 3. 程序 接口 4. 消息传递接口错误:接口误用,接口误解,计时错误 测试的一般准则测试强度: 在超过设计极限负荷的情况下, 连续 用例继续测试直至失败为止。 对于基于网络的分 布式系统特别有用。20.3 面向对象的测试 测试的四个层次:1. 测试与对象关联的单个操作 2. 测试单个对象 类 3. 测试对象群 4. 测试面向对象系统 对象类调试: 1. 对象中所有操作被单独隔离测试2. 对象所有属性的设置和访问的测试。3. 对象的所有可能状态的测试。 集成测试的 3个可用的方法: 1. 用例或基于场景 的测试 2. 线程测试 3. 对象交互测试阅读以下两章,适当掌握。第二十二章 人员管理22.4 人员能力成熟度模型 (能够分辨几

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论