Case Studies in Programming and System Courses Donald K. Hsu Business Division, Dominican College Orangeburg, New York 10962, USA Abstract The years 2001, 2002, and 2003 experienced significant downsizing of the Information Technology (IT) industry. In 2004, outsourcing or off-shoring gave another blow to the IT job market. The future enrollment of computer science, computer information system, management information system majors might decrease. Most of us, the faculty who presented papers at the ISECON conferences, will have fewer students to teach if this trend persists. Our jobs may be on the line. How do we ensure the content we teach, will continue to be relevant to the need of the industry? This paper tries to provide answers by examining the use of case studies in Programming and System courses. Keywords: COBOL, C++, Java, Visual Basic, systems analysis and design Introduction Programming and System courses have been the focus of research for ISECON conferences in the past 20 years. In the 1980’s, many mathematics professors went back to school to get a Master’s degree in Computer Science, and then started teaching computer courses in their colleges/universities. They created the Mathematical and Computer Science departments by changing/modifying the mathematics curriculum. Students who major in Computer Science are required to take courses in abstract mathematics, Calculus, quantitative analysis, automata, and compiler design. None of these courses are easy to handle even the best mathematics professors teach them. As a result, many students studied computer science in the first year, but very few at the graduation. Every year, 1.1 million students graduate from the 4,000+ US colleges/universities. Only 1.5% (or 16,500) major in Computer Science, Information Systems and related areas. On the other hand, these computer graduates have had no problems getting jobs in the last 20 years. Lately, the story is quite different. Graduates are struggling to fine entry-level positions, with much lower pay than the previous years. Dominican College In Fall Semester of 1988, Dominican College enrolled 1,400 students when this author joined the Division of Business Administration as an Associate Professor in Computer Information Systems. The Business Division offers two Bachelor of Science programs in Information Technology, one in Computer Information Systems (CIS) and the other in Management Information Systems (MIS). As of the Fall Semester of 2004, the College student population is about 1,800 with 20 CIS majors and 70 MIS majors, representing 5%, higher than the national average (1.5%). The College is located 14 miles northwest of the New York City. The largest major is Business (29%). Other academic programs include Arts and Science, Education, Nursing, Occupational Therapy, Physical Therapy, and Social Science. Master degrees are offered in Education, Nursing, and Occupational Therapy. This author served as the Director of Business Administration Division, from 1990 to 1996. Starting in 1992, this author also taught courses in the International Management concentration, namely International Business, Global Marketing, International Finance, International Management and Manage Global E-Commerce Projects, (Hsu 1997, 2003, 2004). The requirements for CIS majors are: * Liberal Arts 60 credits, including Calculus I, Statistics * Business core 21 credits, including Accounting, Business Law, Economics, Management, etc * Any two programming courses in COBOL, C++, Java, or Visual Basic * One advanced programming course in COBOL, C++, Java or Visual Basic * Systems Analysis Design * Database Organization System * Software Development Project * Computer electives, 9 credits * Free electives, 12 credits The requirements for MIS majors are similar to CIS, except the students take computer electives in lieu of Calculus I, Database Organization System and Software Development Project. 1. COBOL and Advanced COBOL Programming Stern and Stern (2002) was used as the textbook. From 1988 to 1994, two COBOL compilers were used: one on the Digital Equipment Corporation (DEC) midrange system and one on the PC (Ryan McFarland, or RMCOBOL compiler). Students were able to compare the differences using two platforms. When DEC was acquired by Compaq, the COBOL compiler was no longer available. MicroFocus and Accu COBOL were tried with varied results. RMCOBOL is working fine, and is still being used today. Emphasis was placed on the real-world programming assignments: keyboard data input-output, reverse video output, conditional statement, mailing label, control breaks, etc. The COBOL courses were taught in day, evening and weekend. The Weekend College format, Friday and Saturday 2.5 hours, for 6 weekends of a total 30 hours, did not work out. Part of the reasons was that COBOL required much “hands-on” assistance. As the students did not meet for three weeks, the communication was lost. Most US colleges do not teach COBOL. However, the need is still here in NYC where MetLife Insurance, Orange and Rockland Utilities, Prudential Securities, Salomon Smith Barney, and Verizon continue to employ COBOL programmers (Dominican graduates) for maintenance jobs. 2. C++ and Advanced C++ Programming In 1993, this author taught the C Programming and C++ Programming courses to 27 and 25 engineers/scientists respectively, with Institute of Electrical and Electronics Engineers (IEEE) North Jersey Section. Borland C and C++ compilers, Turbo C compiler, and Microsoft C++ compiler were used. C++ compiler can be used for C programming but not the other way around, as a result, C programmers were replaced by C++ programmers. At Dun and Bradstreet, this author taught C programming and Assembly language programming courses to COBOL programmers in 1988. Teaching these professionals was different from teaching college students. Professional programmers knew a lot, demanded more and would criticize if the instructor did not provide practical and real-world examples. This author also taught C++ at Bergen Community College. At Dominican, C and C++ were taught to day students, evening students and accelerated evening adults (ACCEL). The ACCEL students are already working in the company, many in the IT field. Therefore, it has been very enjoyable to teach them. Deitel and Deitel (2003) was used as the textbook for both semesters. The textbook came with a student version of the Microsoft Visual C++ 6.0 compiler, which made it very easy for students to handle examples and exercises. For the Advanced C++ course, students were required to do case studies for their final projects. It consisted of a particular programming problem, a written paper and an oral presentation. A group project (two or more people) was assigned when the class size was large (12 or higher) and an individual project was given when the class size was small (less than 12). Students received the same group grade for the written paper, but different grade for the oral presentations. Some of the final projects completed were: Common Gateway Interface C++ Website, Dynamic Object Calculator with Hex Codes, and Electronic Shopping Cart Program. Each of these projects took 20 to 40 hours to complete. Students did excellent jobs. 3. Java and Advanced Java Programming Since 1999, these two courses were taught many times at: Baruch College, BlueData International, Computer Impact, IEEE, Netcom Information Technology, Xincon Technology in addition to Dominican College, (Hsu 2002, 2003, 2004). In the earlier years, Microsoft Visual Java 1.0 compiler was used. It did not work at all. After trials and errors, it was decided to do the free download directly from the Sun Microsystems website (2004). Using a cable modem, it took just a few minutes. It worked extremely well in the DOS format. For the Advanced Java course, the SunOne Studio compiler with a visual interface, was employed. It was also a free download from the same website. Commercial compilers such as Borland Java and Symantec Visual Cafe were not used due to the cost factors. IBM Visual Age compiler did not work at all. Horstmann and Cornell (2003) and Horstmann and Cornell (2002) were used as the textbooks. The books were very clear and easy to follow. For the Advanced Java course, topics outside of the textbooks: ASP/JSP, Corba, etc were covered. The completed final case studies were: Airline applets, Cold Fusion, Corba, Java Server Page, Investment applets, J2ME, Jini, WebLogic server, WebSphere server and XML. Students made presentations using PowerPoint slides and explained the Java codes in these group projects. Many of them obtained employment in IT industry. 4. Visual Basic Programming This author did not teach Visual Basic at Dominican, but at BlueData International, Computer Impact and Netcom Information Technology. Deitel Deitel and Nieto (1999) was used. The instructor manual in the Adobe PDF format, was excellent. It made it much easier to teach the coding in Visual Basic. Using the Microsoft Visual Basic 6.0 compiler, students could quickly compile the examples and exercises. Emphasis was placed on practical solutions using arrays, strings, dates and times. Final case studies were: game simulations, graphical user interfaces, and keyboard input output. One student who worked for Morgan Stanley, did a thorough case study explaining how to link different Microsoft Excel worksheets from different client portfolios (stock, bond, 401K, 529 program) using the Visual Basic Application (VBA) framework. VBA has been popular in New York law offices and financial firms. Most of the clerical jobs were done by using MS Word or MS Excel in these firms. The ability to use VBA to extend the capability of Word or Excel was extremely useful for their applications. As a result, many jobs exist in NYC law and finance firms for VBA programmers. 5. System Analysis Design This is the course that existed for the past 30 years. How do we make it more interesting? This course was taught at Dominican ACCEL program. Companies in which students were employed: Avon Products, Control Screening, ESPN/ABC Radio, HVAC Distributors, Intel Corp, LMS Engineers, Milano Services, Orange Rockland Utilities, PC Richard, TenderTouch Healthcare, Verizon Communications, Verizon Wireless, Volkswagen Credit, William Sonoma, Wyeth Labs, and Zoller Marine. Satzinger et al (2002) was used as the textbook. It contained many flowcharts and data flow diagrams. The theoretical coverage of the complete system was very clear. MS Visio software was employed to construct these charts and diagrams. MS Project 2003 was also used to explain concepts in Project Management: Critical Path Method (CPM), Statement of Work (SOW), Work Breakdown Structure (WBS), Gantt chart, importing data from MS Excel and exporting data to MS Word, (Hsu 2004). Final case studies presented: IBM DB2 WebSphere System, Intel ISMART Customer Information System, Oracle 9i Database System, PeopleSoft Purchase Order System, Sakroc Formula Management System, Siebel Customer Relationship Management System, and Sybase Adaptive Server Enterprise 12.5 System. The common thread of these case studies was Database System. Students used these database systems in their daily work. The presentations were excellent. 6. Database Organization System At Dominican, this author taught this course twice, using the book by Kroenke (2002). With the recent development of Oracle 9i, 10g, 11i, and the new book by Ricardo (2004), this course should be completely redesigned. This author has applied for a Sabbatical Leave in 2005 to accomplish the task. 7. Software Development Project At Dominican, this is a capstone course for the CIS major. It requires students to spend 120 hours in their senior year to work in companies as interns. The students are assigned to regular company jobs, in addition, will work on a software project that is useful for the company. A faculty mentor is selected, a contract is made and the student meets the faculty mentor on the regular basis to report progress. The final case studies completed were: Accounting Payroll System, Customer Support System, Healthcare Inventory System, MS Access Database Project, Networking at a Marketing Firm, PowerBuilder Textbook Inventory Database. Companies students interned: Materials Research Corp, Orange County Office, New York State Highway Authority, and Simon Shuster. 8. Computer Electives Three electives were taught: PC Applications for Managers (a course that deals with the advanced use of the MS Office tools), Telecommunications Networks (a course about the Telecom theories) and Unix Operating System. Cisco routers, Nortel fiber network, etc were not taught at Dominican due to the cost factors. At Bergen Community College, this author taught Programming Logic, a course that is similar to Systems Analysis Design at Dominican but very heavy on the set theory with all types of logic symbols, diagrams, tables and charts. It was a very difficult course for the students. Yet with the help of MS Visio and other tools, the students were able to grasp the ideas and did well. Dominican does not have a Unix system, the only way to teach Unix is to teach Linux, using either a RedHat or Mandrake Linux running on a PC. The Unix course was taught as an independent study. At Xincon Technology, this author taught a Unix class on the Sun Solaris Unix platform. Each student installed a different Linux operating system on an old IBM PC at home. By doing the installation, system testing and trouble shooting, students were able to complete final case studies on: Redhat Linux, Mandrake Linux, Suse Linux and Turbo Linux applications. The “hands-on” learning is vital in a course like Unix or Linux Operating System. CONCLUSION Programming and System courses were developed and taught at 9 organizations to 1,111 people since 1988. Some of them were foreign students that required other strategies, see Hsu (2003) and Table 1. Hands-on approach, in-class assignments, homework assignment using a working compiler, extensive internet search, final case studies, final oral presentations by team work or individuals, will have the best chance of success. Future courses are: Visual Basic, Visual C++ and C# (sharp) programming on the Microsoft Visual Studio .NET platform; Advanced Database System using Oracle 9i, 10g, 11i and Project Management using Microsoft Project Server. ACKNOWLEDGMENT This author thanks Clare Pennino and the faculty of Business Division of Dominican College for their encouragement. The faculty research grant and Sabbatical Award are appreciated. Thanks are given to: Paul Russo of Baruch College, Anita Verno of Bergen Community College, Jason Chen of BlueData International, Philp Yang of Computer Impact, Salvatore Minicozzi of Dun Bradstreet, Bhanu Chivakula of Institute Electrical Electronics Engineers, Russell Sarder of Netcom Information Technology, and Mike Guo at Xincon Technology, for the opportunity to teach and train their students/clients. This has been a very rewarding experience. REFERENCES Deitel, H. M, Deitel, P. J, and Nieto, T. R., 1999, “Visual Basic 6”, Prentice Hall, Upper Saddle River, NJ Deitel, H. M, and Deitel, P. J., 2003, “C++ How to Program”, 4th Edition, Prentice Hall, Upper Saddle River, NJ. Horstmann, C. S. and Cornell, G., 2002, “Core Java Volume II”, Prentice Hall, Upper Saddle River, NJ. Horstmann, C. S. and Cornell, G., 2003, “Core Java Volume I”, Prentice Hall, Upper Saddle River, NJ. Hsu, D. K, 1997, “Japanese Firms in the New York Tri-State Region: Trends in Managerial Styles”, in “Interactive Teaching and Learning, Wacra 14th International Conference proceedings”, edited by Hans E. Klein, Omni Press Inc, Madison, WI, December 15, pp. 577-584. Hsu, D. K., 2002, “Internet, HTML, JavaScript, Java Programming, Advanced Java Programming and Global E-Commerce Projects”, Proceedings of ISECON 2002 conference, ISSN 1542-7382, San Antonio, TX, November 4-7, #323a. Hsu, D. K., 2003, “Case Studies n Business, Finance, International Management and Marketing courses”, in “Interactive Teaching Learning in a Global Context”, edited by Hans Klein, Omni Press, Madison, WI, January 15, pp. 215-222. Hsu, D. K., 2003, “Hong Kong, Tokyo and Shanghai Triangular Economy”, Program Proceeding of the European Applied Research Conference, ISSN 1539-8757, Western Academic Press Inc, Littleton, CO, June 11, #267. Hsu, D. K., 2003, “Java and Advanced Java Projects”, Program Proceeding of the European Applied Research Conference, ISSN 1539-8757, Western Academic Press Inc, Littleton, CO, June 11, #182. Hsu, D. K., 2003, “Teaching Foreign Students in the USA”, Program CD-ROM of E-Learning Conference, Association for the Advancement of Computing in Education, Norfolk, VA, November 6, p. 1917. Hsu, D. K., 2004, “Java Unix Oracle vs C# MS SQL Server Access?”, Program Proceeding of the 29th Trenton Computer Festival, Raritan Center, Edison, NJ, May 4, p.11. Hsu, D. K., 2004, “Case Studies in Project Management, IT Project+, MS Project and Global E-Commerce Projects”, Program Proceeding of the European Applied Research Conference, ISSN 1539-8757, Ciber Research Institute, Littleton, CO, June 11, #142. Kroenke, D. M., 2002, “Database Processing”, Prentice Hall, Upper Saddle River, NJ. Ricardo, Catherine M., 2004, “Databases Illuminated”, Jones and Bartlett Publishers, Sudbury, MA. Satzinger, J. W., Jackson, R. B., and Burd, S. D., 2002, “Systems Analysis Design”, Course Technology, Cambridge, MA. Stern, N., Stern, R. A., and Ley, J. P., 2002, “COBOL”, 10th Edition, Wiley, New York, NY. Sun Microsystems 2004, http://www.javasoft.com. Table 1 IT courses taught by D. Hsu, 1988 – 2004 Organizations Cobol C C++ Java VB Sy De Soft P Logic Unix Total Baruch College*       34           34 Bergen Com Coll*     27         60   87 BlueData Intl*       8 5         13 Computer Impact*       20 12         32 Domincan Coll*** 346 114 92 133   21 9   5 720 Dun Bradstreet***   13               13 Inst Ele Ele Eng*   27 25 56           108 Netcom Inf Tech*     3 4 6         13 Xincon Tech*       83       8 91 Total 346 154 147 338 23 21 9 60 13 1111 *** Full time * Part time