The Future of the COBOL Programming Language Karl Schenk University of Wisconsin-Platteville Department of Computer Science and Software Engineering About Me Senior (Fifth Year) Majors: Computer Science (CIS) Business Administration (CS) Related Jobs UW-Platteville OIT – Lab Consultant John Deere Dubuque Works – Part Time Student Information Technology Topics Introduction What is COBOL? COBOL Structure COBOL History COBOL-2002 Object Oriented COBOL XML and COBOL Micro Focus and Net Express KOBOL COBOL and higher Education Employment Opportunities and COBOL Conclusion Introduction “I’ve coded in COBOL but never compiled” 150-200 Billion Lines of COBOL Up to 2 billion Lines added each year Most COBOL is used at large corporations and by government Topics Introduction What is COBOL? COBOL Structure COBOL History COBOL-2002 Object Oriented COBOL Micro Focus and Net Express KOBOL XML and COBOL COBOL and higher Education Employment Opportunities and COBOL Conclusion What is COBOL? Common Business Oriented Language Procedural Language Third Generation Language Compiled Language Most often used on Mainframes but is on PC’s too. What is COBOL? What is COBOL? What is COBOL? What is COBOL? Topics Introduction What is COBOL? COBOL Structure COBOL History COBOL-2002 Object Oriented COBOL XML and COBOL Micro Focus and Net Express KOBOL COBOL and higher Education Employment Opportunities and COBOL Conclusion COBOL Structure Hierarchical English-Like Add 1 to Counter Giving Counter 4 Divisions Identification, Environment, Data, and Procedure COBOL Structure Identification Division Program Name Other items like programmer and compile date should be comments Environment Division Describes the hardware the program is running on Briefly describes the data files COBOL Structure Data Division Defines all data Files and Working Storage Procedure Division Logic of the program Divided into Paragraphs COBOL Structure Code is restricted by columns 1-6 7 8-72 73-80 – – – Line numbers Comment area Margins A and B (code) Identification and labels Cobol Structure “Hello World” IDENTIFICATION DIVISION. Program-Id. Hello-World. ENVIRONMENT DIVISION. DATA DIVISION. PROCEDURE DIVISION. 100-PARAGRAPH. DISPLAY "Hello, world.". Stop Run. Topics Introduction What is COBOL? COBOL Structure COBOL History COBOL-2002 Object Oriented COBOL XML and COBOL Micro Focus and Net Express KOBOL COBOL and higher Education Employment Opportunities and COBOL Conclusion COBOL History 1959 Department of Defense wanted a universal Business Application Language CODASYL was formed 11 Government and 15 Commercial attendees COBOL History COBOL-61 ANSI/ISO Standards COBOL-65 COBOL-74 COBOL-85 COBOL-2002 Technical Reviews Topics Introduction What is COBOL? COBOL Structure COBOL History COBOL-2002 Object Oriented COBOL XML and COBOL Micro Focus and Net Express KOBOL COBOL and higher Education Employment Opportunities and COBOL Conclusion COBOL-2002 Topic Brief Description Margins A & B Restrictions on data placed in these margins will no longer be requirements, only recommendations Identification Division. Only paragraph permitted in this division will be the Identification Division. Name Lengths Increased from 30 to 60 characters Comments In-line comments will be allowed after a *> symbol Arithmetic Operators Spaces will not be required around operators Sort The SORT keyword can now be used on both tables and files Deletion of Files A DELETE statement will allow deletion of an entire file with only one instruction. Topics Introduction What is COBOL? COBOL Structure COBOL History COBOL-2002 Object Oriented COBOL XML and COBOL Micro Focus and Net Express KOBOL COBOL and higher Education Employment Opportunities and COBOL Conclusion Object Oriented COBOL “A programming paradigm in which a program is viewed as a collection of discrete objects that are self-contained collections of data structures and routines of an object.” Microsoft Computer Dictionary Object Oriented COBOL Requires 2 Programs Driver Trigger Object Oriented COBL Driver Program Registers the class Declares Object Reference dataitems Creates an object from the class Accesses a method from the class Cleans up memory Object Oriented COBOL Trigger Program Inheritance is described in Identification Level Classes are listed Data in the classes is described Methods are declared Each has data and procedures Object Oriented COBOL Passing and returning variables done thorough COBOL’s USING, GIVING, and RETURNING reserved words Topics Introduction What is COBOL? COBOL Structure COBOL History COBOL-2002 Object Oriented COBOL XML and COBOL Micro Focus and Net Express KOBOL COBOL and higher Education Employment Opportunities and COBOL Conclusion XML and COBOL XML Markup Language Used to make complicated output for web pages Developed by World Wide Web Consortium Technical Review for COBOL support of XML XML and COBOL Topic Brief Description Select Statement Allows for the data type and access mode to be XML; Also allows type of XML (DTD or Schema) to be specified, as well as version. Data Division IDENTIFIED and ATTRIBUTE keywords are added to help and parse XML tags; Vendors will most often supply utilities to easily convert most XML into COBOL standard XML Procedure Division Changes to the Read, Write, Open, Close, Delete, Rewrite, and Start commands are made to allow XML to be accessed and modified. Topics Introduction What is COBOL? COBOL Structure COBOL History COBOL-2002 Object Oriented COBOL XML and COBOL Micro Focus and Net Express KOBOL COBOL and higher Education Employment Opportunities and COBOL Conclusion Micro Foucus and Net Express Legacy System Development and Deployment Net Express Complete Development tool Micro Focus and Net Express Interfaces with Microsoft’s Visual Studio Integrated Development Environment (IDE) Allows for use of Web Forms and Win Forms Object Oriented and XML compatible Ability to use J#, VB.net, etc. along with legacy code Micro Focus and Net Express Topics Introduction What is COBOL? COBOL Structure COBOL History COBOL-2002 Object Oriented COBOL XML and COBOL Micro Focus and Net Express KOBOL COBOL and higher Education Employment Opportunities and COBOL Conclusion KOBOL theKompany.com Combines open source code into new, useful tools KOBOL IDE environment Allows for the creation of COBOL executables OO and XML compatible $59.95 per license!!! KOBOL Topics Introduction What is COBOL? COBOL Structure COBOL History COBOL-2002 Object Oriented COBOL XML and COBOL Micro Focus and Net Express KOBOL COBOL and higher Education Employment Opportunities and COBOL Conclusion COBOL and Higher Education University of Wisconsin-Platteville Introductory course: Computer Programming in COBOL 4 other classes Systems Analysis and Design Systems Design and Implementation CICS Application Programming Applications of Information Systems COBOL and Higher Education University of Wisconsin Madison University of Iowa No courses in COBOL Programming in COBOL (rotating class) Cal Poly Programming in COBOL COBOL and Higher Education Study of Business Managers CIS Majors should have a working knowledge of COBOL Because of the vast amount of code still being used Should have knowledge of both procedural and OO COBOL Topics Introduction What is COBOL? COBOL Structure COBOL History COBOL-2002 Object Oriented COBOL XML and COBOL Micro Focus and Net Express KOBOL COBOL and higher Education Employment Opportunities and COBOL Conclusion Employment Opportunities and COBOL Monster.com COBOL or Mainframe or Legacy System Limit to just Entry Level 6,000 Hits 62 Hits Large corporations often higher through internship programs so their jobs not listed Topics Introduction What is COBOL? COBOL Structure COBOL History COBOL-2002 Object Oriented COBOL XML and COBOL Micro Focus and Net Express KOBOL COBOL and higher Education Employment Opportunities and COBOL Conclusion Conclusion COBOL will continue to decline in its use Still viable because it has adapted Biggest reason it has a future is amount still running on legacy systems References [1] Bitter, Gary G. (Ed). (1992). MacMillan Encyclopedia of Computers. New York: MacMillan Publishing Company. [2] Khan, Mohammed B. (2003). COBOL. In Bidgoli, Hossein (Ed.). Encyclopedia of Information Systems Volume 1I (pp 113-126). New York: Academic Press. [4] Kizour, Ronald; Carr, Donald; & Halpern, Paul (2006). What Professionals think of the Future of COBOL? [Electronic Version]. Retrieved on October 19, 2006 from http://www.cobolportal.com/developer/future.asp?bhcp=1. [5] Narins, Brigham (Ed.). (2002) World of Computer Science. Detroti, MI: Gale Group Thomson Learning. [6] Micro Focus International PLC. (2006) Micro Focus Net Express Data Sheet. [Electronic Version]. Retrived October 19, 2006, from http://www.microfocus.com References [7] Reilly, Edwin D. (2003). Milestones in Computer Science and Information Technology. Westport, CT: Greenwood Press. [8] theKompany.com (2006). KOBOL Multi-platform IDE and Compiler for COBOL Development. Retrieved October 17, 2006, from http://www.theKompany.com/products/kobol [9] Stern, Nancy; Stern, Robert A. & Ley, James P (2003). COBOL for the 21st Century 10th Edition. New York: John Wiley & Sons, Inc. [10] Tauber, Barry. (2005). XML and the New COBOL [Electronic Version]. Retrieved October 19, 2006 from http://www.webservicessummit.com/Trends/COBOL_XML.htm [11] University of Wisconsin-Platteville (2006). Computer Science and Software Engineering Program Information [Electronic Version]. Retrieved October 19, 2006 from http://www.uwplatt.edu/csse [12] Woodcock, JoAnne (Sr. Contributer). (1994). Computer Dictionary Second Edition. Redmond, WA: Microsoft Press.