我们目前快不起来,不在于我们是否采取敏捷方式,而是我们基础太薄弱

  1、开发人员不理解现有业务

  2、开发人员不理解现有代码

  3、开发人员不理解现有数据表关系、关键字段变化、VIEW、SP、报表

  4、开发人员不理解MAP在典型场景中的实际应用,不了解MAP到底有多少函数可以帮助开发

  5、开发人员大多是新人,对开发过程规范不了解。我们目前采取CMMI开发过程规范,光主节点有78个。开发部门的老人也大部分只是只开发过一个子系统,对其他子系统的业务、代码、数据库也不了解。只是MAP和开发过程规范比武汉开发新人熟悉一些。

  6、我们的设计人员也大多是新人,不了解现有业务和系统功能

  7、我们的自测没有方法,多了工序,耗了人工和时间,但效果并不明显。

  8、我们的代码审查没有方法,多了工序,耗了人工和时间,但效果并不明显。

  9、我们的大数据量测试、多场景并发测试、集成跨子系统影响测试、安装部署测试、环境兼容性测试、权限点测试、帮助文件测试也是没有优化,消耗大量时间。

  只有先把这些基础补起来,我们的开发效率、开发质量会比我们现在好很多。所以我们今年大力启动多项针对性的关键行动计划来提升各个方面。但这些做到后我们也并不能做到3个月快速发版。

  当然,我们还可以继续优化:

  1、需求规划不能滞后,这是常见挤压下游设计、开发、测试时间的原因。需求分为功能增强和BUG修补。对于BUG,ERP3.0会提供BUG自动发回功能,让需求收集需求规划阶段能够优化缩短。

  2、开发Leader在功能设计中期进入,理解业务,设计数据库,设计功能代码实现和代码修改方案、设计接口、识别公共代码。

  3、平台提供大量稳定性功能、代码审查工具、性能优化数据库设计指引,平台还提供日志、异常、输入规则校验底层框架,把这些都从业务代码中抽取出去,简化代码开发。平台应用架构组也梳理子系统代码分层解耦、JS代码缩减,力求业务子系统开发少写代码,只写业务代码。

  4、设计部门进行设计模板化,平台应用架构组也提供代码模板,开发也尽量模板化COPY修改。简化开发,提高效率和质量。

  但要想更快起来,我们必须引入敏捷项目管理、敏捷设计、敏捷开发、敏捷测试。

  敏捷测试的核心是要和开发一起并行,把BUG消灭在开发的每天中,而不是在后期集中测试集中爆发。这要求咱们并行写测试用例、并行做自动化测试、并行持续每日自动构建自动脚本测试。咱们目前设计方法和测试方法不一致所以无法并行测试用例,这今年会解决;咱们代码各异没有模板,所以自动化测试跑不起来;我们功能自动化测试经验也尚浅需要加强;

  光靠敏捷测试是不够的,保证代码稳定还得主要靠开发人员。所以敏捷开发需要开展单元测试靠开发人员主力保证代码稳定,在单个开发人员编码能力不强的状况下可以采用开发leader编写代码骨架普通开发人员填肉的配合结对编程,而且还得实时进行重构防止代码逐步腐烂导致开发进度开发质量连年下降。这两项也是咱们的空白。