ICS 325 Web Design and
Implementation
Fall 2005
SYLLABUS
Class
Hours:
Tuesdays, 6:00 - 9:20
Midway, Room 101 (Lab M)
August 30 – December 6, 2005
Instructor: Sue
Fitzgerald, Ph.D.
E-mail: Sue.Fitzgerald@MetroState.edu
Web site: http://redhat.ics.metrostate.edu/~sue/courses
Phone: 651-793-1473
Fax: 651-793-1246
Support staff: 651-793-1471
Office Hours:
Mondays 1:00-6:00
Tuesdays
1:00-4:00 (office)
5:00-6:00 (Midway 101
classroom or Lab M)
Wednesdays 1:00-2:00
By
appointment
I
am usually available in my office in the afternoon
Required
PHP and MySQL Web Development by Luke Welling and Laura Thomson, Sams, 2005,
Third Edition. (with CD)
Designing
Data-Intensive Web Applications, by
Stefano Ceri, Piero Fraternali, Aldo Bongio, Marco Brambilla, Sara Comai, and Maristella Matera, Morgan
Kaufman, 2003. ISBN: 1-55860-843-5 (www.webml.org)
Course description:
This course focuses on how to design and
establish information services over the Internet from the server side. Topics
include advanced concepts and issues about Internet architecture, server-side
design strategies, current technologies, and Internet security. Through labs
and programming projects, students will learn how to use current scripting and
markup languages to build nontrivial state-of-the-art applications.
Prerequisites:
ICS 225 Web Design and Implementation
This course is required for CIS majors. It is a Group 2 elective for CS majors.
Competence Statement: Knows the
design principles and implementation practices of server-side web application
development well enough to select an appropriate solution approach, research
and learn new scripting languages and tools, and implement three-tier
applications.
Learning Outcomes:
·
Has the ability
to write programs using modern protocols and languages introduced in class.
·
Knows the
concepts and methodologies involved in server side web development.
·
Knows how to
develop and implement a three tier web application.
·
Knows the
procedure on how to build web based services over the Internet.
·
Understands
server side web design and development life cycles.
·
Knows how to
implement web security, and understands secure transactions.
Letter Grade: Your letter grade will be
determined based on the percentage of possible points that you earn during the
quarter. The following table relates the
percentage to a letter grade:
|
Percentage |
Grade |
|
94 - 100 |
A |
|
90 - 93 |
A- |
|
87 - 89 |
B+ |
|
84 - 86 |
B |
|
80 - 83 |
B- |
|
77 - 79 |
C+ |
|
74 - 76 |
C |
|
70 - 73 |
C- |
|
60 - 69 |
D |
|
Below 60 % |
F |
If you have selected the S/N
grading option, then to receive a satisfactory rating (S) you must earn at
least 70% of the possible points. If you
wish to elect S/N grading, you must inform the registrar before the second
class meeting. Bear in mind that you
must earn a C- or better (or an S) in order for a course to fulfill a
requirement or elective in your major.
Incompletes:
From time to time I am asked to consider assigning a grade of incomplete. A grade of incomplete may be considered if
the person requesting has successfully completed at two thirds of the class and
is a student in good standing in the class.
“Good standing” means that the requester is earning a minimum of a B
grade and has attended class regularly.
I reserve the right to say no to any request for an incomplete without
justifying my position.
Graded Assignments:
Points are allocated to
different learning activities as indicated in the table below. There may be some slight variation in the
number of assignments. So, the total
shown below is an approximation to the final number of possible points.
|
Description of Item |
Possible Points |
|
|
|
|
Midterm Exam |
75 |
|
Final Exam (not
comprehensive) |
75 |
|
Project #1 |
30 |
|
Project #2 |
50 |
|
Project #3 |
70 |
|
Project #4 |
100 |
|
Total |
400 |
Lab Assignments:
Two weekly lab assignments
will be handed out and discussed during each of the class sessions. Time to work on the lab assignments will be
set aside at the end of most class sessions.
This is an ideal time to learn new language features and to get
assistance from the instructor as needed. Although the labs are not required to
be completed, it is to your best interests to complete each lab as graded
projects will be based on the same materials. In addition, by completing
the weekly lab assignments, you will keep yourself from getting behind in the
class.
Lab Attendance: Lab attendance is not
required. As adult students, you know
best how to manage your time. That said, this is an ideal time to learn new language features and
to get assistance from the instructor as needed on your lab assignments and
graded projects. I strongly encourage
you to stay for the lab portion of the class.
Do not expect me to individually tutor you if you fail to show up for
the labs.
Projects:
·
Projects are due
on the designated dates.
·
For each
individual project, a report should be turned in on the due date. The format of
the report will be given with the project description sheet.
·
Reports should
be printed and turned in at the beginning of the class period. Note:
The report format varies from project to project.
·
If you cannot
attend that class, the projects must be emailed or faxed no later than midnight
on the due date in order to be considered as received on time. When mailing the projects, make sure to keep
a copy for yourself. Please try to avoid
emailing project reports – it is your responsibility to print your own reports. A 2% penalty will be assessed if I end up
printing your report.
·
A 10% per day
penalty will assessed on all late work.
·
No assignment
will be accepted more than one week past its assigned due date.
·
No work will be
accepted after the last scheduled class period.
·
For full credit,
please plan to finish your projects on time. Your cooperation is highly
appreciated.
·
It is a good
practice to keep all returned assignments in case of any grade disputes.
·
I strongly
recommend that you keep backup copies of all programs.
Tools:
·
The assignments
for this class will be implemented using the ICS departmental server
(redhat.ics.metrostate.edu). Only projects uploaded to the departmental
server will be graded. No exceptions.
·
You will be
assigned a user login id and password during the first class session. You are responsible for all web pages posted
via your account. Protect your files –
change and REMEMBER your password.
·
You can logon to
the server and/or upload files using the Secure Shell file transfer software.
·
Secure Shell is
installed and available in all
·
In addition, you
will need web browser software such as Firefox, Internet
Explorer or Netscape Navigator. All are
installed in the Metro State computer labs.
Be sure to indicate in your project report which browser you normally
use.
·
The course will
use XHTML, JavaScript and PHP scripting languages as well as the MySQL database software.
XML will be introduced, time permitting.
·
The scripting
languages can be written using any text editor.
·
The MySQL database software will be available on the
cs.metrostate.edu server.
No Makeup Tests: No makeup tests will be
offered. If you miss the midterm, the final
exam will be doubly counted in order to replace the missed test. You must inform me of your valid reason for
missing the test no later than one day following the midterm.
I strongly believe that all
students should take the final exam at the designated time. This helps to ensure that all students are
tested in a uniform manner. If you do
convince me to write a separate final exam for you, it may be more difficult than
the exam given to the rest of the class.
I reserve the right to refuse to give you a makeup final exam.
Missing Class: If for any reason you need to miss a
class, please let the instructor know beforehand whenever possible. You can
have a classmate pick up materials for you or you can download most handouts
from the class website. Please make arrangements to borrow or copy a
classmate’s notes from that session.
Late assignment penalties will apply whether you attend class or not.
Expectations: Sometimes difficulties arise when the
expectations of students and teachers are different. Here is a brief summary of what I expect from
you AND a summary of what you can expect from me.
What you can expect from me:
·
I will share my
technical knowledge with you as effectively as I know how.
·
I will grade
your work and return it quickly. In most
cases I will grade your work and return it to you at the next scheduled class
period (but not before). Occasionally I
will take two class periods to return your work.
·
I will provide
you with written feedback on the quality of your work. If you do not understand why you were
assigned a particular grade or if my comments are not clear, I will explain
more thoroughly if you ask me to.
·
I will show up
for class. I will start and end class on
time.
·
I will return
your phone calls and emails as quickly as possible. However, I may take more than one business
day to do so. I do not check my phone or
email messages on the weekends.
·
I will listen to
you respectfully. I will answer your
questions respectfully.
·
I will provide
you with a summary of the total points earned to date anytime that you ask for
it.
What I expect from you:
·
I expect you to
read the syllabus and to know the class policies outlined there.
·
I expect you to
seek help if you are having difficulty with your course work. I expect you to talk to me if you are having
problems. If a stressful work or home situation arises which is affecting your
ability to perform well, please talk to me as soon as possible.
·
If you do not
understand why you received a particular grade, I expect you to approach me and
ask questions. I expect you to treat me
with respect even if you disagree with the grade you were assigned.
·
I expect you to
show up for class on time and stay for the entire session except when you have
an unavoidable conflict. If you must
miss class, assignments and most handouts can be obtained from the class web
site.
·
I expect you to
turn in your assignments. I expect them
to be submitted in a timely fashion. A
penalty of 10% per day will be assessed for late work. No assignment will be accepted more than one
week past its assigned due date.
·
I expect you to
turn in individual and original work.
This means that what you turn in must be your own work and it cannot be
work previously done for some other class.
If you turn in work done by someone else you may be assigned an F in
this course. Repeated instances of
academic dishonesty can result in expulsion from the University.
·
It is
permissible to use snippets of code from your textbook or from Internet
sources. However, your work must be
substantially your own. Please be
respectful of copyrights and document your sources appropriately.
·
I expect you to
say no if another student asks you for a copy of your work. The penalty for permitting another student to
copy your work is the same as if you yourself had turned in work that was not
individual and original.
·
I recommend that
you complete the reading assignments before you come to class, particularly if
you are having difficulty understanding the material.
Respect:
If you do not feel
comfortable sharing your concern directly with me, contact the Information and
Computer Sciences Department chairman, Jigang Liu, at 651-793-1472 or
jigang.liu@metrostate.edu.
Learning Disabilities: If you have
a documented learning disability, or if you suspect you have a learning
disability that may have an impact on your opportunity to succeed in this
course, please notify me before the second class so we can explore ways to
reasonably accommodate your learning style.
If you want, you may work with Disability and Special Services by
calling 651-793-1540. Note that I must
receive adequate notice in order to honor requests.
Helpful Resources:
·
HTML
·
http://www.w3.org/TR/REC-html40
·
http://devedge.rsz.jp/sitemap/index.html
·
DHTML
·
http://www.bratta.com/dhtml/
·
JavaScript
·
http://javascript.internet.com/
·
http://www.chalcedony.com/javascript/
·
http://www.rivier.edu/faculty/bhiggs/web/cs597aweb/Topics/HTTP/JavaScript/JavaScript.htm
·
Flanagan, David,
JavaScript: The Definitive Guide,
O’Reilly, 2002. ISBN: 0-596-00411-7.
·
·
PHP
·
Official
page: http://www.php.net
·
Tutorial:
http://blazonry.com/scripting/linksdb/
·
FAQ
site: http://www.faqts.com/knowledge_base/index.phtml/fid/51/
·
PHP
resources: http://www.zend.com/
·
MySQL
·
Official
site: http://www.mysql.com
·
Tutorial:
http://www.mysql.com/documentation/mysql/full/index.html
·
SSH (Secure
Shell)
·
Download site: http://redhat.ics.metrostate.edu/ssh.zip
·
Alternative
download site: http://www.hawaii.edu/help/software/pc/ssh.html
·
Miscellaneous
Castro,