CIS393 01 Web Technologies & Systems – spring 2019

Contents

General Information

Instructor:

Jiang B. Liu, jiangbo@bradley.edu

Professor of Computer Science & Information Systems

Phone: (309)6772386

Lecture Times:

10:30am-11:45am, Mon Wed, Brd 180

Prerequisites:

            CIS 210 or CS 210 or equivalent; or consent of instructor.

Office Hours:
2:30-4:30pm Mon, Wed;  1:30-3:00pm Tue Thu at BR177

           Or by appointment.

Course Materials

Topics & Schedule

The goals of the course are to provide students with fundamentals of web design and development, client/server computing architectures, and to implement the basic web programming technologies. Emphasis will be on design, development, testing, and implementation of Web-based systems and technologies including related software, data exchange protocols, interfaces, and tools. The client/server programs will be coded in HTML/JavaScript, and CGI/Perl, PHP/MySQL, and tested in Apache HTTP Web server. Some examples of data analysis using Python will also be discussed in the class.
 

Unit 1 
Introduction to Web Programming

Internet and WWW
Web protocol: HTTP 
Client/Server Architecture (Web Servers, Database)
Web computing with HTML and CGI
Web Scripting with PHP
Web programming with JavaScript

HTML5, CSS, and Web 2.0

 

Learning outcomes:

- Understand the roles and responsibilities of clients and servers for web applications.

- Be able to select a range of tools that will ensure an efficient approach to implementing the web application.

- Understand basic HTTP protocol.

- Understand the Web 2.0 development.

Internet & WWW How to Program: Ch. 1-5, 17

Lecture Notes

Unit 2 
CGI Programming with Perl

CGI/Perl:
-CGI Basics

-Forms and CGI server
-Client side: HTML, Java Script

-Server side: Perl Program

-Security
-Sending Email -Data Persistence -Maintaining State -Search the Web server

 

Learning outcomes:

- Understand the basic operations of CGI and Apache Web server.

- Know basic Perl program structure, syntax, and control structures.

- Be able to design and build a simple interactive web-based application using XHTML and CGI/Perl.

Lecture Notes

Unit 3 
Ajax Client

JavaScript

-          Introduction

-          Control Statement

-          Functions

-          Array

-          Objects

-          Events

DOM and XML

Ajax-Enabled Applications

 

Learning outcomes:

- Understand the basic operations of Web Browser and client scripts.

- Know basic JavaScript program structure, syntax, and control structures.

- Be able to design and build a simple interactive web-based application using XHTML/JavaScript.

- Understand Ajax-enabled application development.

Internet & WWW How to Program: Ch. 6-16

Unit 4 
OO Programming with PHP

PHP:
- PHP Scripting Language
- PHP Data Structures 

- PHP Classes

- Querying Web Databases 

- Update Web Databases
- Session Management

- Security

- Reporting

 

Learning outcomes:

- Know how to implement a database-driven web site using PHP/MySQL.

- Know basic server script operations and PHP program structure, syntax, and control structures.

- Know how to create and access the MySQL database using PHP and SQL.

- Be able to design and build a simple interactive web-based application using PHP/MySQL.

Internet & WWW How to Program: Ch. 22-23

 

Lecture Notes

Unit 5 
Web Services

Web Services

-          Web Services Basics (XML, SOAP, WSDL)

-          Creating Web Service

-          Consuming Web Service

 

Learning outcomes:

- Understand Web Service basics.

- Know how to create, publish, and consume the web service.

- Knowledgeable of development of interactive client-server web applications using Web Service.

Internet & WWW How to Program: Ch. 22.

Unit 6

Data Analysis using Python

Set up Pythons Data Science Integrated Development Environment.

Acquire, Parse/Format, and Refine/Clean the data using Python

Develop the Data Models; Mine the Data using Python (Statistics Analysis, Regression Analysis, Classification, Logistic Regression Classification, Decision trees and random forests, and Neural Networks and Deep learning)

Lecture Notes.

Assignments

There will be three group project assignments. Each group (1-3 students) will share the same grade.

All assignments are due in the class on the due day.

Later homework will have 10% subtracted from the score for every late day.

 

Midterm Exam: (In class exam) Date will be available later.

Final Exam: (Online exam) Available at 12:00 noon on May 10 (Friday), 2019; Due on Sakai Drop Box before 12:00 noon on May 12 (Sunday), 2019.

Grading

- Assignments:                                    40%

- Class Lab Exercises             15%

- Midterm:                          15%

- Final Exam:                      30%

(90-100 A; 80-89 B; 70-79 C; 60-69 D; below 60 F)

Communication

The Sakai class web site will be used to post the class information.

You are also encouraged to post your questions and share related information with the class on the Sakai Forum.