Fall 2007
Room:YR 401
Time: Tues., 7:00PM-9:40PM
Office: YR 425
Phone: 410 704 3090 (Email is preferred)
Email: hhochheiser@towson.edu
Office Hours: Tuesday, Thursday 1:0PM-2:00PM, Tuesday 6:00PM-7:00PM or by appointment. Please feel free to stop by my office: if I'm in, I'll try to make time to meet with you.
Textbooks:
- Required: Dave Thomas, et al. Agile Web Development with Rails, The Pragmatic Bookshelf.
- Supplemental:
- Dave Thomas, et al. Programming Ruby, The Pragmatic Bookshelf.
- Chris Pine Learn to Program, The Pragmatic Bookshelf.
Web Page: http://triton.towson.edu/~hhochhei/classes/fall07/617
Course Description:
The development of advanced web-based systems involves challenges in system architecutre, database design, user interfaces, security, and web services. This course will describe both the theoretical background behind these issues and the practical challenges of system implementation. The ruby on rails framework will be used for in-class demonstrations and for assignments. Comparable platforms such as the Java 2 Enterprise Edition. Readings from current research and professional publications will inform discussions. Projects and assignments will involve the implementation, use, and/or evaluation of advanced web-based systems.Course Organization:
Lectures will consist of some mix of demonstrations, lectures from the instructor, discussion, and class presentation. Each student will be expected to present at least one paper or topic during the semester. These presentations will be based on assigned readings, or on other relevant topics of your choice (subject to my approval). I will create a schedule and suggest/assign topics after the first class meeting.
As other students in the class will be expected to be prepared to comment on the papers as well, class participation is crucial.
A semester-long research project is the focus of this course. These projects may be done individually or in groups: a group of n students will be expected to do n times as much work as an individual. The project will involve the development of a database-driven web application.
A list of project ideas will be provided, but novel ideas are always welcome. Each project will include a proposal, a progress report, and a final paper, which will be a conference-quality research report. See the project page for more information.
The balance of the course will be a midterm exam, and a small number of homework assignments.
Please Note: This semester's instance of this course is likely to be substantically different from previous semesters. As much of this material has not been presented in its current form, course contents and schedule are subject to revision.
Policies:
- Attendance is a component in the grading of this class. I understand that there may be some instances where absences are unavoidable. However, if you are going to miss more than 2 class meetings, please speak to me as soon as possible.
- Participation is crucial: you will be expected to complete reading assignments and to be prepared to discuss them in class. I will reserve the right to call on students by name.
- All homework should be submitted electronically via email on the due date. Assignments should be in my inbox by 4PM on the due date. I will try to respond with email receipts. Late assignments will docked 15% per day of lateness.
- Your work should be easy to read: there are many papers to be graded and we do not have the time to decipher cryptic handwriting. If possible, type your work. Otherwise, please write neatly and clearly. In any case, please explain your answers clearly and succinctly. No credit will be given for answers that we cannot understand.
- The work you turn in must be your own. You can feel free to discuss assignment questions with others, and you may need to work in teams during lab times, but the written assignments that are turned in must be your own work. Cheating in any form - including copying someone else's work or letting your work be copied - is unacceptable at Towson University. Do not turn in work that has been copied from somebody else, do not let your work be copied. Anyone found cheating (on either side, copying or being copied) will receive an F for the course and a letter to the dean will be sent. Any incidents of cheating will be handled through appropriate administrative channels.
- Towson University does not post grades. The department office will not inform you about your grade after a course is completed since you can check your grades online.
- University policy states that students may not repeat a course more than once without prior permission of the Academic Standards Committee.
- Please don't use cell phones, pagers, laptops, etc. in class.
Evaluation:
- Class Participation and Paper Presentations: 20%.
- Homework: 20%.
- Midterm Exam: 25%.
- Project: 35%.
Grading Policy
| A: 93-100 | A-: 90-92.9 | |
| B+: 87-89.9 | B: 83-86.9 | B-: 80-82.9 |
| C+: 75-79.9 | C: 70-74.9 | |
| D+: 65-69.9 | D: 60-64.9 | |
| F: < 60 |
Syllabus:
- Introduction: Technologies, challenges, and goals
- Web Standards: HTML and CSS
- Model-View-Controller Architectures
- Agile Development
- Object-Relational Mapping
- Maintaining session state
- XML
- AJAX
- Web Services: REST, XML-RPC, SOAP, etc.
- Deployment
- Unit Testing
- Web Software Patterns
