CSC 415 Web Applications
Spring 2018

Course Description

CSC 415/515 Web Applications (3.00)
Development of web applications using various client-side and server-side web technologies on the Java EE and .NET platforms. Topics include: HTTP protocols, the Model-View-Controller design pattern, JavaScript, AJAX, Node.js and Express.js, Java Servlets, Java Server Pages, JSTL, ASP.NET MVC, JDBC and ADO.NET for database access, and web applications security. Extensive programming required. Students may not receive credit for both CSC 415 and 515.

Instructor Accessibility

My office is in Wentz Science Center 150. You can stop by in person, or call my office at 630-637-5174. Spring term office hours are Mondays, Wednesdays, Fridays 1:30-2:30 pm; Tuesdays and Thursdays 2:30-3:30 pm.

I can also see you by appointment.

Course Textbook

The course will cover many aspects of web application development, and there is no single textbook that come even close to covering the many topics related to web applications. However, JavaScript is becoming important enough in Web Development that every aspiring web developer should have a sound grasp of it, hence the following text book is required:

David Flanagan, JavaScript: The Definitive Guide, 2011

Course Outline

This weekly schedule is tentative and is subject to change as the term progresses.

Week Course Topics Reference
1 Introduction to Networks and Network Protocols, Socket programming, and the HTTP protocol.
2 HTTP method and headers; Clint-side technologies; HTML and CSS
3 Server-side programming using Java Servlets, and CGI technologies.
4 Java Servlets
4, 5 Software Design patterns, MVC, Request Dispatchers, Web listeners
6 Advanced Java EE programming; JSPs, JSTL and EL
7 JavaScript programming: programming the DOM Flanagan
8 AJAX, JQuery
9 Single Page Applications and RESTful services
10 Single Page Applications, Intro to ASP.NET

Schedule of In-class Quizzes and Tests

All tests and quizzes will be on Fridays unless otherwise announced.

Class Event Date Percent Weight
Quiz 1 Week 2 5%
Quiz 2 Week 3 5%
Test 1 Week 5 12.5%
Test 2 Week 8 12.5%
Final Exam Week 11 25%

In addition to the tests, there will be a number of homework/ programming assignments. These will account for 40% of the course grade. They will be designed to help you understand course concepts and prepare you for the in-class quizzes and tests. Some of the tests and quizzes may involve writing short programs based on the concepts covered in lectures and in the programming assignments.

Graduate Students

Graduate students will have an additional project. The student will select a course-related topic, investigate it, write an 8 - 10 page paper, and do a 20-30 minute oral presentation to the class.

Late Policy

All assignments and projects should be turned in by midnight on the day due. A 10% penalty will be assessed on projects turned in late, but in general this penalty will not be levied if the assignment is turned in before I have completed grading the batch of assignments to which it belongs. No assignment/project turned in after the due date for the next assignment/project will be graded. I will make an exception to this rule for students who have been coming to see me for help, where I judge that the student is reasonably close to getting the assignment or project done.

Policy on Missed Quizzes and Tests

In-class tests and quizzes missed without a legitimate excuse cannot be made up. If you have to miss quiz or test (for some legitimate reason) please let me know at least a week before and I will make arrangements for a make up. In the event some unexpected reason beyond your control prevents you from being in class on the day of a test, contact me as soon as possible by phone or email to arrange a make up.

Ethics Policy / Academic Dishonesty.

No student should turn in for grading work that has been done by someone else, or work on which they have received help but which they do not understand. Any work turned in by a student will be considered to have been plagiarized if the student can not explain it when requested to do so by the instructor. It will also be considered to have been plagiarized if there is clear evidence that the work has been copied from another source, even if the student can explain it.