Text Box: BlackBoardText Box: Course Map 

 

 

CIS 4344: Advanced Web Application Design and Scripting

Fall 2012

 

Welcome to CIS 4344.   Your instructor is David Lefkovitz.  I can be reached at

·         Office             315 Wachman Hall

·         Telephone       215-204-5550

·         e-mail             d.lefkovitz@temple.edu

·          

Would you like to subscribe to our RSS Feed?

 

Ø     Course Objective

The objective of this course is to provide the student with the principal design techniques and associated implementation languages for creating static and dynamic web displays and for both client and server side processing via scripting and an object oriented, event driven language.  It will present the basic internet connectivity of the browser client and web server.  It will show how client languages interact with programs running on the web server.  Students will learn the rudiments of a server side language in order for them create projects for the complete client/server cycle.  Elementary database design and programming technique will be incorporated in order to demonstrate some realistic applications.  In order to do this, students will use a number of languages and tools.  Some they will have learned in the prerequisite courses and some will be taught.  Online tutorials and reference manuals will be made available for all languages used in the course.  The languages to be used will be Javascript and the Document Object Model (DOM) for client side processing, XHTML and CSS for client side static display, VB.NET for server side processing, Adobe FLEX for graphics and animation, and SQL for database processing.  Another technology, called Ajax, that enhances the effectiveness and speed of the client/server interaction will be introduced.  Ajax is basically a methodology for combining the use of Javascript on the client side with any server side language. 

 

A number of tools will be used to enhance productivity.  These are web design and programming tools like the Microsoft Expressions suite, Visual Studio, and the Sql Server Database Management Studio.  The basics of web design will also be taught.  This will include page layout and structure using Frames, DOM, CSS (Cascading Style Sheets), graphics, audio, video and animation file types.  Some specialized .NET capabilities will also be used, such as MasterPages and MultiViews.

 

Special client/server software architectures and communication mechanisms will be introduced, such as the Multitier architecture, cookies, the request and response objects, and the basics of event oriented programming.

  

Ø     Languages and Course Resources
The basic prerequisite knowledge of the course is the use of web based client/server language systems involving XHTML, Javascript and ASP.NET for client side processing and ASP.NET, VB.NET, PHP and JSP for server side processing.  

 

Resources for learning and using these languages are:

 

(1) The Text Book

(2) The website that you are currently reading, referred to as the WebNotes.

(3) OnLine References

(4) Intellisensing within Visual Studio and Web Expressions 

 

Textbook

Internet & WorldWide Web.  How to Program., 4th Edition.  By P.J Deitel and H.M. Deitel., Published by Pearson, Prentice Hall., 2008, ISBN: 0-13-175242-1.

 

The examples in the book can be downloaded from:

http://media.pearsoncmg.com/ph/esm/deitel/IW3HTP4e/examples/

You are given the option there of downloading all of them via one Zip file or downloading only the chapters that you need, one by one.  The single Zip file is very large (250MB) and will take a long time depending on the speed of your connection.  My advice, since you don’t need all of them anyway, is to downloaded those you need. You will see which examples you will need from the WebNotes.

 

The book can also be viewed online at http://proquest.safaribooksonline.com/9780136085645 .

 

Ø     Grading

The course is very lab intensive.  65% of the grade will be based upon assigned programming exercises and the term project.  A midterm exam comprises 15% and a final exam/project the remaining 20%.

 

The first five lab assignments are each weighted by relative difficulty.  Each assignment will be given a letter grade.  These are then converted to the GPA numeric equivalent from 0 to 4, weighted by the Assignment Weight shown in the Project Schedule, summed and divided by 16, which is the total of the Assignment Weights, and multiplied by 0.65.  The exams are graded in the same way, making up the other 35%, and is added to the numeric score of the projects.  The result is a number from 0 to 4, which is converted back to a letter grade for the course.  The formula is:

 

0.65*(Swigi)/16 + 0.15*m + 0.2*f

 

where wi is the weight of the lab assignment i, gi is the numeric grade of Lab Assignment i, m is the numeric grade of the midterm exam, and f is the numeric grade of the final exam.  The final exam is the sixth project plus a small exam.

 

Each assignment has a deadline, shown in the Due Date column of the Project Schedule.    Submission policy is that an assignment turned in by the Due Date gets the full letter grade.  It can be turned in up to one week late but will be downgraded by 1 letter grade.  It will not be accepted after the Late Date.  Note that Project 6 has no Late Date.

 

Ø     The Course Map

Most of the information that you will need for this course can be obtained by a navigation process through the Course Map.  This map contains the following sections:

 

·         Syllabus

·         Schedules

o        Lecture

o        Project Assignment

o        Accounts

·         Reference Material

 

·        Schedules and Accounts

The Lecture Schedule presents a series of Lecture units, textbook readings and links to more detailed lecture material.  

 

The Project Schedule presents the 6 lab assignments and their due dates.  These have been described above under Grading.  

 

The Accounts describe the servers, home directories, websites and databases on 3 server machines.

(1) A home directory is assigned on the G drive under the student’s tuAN (TU Account Number).  This server is cis-files2.temple.edu. The source files for the various projects are stored there at cis-files2.temple.edu\users\TuAN.  A shared directory, called Board (J Drive) provides a means for the Instructor to distribute programs or files to the class.  This is at cis-files2.temple.edu\Board\cis4344

 

(2) Each student will have a virtual web root for Web Applications on.  This web site is at http://cis-iis2.temple.edu/Fall2012/4344nn.  A subweb structure can be developed under the web root for the various projects.  This is explained further under the Servers link from the Map.

 

(3) The DBMS is SQL Server, which runs on Dwarf.cis.temple.edu.  Each student will be assigned a Database, named FA12_4344nn

 

 

·        Reference Material

Finally, the Reference Material section will give you links to OnLine references and some hard copy references.  The OnLine references are classified by major topics, such as HTML, ASP.NET javascript, VBScript, VB.NET, Java, JSP, etc.  You should also search the web for additional, and possibly better, references for languages in the course.  If you find better references than the ones provided, or links that are no longer available, please send the urls to the Instructor.  

 

Good Luck and enjoy the course.