此方案描述了 SAP NetWeaver 开发基础结构 (NWDI) 的使用情况 当您为基于 SAP NetWeaver 技术平台开发业务应用程序时 关于与 SAP 组件模型相关的原则。换句话说,您开发了 使用开发组件 (DC) 打包您的开发项目。有了 DC You 可以将您的开发集成到软件组件 (SC) 中,从而确保 顺利集成您的软件的开发和传输或版本控制 正在工作。请注意:
-
与 NWDI 一起开发 DC 是基于与 Central 的发展项目 源文件存储。这意味着开发人员在一个团队中工作,共享源代码 使用版本控制系统作为其源和构件的存储库的代码。 开发人员按照 SAP 的组件模型将软件划分为 DC,并且 使用 Development Configurations 定义开发人员的 Development 视图 基础设施。
-
中央构建过程使用 Component Build Service (CBS)。CBS 构建 DC 及其依赖项,并提供即用型库和 面向开发人员和运行时系统的可部署对象。软件变更的过程 管理是自动化的。
-
景观管理可以通过以下方式完成:
-
变更管理服务 (CMS) 负责传输 环境中的软件,包括源代码和库。 最后,CMS 支持将可执行文件自动部署到中央测试中 服务器和生产系统。
- CMS 还可以与 CTS 集成,以使用 CTS 执行运输
-
通过将 CM Services 集成到 CTS 中,您可以管理 Java 传输 没有 CMS。请参阅使用 CM 服务。
-
配置步骤
要使用源文件的中央存储配置开发,您需要 自:
-
配置存储库服务器。
-
为 SAP NetWeaver Developer Studio 的所有实例配置存储库的客户端定义。
-
( 可选 )实施手动或自动流程 变更管理。
先决条件
-
已安装带有 NWDI 的 AS Java。
-
Developer Studio 安装在每台开发人员 PC 上。
开发步骤
有关更多信息,请参阅使用 西北 .
活动
下图仅对 CMS 有效。对于 CM Services,每个开发 configuration 表示一个开发系统。
定义开发环境
开发配置在整个过程中具有核心意义。 开发配置定义了开发人员对开发环境的看法。 该配置标识与 开发人员选择翻译和汇编 组件,配置构建服务并定义整个开发过程 对于某个软件。
如果使用 CMS,则有效:
当开发项目启动时,环境管理员最初使用 CMS 创建新轨道 。
轨道是 SC 的某个版本的单独生产线。
通常的轨道由两个通过变化连接的逻辑系统组成 增殖。第一个系统用于开发 (DEV),第二个系统用于 合并更改 (CONS)。请注意,您仍然可以创建单个系统 由单个 DEV 系统组成的 tracks。
每个逻辑系统都由一个开发配置描述,包括 存储库工作区、其自己的构建环境 (buildspace) 和 AS Java。
关于开发配置的更多信息,请参见开发 配置 。
发展
开发人员将开发配置导入到 Developer Studio 中。Developer Studio 提供了一个可用开发配置列表,即 在本地或从中央 SLD 服务器检索。
开发人员导入开发配置后,他或她可以下载 本地 Repository Server 中要处理的软件。然后他或她就可以开始了 以更改软件。Developer Studio 会自动检索 从构建服务器编译软件所需的已用 DC 库。 SLD 的名称服务用于保证 DC 内的唯一命名。
将更改签入存储库并成功测试后, Developer 激活这些更改。从 Developer Studio 向 CBS 发送生成请求会触发激活。CBS 尝试构建更改后的 DC。如果构建 成功,则更改将集成到另一个包含活动 软件的状态。按照此过程,活动工作区始终包含 由 CBS 成功建立的来源。
同时,可以自动部署构建服务器创建的新存档 分配给逻辑系统的 AS Java 进行测试。如果测试是 successful,则开发人员将发布用于 transport 的更改。
固结
仅对 CMS 有效。
CMS 通过将更改添加到导入队列中 轨道的整合系统。在某个时间点(例如每个 晚上、每周或每小时)系统管理员使用 CMS 导入 将更改排队到合并系统中。在此步骤中,更改的源 集成到合并系统的存储库工作区中,并且 build server 编译更改的 DC。导入到合并后 系统,则 Build Server 创建的存档将汇编到新版本的 软件,然后等待部署到充当 test 系统。
释放
部署和成功测试后,质量管理团队的一名成员 批准新的软件版本以进行生产使用。最后,新版本可以 部署到 Production 系统。
SAP NetWeaver开发基础设施架构
使用类型 Development Infrastructure (DI) 也称为 SAP NetWeaver Development Infrastructure (NWDI)。NWDI 为开发 应用程序在 SAP NetWeaver 平台上,并负责版本控制、构建 以及这些应用程序的生命周期管理。
NWDI 负责特定项目开发过程的所有部分 道路:
-
中央源文件管理 - 在 Design Time Repository (DTR) 中,一个文件 存储在数据库中,该数据库具有导出机制,允许您同步 分布式开发中的 DTR 实例。
-
中央构建和存档管理 - 在 Component Build Service (CBS) 中, 使开发人员能够访问中央数据库存储中的最新存档版本 以及由开发人员触发的中央构建。
-
(我们建议您使用 CM 服务而不是 CMS 来访问新环境。用 CMS 仅适用于已设置的 landscape,您不打算更改。请参阅使用 CM 服务)中央景观和交通管理 - in 变更管理服务 (CMS) 为管理员提供中央服务,以便 为所有开发任务设置开发环境并管理所有 传输进程。
NWDI 中的所有开发过程都基于 SAP 的组件模型,该模型 通过有关对象使用的元数据增强 Java 的公共/私有概念 在不暗示对开发对象本身进行任何更改的情况下:Java 接口 保持为接口,Public 类保持为 Public 类。通过明确定义 可见性和对象之间的依赖关系,组件模型可以帮助您 将应用程序构建为可重用的组件。根据此模型进行开发 在 Developer Studio 中实现。
您开发的应用程序被拆分为软件组件 (SC)( 安装单元)和开发组件 (DC)(它们正好位于 粒度,并包含所有开发对象以及上述 元数据)。
此外,开发是在所谓的轨道中进行的。轨道 abstraction 允许您为开发开发开发不同的维护上下文 软件的特定版本。该轨道还负责各个阶段 开发和整合以及从开始到结束的所有运输流程 应用程序部署到 Production 系统或交付给客户。在 这样,您可以更好地控制开发版本和确切的源代码 发展。
设计
下图显示了 NWDI 的主要组成部分和关系 在整个开发过程中,它们之间:
CMS 为新的 开发项目。通常,您开发的几乎所有内容都存储在数据库中。 获取与软件目录的数据库的连接,以跟踪 什么被开发出来。此外,还有用于自动部署的运行时系统 项目阶段。开发人员可以使用 Developer Studio 或 Workplace 访问它们。
管理员定义开发的开发环境。所有对象 最初可用 定义并集中提供。
应用程序开发人员根据 NWDI 定义和使用的零部件模型。他们开发应用程序 对象。一旦应用程序的源文件被 它们在本地开发和测试,并存储在 DTR 中。源由 CBS 的 CBS 是集中提供的,并部署在 中央应用程序服务器 Java (AS Java)。
SAP NetWeaver 开发人员工作室
Developer Studio 是 SAP 基于 Eclipse 的开发环境 Foundation 的 Eclipse 平台。凭借其全面的开发工具和 向导,它是开发和运行大型企业的强大环境 基于标准(Java EE、J2EE)和 SAP 专有(例如 Web Dynpro) 模型。从应用程序开发人员的角度来看,Developer Studio 还可以作为 NWDI 服务的接口,以促进大规模 开发项目。
Developer Studio 不是使用类型 DI 安装的一部分。NWDI 是 服务器端安装,可由多个 Developer 访问 制片厂。
设计时存储库
DTR 克服了基于文件的版本控制系统的许多限制,适用于所有 开发过程中所需的开发对象类型。Java 源, XML 文件等存储在数据库中,但它们仍然暴露给客户端 作为文件和文件夹,在 Developer Studio 中可见。我们克服的限制是 文件版本历史记录始终与文件一起传输,因此 我们可以通过简单的文件在存储库边界上同步不同的 DTR 运输。
每个文件或文件夹都有自己的版本历史记录。DTR 工作区允许您对 特定版本中用于特定目的的文件集(例如 开发、已交付版本的维护等)。
开发人员只需签出源文件或同步即可访问 DTR 文件进行读取访问。经过本地开发和测试, 他们检查他们的更改。DTR 管理分布式版本,并能够 在集成来自其他工作区的更改时解决版本冲突。
有关详细信息,请参阅 Design Time Repository Architecture 。
组件构建服务
CBS 负责构建存储在 DTR 中的源,并且是 中央构建环境。与其他中央构建不同,CBS 也是集中的 为所有开发人员托管并提供最新的存档和构建结果。 CBS 还在档案级别提供集成,即使对于那些 仍在开发中的对象。构建是基于组件的;如果构建 失败,则只有一个组件被延迟。所有其他组件将简单地使用最新的 有效(即已成功构建)版本。
与传统的构建工具相比,CBS 的目标是自动化 build 过程。也就是说,只有更改的文件,以及 文件,而不是构建所有源 抓。
这种增量构建概念大大减少了源代码更正 周期。此外,在 CBS 中,仅当公共部分 他们使用的 已更改。
有关更多信息,请参阅 组件构建服务架构 。
变更管理服务
变更管理服务 (CMS) 负责运输和设置 逻辑开发环境,然后传输软件更改 集中到开发环境中的各种系统或轨道。了解更多 有关 CMS 的信息,请参阅 中央景观和运输管理 。