CSIS 314 - Client-Server Programming

Course Description

This course provides an introduction to constructing complete information systems based on the client-server model. On the client side, we introduce graphical user-interfaces, their design and implementation, as well as commonly used tools such as database access clients and report generators. On the server side we introduce database management systems and the use of server-side programming tools that provide connectivity for clients and access to database systems. Along the way, students are introduced to the basics of distributed computing and computer networks.

Instructor

Dr. David M. Hansen

Texts

Required
  • Welling & Thomson. PHP and MySQL Web Development Indianapolis, IN: Sams Publishing.
Recommended (Very Strongly!)
  • Musciano & Kennedy. HTML & XHTML: The Definitive Guide Sebastopol, CA: O'Reilly & Associates.
  • (Good SQL help - great for CSIS 340 too) If you have specific physical, psychiatric, or learning disabilities and require accommodations, please contact the Disability Services Office as early as possible so that your learning needs may be appropriately met. You will need to provide current documentation of your disability to the Disability Services Office. For more information, go to ds.georgefox.edu or contact Rick Muthiah, Dean of the Center for Teaching and Learning (ext. 2314)

  • Various. PHP Reference Manual On-line manual.

Objectives

  • Students will put their programming skills to use in constructing a complete end-to-end information system solution. This will often be their first opportunity to construct a non-trivial system of software.
  • Students will be introduced to a number of topics that are covered in more detail in other courses. This introduction serves two purposes:
    1. It gives all students exposure to important technologies and components (e.g., networks, database systems and languages, clients, middleware development tools).
    2. Students will be better prepared to choose follow-on courses that explore some of these topics in much greater detail, improving their ability to tailor their degree.

Course Organization

In addition to regular lectures and written assignments, this course will include a substantial programming assignment that will result in the construction of a complete end-to-end information system solution.

Programming assignments may be carried out in one or more prescribed high-level languages. Instruction in the use of these languages will be provided.

The course will include regular homework and programming assignments (please see my comments on collaboration and programming). There will be NO CREDIT given for late assignments (without an excuses absence) - turn in as much as you can.

Reading assignments should be completed before the lecture covering the material. Not all reading material will be covered in the lectures, but you will be responsible for the material on homework and exams. Quizzes over the assigned reading may be given at any time.

If you have specific physical, psychiatric, or learning disabilities and require accommodations, please contact the Disability Services office early in the term so that your learning needs may be appropriately met. You will need to provide current documentation of your disability to Disability Services. For more information, contact Director of Disability Services.

Grading

Grading Scale

The final grade will be based on:

Tentative Schedule

Lectures Topic Reading
Section Text
1 Introduction

1 Backend Servers: Databases Lesson 1 SQL
1 Command-line access

3 SQL "select" Lessons 2-14, & 18 SQL
Ch. 9 PHP
1 SQL "update", "insert", and "delete" Lessons 15, 16, & 20 SQL
1 Project Database    
1 Frontend Clients: Web Browsers Ch. 1 HTML
2 HTML Basics and Text Formatting Ch. 2-4 (skim 5) HTML
1 Links & Lists Ch. 6 & 7 HTML
4 Forms & JavaScript Ch. 9 & 12 HTML
2 Tables Ch. 10 HTML
1 CSS Ch. 8 HTML
1 Design Guidelines

1 Middleware: Introduction to PHP Introduction PHP
2 Basics of PHP Ch. 1 PHP
1 Arrays Ch. 3 PHP
1 String Manipulation Ch. 4 PHP
2 Database Access Ch. 10 (scan 11) PHP
2 Subprogramming Ch. 5 PHP
2 Sessions Ch. 22 PHP
3 Security Chs. 15-17 PHP
2 XML Ch. 15 & 16 HTML
3 Other Technologies (RMI, CORBA, etc.)

This page was last updated .
For questions or comments about this page, please email the webmaster.