On 3/27/2017 7:52 AM, Dan Kalmar wrote:
Can anyone recommend a good tutorial for using SMP/E to package a new
product for distribution ?

Not so much a tutorial, but try "IBM, Standard Packaging Rules for z/OS-Based Products" here:
http://publibz.boulder.ibm.com/epubs/pdf/gimpkg80.pdf

Some personal thoughts on the process of packaging your software in SMP/E SYSMOD format: I assume one of the reasons you are asking is not so much because you (or your customers) think the initial install of your software in SMP/E format is very exciting, but rather because of the prospect of follow-on service in PTF format. Therefore, you must consider how you intend to supply parts/files later in PTFs before you create your initial FUNCTION SYSMOD.

In my opinion, most parts/files ("elements" in SMP/E terminology) are very simple to package and install. Things like procs, parmlib members, sample JCL, execs, ISPF panels, are all very simple to manage, package, and install, because they are just members of a partitioned data set that are copied and replaced by SMP/E. It is modules and load modules that cause the most grief.

Traditional z/OS software is SMP/E packaged using MOD elements to describe modules that get link edited during the APPLY to create load modules (load modules or program objects). It is link edit steps in JCLIN that tells SMP/E how to put the MODs together to create these load modules. This is all a very well grooved path, but, JCLIN and MODs can be a great pain, and I'd say the cause of most grief for packagers and installers.

You can greatly simplify you and your customers' efforts if you can avoid MODs and JCLIN altogether. That is, it is far simpler to package complete load modules using PROGRAM elements rather than as individual MODs with JCLIN. PROGRAM elements treat load modules as simple members of a partitioned data set that can be copied and replaced. No JCLIN is necessary and no link edit processing is performed by SMP/E.

To determine if you can successfully use PROGRAM elements you have to consider the contents of your load modules and how they are built. Do your load modules include any parts not supplied by you? For example, callable services from CSSLIB or SCEELKED? Modules from subsystems or other products, like SDSNLOAD or ISPLLIB? Side decks (IMPORT statements) to resolve DLL references? If so, then you may want to, or need to, package individual modules as MODs and supply JCLIN to define your load modules. Shucks. However, if your load modules are rather simple and include only modules that you own, then you should consider using PROGRAM elements in your SYSMOD packaging for your initial FUNCTION and subsequent PTFs.

Kurt Quackenbush -- IBM, SMP/E Development

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to