Building Client/Server Applications

ITP 250

Fall 2000, Wed, 5:00p, NBA 200

 

Course Description:

Provide an overview for the architecture, design, and implementation of 3-tier and n-tier client/server applications.  Development of client-side components on the web, middleware development using transactional based server, and server-side scripts.

Instructor: Anthony Borquez:

Messages: 213.740.4129; Fax: 213.740.1051; email: anthonyb@usc.edu

Appointments – Wed. 6:30 pm, 8pm (or by appointment)

Required Textbooks:

Essential Client/Server Survival Guide, 3rd edition                                                                                                                                           Robert Orfali, Dan Harkey & Jeri Edwards; John Wiley & Sons; 1999; ISBN 0-471-31615-6 

Supplemental Reading Material: provided by the instructor for topics concerning programming fundamentals or industry trends/standards

Overview:

This course will focus on programming client/server applications for small and large-scale businesses using the various client/server strategies.  Server side languages will include Active Server Pages and Perl Scripting.  The databases for the course will be either SQL 7.0 or Oracle 8.  Upon completion of this course,  students will obtain the tools to understand the architecture of n-tier client/server, as well as develop custom applications and components..

Class Schedule:

Week

Topic

Reading Assignment

Lab Assignment

Week 1

Aug 30

Course Overview, Intro to Client/Server

Review handouts distributed in class

no lab this week

Week 2

Sep 6

Client/Server Today, Distributed Processing, Client/Server in the Future

Orfali: Chapters 1 + Handout

Setup lab environment, including tools for the class

Week 3

Sep 13

Various Architectures of Client Server, Component Comparisons

Client/Server Fact Sheet, Orfali: Chapters 3

Lab Exercise 1 due

Week 4

Client Roles in Client Server, Overview of Active Server Pages

Case Study #1, Active Server Page Handout 1

Lab Exercise 2 due

Week 5

Sep 20

Connection Strings, Interfaces in Client/Server Systems

Orfali: Chapter 4    Active Server Page Handout 2 

Lab Exercise 3 due

Week 6

Sep 27

Overview of the Data Layer in Client/Server Processing, Database Platforms, Intro to SQL

Orfali: Chapter 5

SQL Handout 1

 

 

Week 7

Oct 4

Using Stored Procedures to run server-side scripts

SQL Handout 2

Lab Exercise 4 due

Week 8

Oct 11

Midterm 1

Review readings

N/A

Week 9

Oct 18

Advanced Database Topics, Triggers, Rollback Segments, Growth Issues

SQL Statements Handout 

Lab Exercise 5 due

Week 10

Oct 25

Overview to MTS, Hands-on Demo creating middleware components

Microsoft Transaction Server Handout 1

 

Week 11

Nov 1

Designing Transactional Components with MTS

Microsoft Transaction Server Handout 2, DCOM Handout

Lab Exercise 6 due

 

Week 12

Nov 8

Performance Tuning Client/Server: Advanced Topics Orfali: Chapters 6 - 8

Lab Exercise 7  

Week 13

Nov 15

Role of Wireless Computing in Client/Server Systems

WAP Handouts, WML Scripting I

Lab Exercise 8 due

Week 14

Nov 22

Thanksgiving Recess

Happy Turkey Day

 

Week 15

Nov 29

Wireless Computing Part II

WAP Handouts, WML Scripting II

Lab Exercise 9 due

Week 16

Dec 6

Course Summary

Final Project Review

Review all notes/handouts

No Lab Exercise for finals week; finish up final project

Examinations:

Exams cover material from the reading assignments, lectures, and lab projects.

Grading:

Midterm 1             100 points

Final Project            75 points

Quizes                      50 points

Lab Projects           100 points

                                 375 points