CS645 Advanced Web Application Development Spring 2015 Credits: Instructor: Office Hours:

advertisement
CS645 Advanced Web Application Development Spring 2015
Credits:
3 units
Instructor: Alan Riggins Office: GMCS 534
Office Hours: 10:00-11:30 Monday, 9:00-11:30 Wednesday, Friday.
Course Materials
Sams Teach Yourself Ajax, JavaScript, and PHP All in One, Phil Ballard; Michael Moncur
ISBN: 978-0-672-32965-4, Sams, Required.
Core Servlets and JavaServer Pages Volume I, Hall, Brown. ISBN: 978-0130092298.
Required
Course Information
Prerequisites: Computer Science 310 or equivalent. CS545 strongly recommended.
Description from the Official Course Catalog
Continue to advance your skills with the Advanced Web Application Development
course. On the client side, you will learn advanced XHTML, CSS, Javascript, and
AJAX. Server side topics include developing applications using Java Web Services
(servlets and JSP), integration with SQL database systems, and common
frameworks for rapid development and deployment. A major emphasis is on highperformance platforms, and application architectures suitable for large, complex
projects.
Course Type: Upper division elective course, part of the Advanced Web and
Mobile Applications Certificate program, a graduate level program offered through
the College of Extended Studies.
Specific Goals for CS645
Course-Level Student Learning Outcomes
1. Students should gain a thorough understanding of basic architecture of the
Internet and the World Wide Web.
2. Students should gain a thorough understanding of server side architecture, and the
issues for large, complex systems.
3. Students should become proficient with advanced CSS layout and properties.
4. Students will become proficient with Javascript and jQuery for client side
behavior.
5. Students will learn the standard CGI protocols, and develop extensive server side
scripting in PHP and Perl.
6. Students will learn a system suitable for large scale applications, such as Java
Web Services with servlets and JSP.
7. Student will learn standard SQL database design and language, and will
incorporate relational database systems into web projects.
8. Ability to build sophisticated, well designed dynamic web based systems from the
ground up.
9. Ability to analyze a variety of software problems and provide appropriate
solutions (what to use when) including written reports with analysis of
implementation options and recommendations for an optimal solution, which
includes a rigorous complexity analysis.
Relationship to CS Program Course Outcomes
CS645 addresses the following outcomes:
1. An ability to analyze a problem, and identify and define the computing
requirements appropriate to its solution.
2. An ability to design, implement, and evaluate a computer-based system,
process, component, or program to meet desired needs.
3. Recognition of the need for and an ability to engage in continuing professional
development
4. An ability to use current techniques, skills, and tools necessary for computing
practice
5. An ability to apply mathematical foundations, algorithmic principles, and
computer science theory in the modeling and design of computer-based
systems in a way that demonstrates comprehension of the tradeoffs involved
in design choices.
6. An ability to apply design and development principles in the construction of
software systems of varying complexity.
Topics Covered
1.
2.
3.
4.
5.
6.
7.
HTML, XHTML, HTML 5.
CSS (cascading style sheets).
Javascript and industry standard Javascript libraries.
AJAX
Scripting in Perl
Server side development using Java
Database systems
Schedule and Grading Policies
Week
Topic
Projects/Activities
1
Course introduction, the Internet and WWW
2
Advanced Perl, regular expressions
3
Advanced database systems for web use
4-5
Introduction to Java Web Services
6-9
Architecture for large, complex systems.
10-11
The Google Web Toolkit
Project #2
12-14
AJAX
Midterm #2
14-15
Assorted topics
Project #3
Midterm #1, Project #1
Projects/Assignments
There are three to four web based projects:



A Perl CGI application.
Two Java Web Services based applications
A project using a framework such as Google Web Toolkit
Students will write all code for these assignments rather than using development software
such as Dreamweaver or similar code generation tools.
Grading Policy
Grading is based on exams (60%), programming assignments (40%).
There are four programming assignments, and two midterm exams. The final, capstone
project is in lieu of a final exam. Grades are not curved, but based on percentages:
93% and above A
90%-92%
A87%-89%
B+
83%-86%
B
80%-82%
B-
77%-79%
73%-76%
70%-72%
67%-69%
63%-66%
60%-62%
below 60%
C+
C
CD+
D
DF
Students with Disabilities
If you are a student with a disability and believe you will need accommodations for this
class, it is your responsibility to contact Student Disability Services at 619 594-6473. To
avoid any delay in the receipt of your accommodations, you should contact Student
Disability Services as soon as possible. Please note that accommodations are not
retroactive, and that accommodations based upon disability cannot be provided until you
have presented your instructor with an accommodation letter from Student Disability
Services. Your cooperation is appreciated.
Download