功能点与代码行,作为两种度量方法已经长期并存又竞争,他们的支持者已进行了大量的争论,如今这种争论仍未停息。人们似乎想看到:功能点与代码行,到底谁将最后胜出?
现在许多企业都很关心项目管理的应用,希望能够通过项目制来管理企业,这是一种趋势。“IT项目经理不是学出来的,而是干出来的”,话虽如此,但没有学习而埋头只顾“干活”往往事与愿违。
IT行业直到现在,如何管理好软件项目还一直是大家讨论的话题,这是因为软件项目失败的太多。就中国目前很多软件开发团队的实际情况来看,从某种程度上来说,错误的使用和依赖两个软件来管理项目是项目失败的一个重要理由。
一个项目从其一成立开始,项目各方干系人都会期望项目能够根据既定的计划一步步顺利地导向最后的成功。影响项目的最后成功的因素是多方面的,包括项目管理的九大知识领域(包括项目的整体管理、范围管理、时间管理、费用管理、质量管理、人力管理、沟通管理、风险管理和采购管理),无一对项目的最后成功不产生积极影响。然而,要这九大知识领域对项目成功产生的影响的轻重程度上进行比较的话,我认为其中项目范围管理是最为重要的。
FTD是优化业务产出的方法之一。采取这种方法,一是本地组织可以自主作出决定,不同组织之间是平等关系而不是联盟。二是要有一个中心机构负责工作协调,每一个分支都能够在统一的命令和安排之下开展工作。
也许CMM被谈论得太多了,人们反而很少提及CMM的目的。其实,CMM的目的就是实现软件过程的改进(SPI),从而提升软件组织的核心竞争力,取得竞争优势。那么,试着把SPI的“S”去掉,然后从以下三个观点中理解“PI”:凡是活动都存在过程;凡是过程都需要改进;凡是改进都没有终点。
本文从分析CMM的关键过程区域的基础上,结合软件项目合同的特点,对软件项目合同范围的定义进行了扩充,这对于降低项目开发的风险,提高软件开发方的过程能力成熟度,对于软件项目合同的签定双方都具有较大的借鉴意义。
据2007年中国软件产业发展研究报告显示,至2006年底,我国的软件与信息服务业规模达到4800亿元,已经跻身全球前四名,占全球总额的7.1%。但从我国软件产值的内、外比例看,2006年我国软件产值的90.3%在国内市场,出口额共60.6亿美元,不足10%,与印度的313亿美元、爱尔兰的235亿欧元相比,差距还是比较大的。我们看到,我国软件产业虽然发展迅速,但在世界格局中依然不具备良好的竞争力。
我们必须从软件过程、过程工程的角度来看待CMM的发展,从经济学的观点来分析这个过程的价值。我相信在实施CMM/PSP/TSP的过程中,只要坚持改善软件工程的管理,并在实践中注意总结适合自身的经验,一定能取得很好的效果。
中国功夫讲究“内练一口气、外练筋骨皮”,这个道理非常值得软件企业在生产经营中加以借鉴。建立学习型组织和CMM认证在通过提升管理而谋求企业发展的过程中,正是起到了“内修”、“外练”的作用。让我们粗浅地介绍一下软件企业应当修炼的这两件利器学习型组织和CMM。
随着时代的发展,人们开始意识到,软件的开发不仅仅在于新技术是否出现,更在于软件使用过程的管理。软件企业的开发结构只有在形成一套完整而熟练的过程后,其开发才能够步入正轨。目前,CMM作为当前世界上最流行、最实用的软件生产过程的评价标准,已被国际软件产业界公认为软件企业进入国际市场的通行证。
联想公司软件事业部通过了CMM2级认证这件事情让软件界兴奋了许久,近期有消息透露联想公司有意在年底冲击CMM3级认证,这一消息更加振奋了中国软件业。信息产业部“今年电子信息产品投资重点”中提到,软件“开发过程中采用CMM管理模式,提高软件开发效率和质量保证能力”。软件能力成熟度是属于软件质量和软件生产组织管理问题。本文来说说这一问题,并给出我们的观点和想法。
CMM/CMMI本身是一套非常有价值的过程模型,但简单的将其图腾化却是整个中国软件行业的悲哀,反观CMM/CMMI的发源地——美国,除了和军方有业务往来的软件企业会寻求通过CMM/CMMI评审外,其他多数的企业并不怎么在乎是通过了CMM/CMMI的三级还是四级,象是著名的微软、甲骨文等知名企业都没听说过和CMM/CMMI沾过边,但这也丝毫不影响以他们为代表的美国软件企业在整个行业中独领风骚。
在基于CMM实施软件过程改善时,有些根本的思想认识问题解决不了,往往会使实施的周期比较长,效果不好,甚至导致过程改善的失败或中止。软件企业的高层领导、企业的过程改善主管、销售人员、项目经理及一般的开发人员都需要对这些问题统一认识,在此基础上才能消除各方面的阻力,把握好过程改善的方向,控制好过程改善的进度。笔者在总结了3年的实施CMM的经验教训后,归纳了如下几个思想认识问题,供拟准备进行过程改善或正在进行过程改善的软件企业同行参考: CMM不是万能的,只有CMM是不行的,还要技术(开发方法、工具)人员二个要素一起改善。
软件工业与制造业和服务业相比远远没有成熟,需要持续进行过程改进通过改善过程的品质,来改善过程的产物的品质,是二战之后的戴明主义理论和实践的基本经验,得到了工业和服务业实践的作证。
SSE-CMM确定了一个评价安全工程实施的综合框架,提供了度量与改善安全工程学科应用情况的方法,也就是说,对合格的安全工程实施者的可信性,是建立在对基于一个工程组的安全实施与过程的成熟性评估之上的。
本文论述了在工程组织中进行基于CMMI的集成化过程改进的总体策略。文章首先简要介绍了CMMI产品集,然后分别论述了利用CMMI进行集成化过程改进时如何选择合适的规范、模型表示法的选择以及在改进过程中评估的作用及开展。这几方面的问题构成了基于CMMI进行集成化过程改进的主要方面。
一位经验丰富的软件开发专业人员提出了一份他个人的建议,并且描绘了一幅通过改进和提高开发过程从而使项目获得成功的良好习惯,它涉及到交流沟通、用例、测试和市场营销等方面。
软件开发周期非常重要,无论对软件项目最终开发是否能取得成功或是对软件管理和资源投入,我们就应当充份的了解周期里各个活动的定义和任务,才能合理,准确,客观的安排每一阶段的工作,以下就对各种活动的定义和任务做一下简单介绍,使之对它们有一个初步的了解。