现在的位置: 首页 > 综合 > 正文

(转)“黑盒测试管理”以外的编程经验片断,一些软件工程时间分配的启示

2012年08月21日 ⁄ 综合 ⁄ 共 992字 ⁄ 字号 评论关闭
(转自)http://www.cnblogs.com/fjwuyongzhi/archive/2007/04/28/730939.html

除了很好地进行“黑盒测试管理”,个人觉得下述更值得用功;毕竟“前除后略”!

1、架构和算法的可行性测试分析:主要包括性能、并发等方面

2、CodeReview:很简单,但很多人没有这样做;其实这比“黑盒测试”更容易发现边界问题、流程正确性问题等。值得推广!

3、测试驱动和单元测试,很多人为了达到那些并不太懂编程管理层的要求,往往是少了这些看似不容易出成绩的步骤。(很大程度上改变设计思维)
 知道可能出错的地方,当然容易避免出错。

4、UML和用例:特别是UI建模,个人觉得最不可少;UML和用例至少要能覆盖核心内容。

 具体如何做,要根据每个人、每个单位甚至每个项目做具体优化,这里提供思路。

5、用心架构(各功能模块的关系<用例等>、分布式计算的节点关系<即分层>、类的层次结构<UML图>、升级的备案、数据库架构、数据库表的范式<ER图>、并发访问和多线程等):不好的架构,Code起来吃力、问题又多又不好解决!以个人的经验认为,一般可分为六个阶段

  A 用户需求收集、访谈和确认-->B 架构和可行性分析并文档化--> C 开发测试部署和维护详细计划--> D1 单元编码、测试<-->D2 部署测试--> E1 开发环境集成和测试--> E2 真实环境模拟测试-->E3 部署预演-->(原系统备份)-->F 部署

 1) 各阶段主要的“产出”(不考虑投入)
A:需求说明书、UI建模、用例和UML图和系统使用帮助文件初稿、系统可能存在的风险报告
B:系统架构图(逻辑图和物理图)、核心算法代码和测试报告、第二方和第三方组件的风险分析报告
C:系统各模块的详细说明书,数据库架构和测试,各功能的开发、CodeRivew和测试计划、部署计划(相当于每日构建)、集成测试计划、系统的升级考虑和方案。注意,尽可能在Code前将数据库可能的问题解决掉!
D:代码、BUG管理、可执行文件、开发环境、测试环境
E:可发布的安装包、最终用户文档、修改之前相关的文档到和现在的系统一致
F:可能的问题预案、安装和不断依实际情况优化,进入维护阶段

 2)时间分配:A:B:C:D:E:F=10:10:20:50:5:5,A阶段的时间这里指项目启动时算起,启动前的时间不计在内。
真正的Code时间一般可能占50%

抱歉!评论已关闭.