CISC474: Advanced Web Technologies
Syllabus, Spring 2007
P. Conrad, CIS Dept., University of Delaware

Course CISC474 (Advanced Web Technologies)
Prerequisites

CISC220 (Data Structures)
CISC370 (Object Oriented Programming Using Java)

Co-requisite CISC437 (Database Systems)
Time/Place MWF 10:10-11am, Memorial Hall 110
Course Home Page http://www.udel.edu/CIS/474/pconrad
Instructor Office Smith Hall 414

Course Staff

  Name Email Web Site Office Hours
Instructor Phillip Conrad pconrad@udel.edu http://copland.udel.edu/~pconrad
TBA
Teaching Assistant

Oana Tudor

oanat@udel.edu TBA
TBA

ADA Accommodations: If you have a disability that requires special accommodation, please contact me by email (pconrad@udel.edu) or in person during office hours within the first week of classes.

Course Objectives

By the end of this course, you should have demonstrated that you can:

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, 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.

Nevertheless, there will be opportunities to learn about other technologies including JavaScript, PHP, Ruby on Rails, and XML/XSLT. We will not study proprietary technologies such as ASP and ColdFusion (here's why.).

This is a hands-on Problem Based Learning course,
not a lecture-based course.

You will find this course is structured differently from most CISC courses at UD. Although I will sometimes present lectures on course topics, that will be the exception rather than the rule.

What is more typical is this: you will be given a problem to solve—a real-world problem, or simulated real world problem— and you will work in teams to solve the problem. The solution to the problem might require you to build a particular kind of web site, and you'll need to learn the technologies that will enable you to do that. You will then have to call upon the resources at your disposal to learn what you need to know.

This is how learning takes place on the job, in the real world, and course in this format can better prepare you to be able to continue to do that kind of learning throughout your career. Unlike many real world scenarios though, in this course, you have a support system—the instructor, the TA, textbooks, homework assignments designed to build skills, and a community of learners, i.e. each other—all of these are here to support and help you in your learning journey.

If you want a course where you sit and listen to a lecture for 150 minutes each week where everything you need to know is spelled out for you, and you are told exactly what to do and how to do it, then you need to drop this course and add a different one to your schedule.

So the challenge is to develop your skills as an independent learner, working in an environment that is more like the "real-world" than most college courses:

BUT you have a support structure:

So, what happens during class time?

Well, first, I probably will present some lecture material each week—see the lecture notes calendar for more details. But most of the time, during class you'll be actively engaged in some structured activity. Some examples:

On other days, class time is an opportunity

If you have your own laptop with wireless internet access, you should bring it to class. If not, there are sixteen laptops available for the students in the class to share. Since I highly recommend the practice of pair programming that should be plenty—but know up front that you will not always have your own laptop to work on if you don't bring one.

Grading

Letter grades are determined by the following scale:

grade A A- B+ B- B C+ C C- D+ D- D
minimum score
93% 90% 87% 83% 80% 77% 73% 70% 67% 63% 60%

The final course letter grade is determined as the weighted average of four categories of types of assignment, plus an adjustment up or down based on class participation and peer evaluations:

Component Percentage Description Examples
ExamAvg 30% 2 midterms and one final exam, worth 10% each E01, E02, E03
HwkAvg 20% Individual assignments H01, H02, etc.
ProjAvg 20% group projects P01, P02, etc.
ChoiceAvg 30% mix of individual and group assignments, chosen by the student from a list of possible "choice assignments"
C01, C02, etc.
Particip -3% to +3% Adjustment up or down by up to 3 points—determined subjectively from attendance, participation in discussions, and most especially,
peer evaluations (where they are in agreement)

Choice Assignments

Thirty percent (30%) of your grade is determined by assignments that you can choose from a list of assignments (C01, C02, C03, etc.), worth a variety of point values and with a variety of due dates. You choose the assignments that look interesting, and you complete these. You need to accumulate enough points to get the grade that you want to earn in the class.

Sample points values needed for various letter grades (assuming other portions of the grade are at a similar level—you may need more or fewer depending on your performance on the exams and required assignments.

perfect score A A- B+ B- B C+ C C- D+ D- D
500 465 450 435 415 400 385 365 350 335 315 300

If you accumulate more than 500 points, up to 100 "extra points" can be transferred to other parts of your grade. You could use this mechanism to avoid having to take the final exam, for example, or to make up for poor performance on an earlier exam. Note two rules:

Class participation/Peer Evaluations

This portion of your grade is subjective, and is based on attendance, and peer evaluations from your group work. This has the potential to shift your final course grade up or down by up to one "plus/minus" letter grade (e.g. B+ to A-, or B+ to B.)

Policies

The main course policies can be summarized as follows. More detail is available on my course policy web page.

  1. Show up and be on time (for class and group meetings)
  2. Be honest (especially regarding academic honesty)
  3. Turn in work on time. If/when this fails, respect the late penalties.
  4. Respect people
  5. Report grade disputes in a timely fashion.

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 Bob Caviness, Paul Amer, Hal White, Terry Harvey, and others for giving me permission to adapt text from their syllabi for inclusion in this document.

Invitation: Please contact me by email, phone or during my office hours if you would like to discuss any aspect of the course; I welcome the opportunity to be of assistance