|
专业的研发流程
介绍
我们完全依照公司制定的开发流程BGP(BenQ Guru Process)进行研发,从而保证客户产品的质量。其中明基逐鹿的研发流程(BGP)参照RUP( Rational Unified Process,以下简称RUP ) 建制而成,通过针对性的进行流程裁减形成明基逐鹿BGP流程规范,明基逐鹿的软件生命周期定义如下。
导入RUP
RUP 为在开发组织中分配任务和职责提供了一种规范方法。其目标是确保在可预计的时间安排和预算内开发出满足最终用户需求的高品质的软件。RUP 汇集现代软件开发中多方面的最佳经验,为适应各种项目及组织的需要提供了灵活的形式。
RUP示意图
但是RUP本身的及其庞大和复杂的,并且完全的硬搬RUP过来不但不能达到预期的目标,反而会造成更大规模上的软件管理混乱。明基逐鹿软件在导入RUP的过程中,结合自身以及国内软件业发展的现状,提出了一套适应自身的软件过程流程规范体系。明基逐鹿软件的BGP软件管理体系,从实际运用的角度出发,对RUP做了一系列的“实现”,总结并提出了一整套适合国内软件业特殊需求的文档模版、规范模版,以及结合RUP和Share
Point Portal Server、Project Server建立了完整的软件开发流程控制机制。
BGP开发过程
针对RUP,我们在执行自身BGP的过程中,细化了其工作流程与标准,对于每个阶段的角色定义以及工作流程明确的定义,采用迭代与增量的方式,细化流程中,每一个角色(系统分析员、软件架构师,测试工程师等)执行每一个活动,均需要参照工作指南,和重要的定义概念,如果涉及到设计或开发工具还需要参照工具向导。角色执行每一项活动均需要了解输入工件,同时产出输出工件。工件的制作过程需要参照工件指南(如设计指南,开发说明,架构描述等),和工件模板,保证整个开发过程的统一性和可移转性,同时要交付工件报告。在工件的产出需要经过控制点的检查,通过后方可以交付工件至下一个活动。如下为各个活动产出工件的列表:

角色定义
BQP对于软件生命周期的各个阶段的控制点进行了明确的定义,每一个阶段的参与者,以及主导角色为何,以及各个角色的责任,生命周期的各个阶段需要提交的工件,工件所需要遵从的规范以及参照执行的模板,各个阶段需要进行的说明会议和评审活动等。所有的这些可以一方面保证产品的开发质量,另一个方面,可以防止因为人为的过失导致返工甚至产品研发的失败。
BPG角色定义示意图

各个角色在研发流程中分配示意图
结语
明基逐鹿软件的BGP体系就是对RUP过程的一个裁减和优化的软件过程控制体系,他在很大的程度上对于提高明基逐鹿软件产品的高品质提供了有利的支撑和保证。在另外一方面,国内软件同行经常抱怨的“RUP的确是好东西,但是就是太难用”,也从另外一方面透露出国内软件业虽然认识到实施先进软件过程的重要性,但是苦于缺少实践机会不能很好的利用RUP这种先进的软件过程。明基逐鹿在推进自身软件过程改进的过程中总结和积累的适合国内软件业的BGP体系就是对RUP过程的一个很好的实践。
以下为明基逐鹿完整的研发流程示意图
|