Source Program Maintenance Online II
   HOME

TheInfoList



OR:

Source Program Maintenance Online II (with abbreviations such as SPM, SPM/OL, or SPMOL-II, and pronounced "S-P-M" or, informally, "Spimoli"), is an
IBM International Business Machines Corporation (using the trademark IBM), nicknamed Big Blue, is an American Multinational corporation, multinational technology company headquartered in Armonk, New York, and present in over 175 countries. It is ...
software product of the late 1970s and early 1980s that provided an online environment for
computer programmer A programmer, computer programmer or coder is an author of computer source code someone with skill in computer programming. The professional titles ''software developer'' and ''software engineer'' are used for jobs that require a progr ...
s working on
IBM mainframe IBM mainframes are large computer systems produced by IBM since 1952. During the 1960s and 1970s, IBM dominated the computer market with the 7000 series and the later System/360, followed by the System/370. Current mainframe computers in IBM' ...
systems. It ran under the
CICS IBM CICS (Customer Information Control System) is a family of mixed-language application servers that provide online business transaction management, transaction management and connectivity for applications on IBM mainframe systems under z/OS ...
teleprocessing monitor and was used via an
IBM 3270 The IBM 3270 is a family of Block-oriented terminal, block oriented display and printer computer terminals introduced by IBM in 1971 and normally used to communicate with IBM mainframes. The 3270 was the successor to the IBM 2260 display ter ...
video display terminal. The basic purpose of SPM was to allow the creation and editing of
COBOL COBOL (; an acronym for "common business-oriented language") is a compiled English-like computer programming language designed for business use. It is an imperative, procedural, and, since 2002, object-oriented language. COBOL is primarily ...
or other programming language
source code In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer. Since a computer, at base, only ...
, and the submitting of those source programs for compilation, in an online fashion instead of using decks of
punched card A punched card (also punch card or punched-card) is a stiff paper-based medium used to store digital information via the presence or absence of holes in predefined positions. Developed over the 18th to 20th centuries, punched cards were widel ...
s. Source programs could be stored on disk under SPM and retrieved for editing and submitted as a batch job stream. Accordingly, SPM, as one IBM document stated, "Extends the power of a CICS on-line system to programmers and systems programmers via a 3270." In this way, programming productivity could be improved. In IBM's product hierarchy, SPM was a Field Developed Program. SPM was a popular choice for IBM mainframe sites seeking an online editing environment that were not running
MVS Multiple Virtual Storage, more commonly called MVS, is the most commonly used operating system on the System/370, System/390 and IBM Z IBM mainframe computers. IBM developed MVS, along with OS/VS1 and SVS, as a successor to OS/360. It is unr ...
/ TSO or
VM/CMS VM (often: VM/CMS) is a family of IBM virtual machine operating systems used on IBM mainframes System/370, System/390, zSeries, System z and compatible systems, including the Hercules emulator for personal computers. Design The heart o ...
.


History

The initial release of Source Program Maintenance Online was as field-developed program 5798-BDT. SPM itself was written in IBM 370 Assembly language. Source Program Maintenance Online II, released as field-developed program 5798-CFT, came out in late 1975. It was in this version that SPM would become best known. Among the improvements found in it were editing support for relative reference of locations, moving or copying blocks of code, and support for tab characters, and storage support for multiple datasets and compressed directories. By 1979, there was also an Audit and Archive feature with separate documentation. This feature kept a detailed list of changes made to programs held under SPM. It also supported selective restoration of programs from the archive.


Operation

At the highest level, SPM functionality was organized via CICS transaction four-character codes. The main editing operations were done under either SPIN or SPUD. A job status display was produced by SPMD. Output was viewed under either SPDO or RPDO. Source programs were kept in a dedicated library on disk. Within screens, SPM worked by using three-character editing commands. Submission for compilation involved SPM taking the program out of the operating system partition running CICS and inserting it, along with the necessary job control statements, into one of the other partitions assigned to batch programs. In some situations, output of programs could be sent back to the terminal, allowing some program examination or testing to take place. In other words, batch jobs could also serve as input to SPM. The JCL for normal output might be sent to SYSOUT=S, while special output might be sent to SYSOUT=R. In its basic use, the result of a compilation could be displayed at the terminal. This might be done by having a JCL catalogued procedure that did the compile-and-link action could be coded with error and warning messages going to SYSOUT=R, and then the SPM user could access them via the RPDO function. Other kinds of two-way interaction between batch and SPM was also possible. For instance, a member of a partitioned data set could be read out by a JCL procedure to SYSOUT=R, captured in SPM and edited, tested inline if the member could be associated with a submittable JCL wrapper, and then another JCL procedure could update the revised member back into the partitioned data set. Reports were available that listed the inventory of programs held under SPM. The reports covered the members and indices of the SPIN, HPIN, and PPIN libraries of SPM and could be broken out by programmer. SPM had facilities for backup and for updating. In particular, programs held under SPM could be archived to
magnetic tape Magnetic tape is a medium for magnetic storage made of a thin, magnetizable coating on a long, narrow strip of plastic film. It was developed in Germany in 1928, based on the earlier magnetic wire recording from Denmark. Devices that use magnetic ...
.


Uses

The core use of SPM was to make it easier for programmers to write and compile code and thereby improve programmer productivity. An
advertorial An advertorial is an advertisement in the form of editorial content. The term "advertorial" is a blend word, blend (see portmanteau) of the words "advertisement" and "editorial". Merriam-Webster dates the origin of the word to 1946. In printed pub ...
run by IBM in ''
Computerworld ''Computerworld'' (abbreviated as CW) is a computer magazine published since 1967 aimed at information technology (IT) and Business computing, business technology professionals. Original a print magazine, ''Computerworld'' published its final pr ...
'' in 1979 quoted a company in the food and drinks industry as saying that once their developers started using SPM, their productivity improved by 50 percent. Technical writers could also benefit, as SPM could be used to run the SCRIPT/VS text markup language formatter and view the output. While SPM had an auditing capability, many IBM mainframe sites used established, batch-oriented third-party software products such as The Librarian for keeping track of changes to programs. In this case, SPM could be used to create Librarian add, delete, and update statements around source code. This was awkward for initial development, however, and some sites used a hybrid approach of composing new programs using SPM as a full-program editor, but then switching to Librarian control statements for ongoing changes once the program had been put into production. But computer language processing did not have to be the only purpose of SPM use; it could also be employed in the context of application systems. One site used a modified version of SPM as part of an online data lookup facility. Another site used SPM as part of a data entry and display application. Some vendors made add-on utilities to SPM/OL, such as feeding input to a POWER reader queue. Other field-developed programs also existed in this space, such as capturing console messages from POWER in a DOS/VS environment.


Sales and popularity

Use of SPMOL-II was common enough by the late 1970s that IBM offered both extended support for it as well as a monthly payment plan. A survey taken by IDC in 1979 found that about half of all System/370 sites used some kind of on-line editing and submission product for program development. Of that half, those installations with high-end 370 models tended to be running the
MVS Multiple Virtual Storage, more commonly called MVS, is the most commonly used operating system on the System/370, System/390 and IBM Z IBM mainframe computers. IBM developed MVS, along with OS/VS1 and SVS, as a successor to OS/360. It is unr ...
operating system and be using the associated, interactive TSO environment for editing and program development, while those not at the high-end and running other operating systems, such as
OS/VS1 Operating System/Virtual Storage 1, or OS/VS1, is a discontinued IBM mainframe computer operating system designed to be run on IBM System/370 hardware. It was the successor to the Multiprogramming with a Fixed number of Tasks (MFT) option of Sys ...
, used a variety of products, including
VM/CMS VM (often: VM/CMS) is a family of IBM virtual machine operating systems used on IBM mainframes System/370, System/390, zSeries, System z and compatible systems, including the Hercules emulator for personal computers. Design The heart o ...
, SPM, and Roscoe. Overall, SPM's share of on-line editing and program development for 370 users was around 10 percent. The survey revealed that those sites with newer, larger IBM mainframes such as the IBM 303X series used SPM less often. SPM was popular enough that by the early 1980s, IBM had put out another field-developed program, called VM/CMS Library Maintenance and SPMOL-II Simulator, that emulated the line number-oriented aspects of SPM edit commands within the editor in the VM/CMS environment, in order, as IBM literature said, to "ease the transition for users moving from SPMOL-II to VM/CMS."


See also

* WYLBUR *
XEDIT XEDIT is a visual editor for VM (operating system), VM/CMS using block-oriented terminal, block mode IBM 3270 Computer terminal, terminals. (Line-mode terminals are also supported.) XEDIT is much more line-oriented than modern Personal compu ...
* VSPC * ATMS


References

{{reflist


External links


Discussion of SPM in Groups.io thread

Mention of SPMOL in "IT in the ’70s with Computer John" in Spiceworks Community
Text editors IBM mainframe software 1970s software