Upload
elisabeth-shelton
View
226
Download
0
Tags:
Embed Size (px)
Citation preview
The Role of Large Scale Computing in Computer
Science Educationat Widener University
Dr. Suk-Chung Yoon and Noah PascarellDr. Suk-Chung Yoon and Noah Pascarell
Dept. of Computer ScienceDept. of Computer Science
Widener UniversityWidener University
Overview (Part I) What is “Large Scale Computing”? Capabilities of a Mainframe Viability of the Mainframe Why Teach Large Scale Computing ?
Mainframe Demand The World Depends on Mainframes
Hardware Chart Our Course
Objectives Topics
Why Learn COBOL? Format
Our Wiki
3
What is “Large Scale Computing”?
Developing “really big” applications
Focus on highly available, transaction processing systems
Using the “mainframe” as a server
4
Capabilities of a MainframeLarge-scale transaction processing (thousands of transactions per second)
Support thousands of users and application programs
Simultaneously accessing resources
Terabytes of information in databases
Large-bandwidth communications
5
Viability of the MainframeAre Mainframes Still Used?
Most Fortune 1000 companies 60% of all data available on the Internet is stored
on mainframes
There are more CICS transactions processed than Web pages served
6
Why Teach Large Scale Computing ?
Demographics – average age of a “mainframe programmer”…
Shortage of skill set
Key concepts that can be applicable across other platforms
7
Mainframe DemandMainframe Resources:
A growing issue for mainframe enterprises is the shrinking set of skilled staff to maintain the environment – Gartner 2004/2005.
Wanted: 20,000 IBM Mainframe Experts – InformationWeek, Aug 2005
8
The World Depends on Mainframes
Turn on a light Get a business loanMake a telephone call Process accounting
recordsUse your ATM card Control inventoriesPut money in a bank Process payrollRent a car Update personnel
recordsPurchase life insurance Control an assembly lineTravel Control a railroadSend a package Use corporate data
basesTrack in-transit packages
Run a government agencyTrade stocks Conduct international business/banking
9
What Would You Title This Chart?
10
• Understand key concepts required for large scale application development - which is independent of “mainframe” vs “distributed computing”
• Describe programs from an “Application Architecture” perspective
• Gain some real world insight into the application of “Computer Science” concepts
• Have something unique to discuss during a job interview...
Course Objectives
11
Course Objectives (continued)Be able to have an intelligent conversation with
respect to Large Scale Computing
Understand the differences when creating applications to run on a PC, traditional web-based applications and “really big” applications.
Become “fluent” in the TLAs/Buzzwords Understand Hype verses reality
12
Course Objectives (continued) Understand the mainframe - how it compares and contrasts to
distributed computing environments across concepts such as: Scalability, reliability, security, fault-tolerance,
transaction integrity, databases Gain experience doing application development using
mainframe programming tools & languages Explain how businesses make use of mainframes and outline
the major types of workloads for which mainframes are best-suited.
Understand the key principles behind transaction processing, and how mainframe technologies can provide robust transaction processing applications
13
1.System Architecture overview2.Introduction to COBOL and JCL3.Data: VSAM and Sequential Files 4.Application Architecture of transaction processing
systems5.Databases: Relational and hierarchical databases6.Using the mainframe as a “server” (MQ, HTTP, J2EE)7.Transaction Processing – CICS8.High Availability - Parallel Sysplex 9.Security – system security & security processes
Course Topics
14
Why Learn CobolMost mainframe programs are written in Cobol
Most applications are large (ex. 10,000,000 lines of code)
Cobol can be very efficient for certain types of applications
15
Course Format Lectures - Review key concepts - includes both applied (ex.
compile/link a program) and foundational topics (ex. security)
Labs - Focus on getting familiar with the mainframe environment
Online - helping to create/use our “Wiki”
16
Our Wiki Areas of the Wiki
Course info (ex. reading assignments, schedule, …) General mainframe computing info (ex. terms & abbreviations)
One contributes to the Wiki by editing (improving) the web pages, and as appropriate, contributing to the discussion on specific web pages
It is expected that students will be an active reader / contributor to our web site!
17
Our Wiki
Overview (Part II) Implementing a Large Scale Lab @ Widener
Conceptualization Contacting Marist College
Requirements Preparing the facility
Hardware Software
IBM: Master the Mainframe Challenge Creating the first lab assignment for the course
Taking the Large Scale Computing Course Reactions to the first lab assignment Course content
Conceptualization Conferred with Dr. Yoon and Dr. Saltz about the
layout of the course Lecture and lab held on the same day Need to construct a lab facility for the course Start to develop mainframe skills
IBM Contest
Held regular meetings bi-weekly Update advisors on status of project Delegated tasks to group members
Contacting Marist College Started e-mail correspondence with system
programmers Received requirements to connect with system z9
3270 terminal emulator Internet connection
Requested USERIDs for lab managers, instructors, and students
Continued communication with system programmers throughout lab construction phase
Preparing the Facility - Hardware New facility
Moved new computers into location
Crimped CAT-5 and connected machines to existing computer science network
Preparing the Facility - Software Machines dual boot
Linux/Widows Received a free unlimited
license to Vista tn3270 for educational use Runs in Windows
environment Configured Vista to
connect with the Marist Mainframe IP address
Created documentation Downloading/configuring
Vista From home or in lab
IBM: Master the Mainframe Challenge Participated in IBM’s contest in
Fall 2006 Completed two of three parts Gave an introduction to basic
MF skills as well as more advanced topics
Used the contest format to create the first lab assignments
Contest is held yearly, and is open to all college students
Received T-Shirts for completing part I
Creating the First Lab Assignment Modeled after part I “Breaking the Ice” of IBM’s
contest Adapted to our system Based on screenshots and instructions Divided into more manageable sections for the course Added two additional sections:
Allocating data sets Overview of COBOL and creating the students’ first
program
Reactions to the First Lab Assignment Students received USERIDs/passwords at the
beginning of the course Connection to Marist worked flawlessly Initial lab assignment spread out over first 3-4
weeks of class Overall lab was well accepted by students
“Extremely informative, and easy to follow.” - Student in Computer Science
Dr. Saltz felt that that our lab was a good introduction
Course Content Upper level technical elective content
Prerequisites: CSCI 151, 152, 247 Each topic was on average covered in a week
General mainframe background COBOL (several lectures) Different parts of large scale application development process
(requirements, design, testing, etc…) Mainframe capabilities Mainframe vs. other systems discussions
Overall coursework is both challenging and rewarding One of the few courses which gives direct insight into
current industry practices Credit Card Processing System
Conclusions Mainframe market is in
need of experienced employees
System is comparable to those used in industry
Allows for an introduction into large scale application development
Provides another programming language within curriculum
Opens the door to new opportunities
Relying on off-site (third party) hardware
More lab time is needed than other lab-courses
Challenging coursework