IBM Dependency Based Build overview

What is IBM Dependency Based Build

IBM Dependency Based Build (DBB) provides the capabilities to build traditional z/OS® applications that are developed in programming languages such as COBOL, PL/I, and Assembler as part of a modern DevOps pipeline. It provides a modern scripting-language-based automation capability that can be used on z/OS. DBB is a stand-alone product that does not require a specific source code manager or pipeline automation tool.

Usage scenarios

IBM Dependency Based Build provides the ability to run Apache Groovy on z/OS. You can run MVS™, TSO, or ISPF commands as part of the Groovy scripts. This gives engineers that are new to the platform a more familiar way to automate tasks. With DBB, engineers can use Groovy scripts that were written for other platforms in the z/OS pipeline.

The first and primary task that you can use DBB for is compiling and link-editing programs. For this DBB provides source code and load module dependency scanners to analyze the relationship between source files and binary files, as well as IBM Db2® database connection APIs to store the dependency information and build reports.

You can also use DBB to automate testing to be added to the pipeline, or any other system administration task that you might write JCL for.

DBB is normally used in an environment with Git and Jenkins or other continuous integration/continuous delivery coordinator.

Targeted personas

The primary personas for IBM Dependency Based Build are the build engineer and the z/OS developer.

Build engineer

The build engineer is the primary persona for DBB. The build engineer is responsible for creating the scripts, using the APIs, and setting up the build definitions. DBB provides samples to allow the build engineer to create what is necessary to build scripts for applications.

Developer

The developer is a second persona for DBB. The developer uses the scripts that are provided by the build engineer. DBB provides integration with IBM Developer for z/OS (IDz). It also provides sample build scripts that the release engineer can configure for developers that are developing directly on z/OS. Build reports help the developer understand what is built, what is included in the build, and what the output is.

Public Sample Repositories

IBM Dependency Based Build provides two public samples repositories:

  • DBB Community Repository provides samples on how to use DBB APIs when writing simple build scripts or pipeline stages such as deploying build outputs to artifact repositories.
  • DBB zAppBuild Repository is a robust generic build solution for building z/OS applications by using Apache Groovy build scripts and IBM Dependency Based Build (DBB) APIs.

These GitHub repositories are continually updated as new samples and capabilities are added. They are designed to be forked, customized, and cloned onto your z/OS Unix system for your own usage. You can bookmark and frequently visit the project home page for latest information on the samples.

How to download IBM Dependency Based Build

IBM Dependency Based Build is available as a stand-alone product or as a component of other products. You download DBB and the other products for an SMP/E installation in the following ways: - IBM Dependency Based Build stand-alone product (program number 5737-K80) from IBM Passport Advantage® - IBM Developer for z/OS Enterprise Edition (program number 5755-A05) from Shopz - IBM Z and Cloud Modernization Stack (program number 5900-A8N) from IBM Passport Advantage

Moreover, you can also download DBB as a trial version from Mainframe DEV. This version is a .tar archive file and the PTFs issued for DBB cannot be applied to it.