I remember the early days as an application programmer. At that time IMS was the leading database system and DB2 just came up and presented itself at the "second" database.
At that time it was quite usual to implement restartable DB2 batch solutions under IMS as an BMP: Files were created as a pseudo-GSAM database and – in case of a crash – are backouted and then restarted.
At that time this method was actually state of the art. Nowadays you rarely find IMS environments and IMS skills. But as I know its still IBM’s recommended way how to implement restartable DB2 batch applications – see DB2 10 for z/OS Applications Programmers Guide.
Otherwise you should consider 3rd party tools like BMC APPLICATION RESTART CONTROL for DB2 (AR / CTL for DB2) or Softbase’s Checkpoint Facility BHC321.