16:332:568 - Software Engineering of Web Applications - Spring 2019

Classes: F 6:40pm - 9:30pm, in SEC-117, Busch Campus

Instructor: Shiyu Zhou
Office: EE-113
Email: szhou@cs
Office hour: by appointment

Graders:
Weijia Sun: ws368@scarletmail
Huayu Zhao: hz274@scarletmail

References:
(1) Software Engineering (online version), Chapters 6-8, by Ivan Marsic
(2) Web-Based Application Development, by Ralph F. Grove
Publisher: Jones & Bartlett Publishers; 1 edition (April 22, 2009)
ISBN-10: 0763759406 ; ISBN-13: 978-0763759407
(3) Pattern Recognition and Machine Learning, by Christopher M. Bishop, Springer, 2006.

Course Description:
This course is problem-driven. Given a realistic problem (something relevant to real world), we study methods and technologies that could be applied to arrive at a solution. Unlike 16:332:567, Software Engineering I, the emphasis of this course is not on software methodology. Rather, our main emphasis will be on learning web technologies and trying to solve some realistic problems. Generally, the course covers web services (SOA - service oriented architecture) and data mining (web search and forecasting based on historic data). The Web contains huge quantities of data that are dynamically changing. This fact raises the need for automatic processing with sophisticated techniques known as machine intelligence.
We will strive to cover as much as possible the following topics (depending on the time): introductions to relational database and SQL, machine learning (Bayesian Curve Fitting, Artificial Neural Network, Support Vector Machine), XML and related technologies, web search, web programming languages (Javascript, AJAX), Internet protocols, SOA and related topics.
The key component of the course is a hands-on, software development project: getting a working code will be our main objective.

Policy on Academic Integrity:
Students are expected to fully adhere to the following policies on Academic Integrity:
Rutgers University statement on Academic Integrity Policy
CS Department Academic Integrity Policy
Please don't jeopardize your academic career by copying, and collaborating beyond permissible limit. When in doubt, ask us if something is allowed. Common sense applies: anything that places you at an unfair advantage, gives a misleading impression of how much you have done, or decreases the amount of material you learn, is out of bounds.

Grading Policy:
Grades will be based on a point total computed as the following:
25% homeworks + 55% project + 20% reports and presentations

Materials covered: 
Week 1: Entity-Relationship Model; SQL(I)
Week 2: SQL(II)
Week 3: Probability and Curve Fitting
Week 4: Bayesian Curve Fitting, XML Intro
Week 5: XML DTD, XQuery
Week 6: XML Schema, XSL Transformations, Artificial Neural Networks
Week 7: Artificial Neural Networks (cont.), Support Vector Machine, Javascript
Week 8: In-class demo (no class)
Spring Break
Week 9: Midterm Project Presentation
Week 10: AJAX, TCP/IP, Client-Server Model, HTTP
Week 11: Service-Oriented Architecture; SOAP; WSDL; UDDI; REST
Week 12: In-class demo (no class)
Week 13: (no class) Self-reading: Text Information Retrieval (IR), IR on the Web: Intro to PageRank
Week 14 (May 3): Final Project Presentation

Homework:
Homework and projects will be posted on Sakai.

Non-Academic News Info:
Epochtimes (English) (Chinese)
New Tang Dynasty (NTD) TV (English) (Chinese)