Syllabus - CISC 474, Spring 2008: Advanced Web Technologies
Lectures | Monday and Wednesday, 5:00PM - 6:15PM |
Prerequisites | CISC220 (Data Structures) and CISC370 (Object Oriented Programming Using Java) |
Corequisites | CISC437 (Database Systems) |
Course Home Page | http://www.udel.edu/CIS/474/sanmiguel/ |
Course Wiki | http://cisc474.fsanmiguel.com/Wiki |
Course Staff
Instructor | Frank San Miguel, sanmi@udel.edu, Office hours M, W 6:15pm-7:15pm at 047 Memorial Hall. |
Teaching Assistant | Diego Alejandro Alvarez, dalvarez@udel.edu, Office hours Wednesdays from 9:00 am to 11:00 am at 101A, Smith hall. |
ADA Accommodations: If you have a disability that requires special accommodation, please contact me by email (sanmi@udel.edu) or in person during office hours within the first week of classes.
Course Objective
By the end of this course, you should have demonstrated that you can:
- Implement high-quality web applications that serve dynamic content from a database to meet some "customer need".
- Develop web applications using: Java, JSP, HTML, CSS, Javascript, SQL
- Demonstrate an understanding of the "Model-View-Controller" design pattern.
- Understand the complexities of browser compatibility, network latency and HTTP caching.
- Understand basic security concerns with web applications
- Work within a test driven development process
- Work within a software configuration control process
- Articulate the benefits of using an Integrated Development Environment such as Eclipse
- Prepare yourself for learning new web technologies as they arise
- Articulate the trade-offs between various web development methodologies and technologies
There are a wide variety of technologies that we could use to achieve these objectives, including JSP, PHP, modPerl, ASP, Cold Fusion, Ruby on Rails, .Net and others. Our main focus will be Java Servlets. By choosing this technology as our focus, we can understand web applications in more depth than if we tried to survey all the various options.
There may be opportunities to learn about other technologies including Hibernate, Struts 2, Spring Framework, AJAX, SOAP, REST, Ruby on Rails, PHP, and XML/XSLT.
Grading
Percent of Total | |
Quizzes | 5 |
Two midterms | 20 |
Final Exam | 15 |
Homework | 23 |
Participation | 7 |
Projects | 30 |
Letter grades are determined by the following scale:
Grade | A | A- | B+ | B | B- | C+ | C | C- | D+ | D | D- |
Min Score (%) | 93 | 90 | 87 | 83 | 80 | 77 | 73 | 70 | 67 | 63 | 60 |
Class Participation
If you show up to every lecture and sit quietly and attentively, you can expect to get ONE out of seven possible points. To get seven points, answer questions, use your clicker when prompted, politely ask questions and participate in class discussions. If you are unable to do this because of extreme shyness, see me during office hours in the first two weeks of the semester.
Computing Facilities
- Project Number - The class project number is 2074.
- McKinly Lab - required for development with Eclipse unless you can install Eclipse and tomcat on your own computer.
- Class project server - cisc474.acad.ece.udel.edu
Computing Facilities
-
Show up for class
Class attendance is mandatory. Not all of the information I will cover is in the assigned text books.Three unexcused absences may constitute "irregular withdrawal", and the instructor reserves the right to assign a grade of Z at the end of the semester (which counts like an "F").
-
Be honest (especially regarding academic honesty)
There have been some questions regarding what behaviors are considered legal and helpful, and what behaviors are considered academic dishonesty. See the official policy at the UD website: http://www.udel.edu/stuguide/07-08/code.html. All violations of this policy will be handled according to referred to the Office of Judicial Affairs.In particular, the following are considered academic dishonesty in CISC classes. (Here "script" file refers to any kind of "transcript" or " log" of the result of a session or a computation)
- Submitting someone else's script file as if it were you own.
- Submitting something that is NOT a script file AS IF it were a script file (e.g. typing in results into emacs that "look like" the script file "would look"). For purposes of Computer Science, this is equivalent to "falsifying results" in a science class, and is a MOST serious violation of academic honesty.
- Editing a script file in any way with an intent to deceive.
-
Phone / IM / Texting / Email during class
Use of any form of mobile or network communication during class is not allowed. This includes (but is not limited to):- Text message
- Instant Message
- Phone call
-
Due dates are given with each assignment. Submission generally
includes both putting something on the web or in the SVN repository and submitting
something on WebCT.
Email submissions are not accepted unless you have been given advance permission by the TA and/or instructor.
Late penalties accrue from the applicable due date, at the rate described below. The clock ticks at 11:55pm each night.
Example: Assignment is worth 100 points, due by 11:55pm, 9/15. If the assignment is turned in late, here are the penalties that apply.
Date Late Days Points Subtracted 9/16 1 10 9/17 2 15 9/18 3 20 9/19 4 40 9/20 5 60 9/21 6 80 9/22 7 no credit Note that after 7 days, even if you do not get any credit for the assignment, you may still need to complete it if later assignments build on the previous ones.
-
Treat people with respect (especially your TA)
A certain degree of informality is acceptable as long as you don't forget that your TA is nevertheless in a position of authority. In the context of lab and office hours, you should interact with your TA with the same level of respect that you would show to me during lecture and office hours. -
Report grade disputes in a timely fashion.
If you have a question regarding how your TA has graded an assignment, or any other matter, take it to your TA first. If you are not happy with the response of the TA, you may bring the issue to your instructor. However, do not engage the TA in a debate about policy; in particular, do not engage in any loud or disrespectful conversation that would tend to disrupt the lab or office environment where other students are trying to work.
Disclaimer
Information in the syllabus is subject to change as the instructor sees fit, or as required by Departmental, College, or University policy, provided that reasonable notice is given to the class.
Acknowledgments
I am grateful to Phil Conrad and Terry Harvey for help in preparing this syllabus. In addition, I would like to acknowledge that some of the text and ideas on this syllabus have been adapted from work provided to Phil Conrad by Bob Caviness, Paul Amer, Hal White, Terry Harvey, and others.
Contact Information
My preferred method of contact is email or AIM. When discussing complex issues or problem solving, I prefer interactive communication like AIM, phone/skype or discussions in person. You may reach me during office hours through via AIM, email, skpye or phone.
Feel free to try to contact me outside of posted office hours any time between 9:00am and 6:00pm during the week, though I may not be available right away.