CIS 8850 - Web Application
Development
Course Prerequisite:
CIS 3260 or CIS 3270 or CIS 3210 or CIS 3215; CIS 8040; CSP: 1-8.
Prerequisites are strictly enforced!
Course Description:
This course introduces the development of Web applications. Topics covered
include web servers, web application servers, web application development
methods, client side and server side scripting, and web application
development techniques. Other topics discussed in this class include web
application security, session management, design patterns and reusable web
application components. Advanced topics such as XML and Cascading Style Sheets
are also introduced.
Course Objective:
Upon successfully
completing this course the student will:
-
Apply the concepts
and the principles of WWW,
-
Set up and maintain
a web server,
-
Develop
database-driven web applications using a formal design method,
-
Construct and
maintain a well designed web site,
-
Use the
state-of-the-art web application development tools and languages to develop
web applications,
-
Assess and manage
the challenges underlying the development of stateless web applications,
-
Apply current
technology in web application development, including XML, CSS and XSL.
Apply current technology in web application development, including XML, CSS
and XSL.
Class Policies:
Assignments & Grading
|
|
Team Project:
|
30% |
|
|
Individual
Exercise: |
20% |
|
|
Middle Term Exam:
|
25% |
|
|
Final Exam:
|
25% |
The middle term exam and the final exam are closed-book exams. The exam covers
materials from textbooks, the project, individual assignments, and class
discussions. The exam may be made up only for previously excused absences.
Textbooks
Required textbooks:
-
[ASP.NET eCommerce]
Begining ASP.Net E-Commerce by Cristian Darie, Karli Watson, Apress
ISBN:1590592549 This book is scheduled for release on September 10-12,
2003. You can preorder it from Amazon or B&N.
-
[WebForms]Alex
Homer Professional ASP.NET Web Forms Techniques Wrox, ISBN: 1-86100-786-8 (This
book is no longer in press. If you cannot find it, I will supply you with
the chapters)
-
[ASP.NET]
Beginning ASP.NET with VB.NET, Goode, et al. (2002) Wrox Press;
ISBN:1-861007-33-7 OR..
Any other Introductory
Book on ASP.NET will do
Withdrawing
'W' grade will be assigned to a student if he withdraws before the middle of
the quarter while doing pass work. 'WF' will be assigned to the student who
withdraws before the middle of the quarter while doing failing work or
withdraws after the middle of the quarter.
Class participation
All students are expected to attend all classes (and to arrive on time!). The
students should have the prerequisite knowledge of the course and do good
preparation including reading the assigned readings before each class,
participating in class discussions, and providing thoughtful answers to
questions. The laboratory sections are only effective when participants have
done the readings and are prepared.
Projects, exercises
and on-line submission
The team project
lasts the entire semester. Each project team consists of five to six members
maximum. It is each team's responsibility to coordinate and share equal
amounts of the work. Each project team receives one grade and each team member
receives a grade in proportion to the member's contribution to the team
project. Therefore, it is very important for every member in a team to work
together and give the best collective performance for the team. It is also
important for each team to keep a work log of each team member so that the
percentage of the work for each team member can be easily determined at the
end of the quarter if inconsistencies emerge.
The project is
divided into several phases. The work status of each project phase is given as
a project progress report. The instructor will review each progress report and
assign a tentative grade to the report. At the end of the semester, the final
grade is determined by the quality of the project and final, improved project
report.
Computer Usage Policy
Computer user
accounts are available for each project team in this class. These accounts
allow the students to host their Web applications on the server. There is no
support for the server system. Hence, the students:
-
Should use the
accounts only for the work related to this class. Any work/contents that are
irrelevant to this class cannot be placed in these accounts
-
Can only place
project scripts, images files, and databases on the server
-
Must scan any
submitted files to ensure they are virus-free. Virus scanning programs are
available in the university's computer lab
-
Should never attempt
to break into any server areas except the areas assigned to your team. Any
violation may result in a zero grade for this class.
Misuse of the accounts will result in removing of the accounts permanently.
Tentative Schedule
of Classes
|
Session |
Topics/Readings |
|
1
|
Class
Introduction & Introduction to the WWW
Reading:
Practice:
Team Project Assignment & forming project team
Detailed
Learning Objectives:
-
Understand the
logistics and requirements of the course
-
Download course software and configure computer for web site
development
-
Explain the general problems faced in the development of stateless web
applications
|
|
2
|
ASP.NET(1) Introduction & Controls
Reading:
[ASP.NET]
Chapters 1-4 &
J2EE-vs-DotNET.zip
Exercise I Assignment
Detailed Learning Objectives:
Describe the differences between, and relative merits of, J2EE and .NET
as web services platforms |
|
3
|
ASP.NET(2) Data
Access
Reading: [ASP.NET]
Chapters 12-13
Assignment II
Detailed Learning Objectives:
Use advanced SQL to query, update and insert data via the ADO.NET object
model |
|
4
|
ASP.NET (3)
-Data Access Continued & State Management
Reading:
[ASP.NET] Chapters 6-10
SimplifyStateMaintenanceWithASP.net.pdf
Detailed
Learning Objectives:
·
Contrast
the concepts of state, session and client and how they are managed in
stateless web applications
·
Apply the
tools available in leading web application development scripting
languages for the management of states, sessions and clients
Command the
techniques required to script event driven code, including page
lifecycles and event handling |
|
5
|
XML(1)
Introduction
and CSS Review
Reading:
Project Report: Project Requirements Specification
·
MS biztalk chapt 6.pdf
·
www.dell.N-tier
Detailed
Learning Objectives:
-
Articulate the
philosophy of XML, its function, and application
-
Describe the
logical structure, syntax, use of tags, elements, attributes, entities
and characteristics of a well-formed XML document
-
Define and
validate a DTD and Schema
Apply techniques
of Cascading Style Sheets (CSS) and Extensible Stylesheet Language (XSL)
to format XML documents |
|
6
|
XML(2) eXstensible Stylesheet Language (XSL)
Intro to PHP & Cold Fusion
Exercise I Assignment
Detailed Learning Objectives:
-
Understand the underlying components and functions of XSL, including,
XSLT, XPath, and XSL Formatting objects
-
Apply XSL
templates, patterns and methods to manipulate, format and present XML
-
Use sorting
and conditional logic to transform and display XML
Employ XSL methods to format and index XML |
|
7
|
Exam I |
|
8
|
Using Objects to call stored procedures
Reading:
[ASP.NET eCommerce]
Chapters 3-5 |
|
9
|
Order Pipeline
Reading:
[ASP.NET eCommerce] Chapters 9, 11, 12 |
|
10
|
ASP.NET(3) Web Services & XML Integration
Reading:
[ASP.NET] Chapter 18
Detailed Learning Objectives:
Understand the Document Object Model and employ it in XML integration
|
|
11
|
Payment Systems and Shopping Carts
Reading:
[ASP.NET eCommerce] Chapters 8, 6, 13 |
|
12
|
XML(3) Web
Services, XML Databases and XQuery
http://tamino.demozone.softwareag.com/mainSiteX/
Detailed Learning Objectives:
-
Asses the problems encountered in translating XML based file to
relational schema, and relational DB files to XML DTDs or schema
-
Demonstrate
knowledge of the techniques used to transform XML to relational and
relational to XML based files.
-
Discuss the
drawback of these methods
Articulate the function, status and potential of Xquery and native XML
databases
|
|
13
|
Designing for Scalability
Presentation: Microsoft Business Solutions: Navision Xapta
Exercise II Due |
|
14
|
Exam
II |
|
15
|
Project
Presentations
Projects and Documentation due |