Syllabus Schedule Resources My home page
Success does not consist of never making mistakes,
but never making the same one the second time.
- George Bernard Shaw
This course is part of the ACS Software Engineering and the
minor in Software Engineering programs.
 

Design and Implementation of Software for the Web
SWE 432 Course Syllabus
Fall 2011

Professor:Jeff Offutt
Office:ENGR 4430, 703-993-1654, fax: 703-993-1710
Email:offutt ++++ gmu.edu
URL:http://www.cs.gmu.edu/~offutt/
Class Hours:Thursday 4:30 - 7:10, Innovation 204
Prerequisite:Math 125 and CS 211
Office Hours:Anytime electronically,Wed 2:30-4:00, or by appointment
TA:Sunitha Thummala, sthumma3@gmu.edu
Office Hours:Wednesdays 4:30-6:30, ENGR 4456 ENGR 5321
UTA:Harsha Bhambhani, hbhambha@gmu.edu

 

TEXTS:

OBJECTIVE:
This course teaches students how to develop high quality 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) to enterprise applications, the amount and complexity of software has steadily been increasing. This course will help students use new models of programming and new technologies to design and develop high quality, usable, web software.

LEARNING OUTCOMES:
  1. Knowledge of quantitative engineering principles for how to build software interfaces, including web-based, that are usable
  2. Understanding the client-server and message-passing computing models in the context of web applications
  3. Knowledge for how to build usable, secure and effective web applications
  4. Theoretical and practical knowledge about how data are stored and shared in web applications
  5. Component software development using specific technologies including PHP, Java servlets, Java Server Pages, Javascript, XML and JDBC
  6. Understanding that usability is more important than efficiency for almost all modern software projects, and often the primary factor that leads to product success

CONTENT & STUDENT RESPONSIBILITIES:
After completing this course, students should understand how to design usable software interfaces and implement them on the web, know how to build software that accepts information from users across the web and returns data to the user, and know how to interact with database engines to store and retrieve information. Specific technologies that are included are PHP, Java applets, Javascripts, Java servlets, and XML. SWE 432 covers 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 several small programming assignments.

READING:
I expect you to read the relevant material before lecture. The schedule for the readings are given on the schedule web page. The lectures may not cover everything in the readings and will often include material not found in the readings.

HOMEWORKS:
Some homework assignments will be written and some will require programming. Most will allow collaboration with one partner. Assignments will be posted on the class website before class and discussed in class. You will submit your solutions by placing them on your web sites and submitting the source files through blackboard. You should submit links to executable versions of programs, but may not post source files. Posting program source on your website will be considered an honor code violation! Be sure that you are on the class mailing list, as refinements and hints for the assignments will be sent through email or posted on the discussion boards. Homeworks must be submitted before class on the day they are due. Assignments will be checked immediately after the due date; if you finish an assignment late, you must inform us by email when it is ready for us to grade it. Changing an assignment after the due date without prior permission will be treated as a late submission.

QUIZZES:
We will have weekly quizzes and no midterm exam. Quizzes will be given during the first 15 minutes of each class and no makeup or late quizzes will be given. You are allowed to miss up to three quizzes (the lowest three quiz grades will be dropped). The 10 quizzes with the highest scores will be used to calculate the final grade.

LATE SUBMISSION:
Unless arrangements are worked out in advance, 10% per week will be deducted for late submissions. If you will be forced to miss class on the day something is due, let me know ahead of time by email or in writing. Per university policy, under no circumstances will any assignment be accepted after the official end of classes (the start of finals week).

DISCUSSION BOARD USE:
SWE 432 will use the Piazza software for a discussion board. Information for accessing our class will be provided on the first day of class. Participation on the discussion threads will count for 5% of your grade, which you can earn in several ways.
  1. Real-life software problems: Start a discussion about a problem with a real-life web application that is related to our class (usability, design, construction, etc.)
  2. Start a thread about an error in the book or slides, or about a topic that goes beyond what we discuss in class
  3. Post questions to an appropriate thread and they will be answered by your instructor, TA, or classmate (Basic questions are encouraged, but only "interesting" questions will earn credit)
  4. Be the first to give a correct answer to a classmate's question

IN-CLASS COMPUTERS AND COMMUNICATION:
Phone calls, text messages, instant messages, email, and general web surfing are not allowed during class time. Computers may only be used to follow the material in class. Violators will have their devices confiscated or asked to leave the room.

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 or authors, 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, and as a minimum, will result in failure of the submission and as a maximum, failure of the class.

DISABILITIES:
If you are a student with a disability and you need academic accommodations, please see me and contact the Disability Resource Center (DRC) at 993-2474. All academic accommodations must be arranged through the DRC.

OTHER USEFUL CAMPUS RESOURCES:
Writing Center: A114 Robinson Hall; (703) 993-1200; http://writingcenter.gmu.edu
University Libraries "Ask a Librarian": http://library.gmu.edu/mudge/IM/IMRef.html
Counseling and Psychological Services (CAPS): (703) 993-2380; http://caps.gmu.edu

GRADING POLICIES:
 
Top

© Jeff Offutt, 2001-2011, all rights reserved. This document is made available for use by GMU students of SWE 432. Copying, distribution or other use of this document without express permission of the author is forbidden. You may create links to pages in this web site, but may not copy all or part of the text without permission of the author.