论文部分内容阅读
研发对于一个企业尤其是软件企业来说是至关重要的,很多时候一个科学的、合适的研发管理体系就是一个软件企业的核心竞争力。应该说,在所有行业的研发管理中,软件企业的研发管理是发展和变化最快的,因为软件企业的研发有其自身的特点:(1)用户需求定义直接决定项目的生死,也是最难把握的;(2)企业和项目规模越大,越需要规范管理,反过来,规模较小的企业和项目则需要适度的灵活性;(3)软件研发人员有很高的自我创造需求;(4)软件研发人员是知识型员工;(5)技术变化很快,日新月异。
在以外的研究中,研究者往往致力于研究出一种或几种最佳的研发管理体系,供软件企业参考和使用。但是笔者在阅读了大量的文献和研究档案后发现,即使是理论体系最完整的研发管理体系也不可能适用于所有的软件企业,软件企业的研发管理体系受到环境和自身发展的影响非常大。因此,没有一种或几种研发管理体系是放之四海而皆准的,软件企业在选择科学的、适合自己的研发管理体系时,往往需要采纳多种研发管理体系的优点,并结合环境和自己的实际情况来进行设计。
软件企业的研发管理体系可以分为四个方面:(1)研发战略,包括产品发展愿景、产品平台战略及规划、产品线战略及规划、具体产品的开发计划;(2)研发流程管理;(3)研发组织模式,包括内部组织模式和外部组织模式;(4)研发文化。这四个方面都与软件企业所处的环境以及企业的自身发展情况密切相关。
软件企业的研发战略与企业所处环境中的以下四个要素密切相关:(1)企业所处行业的用户需求;(2)市场状况和竞争环境;(3)技术成熟度;(4)未来技术的发展趋势。企业的研发战略也与企业自身发展战略和经营战略密切相关,企业制订的研发战略必须立足于企业现有的能力和资源,与总体研发计划以及整体战略相配套。
软件企业的研发流程不是一成不变的,往往需要随着环境和自身发展的需要做不断的调整。当前,主要的研发流程管理模型包括:(1)结构化模型;(2)权变模型;(3)信息模型。而在软件项目管理领域,比较完整和影响力的项目管理理论包括:(1)软件能力成熟度模型;(2)敏捷开发思想:(3)RUP和面向对象方法论。对于每一个软件企业来说,单纯的削足适履,拿一个模型来套自己企业的研发流程并不是很明智的,而最好是根据企业所处的环境和自身情况来选择一个好的模型并做适当的调整。根据用户需求和行业背景,软件行业大致可以分为:(1)软件平台开发;(2)嵌入式通用软件开发;(3)定制类软件开发;(4)面向大众的消费类软件开发。不同的软件行业对软件开发过程的灵活性和规范性要求不同,软件企业也要仔细考虑自己的行业特点。而企业自身的发展也决定了研发流程管理模型的适用性,一般来说不同发展阶段的企业适合不同的研发流程管理,而当企业面临发展困境和寻求突破时,研发流程重整往往不可避免。
软件企业的研发组织模式是最灵活的,因为互联网和开源社区的迅猛发展,软件企业不仅要管理内部的研发组织,也要管理外部的研发组织。常见的研发内部组织模式包括线性组织、并行-交叉组织、工作组制组织、矩阵组织和二元性组织等,研发外部组织模式包括合作研发组织、虚拟组织和网络组织等。软件企业所处的环境往往决定了企业要如何与外界沟通和合作研发,也就决定了企业的外部组织模式;而企业在不同的发展阶段也适合不同的内部组织模式,当企业需要开拓新的领域时,可能会采用二元性组织模式。
软件企业的研发文化和企业所处的环境以及企业自身的发展情况也密切相关。不同的企业环境适合不同类型的企业生存和发展,也培育了一批具有独特企业文化的软件企业,有的企业研发文化偏重于创新,鼓励员工自我创造和创新,认可员工从事一些与工作无关的研究;有的企业研发文化偏重于执行力,要求员工严格按照规范和流程行事,致力于降低软件研发过程中产生的缺陷率,提高产品质量;也有一些企业的研发文化兼顾了创新和执行力,既有严格的规范和流程,又因为产品交付的及时和灵活性,对员工也提出了创新的要求,支持员工在一定范围内自我创造和创新。一般来说,企业文化与企业的领导者密切相关,研发文化也是如此,很多时候,研发文化就是企业和研发领导者的文化。而随着企业自身发展战略的调整,研发文化的重塑和调整也往往不可避免。
笔者长期在软件企业工作,所在的单位是一家中等规模的从事网络安全的软件企业,发展迅速也面临了研发的诸多困扰。根据对企业所处环境以及企业自身发展的分析,结合企业当前的研发管理体系,可以看出其受到环境和自身发展的深刻影响。因为企业所处的行业具备竞争激烈,市场规模偏小,技术复杂度高,技术变化快等特点,所以,企业研发战略制订了以平台为基础,发展蓝海战略;研发流程则一方面规范项目立项和开发流程,另一方面保留了灵活机动的开发方式;研发组织模式采用了二元性组织模式,寻求新的技术领域的突破;研发文化以支持创新为主,保持比较宽松的管理。而因为企业具备自身规模不大,市场领先,技术成熟度相对不高等特点,所以,企业研发战略制订了多条产品线共同发展,拥有业界最全的产品线;研发流程注重产品的维护和升级;研发组织模式采用矩阵组织模式;研发文化保持了相对宽松的管理。
根据笔者所在公司的例子分析,我们也可以看出,软件企业的研发管理体系与企业所处环境和自身发展情况密切相关。在分析一个企业的研发管理体系是否科学合理,是否适合,首先要对环境和自身发展情况做出详尽的分析,并对症下药。