Syllabus Schedule Resources Updates

Design and Implementation of Software for the Web
SWE 432 Resources
Fall 2009

Professor: Paul Ammann
Office: Engineering 4428, 993-1660, fax: 993-1638
Email: pammann@gmu.edu
URL: cs.gmu.edu/~pammann
Class Hours: Thursday 4:30 - 7:10, Robinson A111
Prerequisite: Math 125 and CS 421
Office Hours: anytime electronically; Wednesday 7:15-8:15 (directly after my Wednesday class); by appointment

TEXTS:
  • Prioritizing Web Usability, Nielsen, New Riders Publishing, 2006, ISBN: 97800321350312.
    Amazon
    Direct Safari Link
    General Safari Link (off campus)
  • Programming the World Wide Web, Sebesta, Pearson, 2010, Fifth edition, ISBN: 9780136076636.
    Amazon
    Unfortunately, this title is not available through Safari. If you opt for a earlier, presumably cheaper, edition, you will get most of the material, with some glitches. I'll discuss this option in the first day of class. You may find a mapping from the 5th to the 4th edition useful.

OBJECTIVE:
This course teaches students how to develop software for web applications. The concepts of client-server computing, theories of usable graphical user interfaces, and models for web-based information retrieval and processing are covered. In the past few years, the way software is built has been rapidly changing. As use of the world wide web has shifted from information presentation to information gathering to direct customer sales (e-commerce) and to business-to-business e-commerce (b2b), the amount and complexity of software has steadily been increasing. At the same time, new models of programming and new technology for designing and developing the software has made this complex software easier to build. As a result, there are many opportunities for personnel that have a light background in Computer Science theory, but a solid level of knowledge of software and web-based technology. Thus, the topic of this course is of interest to and accessible to students in a wide variety of specializations.

CONTENT:
SWE 432 covers some of the topics related to the exciting new programming models that are used to support web and e-commerce applications. We will be studying the software design, interface design, and development side of web applications. Programming skills are required and students are expected to learn HTML on their own. The class will be very practical (how to build things) and require extensive small programming assignments.

Goals are to understand how to design usable software interfaces and implement them on the web, learn how to build software that accepts information from users across the web and returns data to the user, and understand how to interact with database engines to store and retrieve information. Topics included are web site usability, client side programming, server side programming, and web site management. Programming approaches include Java applets, CSS, PHP, Javascripts, Java servlets, JSP, XML, and JDBC.

READING:
We will read from the texts, various sources on the web, and transparencies that will be made available on the web site. The schedule for the readings are given on the schedule web page.

HOMEWORKS:
Weekly, relatively simple, homework assignments will be given. I will discuss each in class and make the assignment available on the class web site. You will submit your solutions by placing them on your web sites. Please also bring a paper copy of your homework to class. This will serve as a "token" for recording and subsequently verifying scores. Homeworks must be submitted before class on the day it is due. Late submissions are not accepted. (See the "Homework/Quiz Drop Policy" below).

QUIZZES:
Each class (except the first one) will begin with a short quiz. There are no makeup quizzes. (See the "Homework/Quiz Drop Policy" below).

HOMEWORK/QUIZ DROP POLICY:
The lowest three (3) homework scores and/or quiz scores are dropped. I anticipate 13 homeworks and 13 quizzes. Of these 26 scores, the top 23 count towards the final grade.

HONOR CODE STATEMENT:
As with all GMU courses, SWE 432 is governed by the GMU Honor Code. In this course, all assignments, exams, and project submissions carry with them an implicit statement that it is the sole work of the author, unless joint work is explicitly authorized. Help may be obtained from the instructor or other students to understand the description of the problem and any technology, but the solution, particularly the design portion, must be the student's own work. If joint work is authorized, all contributing students must be listed on the submission. Any deviation from this is considered an Honor Code violation. See the GMU Honor code for procedures in the case of a suspected violation.

GRADING POLICIES:
  • Homework (total 33%).
  • Quiz (total 33%).
  • Closed book, in-class, comprehensive final exam (34%).

UPDATES:
As the semester progresses, I post notices about changes to the course updates page.

GTA:
The GTA for this class is Raven Russell, who may be contacted at krusselc@gmu.edu. Raven has office hours Wednesday 5-7 and Thursday 11-1 in ENGR 4456. The GTA room may be subject to change; I suggest checking prior meeting.

ABET COURSE OUTCOMES
General Information on the CS Department's Preparation for the ABET visit of October 5-6, 2009.