當前,隨著軟件領域技術更新換代速度的日益加快,市場需求也變得更加多樣化和個性化,業界普遍通過加速產品迭代來滿足客戶需求,但在此過程中也暴露出一些研發管理痛點問題,如服務和程序類資產信息分散于各個不同的應用和系統中,信息歸集費時費力;設計、開發和測試人員無法準確清晰地對程序涉及的全鏈路及上下游系統鏈路進行有效評估;存量臺賬類數據資產保鮮困難等。
為有效解決上述研發領域“急、難、愁、盼”的問題,工商銀行軟件開發中心傾力打造了程序血緣分析中心,以代碼資產數據為核心,以智能化為特征,打通系統和應用壁壘繪制全量程序和服務調用關系族譜,按照“沉淀關系資產,擴展場景觸點,集成衍生功能,統一平臺呈現”的總體建設思路,打造全鏈式程序和服務管理模型,構建程序血緣分析系統,提供覆蓋研發全過程的效能優化方案,助力工商銀行電子銀行數字化轉型。
一、程序血緣分析系統
整體架構
1.核心技術
程序血緣分析系統的分析對象為存在于代碼倉庫的Java源程序文件。系統底層采用Java的抽象語法樹(AST)和字節碼分析(ASM)相結合的數據掃描技術,綜合了AST技術信息提取準確、層次清晰、支持增量掃描和ASM技術采集信息完整、通用性高等優點,支持對程序代碼及其依賴的外部ja