软件工程

本类阅读TOP10

·PHP4 + MYSQL + APACHE 在 WIN 系统下的安装、配置
·Linux 入门常用命令(1)
·Linux 入门常用命令(2)
·使用 DCPROMO/FORCEREMOVAL 命令强制将 Active Directory 域控制器降级
·DirectShow学习(八): CBaseRender类及相应Pin类的源代码分析
·基于ICE方式SIP信令穿透Symmetric NAT技术研究
·Windows 2003网络负载均衡的实现
·一网打尽Win十四种系统故障解决方法
·数百种 Windows 软件的免费替代品列表
·收藏---行百里半九十

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
小议手机软件平台开发(4) - 开发平台需要CMM吗?

作者:未知 来源:月光软件站 加入时间:2005-5-13 月光软件站

简单的回答:不需要。
复杂一点的回答:非但不需要,CMM可能会成为平台开发的绊脚石。

说这话可能会得罪一些CMM的支持者,本人曾供职过一个某软件强国的CMM5/PCMM-4的企业,现服务于一家移动开发世界数二数三的公司,自认为对CMM和移动开发都有心得,不是睁眼说瞎话。

首先声明,我并没有贬损CMM规范的意思,CMM对某些应用软件的开发还是很有作用的,我只是说它不适用于手机软件平台的开发。

Why?

微软某高层说过:“如果某天一个CMM5企业要进入浏览器市场,我会半夜笑醒。“手机软件平台和浏览器一样,有研究的性质,需要的是灵活和创新,而CMM帮忙只会帮倒忙。

CMM规范的实施基于这样一个假设---“需求是明确的而且易于获得的”,但是手机软件平台不是这样的,平台是用来给开发应用的,很多需求都是摸索着获得的,不是象超级市场货架上的商品一样拿就行了。CMM这一点也导致它在很多别的应用开发中很尴尬。

软件平台开发更多的需要是作为王牌程序员的聪明才智,我就认识某个牛人一人完成一个嵌入式application framework(UI除外),而CMM实施带来的overhead是有目共睹,程序员往往就在繁冗的表单填写中丧失了激情。

CMM名为“能力成熟度模型”,但自身也有很多不成熟的地方,没法保证产生优秀的软件产品。CMM保证一个bug能够被track,但是bug如何被fix,就完全靠程序员的专业能力;CMM保证所有的文档都被review,但是没法保证review过得文档就是高质量的。我相信,很多成功实施CMM的企业,也不是完全依赖CMM,需要其他更重要的东西,比如好的人才招聘培养和挽留机制:)

这样做个实验,软件业这一二十年获得巨大的发展,列出十个觉得最伟大的软件,看看有几个是在CMM的监督之下成果的。我写的是
    Windows
    DOOM/Quake
    C++
    Java Platform
    Linux
    Warcraft 3
    Office
    .Net Framework
    Eclipse
    Starcraft
    呵呵,排名不分先后。
    伟大的软件总是会有很多的创新和突破,这是CMM无法做到的。









相关文章

相关软件