ICS 225 Web Design and
Implementation
Spring 2007
SYLLABUS
Class
Hours:
Tuesdays, 6:00 - 9:20
Midway 40 (lab in Midway M)
January 9 – April 24, 2007
Instructor: Sue
Fitzgerald, Ph.D.
E-mail: sue.fitzgerald@metrostate.edu
Web site: http://cs.metrostate.edu/~fitzgesu/courses
Phone: 651-793-1473
Fax: 651-793-1246
Support staff: 651-793-1471
Office Hours:
Tuesdays
1:00-4:00 (office)
5:00-6:00 (Midway 40 or
Lab M)
Wednesdays 1:00-6:00 (office)
Thursdays 5:00-6:00 (Midway L)
By
appointment
I
am usually available in my office in the afternoons
Required
Daniel
McCracken and Rosalee Wolfe, User-Centered
Website Development, Pearson Prentice Hall, 2004. ISBN:
0-13-041161-2.
James
Edwards and Cameron Adams, The JavaScript Anthology: 101 Essential Tips, Tricks and Hacks,
sitepoint, 2006. ISBN: 0-9752492-6-9.
Other Suggested Books:
Margaret
Batschelet, XHTML/CSS Basics for Web Writers, Pearson Prentice Hall, 2007. ISBN:
0-13-172014-7
Russ
Weakley, SAMS Teach Yourself CSS in 10 Minutes, SAMS Publishing, 2006. ISBN:
0-672-32745-7
Andy
Clarke, Transcending CSS: The Fine Art
of Web Design, New Riders, 2007.
ISBN: 0-321-41097-1
Håkon
Wium Lie and Bert Bos, Cascading Style Sheets:
Designing for the Web, Addison-Wesley, 2005. ISBN:
0-321-19312-1.
Elizabeth
Castro, HTML for the World Wide Web with
XHTML and CSS, Peachpit Press, 2003.
ISBN: 0-321-15068-6.
David
Flanagan, JavaScript Pocket Reference,
O’Reilly, 2003. ISBN: 0-596-00411-7.
Tina
Spain McDuffie, Javascript: Concepts and Techniques: Programming Interactive
Web Sites,
David Flanagan, JavaScript: The Definitive Guide, O’Reilly, 2006. ISBN: 0596101996
Danny
Goodman and Michael Morrison, JavaScript Bible, John Wiley & Sons, 2004.
ISBN: 0764557432
Text Websites:
Other helpful resources:
HTML
JavaScript
SSH (Secure Shell ) Download Sites
Miscellaneous
·
Great
tutorials on scripting: http://www.w3schools.com/
·
Complete
online HTML and JavaScript references, in addition to many other resources for
developers: http://devguru.com/
Tools: Most of the
assignments for this class can be completed using a simple text editor such as TextPad,
Notepad or WordPad and a freely downloadable web browser such as Internet
Explorer, Netscape, Mozilla or Firefox.
Web pages can be uploaded using the Secure Shell file transfer software.
This software is installed and available in all
Course description: This course focuses on how to
design and implement information services over the Internet from the client
side. Topics include the principles, strategies, and policies of World Wide Web
design, such as the rules of the interface design, human factors, ethical
concerns, and information security. Through labs and programming projects,
students will also learn how to use current scripting and markup languages to
implement client-side computing, and how to employ state-of-the-art tools to
embed interactive pages into web based applications. Server-side processing,
such as user authentication and file access, will be introduced briefly.
Prerequisites: This course is required for CIS
majors. After learning how to develop
client-side web applications in this course, CIS majors will go on to develop
server-side applications in ICS 325 Internet Application Development. The minimum prerequisites for this course are
ICS 141 Programming with Objects or equivalent Java experience, rudimentary
knowledge of web searching and some previous exposure to writing web pages
using HTML or XHTML.
Competence Statement: Knows the
design principles and implementation practices of web application development
well enough to select an appropriate solution approach, research and learn new
scripting languages and tools, and implement client-side applications.
Learning Outcomes:
·
Knows the design
principles of web application development.
·
Can select
appropriate solution approaches to web applications.
·
Can research and
learn new scripting languages and tools.
·
Can use current
scripting and markup languages to implement client-side web applications.
·
Can employ
state-of-the-art tools to embed interactive pages into web based applications.
·
Can implement
simple and intermediate level client-side applications.
·
Understands the
principles of interface design and human factors.
·
Understands
ethical issues involved in web application development, including data privacy
concerns.
·
Understands
basic information security practices and policies.
·
Understands
server-side user authentication and file access.
Letter Grade: Your letter grade will be
determined based on the percentage of possible points that you earn during the semester. 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 least 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 |
Possible Points |
|
|
|
|
Midterm Exam |
100 |
|
Final Exam (not
comprehensive) |
100 |
|
Project #1 |
30 |
|
Project #2 |
50 |
|
Project #3 |
70 |
|
Final Project |
100 |
|
4 Critiques (30 points
each) |
120 |
|
Total |
~570 |
Projects:
·
Four projects
will be assigned. They will range from
very simple at first to long and much more complicated at the end. First assignments will not take long; the
final assignment will require a significant amount of your time. Please plan accordingly.
·
You will be
asked to start the final project from scratch (with a fresh look and
feel). Many students have as a goal for
this class the development of a website to be used for a particular purpose. You may wish to save this idea for the final
project.
·
A large portion
of the course materials will address usability.
The look and feel of your web sites is an important component of each
project.
·
Although most
students do not find this class to be overly difficult, many find it time
consuming.
·
Projects are due
on the designated dates.
·
Only projects
posted in your account on the class server will be graded.
·
If you cannot
attend class the night a project is due, the project must be posted on the
server and an email sent to the instructor no later than midnight on the due
date in order to be considered as received on time.
·
Please take
responsibility for printing your own reports.
A 2% penalty will be assessed if I end up printing your report.
·
A 10% per day
penalty will be assessed on all late work, including weekends.
·
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.
Lab Assignments:
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 JavaScript language features and to
get assistance from the instructor as needed. Although most of the lab
assignments are not required to be completed (any exception will be clearly
marked), it is in your best interests to do so.
By completing the weekly lab assignments, you will keep yourself from
getting behind in the class. Note: The graded projects and tests will require
you to understand and use JavaScript features which are covered in these lab
assignments.
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 JavaScript 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.
Critiques: You will be asked to write four 2-page
critiques (about 1400 words each) for this class.
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 me 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, usually during office hours. However, I may sometimes 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.
·
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, or written work containing
even a sentence or phrase copied from someone else, you may be assigned an F in
this course. Repeated instances of
academic dishonesty can result in expulsion from the University.
·
Using snippets
of code found on the web or in your textbook is not academic dishonesty
although you are encouraged to document the origin of the snippet in the
comments. Copying a web page or web site
is dishonest.
·
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.
·
I expect you to
turn off your cell phone during class.
If your cell phone must remain on, please turn your phone to vibrate.
·
I expect you to
refrain from reading email, surfing the web, playing computer games or doing
your homework assignments during lecture.
·
I expect you to
remain in your seats during lecture except for emergencies or religious
observances. Scheduled breaks will be
provided.
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
prefer, you may work with Disability and Special Services by calling 651-793-1525. Note that I must receive adequate notice in
order to honor requests.