1 / 15
文档名称:

1、软件工程整本书课程总结.docx

格式:docx   大小:226KB   页数:15页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

1、软件工程整本书课程总结.docx

上传人:lyd13607 2018/1/11 文件大小:226 KB

下载得到文件列表

1、软件工程整本书课程总结.docx

相关文档

文档介绍

文档介绍:软件工程(software engineering,简称 SE)是一门研究用工程化方法构建和维护有效的,实用的和高质量的软件的学科。它涉及到程序设计语言,数据库,软件开发工具,系统平台,标准,设计模式,等方面。
软件工程的目标是:在给定成本,进度的前提下,开发出具有可修改性,有效性,可靠性,可理解性,可维护性,可重用性,可适应性,可移植性,可追踪性和可互操作性并且满足用户需求的软件产品。追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困难。
软件工程的原则是指围绕工程设计、工程支持以及工程管理在软件开发过程中必须遵循的原则。
1)可行性研究的目的:用最小的代价在尽可能短的时间内确定问题是否能够解决。不是解决问题,而是确定问题是否值得去解决。
2)可行性研究的内容:(1) 技术可行性;(2) 经济可行性;(3) 操作可行性;(4) 社会可行性(法律可行性)
3)可行性研究过程:(1) 确定、复查系统规模和目标;(2) 研究目前正在使用的系统;(3)导出新系统的高层逻辑模型;(4) 进一步定义问题【可行性研究的
前4个步骤实质上构成一个循环】(5) 导出和评价供选择的解法;(6) 推荐行动方针;(7) 草拟开发计划;(8) 书写可行性研究报告提交审查
1)确定对系统的综合要求:功能需求,性能需求,可靠性和可用性需求,出错处理需求,接口需求,约束,逆向需求,将来可能提出的要求
2)需求分析过程应该建立3种模型:
数据模型---- 实体-联系图
功能模型---- 数据流图
行为模型----状态转换图
3)事件的定义:某个特定时刻发生的事情,它是对引起系统做动作或从一个状态转换到另一个状态的外界事件的抽象
第七章实现
1)程序内部文档组成:恰当的标识符、适当的注解和程序的视觉组织
2)效率的定义与原则:指处理机时间和存储器容量两个方面。
首先,效率是性能要求
其次,效率是靠好设计来提高的
第三,程序的效率和程序的简单程度是一致的,不要牺牲程序的清晰性和可读性来不必要地提高效率
3)软件测试步骤:1. 模块测试;2. 子系统测试;3. 系统测试;4. 验收测试;5. 平行运行
4)测试重点:1. 模块接口【参数的数目、次序、属性等】;2. 局部数据结构;3. 重要的执行通路;4. 出错处理通路;5. 边界条件【使用刚好小于、刚好等于和刚好大于边界值的测试方案,可能发现软件中的错误】;
5)测试正文编辑模块用的存根程序、测试正文编辑模块用的驱动程序:
6)自顶向下集成步骤:
第一步,对主控制模块进行测试,测试时用存根程序代替所有直接附属于主控制模块的模块;
第二步,根据选定的结合策略(深度优先或宽度优先),每次用一个实际模块代换一个存根程序(新结合进来的模块往往又需要新的存根程序);
第三步,在结合进一个模块的同时进行测试;
第四步,为了保证加入模块没有引进新的错误,可能需要进行回归测试。
7)自底向上集成步骤:
第一步,把低层模块组合成实现某个特定的软件子功能的族;
第二步,写一个驱动程序(用于测试的控制程序),协调测试数据的输入和输出;
第三步,对由模块组成的子功能族进行测试;
第四步,去掉驱动程序,沿软件结构自下向上移动,把子功能族组合起来形成更大的子功能族。
8)不同集成测试策略的比较(自顶向下与自底向上):
自顶向下
优点:不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能。
缺点:需要存根程序,低层关键模块中的错误发现较晚。
而自底向上与之相反。
9)白盒测试技术定义:也叫玻璃盒测试(Glass Box Testing)。它允许测试人员利用程序内部的逻辑结构及有关信息,来设计或选择测试用例,对程序所有逻辑路径进行测试
10)逻辑覆盖测试的5种标准:
发现错误的能力
标准
含义
1(弱)
语句覆盖
每条语句至少执行一次
2
判定覆盖
每一判定的每个分支至少执行一次
3
条件覆盖
每一判定中的每个条件,分别按“真”、“假”至少各执行一次
4
判定/条件覆盖
同时满足判定覆盖和条件覆盖的要求
5 (强)
条件组合覆盖
求出判定中所有条件的各种可能组合值,每一可能的条件组合至少执行一次
11)逻辑覆盖举例:
覆盖标准
程序结构举例
测试用例应满足的条件
语句覆盖
A^B
T
F
A^B=.T.
判定覆盖
A^B
T
F
A^B=.T.
A^B=.F.
条件覆盖
A^B
T
F
A=.T. A=.F.
B=.T. B=.F.
判定/条件覆盖
A^B
T
F
A^B=.T. , A^B=.F.
A=.T. A=.F.
B=.T. B=.F.