谈谈流程图的重要性
通过DC考试看到一些同学在绘制流程图方面不是很熟练,一部分同学是以前没有画过,仅通过一堂课的学习了解了算法流程图,但课后缺乏阅读和练习;一部分同学是对此不重视,认为只要会编程就可以,没有必要画流程图。
其实算法流程图在软件开发过程中很重要,是详细设计文档必须包含的内容。通过流程图了解模块的设计思路,对读懂程序起很大帮助。实现一个功能的算法可以有多种,而一个算法又可以有多种程序实现方式。所以用流程图描述算法要从基本算法实现出发,不要有程序实现的痕迹。
算法流程图对开发人员重要,对测试人员也同样。通过教师的二期培训,了解到在二期白盒测试课程中有程序复杂度的测量,其中程序的圈复杂度就是基于传统流程图进行计算的,通过程序圈复杂度计算得出达到基本路径覆盖的测试用例个数,从而指导测试用例的设计。
认识到流程图的重要性,那么如何熟练绘制呢?我建议同学可以多看看谭浩强的C语言书,书中对于常用算法都有流程图,是用N-S图表示的,同学可以在此之上将其转为传统流程图,这样既熟悉了N-S图,又熟悉了传统流程图,更加深对算法的理解。
在绘制传统流程图时注意几点:
1、 熟练绘制传统流程图的基本元素,三种基本结构的流程图标准画法
2、 将复合条件转为多个单一条件
3、 循环注意初值、变化和终止
4、 算法的重点实现一定体现出来