CONCORDIA UNIVERSITY
DEPARTMENT OF COMPUTER SCIENCE AND
SOFTWARE ENGINEERING
SOEN287 – Web
Programming
Winter
2011-2012
INSTRUCTORS and LECTURE TIME
|
Section |
Lecture Time and
Place |
Instructor |
Contact |
Office |
|
U |
Tuesday and
Thursday 14:45-16:00 H-520 |
Yuhong Yan |
yuhong@cse.concordia.ca Tel: ext 8715 |
EV3.227 (Office hour: Tue, Thur, 10:30-12:00,
From Jan 25.) |
|
Tut UA |
Tuesday (from 2nd
week) 16:15-17:55 H-929 |
Haritos Kavallos |
h_kavall@encs.concordia.ca |
|
|
Tut UB |
Thursday (from 2nd
week) 16:15-17:55 H-929 |
Mikhail
Levkovsky |
mlevkovsky@yahoo.ca |
|
|
Tut UC |
Friday (from 2nd
week) 15:15-16:55 H-831 |
Jianing Wang |
apple666.wang@hotmail.com |
|
|
Marker |
|
Jing Li |
jing.li.hnu@gmail.com |
|
|
S |
Tuesday and
Thursday 8:45-10:00 H-459 |
Clement Lam |
Tel: ext 3002 |
EV3.115 (Office hour: Thur, 13:30-14:30) |
|
Tut SA |
Tuesday (from 2nd
week) 10:15-11:55 H-831 |
Elias Bou Harb |
|
|
|
Tut SB |
Thursday (from 2nd
week) 10:15-11:55 H-831 |
Satyanarayana N
Kanigicharla |
|
|
|
Marker |
|
TBA |
|
|
Course Description
This is an introduction course on Web programming. It covers the
following topics: Internet architecture and protocols; Web applications
through clients and servers; markup languages; client-side programming using
scripting languages; static website contents and dynamic page generation
through server-side programming; preserving state in Web applications.
Please
notice that Web programming and Web application is a very wide domain. Many
techniques are used to build a complex online business system. The following topics are NOT covered in this
course, but in some other courses:
Course Objectives (CEAB Graduate Attributes)
To provide the computer
science and software engineering students with basic knowledge and skills of
Web programming. Though this course, the students
Background Knowledge
Prerequisite: COMP 248 Oriented Programming I.
You should have basic programming skills. In
particular, you should have a good understanding of expressions, statements,
methods, parameters, and arrays. You are assumed zero background on Web
programming.
Required Text Book & Other Tools
·
i-Clicker which you need
to bring to every class.
Both are available at the Concordia
bookstore. Some topics are from external web references to be provided.
Computing Facilities
You will use the Computer Science PC lab located at the Hall(H)
building running Red Hat Linux. You can pick up your computer account from the
ENCS Service Desk at H960 or EV-007.182. This account will give you access to
the laboratories. For more information on CSE Computer accounts please visit
the website: http://www.encs.concordia.ca/helpdesk/access.html. Some basic information about the Linux
operating system can be found in The
Linux Users Guide by Larry Greenfield (available in the course web page at
www.cs.concordia.ca/~comp229). More information about Linux is available at the
website http://www.linuxdoc.org.
If you have a
computer at home and prefer to use it, you may do so.
Tutorials
The tutorials
will reinforce the material seen during the lectures with examples and
exercises. Tutorials begin on the second week of classes. Tutorials are always
in a lab. You are allowed to use your own laptop in the tutorial sessions to
profit from your own settings in your computer.
Web Pages
Many
resources for the course (lecture slides, assignments and solutions, example
programs . . .) will be available on the course web site in a Moodle website
which is accessible through MyConcordia portal at www.myconcordia.ca.
Usage of i-Clickers
i-Clickers are considered to be a good tool to
enhance interaction and engagement in the classroom, and are welcomed by the
students. Please bring your i-Clicker
to the lectures. In each lecture, you are asked some multiple choice questions.
The results are recorded.
Assignments/Examinations
a) Course
Assignments.
There will be 4 assignments. All assignments will have
a programming component; some of them may have a theoretical component as well.
Assignments are to be submitted electronically only in the course Web site - no
paper submission. All assignment handouts will be available on the course
webpage. The last question of each assignment is a continuous question that
leads you to build a Web site for an online store step by step. After the
fourth assignment, you will have a complete Web site.
b) Examinations
·
There will one midterm test in week 8 or 9 of
the course. Exact date will be announced. The test will take place during
regular lecture times. There is no make-up term test.
·
The
final examination lasts three hours, and will be administered during the
examination period at the end of the term.
The final examination covers all material seen during the term.
Evaluation Scheme
Assignments (4) 32% (4 × 8% )
Midterm
exam 20%
i-Clicker
participation 5% (Participation rate
(75% - 100%], not count the correct rate, or Participation rate [50%- 75%] with
the correct rate > 80%)
Final exam 43%
1. In order to pass
the course, you must pass the final exam by getting over 50% of the marks,
regardless of your grade in other required components.
2. In order to pass
the course, you should submit a least 60% of the assignments and course
deliverable, and attend both the midterm exam and the final exam.
3. The assignment
deadline may be extended when multiple requests are received. However, this
will delay the post of answers and feedbacks for further study. Penalty of
delay will be applied by 20%/day. After answer is posted, un-submitted
assignment is counted as 0. Please avoid mistakes when you submit assignments
(partial upload, wrong files, etc.)
4. There is no
standard relationship between percentages and letter grades assigned.
Important Guidelines
·
Cell
phones are STRICTLY PROHIBITED in classroom during the lectures.
·
Please
check your emails very often, preferably each day. Many notices are sent
out by email.
·
Please
come to class on time. Classes start with important topics first.
·
If
you want to download slides before the lecture, please notice that these
slides do not include the i-clicker questions and answers. The actually slides
used in the classroom with i-clicker questions and answers will be posted after
each lecture.
·
This
course covers a wider scope of knowledge than a normal course, due to the
nature of Web programming. You are encouraged to check the real world
industrial practices in this domain. Our assignments/project/exams are bounded
to the scope covered by the textbook and the lectures. However, some research
on the Internet is expected to investigate a solution to the assignments and
project.
·
Extra
assignments will be given for students to practice their programming skills.
These assignments will not be marked, however, will be considered when it is
fail or pass situation.
·
This
course is for beginners in Web programming. And the content of the course is
determined by the curriculum committee. If you find you’ve learned many topics
in a Cegep program, you are encouraged to discuss with me and seek for new
challenges to suit your needs.
·
The
university encourages undergraduate students get involved in research. Students
are encouraged to discuss with me about this.
Note:
If
you have any special needs please contact your instructor to discuss the situation.
TENTATIVE SCHEDULE
The list below
provides a summary of the material that will be covered during the course as
well as a tentative schedule. Please check course webpage for any
changes.
|
Week of |
Chapter |
Topics |
Notes and Events |
|
#1-Jan 3, 5 |
1 |
Fundamentals |
|
|
#2-Jan 10, 12 |
2 |
XHTML |
|
|
#3-Jan 17, 19 |
3 |
CSS |
Jan 16: DNE (full
refund) or Register |
|
#4-Jan 24, 26 |
4 |
JavaScript |
|
|
#5-Jan 31, Feb2 |
4, 5 |
JavaScript |
Assignment 1 due |
|
#6-Feb 7, 9 |
5, 6 |
Dynamic XHTML with
JavaScript |
|
|
#7-Feb 14, 16 |
6 |
Dynamic XHTML with
JavaScript |
Assignment
2 due |
|
#8 -Feb 21, 23 |
|
Midterm Break |
|
|
#9-Feb 28, Mar 1 |
9 |
Midterm exam Basics of PHP |
Midterm |
|
#10-Mar 6, 8 |
9 |
PHP: form handling,
patterns, cookies, sessions |
Assignment
3 due Mar 3:
DISC (academic
withdraw) |
|
#11-Mar 13, 15 |
9, 7 |
more PHP, Introduce
to XML |
|
|
#12-Mar 20, 22 |
7 |
Introduce to XML |
|
|
#13-Mar 27, 29 |
10 |
Introduction to Ajax |
|
|
#14-Apr 3, 5 |
10 |
Ajax |
Assignment
4 due |
|
|
|
|
|
Note from University Administration
"In the event of extraordinary
circumstances beyond the University's
control, the content and/or evaluation scheme in this course is subject
to change".