总参某所 软件开发管理系统成功案例
来源:中国电子政务网 更新时间:2012-04-14

 

行业:军工

单位:总参X所

项目:软件开发管理系统

应用:汉星天Firefly配置管理系统

问题与挑战

总参X所承接大量军用软件的研发工作,随着软件项目规模和开发团队的增大、交付周期的缩短,该所在开发过程中遇到如下问题和挑战:

  • 开发管理——总参X所软件开发的特点是同时进行的项目较多,而且每个项目的开发人员较少,一个开发人员又可能同时属于多个开发项目,管理人员管理的项目也多。此时面临的挑战包括“多个项目同时进展,项目负责人如何看到开发人员在多个项目中的工作情况?”、“每个人是否清楚自己在开发过程中产生的变更?”、“每个人是否了解其他人在开发过程中正在产生的和已经产生的变更?”、“如何让多个项目同时顺利的开发?”……
  • 异地开发——总参X所的项目特点决定了在开发过程中,会经常有实验现场定制、现场缺陷解决等脱机环境开发的需求。这些异地开发的代码如何与本部的数据保持同步。
  • 并行开发——当一个项目要在开发新版本的同时继续对先前的版本进行必要的维护时,或者针对某个特定的版本需要针对不同的客户同时进行客户化的修改时,由于是人工操作,经常会出现修改过的BUG重复出现或者几个人进行相同的工作,产生不必要的浪费。
  • 组织的知识和过程财富流失一一对于总参X所来讲,历史上所有配置管理活动都是在各个项目组独自进行的,开发过程中所产生的相关代码、文档以及数据等的历史记录也都保存在各个项目团队中,这种状况对于建立组织级的信息资产库,实现集中、统一的管理十分不利。

针对以上问题与挑战,总参X所提出必须建立一个完整的全面的项目管理基础架构,对各种类型的项目进行有效的监管。这个管理基础框架,不仅应包括完善的管理制度、规范标准,还包括为高效率实现上述管理手段而建立的软件配置管理系统,以及其他的相关扩展领域,为今后的长远发展奠定坚实的基础。经过认真细致的调研和选型,在对各软件配置管理工具进行综合比较后,总参X所最终决定采用Hansky Firefly软件配置管理系统。

建设方案

由于军方研究所研发模式的特殊要求,总参X所的配置管理系统采用所级及研究室级两级服务器模式。总参X所承接的大多数项目,其开发、维护都在所内各专业研究室完成,对于软件项目比较多的软件研究室,要求单独设立软件室级配置管理服务器,对开发过程中的代码和文档进行管理;软件项目较少的软件室,将开发过程中的代码和文档放在所级配置管理服务器中进行管理。 使用一台计算机作为所级别的配置管理服务器,主要负责管理受控库、产品库;各专业室级服务器主要负责管理开发库、受控库,阶段性的发布版本至所级配置管理服务器,从而有效地管理所有的开发项目的工作产品(如下图)。

   

方案架构

目前总参X所独立使用配置管理管理服务器的软件室,在自己的配置管理服务器上为每个项目建立两个分支,开发分支和受控分支。受控分支存放所有开发过程中阶段性的文件和源代码,作为受控库。整个开发过程的中,开发人员对应开发分支在自己的开发机上建立本地工作区,下载代码进行开发工作,工作完成后将代码提交到开发分支。当开发分支开发到一定阶段需要进入受控库时,使用Firefly提供的分支合并功能,将需要加入受控库的文件和源代码从开发分支合并到受控分支。必要时,在受控库上标识产品版本,并且下载后提交给产品库(如下图)。

                                     软件室级的配置管理服务器

成果与未来

通过采用Firefly配置管理系统,依托总参X所配置管理规范条例,目前总参X所已经实现了最初的建设目标:

  • 进一步推动了所内软件工程化建设,强化了开发管理,有效提高软件专业室的软件开发质量、软件开发效率
  • 重新整理了所级软件资产,规范了开发库,受控库,产品库,对三库按保密条例进行控制
  • 自动化构建软件产品
  • Firefly配置管理工具与主流开发工具集成,支持不同项目的多种开发模式
  • 经过相应的授权,实现项目情况基于局域网通过浏览器实时访问,建立了动态、高效的项信息共享与管理沟通平台
  • 目前该所配置管理管理问题库与知识库已初具规模