软件研发过程优化感悟
2016-09-22 06:30 钟铧若岩 阅读(688) 评论(0) 编辑 收藏 举报辗转反侧 夜不能寐,思绪如源涌,应该怎么办?
百度一下,
三千年前,我会选择,准备笔墨纸砚,望着窗外的明月,提笔挥毫,吟诗作赋北窗里。
三千年后,我静坐窗前,听着外面车水马龙,索性打开博客,记下难得,久违了的感悟。
主要有以下几点,萦绕着我的思绪,然久不能寐。
1)设计<->开发<->开发测试之接力棒
2)单元测试,自动化测试体系在研发过程当中的重要性
3)设计,开发,测试过程当中的自我管理与约束
先说说1)设计<->开发<->开发测试<->集成测试<->系统测试 之接力棒,这里的设计主要是指研发层面的,软件架构,核心算法方面。
软件开发过程就像接力赛一样,环环相扣,常用的软件开发过程模型瀑布,以及螺旋。每一个阶段都要以上一个阶段的有效输出为输入,同时为下一个阶段提供优质的输出。
这样,整个流程还是良性运转的。
》》设计
对于用时巨大的软件项目来说,设计尤其重要,模块结构,主要功能的核心逻辑,主要流程的时序,状态图,数据结构,用例图,安装部署结构图。这些都可以指导后期的开发。
》》开发
开发过程当中的,面向对象,面向SOA首为重要。不管多少设计模式,面向对象的要点,抽象,封装,继承,多态。这四个词包罗了太多东西。
开发过程当中的,单元测试相当重要,
1)模块内单元测试,可以检查我们自身重要逻辑的正确性;
2)模块间单元测试,在软件开发初期,各模块不稳定,经常接口变更,可以提高接口的稳定性输出,以及给开发测试提供良好的测试条件;
3)模块间单元测试,对于开发尾期,可以减少软件功能回退,提供软件的稳步推进;
4)模块间单元测试,对于集成测试环境,现场运维,模块间的单元测试可以提高问题的效率。
在开发过程当中就做到单元测试,可以提高测试效率,减少BUG遗留到集成测试环境的问题。
》》开发测试
在需求,设计阶段都必须介入的角色,在软件设计,软件开发阶段,需要与设计,开发人员同步输出的是测试用例。测试用例的覆盖度,直接决定了软件功能的测试完整度。
因此优秀的开发测试人员,总是满满的测试用例。等价类,边缘测试,这是开发测试里重要的概念。因此,在开发提供良好输出的情况下,开发测试的注意力就可以集中到模块的主
要功能测试,模块间的接口测试。
自动化测试工具对开发测试的重要性。
》》集成测试
主要是模块间的接口测试。(先略)
》》系统测试
主要是模块间,以及三方硬,软件之间的用户级测试。(先略)
夜已经深,天快亮,未完待续!