当前,随着软件领域技术更新换代速度的日益加快,市场需求也变得更加多样化和个性化,业界普遍通过加速产品迭代来满足客户需求,但在此过程中也暴露出一些研发管理痛点问题,如服务和程序类资产信息分散于各个不同的应用和系统中,信息归集费时费力;设计、开发和测试人员无法准确清晰地对程序涉及的全链路及上下游系统链路进行有效评估;存量台账类数据资产保鲜困难等。
为有效解决上述研发领域“急、难、愁、盼”的问题,工商银行软件开发中心倾力打造了程序血缘分析中心,以代码资产数据为核心,以智能化为特征,打通系统和应用壁垒绘制全量程序和服务调用关系族谱,按照“沉淀关系资产,扩展场景触点,集成衍生功能,统一平台呈现”的总体建设思路,打造全链式程序和服务管理模型,构建程序血缘分析系统,提供覆盖研发全过程的效能优化方案,助力工商银行电子银行数字化转型。
一、程序血缘分析系统
整体架构
1.核心技术
程序血缘分析系统的分析对象为存在于代码仓库的Java源程序文件。系统底层采用Java的抽象语法树(AST)和字节码分析(ASM)相结合的数据扫描技术,综合了AST技术信息提取准确、层次清晰、支持增量扫描和ASM技术采集信息完整、通用性高等优点,支持对程序代码及其依赖的外部ja