April 5:
Course overview, goals of early hypertext systems (NLS/Augment, Xanadu). Hypermedia
concepts: intellectual work, link, anchor.
April 7 :
Hypertext system trends: monolithic hypertext, open hypertext, adaptive
hypertext, and spatial hypertext systems.
Architecture and key standards of the Web (URI, HTML, HTTP).
Read: Chapter
2 (Hypermedia) in Hypermedia and the Web
Read: Chapter 4 (Locations, Placements, and Interconnections) of From Web to Workplace
Due: Selection of teams for term project.
April 10:
Overview of Web Engineering, process for developing Web applications, elicitation
and refinement of requirements for Web Applications, prototyping.
Read: Chapter 7 ("Prototyping") of User-Centered Website Development
April 12:
Differences between requirements for traditional applications, and Web applications.
Read: Client Needs and the Design Process in Web Projects
Due: Term project proposal
April 14:
Introduction to Extensible Markup Language: history, structure, syntax, XML namespaces, DTD language
Read: Chapter 1 (Introducing XML), Chapter 2 (XML Fundamentals), and Chapter 3 (Document Type Definitions (DTDs) in XML in a Nutshell
April 17:
XML Parsing: Simple API for XML (SAX) XML
Read: Chapter 18 (Programming Models) and Chapter 20 (Simple API for
XML (SAX)) in
April 19:
XML parsing: Document Object Model (DOM) parsers
Read: Chapter 19 (Document Object Model (DOM)) in XML in a Nutshell
Due: Project scenarios document
April 19 (Laboratory):
Lab #1: SAX parsing
April 21:
Cascading Style Sheets (CSS)
Read: Chapter 13 (Cascading Style Sheets (CSS)) in XML in a Nutshell
Due: Lab assignment #1 (in class)
April 24:
Exam #1
April 26:
PHP
Read: Chapter 1 (PHP Crash Course) in PHP and MySQL Web Development
April 26 (Laboratory):
Lab #2: Cascading Style Sheets, and hands-on setup and execution of a simple PHP application
April 28:
Meet in class with your group to develop requirements document.
May 1:
Object-orientation in PHP
Read: Chapter 6 (Object-Oriented PHP) in PHP and MySQL Web Development
Due: Project requirements document
Due: Lab #2
May 3:
Form input in PHP
May 3 (Laboratory):
Lab #3: PHP form input
May 5:
Session management in PHP
Read: Chapter 20 (Using Session Control in PHP) of PHP and MySQL Web
Development
Due: Lab assignment #3 (in class)
May 8:
Information design
Read: Chatper 6 ("Navigation") of User-Centered Website Development
Read: Chapter 9 (Development Techniques) of Hypermedia and the Web
May 10:
Overview of HTTP, URI, URL, URN
Read: Sections 6.2 and 2.6 of Web Protocols and Practice
Read: Uniform Resource Identifiers (URI): Generic Syntax (read to the start of Section 1.6)
May 10 (Laboratory):
Lab #4: Session management in PHP
May 12:
HTTP Caching
Read: Chapter 3, (Web Proxies) of Web Protocols and Practice, pages 59-64 (through Section 3.3)
Due: Lab assignment #4 (in class)
May 15:
Database connectivity with PHP
Read: Chapter 10 (Accessing Your MySQL Database frm the Web with PHP)
in PHP and MySQL Web Development
Due: Project design document
May 17:
Web application security, SQL injection attacks
Read: SQL
Injection Attacks by Example
May 17 (Laboratory)
Lab #5: Creating pages with database content
May 21:
XPath
Read: Chapter 9 (XPath) in XML in a Nutshell
Due: Lab assignment #5
May 22:
XSLT, syntax, structure and execution order
Read: Chapter 8 (XSL Transformations) of XML in a Nutshell
May 24:
XSLT, modularity, built-in functions of XSLT/XPath
May 24 (Laboratory):
Hands-on execution of XSLT stylesheets
Lab #6: transforming XML documents using XSLT
May 26:
Exam #2
Due: Lab assignment #6
May 29:
No class, Memorial Day
May 31:
Overview of Web Services architecture, WSDL, SOAP data marshalling, SOAP in PHP
Read: Chapter 31 (Connecting to Web Services with XML and SOAP) in PHP and MySQL Web Development
May 31 (Laboratory):
Lab #7: Web service access using PHP and SOAP
June 2:
XForms Introduction
June 5:
XForms type checking and calculations
June 7:
Final project presentations
June 9:
Final project presentations
Due: Lab assignment #7
June 14:
Due: Final project notebook
Last modified: 6/5/2006