SWE 642
Software Engineering for the World Wide Web

Spring Semester, 2011
Location: Innovation Hall 134
Time: Wed 7:20-10:00pm

Instructor    Overview    Textbook and Readings    Grading    Schedule    Academic Integrity

Professor: Dr. Vinod Dubey
Email: vdubey@gmu.edu
Class Hours: Wed 7:20-10:00, Innovation Hall 134
Prerequisite: SWE 619 and SWE Foundation material or (CS 540 and 571)
Office Hours: Anytime electronically, or by appointment
TA:Ayeswarya Anandan, aanandan@gmu.edu
Office Hours: Tuesday 5:00pm -- 7:00pm, Engineering Bldg. Room 4456


After completing the course, students will understand the concepts and have the knowledge of how web applications are designed and constructed. Students will be able to engineer high quality building blocks for web applications.

Detailed study of the engineering methods and technologies for building highly interactive web sites for e-commerce and other web-based applications. Engineering principles for building web sites that exhibit high reliability, usability, security, availability, scalability and maintainability are presented. Methods such as client-server programming, component-based software development, middleware, and reusable components are covered. After the course, students should be prepared to create software for large-scale web sites.

SWE 642 teaches some of the topics related to the exciting software development models that are used to support web and e-commerce applications. We will be studying the software design and development side of web applications, rather than the policy, business, or networking sides. An introductory level knowledge of HTML and Java is required. SWE 619 is a required prerequisite and SWE 632 is a good background course. The class will be very practical (how to build things) and require several small programming assignments.

The course content will focus on client-side and server-side software design and development. We will learn technologies such as HTML, JavaScripts, the J2EE platform, Integration of Servlets and JSP: The Model View Controller (MVC) Architecture, JDBC, XML, Ajax, and Web services (SOAP, RESTful) .


Textbook and Readings


There will be a midterm and a final exam, both in class. The final exam will focus on material covered after the midterm.

Several homework assignments will be given. I will post the assignments on the class web site or on Blackboard and discuss them in class. You will submit your solutions by placing links to the executables on your class web sites and submitting the source files through blackboard. Be sure that you are on the class mailing list, as refinements and hints for the assignments will be sent through email as well as posted on blackboard. 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.

Programs will be graded on style and formatting as well as correctness.

Unless arrangements are worked out in advance, missed tests cannot be made up, and 10 percent per class meeting will be deducted for late homework submissions. Under no circumstances will any assignment be accepted after the official end of classes (the start of finals week).

Grades will be (approximately): 30% the programming assignments, 30% the midterm, and 40% the final.

Schedule (subject to change; check regularly)

Week Date Lecture topic Readings Announcements
1 1/26 Snow Storm -- Class canceled  
2 2/02 Course overview;
Introduction to the Internet and World Wide Web
3 2/09 Intro to Web Software
  • Ch2.1-2.9, 3.1-3.6
4 2/16 Client-side Software ,
Cascading Style Sheets (CSS); Java for the Web, JavaScripts
  • Ch 4, Appendix B

5 2/23 Client-side Software ,
Java for the Web, JavaScripts, DOM
  • Ch 4, Appendix B

6 3/02 Web Data Management
  • Appendix C, Ch 7
7 3/09 Rich Internet Applications
  • Ch 1.7.6 - 1.7.7
8 3/16 Spring Break NO CLASS  
9 3/23 Midterm exam (7:20 pm - 10:00 pm)    
10 3/30 Server-side Software  
Java Servlets
  • Ch 6, Appendix A
11 4/06 Server-side Software
More about servlets
  • Ch 6 (cont.)

12 4/13 Web Data Management
  • Appendix C, Ch 7
13 4/20 Component-based SWE
Java Server Pages
14 4/27 Integration of Servlets and JSP
Implementing the Model View Controller (MVC) Architecture
  • TBD
15 5/04 Web services: SOAP and RESTful
  • TBD
16 5/11 Final exam (7:20 pm - 10:00 pm)    



Academic Integrity

George Mason's policy concerning student conduct applies.  Although students are encouraged to discuss the topics covered in class, all homework assignments, exams, and projects are to be completed individually, unless joint work is explicitly authorized by the instructor. 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.



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.