如今,">商业竞争异常激烈,企业必须能够快速有效地响应市场需求,这促使业务目标、优先级和需求发生不断改变。要获得竞争优势,必须将 IT 投资与这些目标和优先级联系在一起。另外,将一个灵活、协作式的软件交付基础架构集成到整个企业中对于获得成功也很重要。
要实现业务灵活性,用来建立现代化软件开发环境的策略就非常重要。此外,另一个重要要求是确保您的环境完全支持多平台开发并能够进行协作。在大多数企业对基于大型机、驱动关键业务流程的应用程序进行大笔投资时,这将是一项非常复杂的任务。这些应用程序通常没有归档,或至少正在进行归档,用于维护和修改这些应用程序的技能非常稀缺。
那么您的组织该如何着手去做呢?要建立现代开发环境、推动业务灵活性,理论上的第一步是什么?要通过 IT 敏捷实现业务灵活性,就必须对现有的软件清单有非常清楚的了解,并且能够直接影响对现有清单做出的持续的、有计划的更改。
因此,第一步是对目前引导业务进行的现有应用程序的结构有清晰的认识,从而了解这些应用程序的 “整体互动”。只有这样,您才能够为应用程序现代化决策、项目和团队建立愿景和路线图,并最终制定一项软件开发和交付计划,快速响应不断变化的业务需求。此外,通过将知识收集流程与应用程序变更流程集成在一起,您就可以根据准确的信息制定规划,从而正确地评估这些变更的范围和风险。
本文将讨论多平台开发的一项关键内容:集成软件应用程序分析与源代码变更管理基础架构,以便在软件维护和变更的整个过程中实现更精准的决策制定和规划。
应用程序分析概述
首先,我们将集成 IBM® Rational Team Concert,实现端到端多平台软件开发生命周期管理。IBM® Rational Team Concert 提供了源代码管理、构建、升级 (promotion) 和开发功能,还提供了必要的基础架构来组织项目和团队,以管理持续的、交互的项目规划,并确保整个生命周期期间所有利益相关方之间的依赖关系的可跟踪性,从而将 IT 变更与业务需求联系起来。
然后我们会将 IBM® Rational® Asset Analyzer 添加到该环境中,以便提供应用程序分析,该分析是理解企业中存在的软件内容以及这些应用程序内部及之间的关系所必需
这些工具是更广泛的 Rational 解决方案(即 Integrated Solution for System z Development)的一部分,该解决方案的目标是为多平台开发创建一个集成的、核心式的现代开发环境,以此作为企业现代化战略的第一步。图 1 展示了一种初始的 Integrated Solution for System z 拓扑结构。
图 1. ISD for z 拓扑
本文只关注其中两种组件,因此您可以集成 Rational Asset Analyzer 源代码分析功能和 Rational Team Concert 源代码管理,确保持续分析能够成为软件开发和变更生命周期的一部分。
准备工作
要为获得集成式解决方案而对开发环境进行准备,您必须先设置 Rational Team Concert,以便管理一个软件项目,包括(但不仅限于)以下元素:
一个项目区域(和可选的团队区域) zComponentProjects,代表可以在 Rational Team Concert 库中共享的软件应用程序工件 一个流结构,表示您的软件应用程序横跨生命周期的各个阶段,包括生产、正式测试和开发阶段 一个或多个构建定义,用于构建您的软件应用程序 企业扩展,用于基于主机的构建:数据集定义、转换器和语言定义
图 2 展示了本文后面部分将使用的一个流结构示例。您的流结构可能与此不同,或者更复杂一些。
图 2. 用于多平台开发的初始 Rational Team Concert 流结构
在考虑如何将软件应用程序分析集成到持续的软件开发生命周期中时,您应当思考将分析功能嵌入到这个流结构的哪个部分中。换言之,哪个 “时间快照” 最能够代表软件工件?这不仅包括正在发生的变更,还包括应用程序的稳定版本。选择生产级别的源代码不一定能够反映出开发生命周期中正在发生的变更,除非在非常靠后的时间进行分析,才能对变更的范围和风险进行准确分析。开发级别的代码也不一定是最佳选择,因为这些变更可能尚未完成,仍然不稳定。理想情况下,应选择正式测试中的软件级别,因为所代表的变更被认为是相对稳定的,而且还包含正在发生的一些变更。