Ucse514

Computer Science and Engineering

Central Institute of Technology Kokrajhar

Lecture Plan for Web and Internet Technology (UCSE514)

L-T-P: 3-0-0

Credits: 06

Class Teacher: Sanjib Narzary

TA Duty:

JTS Duty:

Course Page:

Course Overview

This course provides an introduction to web and internet technologies. It covers fundamental concepts like web browsers, servers, communication protocols, and web development languages.

Learning Objectives

  • Understand the basics of the internet and world wide web.
  • Gain knowledge of client-server computing architecture.
  • Learn markup languages like HTML, XML, and CSS.
  • Get familiar with client-side scripting languages like JavaScript and libraries like jQuery.
  • Explore server-side programming with technologies like PHP, JSP, and Java Servlets.
  • Understand web browser architecture and functionalities.
  • Learn about web security threats and solutions.

Lecture Schedule

Module 1: Web Basics and Overview (6 Lectures)

Lecture 1: Introduction to Internet & World Wide Web (https://en.wikipedia.org/wiki/Internet)

Lecture 2: Web Browsers and Servers PDF (https://en.wikipedia.org/wiki/Web_server)

Lecture 3: Internet Services and Web Services PDF (https://en.wikipedia.org/wiki/Web_service)

Lecture 4: Introduction to URLs and DNS (https://iana.org/) (https://www.iana.org/about/informational-booklet.pdf)

Lecture 5: Internet Communication Protocols (HTTP, FTP, SMTP, POP, MIME) (https://simple.wikipedia.org/wiki/Hypertext_Transfer_Protocol) (https://en.wikipedia.org/wiki/File_Transfer_Protocol) (https://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol) (https://simple.wikipedia.org/wiki/Post_Office_Protocol) (https://en.wikipedia.org/wiki/MIME)

Lecture 6: Email Privacy (PGP & PEM) (https://en.wikipedia.org/wiki/Encryption) (https://datatracker.ietf.org/wg/pem/about/)

Module 2: Client/Server Computing (6 Lectures)

Lecture 1: Introduction to Client/Server Computing (https://en.wikipedia.org/wiki/Client%E2%80%93server_model)

Lecture 2: Fat Client vs. Fat Server Architectures

Lecture 3: N-Tiered Software Architecture (https://en.wikipedia.org/?title=Three-tier_architecture&redirect=no)

Lecture 4: Middleware and its role (https://en.wikipedia.org/wiki/Middleware)

Lecture 5: Distributed Object Models (CORBA, DCOM, JRMI, EJB) (https://www.omg.org/spec/CORBA/1.1) (https://en.wikipedia.org/wiki/Distributed_Component_Object_Model) (https://docs.oracle.com/javase/7/docs/technotes/guides/rmi/) (https://docs.oracle.com/cd/E24329_01/web.1211/e24446/ejbs.htm)

Lecture 6: Case Studies on Client/Server Implementations

Module 3: Markup Languages and their Grammars (5 Lectures)

Lecture 1: Introduction to SGML (https://en.wikipedia.org/wiki/Standard_Generalized_Markup_Language)

Lecture 2: HTML and its elements (https://developer.mozilla.org/en-US/docs/Learn/HTML/Introduction_to_HTML/Getting_started)

Lecture 3: XHTML (https://www.w3.org/TR/xhtml1/)

Lecture 4: Introduction to XML and its applications (https://www.w3.org/XML/)

Lecture 5: Introduction to XSL, CSS, and DTDs (https://www.w3schools.com/xml/xsl_transformation.asp) (https://developer.mozilla.org/en-US/docs/Web/CSS) (https://en.wikipedia.org/wiki/Document_type_definition)

Module 4: Client-Side Programming (12 Lectures)

Lectures 1-4: HTML in detail - Structure, Tags, Attributes (https://developer.mozilla.org/en-US/docs/Learn/HTML/Introduction_to_HTML/Getting_started)

Lectures 5-7: CSS - Selectors, Properties, Positioning (https://developer.mozilla.org/en-US/docs/Web/CSS)

Lectures 8-10: JavaScript - Introduction, Syntax, Functions, DOM Manipulation (https://developer.mozilla.org/en-US/docs/Web/JavaScript)

Lectures 11-12: Introduction to AJAX and jQuery (https://en.wikipedia.org/wiki/Ajax_%28programming%29) (https://jquery.com/)

Module 5: Web Browser (6 Lectures)

Lecture 1: Web Browser Architecture (https://developer.mozilla.org/en-US/)

Lecture 2: Document Object Model (DOM) (https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model)

Lecture 3: DOM Tree and Render Tree Concepts

Lecture 4: Rendering Engine and its functionalities

Lecture 5: Case Studies on Browser Architectures (Mozilla Firefox, Google Chrome, Internet Explorer)

Lecture 6: Web Server Architecture (Focus on Apache)

Module 6: Web Security (5 Lectures)

Lecture 1: Introduction to Web Security Threats

Lecture 2: Firewalls and Proxy Servers (https://en.wikipedia.org/wiki/Firewall) (https://en.wikipedia.org/wiki/Proxy_server)

Lecture 3: Cryptography for Web Security (https://en.wikipedia.org/wiki/Cryptography)

Lecture 4: Digital Signatures and Certificates (https://en.wikipedia.org/wiki/Digital_signature) (https://en.wikipedia.org/wiki/X.509_certificate)

Lecture 5: Secure Communication Protocols (SSL, S-HTTP, SET, 3D Secure) (https://en.wikipedia.org/wiki/Secure_Sockets_Layer) (https://en.wikipedia.org/wiki/Secure_Hypertext_Transfer_Protocol) (https://en.wikipedia.org/wiki/Secure_Electronic_Transaction) (https://en.wikipedia.org/wiki/3-D_Secure)

Assessment

The course assessment can be a combination of: Mid-term exam Quizzes Practical assignments/projects Final exam

Lecture NumberTopicTotal Lecture HoursRemarks
1Introduction to Internet & World Wide Web 1
2Web Browsers and Servers1
3Internet Services and Web Services1
4Introduction to URLs and DNS1
5Internet Communication Protocols (HTTP, FTP, SMTP, POP, MIME)1
6Email Privacy (PGP & PEM) 1
Module 1: Web Basics and Overview6
7Introduction to Client/Server Computing1
8Fat Client vs. Fat Server Architectures1
9N-Tiered Software Architecture1
10Middleware and its role1
11Distributed Object Models (CORBA, DCOM, JRMI, EJB)1.5
12Case Studies on Client/Server Implementations1.5
Module 2: Client/Server Computing7
13Introduction to SGML0.5
14HTML and its elements1.5
15XHTML0.5
16Introduction to XML and its applications1
17Introduction to XSL, CSS, and DTDs1
Module 3: Markup Languages and their Grammars4.5
18HTML in detail - Structure, Tags, Attributes (Lecture 1)1
19HTML in detail - Structure, Tags, Attributes (Lecture 2)1
20HTML in detail - Structure, Tags, Attributes (Lecture 3)1
21HTML in detail - Structure, Tags, Attributes (Lecture 4)1
22CSS - Selectors, Properties, Positioning (Lecture 1)1
23CSS - Selectors, Properties, Positioning (Lecture 2)1
24CSS - Selectors, Properties, Positioning (Lecture 3)1
25JavaScript - Introduction, Syntax, Functions, DOM Manipulation (Lecture 1)1
26JavaScript - Introduction, Syntax, Functions, DOM Manipulation (Lecture 2)1
27JavaScript - Introduction, Syntax, Functions, DOM Manipulation (Lecture 3)1
28Introduction to AJAX and jQuery (Lecture 1)1
29Introduction to AJAX and jQuery (Lecture 2)1
Module 4: Client-Side Programming12
30Web Browser Architecture1
31Document Object Model (DOM)1
32DOM Tree and Render Tree Concepts1
33Rendering Engine and its functionalities1
34Case Studies on Browser Architectures (Mozilla Firefox, Google Chrome, Internet Explorer)1
35Web Server Architecture (Focus on Apache)1
Module 5: Web Browser6
36Introduction to Web Security Threats1
37Firewalls and Proxy Servers1
38Cryptography for Web Security1
39Digital Signatures and Certificates1
40Secure Communication Protocols (SSL, S-HTTP, SET, 3D Secure)1
Module 6: Web Security5
41Introduction to Web Security Threats1
42Firewalls and Proxy Servers1
43Cryptography for Web Security1
44Digital Signatures and Certificates1
45Secure Communication Protocols (SSL, S-HTTP, SET, 3D Secure)1
Total44.5

Prepared by: Sanjib Narzary

gd2md-html: xyzzy Mon Jul 22 2024