Full HTML for

Basic foilset Introduction to Object Web Technologies (Internetics)

Given by Geoffrey C. Fox at Basic Information Track Computational Science Course CPS616 on Spring Semester 1998. Foils prepared 13 January 98
Outside Index Summary of Material


This Foilset contains introductory material on CPS616 course for spring 1998
Course Logistics
Overview of Field and Material covered and relation to other courses CPS606 CPS640 CPS714
Summary of Base Object Web and Relevant Technologies
This field is also called Internetics

Table of Contents for full HTML of Introduction to Object Web Technologies (Internetics)

Denote Foils where Image Critical
Denote Foils where HTML is sufficient

1 CPS616 Technologies of the Information Age Introductory Material http://www.npac.syr.edu/users/gcf/cps616master98
2 Abstract of CPS616-98 Introductory/Administrative Set
3 Overview of CPS Web/Information Technology Courses - I
4 Overview of CPS Web/Information Technology Courses - II
5 Course Details -- People and Grading - I
6 Course Details -- People and Grading - II
7 The NPAC Course Database
8 Some Course Prerequisites
9 Some Pluses and Minuses
10 Components of a Basic Web System
11 Where to learn What you Want!
12 Basic (CPS606) Structure of World Wide Web
13 The Current Web Client Server Model
14 3(Multi)-Tier Information System Architecture
15 An Object Web-based 3-Tier Computing System
16 Two Database Web Linkages
17 Two More 3 Tier Web Database Links
18 2 Tier and CORBA Models
19 Architecture of Web Software
20 Web Technologies in a Nutshell -- Java
21 Web Technologies in a Nutshell - JavaScript
22 Web Technologies in a Nutshell - PERL
23 Web Technologies in a Nutshell - Databases
24 Web Technologies in a Nutshell - VRML

Outside Index Summary of Material



HTML version of Basic Foils prepared 13 January 98

Foil 1 CPS616 Technologies of the Information Age Introductory Material http://www.npac.syr.edu/users/gcf/cps616master98

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
Instructor: Geoffrey Fox
teamed with Wojtek Furmanski, Meryem Ispirli, Nancy McCracken, Shrideep Pallickara, Tom Scavo
Syracuse University
NPAC
111 College Place
Syracuse NY 13244 4100
Phone: 3154432163

HTML version of Basic Foils prepared 13 January 98

Foil 2 Abstract of CPS616-98 Introductory/Administrative Set

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
This Foilset contains introductory material on CPS616 course for spring 1998
Course Logistics
Overview of Field and Material covered and relation to other courses CPS606 CPS640 CPS714
Summary of Base Object Web and Relevant Technologies
This field is also called Internetics

HTML version of Basic Foils prepared 13 January 98

Foil 3 Overview of CPS Web/Information Technology Courses - I

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
CPS606 Taught last semester is basic Java and Perl (CGI Scripts) and introduction to Web-linked databases with JDBC
CPS616 is critical leading edge software system and application building technologies including JavaScript, VRML, Advanced Java Capabilities, Full Web-linked Databases, Security, Object Web and Componentware
CPS714 is new and specialized topics and is set up as a mix of lectures and a project course
CPS640 is MultiMedia and Network Systems including digital video
CPS690 are introductory research projects with myself and NPAC staff

HTML version of Basic Foils prepared 13 January 98

Foil 4 Overview of CPS Web/Information Technology Courses - II

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
Courses CPS606 616 714 <--- HTML Java Web Technologies Web Systems <--
Material changes with time(<--) so that as new technologies added in CPS714, older and better understood ones are moved into CPS616 which itself hands technologies to CPS606!
  • Example: JDBC (Java Database Connectivity) will be taught in CPS606 this semester and not taught in next instance of CPS616. It will be covered this spring
  • Security and object/component technologies (such as Javabeans) were covered in CPS714 last fall and will be part of CPS616 this spring
  • Web Computing and Collaboration will stay in CPS714

HTML version of Basic Foils prepared 13 January 98

Foil 5 Course Details -- People and Grading - I

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
Instructor: Geoffrey Fox gcf@npac.syr.edu, Phone X2163, Room 3-131 CST
Reserve Instructor: Nancy McCracken njm@npac.syr.edu X4687, Room 3-234
Grader: Meryem Ispirli mispirli@npac.syr.edu, Room 3-221 Cubicle C (knock on door with WebWisdom Logo across from 3-226), Phone X9182
Material (Notes etc.) will be available from Tina Mucci tmmucci@npac.syr.edu, Phone X1722, Room 3-206
There are no special books as we are covering so much material and much is on the Web.

HTML version of Basic Foils prepared 13 January 98

Foil 6 Course Details -- People and Grading - II

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
All homework will be handled through the Web with dedicated Web and Database Servers set up for the class
  • NPAC will supply all necessary Databases and servers
  • Including Oracle, Cold Fusion, Lotus Notes, CORBA
Grade will be 35% based on project (last part of class) and 65% based on homework (set weekly in first 65% of class!)
Use University (or NPAC if you work there) clients to access Class material on the Web
There are a set of dedicated Pentium Pro PC machines running Windows NT/95 for aspects of class

HTML version of Basic Foils prepared 13 January 98

Foil 7 The NPAC Course Database

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
A Web linked database will manage course but this is NPAC's and not the University's and so
Our database only handles sign up for the Grading System in which the students will be able to see their grades and the comments the instructor/TA will make.
Our database is NOT an official course registration for the Office of the Registrar.
At the beginning of the semester all students should register through the Office of the Registrar first, and then sign up through the NPAC Grading System registration.
  • This is usually done after the first class.
At the end of the semester, all the students should check their final official grades through the Office of the Registrar, too.

HTML version of Basic Foils prepared 13 January 98

Foil 8 Some Course Prerequisites

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
We will assume Basic Web Browsing and HTML expertise and Java at the level of CPS606
You should be familiar with either PC or UNIX environment and program in at least one real language including Java
  • Perl will be useful but not essential
We will not assume any database knowledge and will in particular cover SQL and ODBC
No VRML or 3D Graphics expertise will be assumed

HTML version of Basic Foils prepared 13 January 98

Foil 9 Some Pluses and Minuses

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
This material will underlie all major new software systems built by modern companies and so you can get ahead by exploiting NPAC's unusually deep knowledge of it as we are engaged in many significant projects
  • Several successful students from these classes end with either good jobs in Universities, Industry and/or research assistantships with NPAC
  • NPAC emphasizes "deliverables" not research
I lead NPAC and am out of town some 40% of the time starting the end of January. Thus I miss many classes and others (usually Nancy McCracken) have to fill in.
This is plus and minus respectively of being at leading edge .....
If you register for class, you accept this "feature"

HTML version of Basic Foils prepared 13 January 98

Foil 10 Components of a Basic Web System

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
Host with Web Server
and attached CGI Script
in Perl or Java
Perhaps linking to a Backend
service such as a database
or digital video server
Host holds HTML files
typically stored in a
UNIX/Windows NT
file system but could also
be in a database such as
Oracle or Microsoft Access
Network trying to
provide Quality of
Service
and using
compression
to make better
use of available
bandwidth
Client with a Web
Browser displaying
"simple" HTML Text
and Images obtained
from host.
Client runs JavaScript
(from HTML documents)
and Java Interpreters
(acting on downloaded
JavaVM bytecodes)
Java and JavaScript
give general dynamic
behavior
Backend
Service

HTML version of Basic Foils prepared 13 January 98

Foil 11 Where to learn What you Want!

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
CPS606: HTML, Java and CGI SCripts with PERL
CPS640: Network Services, Multimedia Systems including Server and Client Digital Video
CPS616: Web-linked Databases (JDBC to Cold Fusion), JavaScript, VRML 2.0, Javabeans, Java Foundation classes, Java Frameworks, Java Web Servers, Servlets, Java2D and Java3D, RMI, CORBA, COM, ActiveX, Security, JDK1.2, Java IDL, JavaMedia, Lotus Notes
CPS714: Collaborative and Computing Technologies and whatever is on leading edge

HTML version of Basic Foils prepared 13 January 98

Foil 12 Basic (CPS606) Structure of World Wide Web

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
Browsers have SAME interface on ALL Computers
CGI Programs were originally usually written in PERL but can be essentially any Process and so do simulation, database access (this is JDBC), advanced document processing etc. Java (servlets) is of growing importance in Server Code
Browser
e.g. Netscape
or Microsoft
interpreting
HTML and
Java
Viewer and
helper
Applications
for MPEG, VRML
etc.
HTTP Web Server
(becoming Java)
HTML Documents
CGI Program
(e.g. PERL
becoming
Java)
MIME format with HTML etc.
(generalized email)
URL (location of
desired information)
Basic Services

HTML version of Basic Foils prepared 13 January 98

Foil 13 The Current Web Client Server Model

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
There are evolving/confusing/overlapping capabilities ...
Client
HTML Java
Javascript
User Multimedia
Viewer
Plug-Ins
Java C++ and other processes
Classic HTTP Server
LiveWire Interpreter
Java Server
General or Specialized
JDBC
Perl(5)
Java
CGI
JDBC
Servlets / Java Processes
Ora perl etc.
HTML(2D)
VRML(3D) JavaScript
embedded
in VRML/HTML
Java bytecodes
invoked
from Applet Tags

HTML version of Basic Foils prepared 13 January 98

Foil 14 3(Multi)-Tier Information System Architecture

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
Client runs custom software produced with components such as Visual Basic for PC's
and Web (Java Applets) These will merge
as Object Web
Application Server
runs custom software currently
produced in ad-hoc fashion but will adopt
Object Web
Technology approach
Critical
Generic Services such as databases
Specialized
Software

HTML version of Basic Foils prepared 13 January 98

Foil 15 An Object Web-based 3-Tier Computing System

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
Middle Tier
Web Server
Application Server
TP Server
Resource Management
Perl CGI Java Servlets ActiveX
DCOM RMI IIOP HTTP

HTML version of Basic Foils prepared 13 January 98

Foil 16 Two Database Web Linkages

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index

HTML version of Basic Foils prepared 13 January 98

Foil 17 Two More 3 Tier Web Database Links

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index

HTML version of Basic Foils prepared 13 January 98

Foil 18 2 Tier and CORBA Models

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
2 Tier Model

HTML version of Basic Foils prepared 13 January 98

Foil 19 Architecture of Web Software

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index

HTML version of Basic Foils prepared 13 January 98

Foil 20 Web Technologies in a Nutshell -- Java

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
Java -- Objected Oriented version of C/C++ supporting Interactive Distributed Computing. Original Web architecture (e.g. CGI) was server-side. Java allows design and Implementation of balanced Client Server Applications
Java likely to be a dominant software engineering and Scientific Computing language
This course will not discuss Java as a language but rather as a system building tool
Java will probably be preferred language for development of next generation general or custom Web servers and clients
  • NPAC's TANGO collaboratory built around a custom Java Tier-2 server
Java can build customized GUI's and graphics/image processing as in NPAC's Visible Human Viewer (won JARS award Dec 95) and Scivis visualization system.
New Java 1.1/1.2 have several enhancements including very many specialized API's
Javabeans are (visual) component model for Java applications

HTML version of Basic Foils prepared 13 January 98

Foil 21 Web Technologies in a Nutshell - JavaScript

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
JavaScript -- only superficially related to Java and was called LiveScript -- is Netscape's (somewhat supported by Microsoft) fully interpreted Client side extension of HTML. This is a good Client Window integration/customization technology where flexibility more important than performance
i.e. use JavaScript for Rapid Prototyping of Complex User Interfaces
  • Current examples use JavaScript together with frames ( HTML extension) for interactive multi-window technologies
  • JavaScript is roughly equivalent to "Abstract Windowing Toolkit/ Layout Manager" in Java but applied to Browser Frames and not Java windows
  • JavaScript cannot build filters or simulations as slow
Server side version of JavaScript called LiveWire runs on Netscape Servers

HTML version of Basic Foils prepared 13 January 98

Foil 22 Web Technologies in a Nutshell - PERL

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
PERL is a relatively old technology which is being overtaken by Java tidal wave.
Still PERL has significantly better Systems and Document handling capability than Java
  • Very good for UNIX as much easier than Shell for system scripts -- PC versions exist but not so well integrated into O/S
  • Wonderful regular expression handling
PERL is traditional but probably not best choice for server CGI extensions and development of filters
-- except for simpler cases involving text documents
PERL5 is object oriented but much less elegant (in my opinion) than Java
  • PERL5 has very useful multidimensional associative and regular arrays
PERL has well understood links to databases such as Oracle oraperl

HTML version of Basic Foils prepared 13 January 98

Foil 23 Web Technologies in a Nutshell - Databases

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
The Web provides a convenient integration environment for "mature" technologies migrating from existing computer environments.
Relational databases are a good example where it is now straightforward in Microsoft Access, Oracle, DB2, Informix, Sybase etc. to provide a Web Interface which can be used for data (mail, curricula material etc.) with Java/JavaScript/Forms based Interfaces
Object databases such as Illustra also interfaced to Web
Systems such as Cold Fusion provide convenient high level interfaces to Web-linked databases
Several excellent Java to Database packages becoming available with the JDBC standard based on ODBC -- more powerful but lower level than systems like Cold Fusion
CORBA will have good Web and Java Interfaces and we will discuss integration of Web CORBA and database technologies
  • CORBA views a database as a managed persistent object

HTML version of Basic Foils prepared 13 January 98

Foil 24 Web Technologies in a Nutshell - VRML

From Introduction to Object Web Technologies (Internetics) Basic Information Track Computational Science Course CPS616 -- Spring Semester 1998. *
Full HTML Index
VRML plays same role to 3D worlds that HTML does to documents
VRML 1.0 has been widely available and specifies static 3D scenes through which you can navigate. Already provides universal visualization environment and we have examples of use In Geographical Information Systems
  • Note can embed clickable URL's as with ImageMaps which can be used to annotate images to provide interactive educational resources
  • Unfortunately about a factor of 10 slower than it could be as this is serious as 3D graphics is compute intensive!
VRML 2.0 is now the standard with critical enhancements so that individual elements of 3D world are dynamic and can be programmed
  • It is designed to support full interactivity (televirtuality) with texture mapped video, avatars etc.
  • VRML 2.0 could require huge computing resources whether used as the virtual car-dealership / interactivity gaming or more academic uses such as collaboration between teachers and students in 3D virtual classroom
Bandwidth and computing needs of VRML are handicapping acceptance

© Northeast Parallel Architectures Center, Syracuse University, npac@npac.syr.edu

If you have any comments about this server, send e-mail to webmaster@npac.syr.edu.

Page produced by wwwfoil on Sat Apr 4 1998