研发生态总览

鸟瞰研发生态

研发生态总览_第1张图片
研发生态鸟瞰图
  • 研发数据中心
    研发机房将开发环境和测试环境隔离,分为开发云和测试云,开发人员允许在开发环境中操作、测试,测试人员执行测试用例则只允许在测试环境中进行,避免了研发过程中的版本、数据混乱。
  • 客户数据中心
    客户处的机房部署生产环境,若是网络环境隔离的情况,则通过移动镜像仓库在客户数据中心处进行业务系统的部署。
  • 镜像仓库
    存放Docker镜像,分为通用镜像和业务镜像。通用镜像是一些经过了调优后,通用的业务系统运行环境。业务镜像是在通用镜像中部署了业务系统后打包完成的可直接运行的业务环境。移动镜像仓库就是一台部署了Docker镜像中心的虚拟机,根据交付里程碑,将所需部署的业务系统在镜像仓库中依赖的通用镜像和业务镜像复制到移动镜像仓库中,做为部署镜像,便于在网络环境隔离的客户现场进行业务系统的部署。
  • 治理工具
    对研发体系进行统一的管控,分为服务治理和过程治理。服务治理工具用于管控及调度开发环境、测试环境、生产环境中的服务容器。过程治理工具是管控研发过程中,产品或项目相关的需求、任务、问题等(Bug管理、Issue、团队协作、项目管理)。
  • 开发工具
    辅助研发工程师完成软件工程的构建,包括开发框架、版本管理、自动构建三个工具。
  • 通用平台组件
    通过研发过程的积累,对平台型功能高度提炼,形成平台级的通用组件,从而提高软件工程模块的复用度。
    通用业务组件:通过业务系统的积累,对业务系统中通用组件进行提炼,形成业务级的通用组件,从而提高业务系统中模块的复用度。
  • 产品线
    将产品线分为核心产品、孵化产品、开源产品三大类,80%的核心产品是部门的基石,另外20%的产品则是由研发工程师围绕行业或兴趣自发进行的自由研发活动,是研发团队创新的源泉,其中5%的项目可以分享到开源社区,一方面可以吸纳外部研发能力(建议、思路、代码),避免闭门造车,另一方面可以提高工程师的社区影响力,提高个人的综合能力,而且还可以建立组织在行业内的影响力和技术主导权(例如阿里的Dubbo)。团队可以推出相关的政策,对自由研发活动进行支持,以鼓励工程师进行创新,如是否进行了自由产品的研发,所研发产品的领域与部门业务的关联度,产品在社区或其它团体内的影响力等,从而进行额外的奖励。

研发流程

研发生态总览_第2张图片
研发流程概览

典型部署架构

研发生态总览_第3张图片
典型部署架构

你可能感兴趣的:(研发生态总览)