谈开发质量和过程管控

标签: 随笔文章 | 发表时间:2013-10-13 10:29 | 作者:人月神话
出处:http://blog.sina.com.cn/cmmi
这里站在甲方信息化部门的角度谈下对开发厂商质量和过程的管控话题。

在构建企业私有云paas平台的时候,里面有一个重要的内容就是应用开发框架,这个应用开发框架可以理解为包含了应用技术架构(分层架构,开源组件选择等)和各种规范约束(编码规范,接口调用规范,UI规范)的一个空框架。各个开发厂商都必须遵循同样的一套技术架构来开发应用,这个不仅仅是解决开发的应用能够部署到paas平台的问题,更多的是解决后期的运维和管理问题,也进一步加强了各个开发厂商之间的可替代性。在传统的应用软件招标中往往我们只强调了开发语言和数据库使用什么,而实际应用内部的技术架构,采用的技术组件仍然由开发商控制,对于甲方来说完全是一个黑盒,不利于后期的质量和过程管控。

在paas平台搭建到一定程度后,可以看到企业内部可以复用的各种IT能力逐步成型,这既包括了各种技术服务能力,也包括了业务服务能力。形成了一个很多的可共享的服务能力支撑库。而新的应用系统必须要基于已有的各种IT能力资产进行开发,加强复用,降低重复开发。这也是我们说的后续应用系统开发能够快捷反应,逐步降低开发成本的一个原因。但是很多时候面对开发厂商固有的模式,推动上往往必须有强大的执行力。

平台+应用,一方面是通过平台实现敏捷性和成本降低,一方面是通过平台约束上层应用采用统一的开发框架,技术架构和标准规范,从而加强后续对应用的质量和过程管控能力。

对于开发厂商的研发过程,给出一个最简单的基于CMMI思路的一个研发过程图如下:



那么站在甲方的思路,要加强开发过程和质量管控的最好的方式就是加强对需求方案和验收发布两端的强管控能力,对于研发过程中加强里程碑评审的能力。对于项目管理而言则加强PMO对项目群管理的能力。在支撑域中最基本的配置管理和变更管理是必须的,要注意到甲方对配置管理的层面往往高于单个应用,往往涉及到的是更加全局跨系统的配置和变更管理能力,端到端的需求全程跟踪和闭环管理能力。

对于甲方驱动的研发过程管控能力,可以总结为三大类,具体如下:
  • 可固化:主要是指规范,流程和相关工具的制定和采用。
  • 可管控:主要是值项目管控过程中的评审,决策,沟通汇报,问题风险管理和监控预警机制。
  • 可量化:主要是指研发管理中的基础度量和KPI指标体系的建立


可以讲做好上面三个方面的内容是甲方逐步深入研发过程管控的一个基础。甲方的研发质量和过程管控不是要替代单个应用开发商的研发项目管理和质量管理,而更多的目的是类似CMMI三级一样形成一个适合甲方管理的组织级的过程和管控机制,从单个应用厂商本身的成熟还不足够,更加重要的是组织级的基线和成熟度。

对开发厂商的管控逐步打开内部的黑盒,但是要注意不是完全接管,而是加强关键点的里程碑评审和结构化决策机制。基于这个思路,另外再提下研发过程管控的一些关键点。

对于需求层面,我们要注意往往不是简单的统一需求方案,特别是涉及到跨多个应用系统的方案制定的时候,需要的不仅仅是需求方案,同时包括了技术方案。这个方案会约束高层的的一些总体架构设计和实现思路方面的内容,以防止后续各个应用在实现过程中走偏。

加强对两端的管理,包括需求方案和验收发布两端的管理,而弱化对厂商开发内部的管理,对于开发厂商内部的过程管控只需要加强里程碑监控和评审即可。以做到最基本的闭环管理。对于开发商内部的研发过程重点是制定相应的标准规范和约束,加强QA管控。

配置管理要形成企业级的配置管理库,各个厂商最终的研发过程资产都必须入库,要加强各种配置审计工作,同时源代码配置管理也需要逐步深入管理,方便后续的统一发布和部署流程的对接。而取代原因的开发厂商在验收的时候才一并提交验收资产的模式。

在纵向团队的基础上,可以考虑形成各种横向的联合性质的虚拟团队。包括易用性团队,性能优化团队,技术专家团队,业务专家团队等,以专家团队的方式来解决各个应用可能存在的共享问题,并且在解决后逐步上升到企业知识库中。形成组织级的度量和KPI体系,切实用数据说话,通过数据分析形成持续改进机制。这一点往往是最难的,但是又必须执行,至少需要做到定性+定量的开发商考核和评估机制。


  青春就应该这样绽放   游戏测试:三国时期谁是你最好的兄弟!!   你不得不信的星座秘密

相关 [开发 质量 程管] 推荐:

谈开发质量和过程管控

- - 人月神话的BLOG
这里站在甲方信息化部门的角度谈下对开发厂商质量和过程的管控话题. 在构建企业私有云paas平台的时候,里面有一个重要的内容就是应用开发框架,这个应用开发框架可以理解为包含了应用技术架构(分层架构,开源组件选择等)和各种规范约束(编码规范,接口调用规范,UI规范)的一个空框架. 各个开发厂商都必须遵循同样的一套技术架构来开发应用,这个不仅仅是解决开发的应用能够部署到paas平台的问题,更多的是解决后期的运维和管理问题,也进一步加强了各个开发厂商之间的可替代性.

如何开发高质量软件?及软件测试观点

- - 我的宝贝孙秀楠 ﹣C++, Lua, 大连,程序员
也许是因为我经常在twitter上鼓吹“代码质量来自code review和单元测试”,老赵的这篇文字 http://blog.zhaojie.me/2012/01/a-case-requirement-to-practice-unit-testing-or-tdd.html 也at我一下,抱歉的是最近欠债太多,正在着手完成答应侯伯薇的那篇关于appengine的文字.

javascript严谨模式提升开发效率和质量

- - ITeye博客
JavaScript严谨模式(Strict Mode)提升开发效率和质量(转载). 随着WebApp突飞猛进的发展,Javascript写的WebApp规模越来月庞大,比如典型的代表产品. 腾讯WebQQ、HTML5游戏等等,Javascript越来越需要大量的开发人员多多人协作开发. 同时HTML5、CSS3等新技术和NodeJs项目的高速发展,这几年JavaScript语言借着各种新API陆续被运用到从移动设备到服务器的多个”新领域”中.

技术文章的质量

- Kai Chen - 4G spaces
推友 @StarrySource 就微薄和推特的好坏问题写了一篇文章,正好和霍炬的文章同时发出来,推特上对这两篇文章叫好的人不少,其中还有一些直接就说 StarrySource 这篇比 virushuo 写得好. 文章好坏诚然是个很主观的事情,不过就仅从文章内容来说,就算有一千个读者一千个主观标准,我也想不出什么理由来说明 StarrySource 的这篇比 virushuo 写得好,因为客观上这两篇文章的差距会抵充掉主观上的一些好恶.

关于产品质量

- 茫茫 - 弯曲评论
记得去年某天曾去1号楼机房参观T系列存储系统的硬件,由于前期知道T系列的IO接口卡均可热插拔,而这在中端存储产品里是没有其他友商可以做到的. 抱着好奇的心态,我就反复尝试了一下,可以任意插拔IO接口卡而不影响业务,效果非常好. 为了进一步验证T系列的可靠性,我直接拔出了正在运行的双控中的一个控制器,此时主机端正在从阵列中拷出一个大文件,拔出控制器之后,拷贝出错终断了,这个也是可以理解的,毕竟操作系统自带的拷贝是写死的,超时值不可调.

苏泊尔“质量门”

- 棉花 - 南方周末-热点新闻
有业内人士质疑,以锰代镍是原材料价格上涨导致成本的增加后企业应对压力采取的手段. 对此,苏泊尔方反复强调“产品质量安全是没有问题的”,但未提及相关材质含量的问题.

软件质量之道

- - CSDN博客系统运维推荐文章
        我曾与一些资历非常高但毫无实际经验的人共事过,也曾与一些只有很少或根本没有资历但才华横溢的工程师一起工作过,我也曾经不得已跟一些并不想用心做事、也对学习新东西丝毫不感兴趣的人共事过. 如果说我们这个职业是一张纸,那么这些人就好比纸上的污点. 软件开发业的低劣性不能完全怪罪于那些无知的经理、狡猾的市场营销人员以及总是急不可耐的用户,实际上很大程度上要归咎于这个行业的某些从业人员,他们应该去从事一些即使玩忽职守也不会造成像软件业里这样大的危害的行当,而不应该混迹于这个聚集着人类想象力的最复杂的创造性的行业.

14套高质量图标集

- QQ - 软矿
对于高质量的图标,笔者特别喜欢. 这些图标可以用来作为网站的元素,也可以作为系统界面的图标和软件界面图标. WDL是一个介绍设计相关的英文博客,其中介绍高质量图标是一直坚持要做的事情. 下面是WDL博客最新推荐的10余套优秀图标集:. via webdesignledger.com  MK编译. 本站文章除注明转载外,均为本站原创编译.

使用 JSLint 保证 JavaScript 代码质量

- zhibin - IBM developerWorks 中国 : Web development : Articles,Tutorials
随着富 Web 前端应用的出现,开发人员不得不重新审视并重视 JavaScript 语言的能力和使用,抛弃过去那种只靠“复制 / 粘贴”常用脚本完成简单前端任务的模式. JavaScript 语言本身是一种弱类型脚本语言,具有相对于 C++ 或 Java 语言更为松散的限制,一切以函数为中心的函数式编程思想也为开发人员提供了更加灵活的语法实现.

用户体验质量控制体系

- 翔 - 《程序员》杂志官网
用户体验质量的评判要素有哪些. 本文为您讲解如何建立用户体验的质量控制体系. 许多刚开始接触用户体验概率的企业非常希望能有一套标准体系,照做就可以保证产品的优质用户体验. 其实,有许多讲解用户体验评估要素和方法的公开资源,那么为什么还是只有少数产品拥有优质的用户体验呢. 满足用户的需求,为用户解决实际问题,给用户带来价值.