Software:The Librarian (version control system)

From HandWiki
The Librarian
Other namesCA-Librarian, Librarian
Original author(s)Applied Data Research
Developer(s)
  • Computer Associates
  • Broadcom
Initial release1969; 55 years ago (1969)
Stable release
4.4 / 2010; 14 years ago (2010)
Operating system
  • OS/360 and successors
  • DOS/360 and successors
PlatformIBM mainframe
TypeRevision control
LicenseProprietary
Websitetechdocs.broadcom.com/us/en/ca-mainframe-software/devops/ca-librarian/4-4.html

The Librarian is a version control system and source code management software product originally developed by Applied Data Research for IBM mainframe computers. It was designed to supplant physical punched card decks as a way of maintaining programs, but kept a card model in terms of its interface. During the 1970s and 1980s it was in use at thousands of IBM mainframe installations and was one of the best-selling software products in the computer industry.

After Applied Data Research was acquired by Computer Associates in 1988, the product became known as CA-Librarian. After that company was acquired by Broadcom in 2018, the product became known simply as Librarian.

History

Most computer source programs in the 1960s were kept on punched cards, which was a problem due to the amount of physical space they took, the constant chance of card decks being dropped or otherwise damaged, and problems with keeping a history of changes to the program.[1][2] Even into the mid-to-late 1970s, when other forms of computer input emerged, the punched card deck was still the most important of these, and this was also true for the source code for computer programs themselves.[3][4][5]

During its early years, Applied Data Research (ADR) was developing Autoflow, a program for automatic flowcharting, which is often cited as one of the first commercial software applications.[6] The ADR staff wanted something to help manage the increasing size of the Autoflow source code base.[1] Martin Goetz, an ADR co-founder, had used the UNITYPER system during a prior employment with Sperry Rand.[1] This device wrote typed input onto a metal magnetic tape.[7] Goetz realized that source code did require punched cards, but could be kept in stable magnetic storage. A program called the Librarian was then built for in-house use.[1]

ADR employees realized that what was valuable to them would be valuable to others.[1] At first, Librarian was offered as part of ADR's Autoflow,[1] and other software packages.[8] This arrangement was in place by 1969.[8][9] At this point, Librarian master files were kept on magnetic tape. An advertisement that ADR ran in Datamation in 1970 related the story of being able to save Librarian tapes when a fire broke out, whereas it would have been impossible to save the equivalent amount of source code had they been in punched card file cabinets.[10]

Soon, ADR recognized that Librarian had a market of its own.[1] By 1971, advertisements were running for the Librarian in Computerworld that did not mention it in connection with any other ADR products.[11] A shift was made to Librarian master files being kept on mainframe disk drives, with ADR saying that data compression was used to keep disk drive usage to a minimum.[12]

"The Librarian ... took off very quickly. It was very well priced. Its practicality and its

functionality were obvious. Companies were not happy maintaining card decks and if you replace a card with another card there is absolutely no way of keeping track of it; so from an auditing perspective, forgetting about security, there was no way to maintain an audit trail of changes you made to a program. It was just sort of an obvious type of application, so we sold lots of systems. They were low priced and sold very quickly. It was always very

profitable for ADR."

—Martin Goetz in 2002[1]

The Librarian quickly found success in the market and began being used by a large number of installations.[13] The Librarian, along with Autoflow, became responsible for much of ADR's revenue and rapid growth as a company.[14] Per a survey that ADR conducted amongst its customers, use of the Librarian significantly increased programmer productivity, especially in the areas of ongoing maintenance and enhancement of existing applications.[13] Buoyed by this, ADR introduced other software packages in the category of programming tools.[14]

By 1973, the Librarian had garnered a spot in the Datapro Research Corporation's Software Honor Roll for the number of customers and associated satisfaction that the package had,[15] based on surveys conducted by Datapro.[16] It made the Honor Roll in subsequent years as well.[17] One 1979 analysis of software packages for IBM mainframe environments rated the Librarian as one of the few packages that excelled both in total number of installations and total amount of sales volume.[13]

According to sales figures given to International Computer Programs, Inc. (ICP),[16] by 1977, the Librarian was in use at some 3,300 sites – the most of any software package it was tracking – and had aggregate sales revenues over $10 million.[17] By 1979, that number had increased to 4,500 installations.[13] By 1982, ICP gave The Librarian an award for $50 million in total sales.[18]

In 1985, the Librarian was named by ICP as a recipient for the $100 Million Award, again reflecting lifetime aggregate sales. It was one of only a handful of system software products to reach that level.[19] This was followed in 1989, when ICP gave an award for $250 million in total sales for Librarian.[20]

Through much of its existence, Librarian's main competitor was the Panvalet product from Pansophic Systems.[15][16][21] It had roughly the same number of installations as the Librarian. According to Pansophic's founder, Joseph A. Piscopo, "Panvalet and Librarian basically divided the program library market between the two of them.... Virtually everyone ended up with one or the other of the products."[2]

Operation

Librarian listing of a source module, showing history and other attributes

The punched card was at the time the model for many kinds of computer input, including for those representing source code.[3] The Librarian works by interspersing its own control cards with the source program cards.[22] These could be physical cards, or later, lines in a file kept on disk and shown and edited on display terminals.

Librarian control cards began with a hyphen.[22] Some, such as -DESC, -PGMR, and -LANG, are used to provide basic identifying information about a Librarian module. For the language, some typical values are ASM for 370 Assembly language and CBL for COBOL.[23]

The Librarian uses sequence numbers in the source file. Traditionally these occured as columns 1–6 of a COBOL line (before the continuation indicator in column 7, area A starting in column 8 and area B starting in column 12),[4] or columns 73–80 of a 370 Assembly language line,[5] likewise columns 73–80 for FORTRAN,[24] and so forth. For example, on the Librarian -ADD control card, which adds a new source module to Librarian, the option SEQ=COBOL can indicate that the sequencing numbers to Librarian should match those normally used in COBOL programming.[23]

The main control cards used in modifying existing programs are -INS, -REP, and -DEL.[22] An example set of cards to update a COBOL program might be:

-REP 340
            RECORD CONTAINS 704 CHARACTERS
-INS 360
        01  PER-MASTER-REC.
            03  PER-MASTER-KEY.
                05  PER-MASTER-DIV              PIC XX.
                05  PER-MASTER-DEPT             PIC 999.
                05  PER-MASTER-JOB-CL           PIC 999.
                05  FILLER                      PIC XXX.
-REP 430
            03  FILLER                          PIC X(693).
-DEL 540,590
-REP 1470
              OR PER-MASTER-DIV GREATER THAN '94'.

The -INC control card can be used for including the source of another module into this one; as such, it serves as an extralinguistic feature for programming languages or kept data that do not have an include directive of any kind or for shops that prefer that the source configuration system do inclusions even for languages that did have such a directive. Librarian users have control over under which circumstances, or phase, any -INC statements would be expanded.[25] For instance, the inclusion will be done by a -SEL modname operation but not by a -PUNCH operation.[23] In practice, however, inclusion of this kind can also be done using language-specific constructs,[23] such as the COBOL COPY statement.[4]

While Librarian insert/replace/deletion operations were tractible for modifications to existing code, they were an awkward vehicle in which to write new programs, where large numbers of changes or refactorings would often take place.[26] One practice to work around this was to keep the program in a file in an online, interactive environment with a text editor, such as Source Program Maintenance Online running under CICS, that would be repeatedly submitted for batch compiles or assemblies. The file would be consist of something like:

...
// EXEC STRMLIB
-DLM modulename, pswd
-ADD modulename, pswd, [other options]
complete source code of program
// EXEC ASM/COBCL/whatever
...

In this way, the module under development could be edited within the online text editor rather than with Librarian control cards, but the latest iteration would still be preserved within Librarian between batch compiles. Once the program was in a working state, however, normal Librarian updates would be done in order to keep track of changes to the module.[23] Later, a workflow such as this could be done via the editor in the IBM ISPF facility.[27]

Releases

The Librarian went through a series of releases, both to add new functionality and to support changes in IBM mainframe environments. For instance, in 1976 a new release added support for the OS/VS1 and OS/VS2 operating systems.[28] Enhancements included such things as the LIB/AM interface, to make Librarian appear like a partitioned data set to certain programs and utilities.[29]

Release 3.4, made in 1985, added support for the more interactive VM/CMS operating system and ISPF environment, both at the CMS command line and in ISPF panels and menus and editors.[27] By 1986, the Librarian Release 3.5 was out, which introduced a Change Control Facility for greater management and awareness of the software development cycle.[21][30] Early 1988 saw the 3.7 release, which added the Change Control Facility to the CMS/ISPF environment [30] Release 3.8 of the Librarian came out later in 1988, just as the product was being acquired by Computer Associates, and added the Librarian/Change Control Facility functionality for the DOS/VSE platform.[31]

Later years

In 1988, ADR was acquired by Computer Associates (CA).[31] The product then became known as CA-Librarian.[32] CA made enhancements to some of its other products to integrate with CA-Librarian.[33] By 2003, Release 4.3 of CA-Librarian was available, and was billed as being part of CA's AllFusion product suite.[22] Release 4.4 of CA-Librarian seems to have come out in 2010.[34]

In 2018, Broadcom Inc. acquired CA Technologies, which Computer Associates had been renamed to.[35] After that, the product name reverted to simply Librarian,[36] although there would still be mentions of it as CA-Librarian.[37]

(As of 2023), the Librarian is part of Broadcom's Mainframe Software line, under a category for DevOps-related products.[36] Also (As of 2023), the current release of the Librarian remains at 4.4.[38]

The 2022 book Modern Mainframe Development, published by O'Reilly Media, lists CA Librarian as one of the source control systems still in use by mainframe developers, along with a few others such as IBM Software Configuration and Library Manager and ChangeMan ZMF from Micro Focus.[37]

See also

References

  1. 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 Goetz, Martin (May 3, 2002). "An Interview with Martin Goetz" (Interview). Interviewed by Jeffrey R. Yost. Washington, D.C.: Charles Babbage Institute, University of Minnesota. pp. 5–7. Retrieved May 26, 2023.
  2. 2.0 2.1 Piscipo, Joseph (May 3, 2002). "An Interview with Joseph Piscopo" (Interview). Interviewed by Thomas Haigh. Washington, D.C.: Charles Babbage Institute, University of Minnesota. pp. 3, 5, 12–13. Retrieved May 26, 2023.
  3. 3.0 3.1 Introduction to Data Processing. Boston: Houghton Mifflin Company. 1977. pp. 76, 116, 296. ISBN 0-395-20628-6. 
  4. 4.0 4.1 4.2 A Simplified Guide to Structured COBOL Programming. New York: John Wiley & Sons. 1976. pp. 6–9, 346–347. ISBN 0-471-58284-0. 
  5. 5.0 5.1 McQuillen, Kevin (1975). System/360–370 Assembler Language (OS). Fresno, California: Mike Murach & Associates. pp. 8, 56–59. 
  6. "In new case, Supreme Court revisits the question of software patents". The Washington Post. March 28, 2014. https://www.washingtonpost.com/business/in-new-case-supreme-court-revisits-the-question-of-software-patents/2014/03/28/a3da1c52-ad3a-11e3-9627-c65021d6d572_story.html. 
  7. "Unityper II, Data Entry Device for the Univac Computer". Smithsonian National Museum of American History. http://americanhistory.si.edu/collections/search/object/nmah_739255. 
  8. 8.0 8.1 "uncertain". Modern Data Systems 2 (uncertain): p. 102. 1969. https://books.google.com/books?id=bj1VAAAAMAAJ&q=%22applied+data+research%22+%22the+librarian%22&dq=%22applied+data+research%22+%22the+librarian%22&hl=en&newbks=1&newbks_redir=0&sa=X&ved=2ahUKEwisvKO2xbeAAxWFFVkFHasbDbAQ6AF6BAgKEAI. 
  9. "uncertain". Data Management 7 (uncertain): p. 4. 1969. https://www.google.com/search?q=%22applied+data+research%22+%22the+librarian%22&hl=en&source=lnt&tbs=cdr%3A1%2Ccd_min%3A1960%2Ccd_max%3A1969&tbm=bks. 
  10. "uncertain". Datamation 16 (uncertain): p. 5. 1970. https://books.google.com/books?id=kRlJAQAAIAAJ&q=%22applied+data+research%22+%22the+librarian%22&dq=%22applied+data+research%22+%22the+librarian%22&hl=en&newbks=1&newbks_redir=0&sa=X&ved=2ahUKEwjh_prw5biAAxV4kokEHW8iBx4Q6AF6BAgJEAI. 
  11. "The Librarian tells you where you are, where you're going, and what you've done... just in case you forget.". Computerworld: p. 3. December 1, 1971. https://books.google.com/books?id=Cm9SYrsdmpQC&pg=PA3&dq=%22applied+data+research%22+%22the+librarian%22&hl=en&sa=X&ved=2ahUKEwi_h5C-6LiAAxXID1kFHdBMC6kQ6AF6BAgKEAI#v=onepage&q=%22applied%20data%20research%22%20%22the%20librarian%22&f=false. 
  12. "The Librarian and MetaCOBOL from ADR ...". Computerworld: p. 3. September 20, 1976. https://books.google.com/books?id=MVkKFPuJBdkC&pg=PT2&dq=%22applied+data+research%22+%22the+librarian%22+%22disk%22&hl=en&sa=X&ved=2ahUKEwif8OjysMqAAxWJKFkFHW_WCUUQ6AF6BAgJEAI#v=onepage&q=%22applied%20data%20research%22%20%22the%20librarian%22%20%22disk%22&f=false. 
  13. 13.0 13.1 13.2 13.3 "The New Software Economics: Part 2". Computerworld: pp. 4–7 (In Depth). January 15, 1979. https://books.google.com/books?id=HnXc-0VvV4YC&pg=RA1-PA7&dq=%22the+librarian%22+%22applied+data+research%22+%223,300%22&hl=en&sa=X&ved=2ahUKEwj-n8m84r2AAxX8MlkFHeq0DKQQ6AF6BAgDEAI#v=onepage&q=%22the%20librarian%22%20%22applied%20data%20research%22%20%223%2C300%22&f=false. 
  14. 14.0 14.1 From Airline Reservations to Sonic the Hedgehog: A History of the Software Industry. MIT Press. 2003. p. 116. ISBN 0-262-03303-8. https://archive.org/details/fromairlinereser00mart_0/. 
  15. 15.0 15.1 "Packages Cited In Honor Roll". Computerworld: p. 11. August 29, 1973. https://books.google.com/books?id=RW84Vly7V8wC&dq=easytrieve+honor+roll&pg=PA11. 
  16. 16.0 16.1 16.2 "Software winners' ranks swelling". Computerworld: p. 2. March 27, 1978. https://books.google.com/books?id=azxRE2HtSRkC&pg=PA2. 
  17. 17.0 17.1 "New Ideas Sought to Bring Order to Package Surveys". Computerworld: p. 19. April 4, 1977. https://books.google.com/books?id=j816OdAgjpEC&pg=PA19&dq=%22the+librarian%22+%22applied+data+research%22+%22datapro%22&hl=en&sa=X&ved=2ahUKEwiXysXY272AAxUjFVkFHXG9DqoQ6AF6BAgMEAI#v=onepage&q=%22the%20librarian%22%20%22applied%20data%20research%22%20%22datapro%22&f=false. 
  18. "ICP Honors 342 Software Products". Computerworld: pp. 1, 10. April 5, 1982. https://books.google.com/books?id=wGVWGF8phaUC&pg=PA10&dq=%22the+librarian%22+%22applied+data+research%22+%22$10+million%22+%22sales%22&hl=en&sa=X&ved=2ahUKEwiGrvuYzruAAxVykYkEHW9FA1EQ6AF6BAgJEAI#v=onepage&q=%22the%20librarian%22%20%22applied%20data%20research%22%20%22%2410%20million%22%20%22sales%22&f=false. 
  19. "ICP gives awards to top-selling software tools". Computerworld: p. 11. April 22, 1985. https://books.google.com/books?id=97eagSKygYsC&pg=PA11&dq=%22the+librarian%22+%22applied+data+research%22+%22$10+million%22&hl=en&sa=X&ved=2ahUKEwjKzKL15L2AAxVPjIkEHcz1Bs4Q6AF6BAgKEAI#v=onepage&q=%22the%20librarian%22%20%22applied%20data%20research%22%20%22%2410%20million%22&f=false. 
  20. "The 18th Annual ICP Million Dollar Awards". Insurance Software Review: p. 15. June 1989. https://www.proquest.com/trade-journals/18th-annual-icp-million-dollar-awards/docview/229252239/se-2. 
  21. 21.0 21.1 "Tool manages source code". Computerworld: pp. 19, 22. June 16, 1986. https://books.google.com/books?id=Prl9-uRGaAgC&pg=PA19. 
  22. 22.0 22.1 22.2 22.3 "AllFusion CA-Librarian Batch Command Reference Guide 4.3". Computer Associates. 2003. pp. i, ii, 2-1, 2-3. https://ftpdocs.broadcom.com/cadocs/f0/f000112e.pdf. 
  23. 23.0 23.1 23.2 23.3 23.4 MSH EDP Experimental Resources Manual. New York: The Mount Sinai Medical Center. 1982. pp. 1-4, 1-7. 
  24. Blatt, John M. (1971). Introduction to FORTRAN IV Programming: Using the WATFOR/WATFIV Compilers. Pacific Palisades, California: Goodyear Publishing Company. p. 254. ISBN 0-87620-440-X. 
  25. "CA Librarian Members". Natural ISPF 8.2.8 User's Guide. Software AG. https://documentation.softwareag.com/natural/isp828/ug/ug-lib.htm. 
  26. "In Proceedings of the 2nd international conference on Software engineering (ICSE '76)". IEEE Computer Society Press. 1976. pp. 193–199. https://dl.acm.org/doi/10.5555/800253.807674. 
  27. 27.0 27.1 "Software & Services: System Software". Computerworld: pp. 66, 68, .... February 11, 1985. https://books.google.com/books?id=tBXQZbbSyeQC&pg=PA68&dq=%22applied+data+research%22+%22the+librarian%22&hl=en&sa=X&ved=2ahUKEwjjxrSN37mAAxVAEFkFHXpEAH04ChDoAXoECAwQAg#v=onepage&q=%22applied%20data%20research%22%20%22the%20librarian%22&f=false. 
  28. "'The Librarian' Now Available for IBM 360/370 VS users". Computerworld: p. 24. September 27, 1976. https://books.google.com/books?id=YjQZ-J-JM7cC&pg=PA24&dq=%22applied+data+research%22+%22the+librarian%22+release+history&hl=en&sa=X&ved=2ahUKEwjcma6ouMqAAxUwlYkEHVX5C8wQ6AF6BAgFEAI#v=onepage&q=%22applied%20data%20research%22%20%22the%20librarian%22%20release%20history&f=false. 
  29. "ADR Announces Translator Interface for OS/MVS Sites". Computerworld: p. 67. December 5, 1983. https://books.google.com/books?id=ujcQKXTiZeYC&pg=PA67&dq=%22the+librarian%22+%22applied+data+research%22+%22sites%22&hl=en&sa=X&ved=2ahUKEwiE4IXj-ceAAxUFlYkEHSqgAu8Q6AF6BAgIEAI#v=onepage&q=%22the%20librarian%22%20%22applied%20data%20research%22%20%22sites%22&f=false. 
  30. 30.0 30.1 "New Products: System Software". Computerworld: p. 29. February 15, 1988. https://books.google.com/books?id=TFES14SaHgMC&pg=PP29&dq=%22the+librarian%22+%22applied+data+research%22+%22sites%22&hl=en&sa=X&ved=2ahUKEwiE4IXj-ceAAxUFlYkEHSqgAu8Q6AF6BAgMEAI#v=onepage&q=%22the%20librarian%22%20%22applied%20data%20research%22%20%22sites%22&f=false. 
  31. 31.0 31.1 "Librarian in VSE upgrade". Computerworld: pp. 25, 30. October 3, 1988. https://books.google.com/books?id=Qu0sHMSJaj0C&pg=PP25&dq=%22the+librarian%22+%22applied+data+research%22&hl=en&sa=X&ved=2ahUKEwiu8-Wm_ceAAxWSl4kEHQHbAPw4ChDoAXoECAkQAg#v=onepage&q=%22the%20librarian%22%20%22applied%20data%20research%22&f=false. 
  32. "Computer Associates: News ...". Computerworld: p. 37. October 8, 1990. https://books.google.com/books?id=dPu-_QBrLB4C&pg=PA37&dq=%22computer+associates%22+%22CA-Librarian%22&hl=en&sa=X&ved=2ahUKEwjQlJu2t9SAAxX5kYkEHeHKBMYQ6AF6BAgFEAI#v=onepage&q=%22computer%20associates%22%20%22CA-Librarian%22&f=false. 
  33. See for instance "CA Enhances Diagnostics Solutions to Speed Troubleshooting of z/OS and OS/390 Applications" (Press release). PR Newswire. December 18, 2001 – via ProQuest.
  34. See published 2010 date for Release 4.4 in "CA Librarian®: Installation Guide r4.4". CA Technologies. 2010. pp. 1, 2. https://ftpdocs.broadcom.com/cadocs/0/CA%20Librarian%20%204%204-ENU/Bookshelf_Files/PDF/LIBR_r4.4--Installation%20Guide.pdf.  Compare to CA Librarian 4.3 being latest version integrated into CA Mainframe Software Manager as shown on slide 22, dated December 2009, in "Mainframe 2.0 Update". CA. April 14, 2010. https://www.zexpertenforum.ch/images/72/CA%20Mainframe%202%200%20update.pdf. 
  35. "Broadcom Inc. Completes Acquisition of CA Technologies" (Press release). Broadcom. November 5, 2018.
  36. 36.0 36.1 "Mainframe Software: DevOps". Broadcom Inc.. https://techdocs.broadcom.com/us/en/ca-mainframe-software/devops.html. 
  37. 37.0 37.1 Modern Mainframe Development: COBOL, Databases, and Next Generation Approaches. O'Reilly Media. 2022. p. 59. https://books.google.com/books?id=BZ1kEAAAQBAJ&pg=PA59&dq=%22CA-Librarian%22+source+programs&hl=en&newbks=1&newbks_redir=0&sa=X&ved=2ahUKEwj7jI2c1MuAAxVMEFkFHRT8DJcQ6AF6BAgJEAI#v=onepage&q=%22CA-Librarian%22%20source%20programs&f=false. 
  38. "Librarian 4.4". Broadcom Inc.. https://techdocs.broadcom.com/us/en/ca-mainframe-software/devops/ca-librarian/4-4.html. 

External links