软件工程 实现1ppt课件

上传人:ZJ****5 文档编号:51997676 上传时间:2018-08-17 格式:PPT 页数:54 大小:179.50KB
返回 下载 相关 举报
软件工程 实现1ppt课件_第1页
第1页 / 共54页
软件工程 实现1ppt课件_第2页
第2页 / 共54页
软件工程 实现1ppt课件_第3页
第3页 / 共54页
软件工程 实现1ppt课件_第4页
第4页 / 共54页
软件工程 实现1ppt课件_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《软件工程 实现1ppt课件》由会员分享,可在线阅读,更多相关《软件工程 实现1ppt课件(54页珍藏版)》请在金锄头文库上搜索。

1、实现编码部分 实现 7.1 编码 7.2 软件测试基础 7.3 单元测试 7.4 集成测试 7.5 确认测试 7.6 白盒测试技术 7.7 黑盒测试技术 7.8 调试 7.9 软件可靠性 7.10 小结实现阶段的任务 通常把编码和测试统称为实现。 所谓编码就是把软件设计结果翻译成用 某种程序设计语言书写的程序。作为软件 工程过程的一个阶段,编码是对设计的进 一步具体化 程序的质量主要取决于软件设计的质量 。但是,所选用的程序设计语言的特点及 编码风格也将对程序的可靠性、可读性、 可测试性和可维护性产生深远的影响。7.1 编码 7.1.1 选择程序设计语言 程序设计语言是人和计算机通信的最基 本

2、的工具,它的特点必然会影响人的思 维和解题方式,会影响人和计算机通信 的方式和质量,也会影响其他人阅读和 理解程序的难易程度。因此,编码之前 的一项重要工作就是选择一种适当的程 序设计语言。汇编系统汇编语言程序可重定位的机器语言程序编译系统高级语言程序目标程序解释系统高级语言程序运行结果语言处理程序的功能7.1.2 编码风格 源程序代码的逻辑简明清晰、易读易懂 是好程序的一个重要标准,为了做到这 一点,应该遵循下述规则。 1. 程序内部的文档 2. 数据说明 3. 语句构造 4. 输入输出 5. 效率1. 程序内部的文档程序清单的布局对于程序的可读性也有很 大影响,应该利用适当的阶梯形式使程序

3、的层 次结构清晰明显。编写源程序文件通常要考虑 的问题包括 符号名的命名 程序中的注释序言性注释功能性注释 空行和缩格等2. 数据说明 从便于阅读、便于维护的要求考虑,最好使 数据说明规范化。例如,规定说明次序为 简单变量说明 公用数据块说明 数组说明 文件说明 在文件说明中,多个符号名最好按字母顺序 排列 如果设计了一个复杂的数据结构,应当使用 注释来说明在程序实现时这个数据结构的固有 特点3. 语句构造 程序的清晰性是最重要的目标 不要为了节省空间而把多个语句写在同一行 程序编写首先考虑清晰性,不要刻意追求技巧性 一般情况下,首先保证程序正确,然后才要求提 高速度 尽量避免复杂的条件测试

4、尽可能使用库函数 尽量只采用3种基本的控制结构来编写程序 尽量减少对 “非”条件的测试 避免大量使用循环嵌套和条件嵌套 利用括号使表达式的运算次序清晰直观4. 输入输出 在设计和编写程序时应该考虑下述有关输入 输出风格的规则: 对所有输入数据都进行检验; 检查输入项重要组合的合法性; 保持输入格式简单; 使用数据结束标记,不要要求用户指定数据的数 目; 明确提示交互式输入的请求,详细说明可用的选 择或边界数值; 当程序设计语言对格式有严格要求时,应保持输 入格式一致; 设计良好的输出报表; 给所有输出数据加标志。5. 效率 程序运行时间效率 写程序之前先简化算术的和逻辑的表达式 仔细研究嵌套的

5、循环,以确定是否有语句 可以从内层往外移 尽量避免使用多维数组 尽量避免使用指针和复杂的标 使用执行时间短的算术运算 不要混和使用不同的数据类型 尽量使用整数运算和布尔表达式效率(1) 程序运行时间(2) 存储器效率(3) 输入输出的效率软件编程规范总则 排版 注释 标识符命名 可读性 变量 函数、过程软件编程规范总则(续) 可测性 程序效率 质量保证 代码编辑、编译、审查 代码测试、维护 排版 规则1:程序块要采用缩进风格编写,缩进的 空格数为4个 规则2:相对独立的程序块之间、变量说明之 后必须加空行 规则3:较长的语句(80字符)要分成多行书写 ,和表达式要在低优先级操作符处划分新行,

6、操作符放在新行之首,划分出的新行要进行适 当的缩进,使排版整齐,语句可读 排版 规则4:循环、判断等语句中若有较长 的表达式或语句,则要进行适应的划分 ,长表达式要在低优先级操作符处划分 新行,操作符放在新行之首 规则5:若函数或过程中的参数较长, 则要进行适当的划分 规范6:不允许把多个短语句写在一行 中,即一行只写一条语句 规则4示例if (taskno b) ? a : b;改为如下就很清晰了。 Int max (int a, int b) return (a b) ? a : b); value = max(a, b); 函数、过程 建议6:避免设计多参数函数,不使用的参数 从接口中去

7、掉 建议7:非调度函数应减少或防止控制参数, 尽量只使用数据参数 建议8:检查函数所有参数输入的有效性 建议9:检查函数所有非参数输入的有效性, 如数据文件、公共变量等 建议10:使用动宾词组为执行某操作的函数 命名。如果是OOP方法,可以只有动词(名词 是对象本象) 函数、过程 建议11:避免使用无意义或含义不清的动词 为函数命名 建议12:函数的返回值要清楚、明了,让使 用者不容易忽视错误情况 建议13:在调用函数填写参数时,应尽量减 少没有必要的默认数据类型转换或强制数据类 型转换 建议14:防止把没有关联的语句放到一个函 数中 建议15:减少函数本身或函数间的递归调用 建议14示例 v

8、oid lnit_Var(void) Rect.length = 0;Rect.width = 0; /初始化矩形的长与宽Point.x = 10;Point.y = 10;/初始化“点”的坐标。 建议14示例续void Init_Rect(void) Rect.length = 0;Rect.width = 0; /初始化矩形的长与宽 void Init_Point(void) Point.x = 10;Point.y = 10; /初始化“点”的坐标。 函数、过程 建议16:在多任务操作系统的环境下编 程,要注意函数可重入性的构造 建议17:对于提供了返回值的函数,在 引用时最好使用其返回

9、值 程序效率 规则1:编程时要经常注意代码的效率 全局效率:站在整个系统的角度上的系统效率 局部效率:站在模块或函数角度上的效率 时间效率:程序自理输入任务所需的时间长短 空间效率:程序所需内存空间,如机器代码空间 大小、数据空间大小、栈空间大小等 规则2:在保证软件系统的正确性、稳定性、 可读性及可测性的前提下,提高代码效率 规则3:局部效率应为全局效率服务,不能因 为提高局部效率而对全局效率造成影响 程序效率 规则4:通过对系统数据结构的划分与 组织的改进,以及对程序算法的优化来 提高空间效率 规则5:循环体内工作量最小化 规则5示例 For (ind = 0; ind MAX_ADD_N

10、UMBER; ind+)sum += ind;back_sum = sum; /* backup sum*/语句“back_sum = sum;”完全可以放在for语 句之后 程序效率 建议1:不应花过多的时间拼命地提高调用不 很频繁的函数代码效率 建议2:要仔细地构造或直接用汇编编写调用 频繁或性能要求极高的函数 建议3:在多重循环中,应将最忙的循环放在 最内层 建议4:尽量减少循环嵌套层次 建议5:尽量用乘法或其它方法代替除法,特 别是浮点运算中的除法 建议6:不要一味追求紧凑的代码 质量保证 规则1:代码质量保证优先原则 规则2:只引用属于自己的存贮空间 规则3:防止引用已经释放的内存空

11、间 规则4:过程/函数中分配的内存,在过程/函 数退出之前要释放 规则5:防止内存操作越界 规则6:有可能的话,if语句尽量加上else分支 ,对没有else分支的语句要小心对待;switch语 句必有default分支 质量保证 建议1:不使用与硬件或操作系统关系很大的 语句,而使用建议的标准语句,以提高软件的 可移植性和可重用性 建议2:除非为了满足特殊需求,避免使用嵌 入式汇编 建议3:系统应具有一定的容错能力,对一些 错误事件(如用户误操作等)能进行自动补救 建议4:对一些具有危险性的操作代码(如写 硬盘、删数据等)要仔细考虑,防止对数据、硬 件等的安全构成危害,以提高系统的安全性 建议5:使用变量时要注意其边界值的情况

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > IT计算机/网络 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号