CMPS183, Fall 2011, Section 01: Syllabus

Week 1: Pre-Web Hypertext Systems and Data Models, HTML

September 22:

  • Introduction / Course overview
    • Tutorial Overview
    • Project Overview
  • Goals of early hypertext systems (NLS/Augment, Xanadu).
  • Hypermedia concepts: intellectual work, link, anchor.
  • HTML Introduction
  • TO DO:


Week 2: Web engineering process, hypertext systems, WWW, HTML

September 27:

  • Tutorial: The selenium framework for web testing (Benjamin Ross, Erik Steggal)
  • Overview of Web Engineering process, Lifecyle Models / SD Approaches, Agile Development Process
  • Hypertext system types and trends: monolithic hypertext, open hypertext, adaptive hypertext, and spatial hypertext systems.
  • World Wide Web (WWW) and Web 2.0
  • HTML tutorial (continued), Q&A, advanced markup
  • TO DO:
    • Read: required readings for week 2
    • Continue on HTML tutorial to get a good overview of HTML tags and structure of a HTML document
    • Make sure team selection has been completed for both tutorial and project and send us finalized details by 9/28
    • Work on project scenarios this week. Deadline for turning those in is October 4 (Tue) in class. See 'Project' menu on the left for project scenarios, deliverables, and grading.
  • Due:
    • Selection of team for term project (need team name, students, name of project and abstract 2-3 sentences)
    • Selection of team and topic for tutorial presentation (need topic, students, and desired time slot)


Week 3: Designing Web Interaction.

  • HTTP Protocol, and details on GET, POST, and redirections. 
  • Page flow organization of a web site.
  • Web frameworks, and web2py as an example. 
  • The database backend.
  • Partial class slides.
  • TODO: Read the required readings for week 3.


Week 4: HTML Review, CodeIgniter, JavaScript

October 11:

  • Tutorial: JQuery. Binh Tran, Devin Carraway, Winston Kyu, Grey Skold
  • HTML review, HTML forms
  • CodeIgniter Overview
  • JavaScript Overview (Part I)
  • TO DO:
    • Read: required readings for week 4
    • Review project wiki and make sure summary of project is up to date
    • Homework #0: Create a HTML page and make use of HTML tags learned in week 1/2, submit HTML source to ecommons and provide URL to it, due by October 18 (Tue)
    • Homework #1: Do CodeIgniter tutorial and migrate HTML page from HW #0 into CodeIgniter framework. Submit source for controller and view to ecommons and provide URL to it, due by October 18 (Tue)
    • Work on project requirements this week. Deadline for turning those in is October 18 (Tue) in class. See 'Project' menu on the left for project requirements, deliverables, and grading.


October 13:

  • Tutorial: tortoise svn. Kenny Cox, Douglas Weller, and Vanessa Valencia.
  • Web Hosting Prep, Lab Homework #2
  • Project Requirements Gathering, Design
  • Prototyping
  • Web Application Frameworks
  • JavaScript Overview (Part II), Lab Homework #3
  • TO DO:
    • Read: continue required readings for week 4
    • Work on project requirements, due next Tue (10/18)
    • Work on Lab Homeworks, #0, #1 are due next Tue (10/18), #2, #3 are due next Thu (10/20)


Week 5: Javascript, some AJAX, jQuery


October 18: Javascript, JSON, jQuery, start of AJAX. Slides of lecture.  This was a quick introduction; next Tuesday we will do mainly examples with Javascript, JSON, jQuery, and AJAX.  

Required Readings:

Optional readings:

Week 6: Javascript (2), PHP Introduction, CSS


October 25: Project updates, Project topics, Homework feedback, Javascript Part (2), Introduction to PHP (1)

October 27: Project updates, Javascript (short review of for loops), Introduction to PHP (2), Introduction to CSS (1)

Introduced Lab Homework #4 and #5, due date is next Thursday 11/3 in class (see end of above lectures slides above for assignment details.)

Required / Optional Readings: see readings


Week 7: Databases, Database access in PHP / Python using Frameworks


November 1: Introduction to CSS (2), Database overview / review (1)

November 3: Database overview / review (2) - we then split up into two groups:

    - Group 1: PHP / Codeigniter: Database access using PHP, Use Codeigniter and PHP to access databases

    - Group 2: Python / Web2Py - Database access