APPL55738 
IMM Web Application Development 1		
    I: Administrative Information   II: Course Details   III: Topical Outline(s)  Printable Version   Public   Section I: Administrative Information
 	Credit Value: 3.0
Credit Value Notes: N/A
Effective: Fall 2006
Prerequisites: N/A 
Corequisites: N/A 
Equivalents: N/A 
Pre/Co/Equiv Notes: N/A 	
Course Name (short): IMM Web App. Dev.1
School: Applied Computing and Eng. Science
Program(s): Interactive Multimedia
Program Coordinator(s): Andrew Smyk
Course Leader or Contact: Ian Wood
Originator: Helen Mckay
Designate: Judy Ross
Version: 1.0 
Status: Draft (DRAF) 
Calendar Description
This course focuses on the design and development of dynamic database driven websites and web application development through the use of SQL databases and server-side programming.
Typical Instructional Format
Lab	42.0	
Total hours: 	42.0	
Courses may be offered in other formats.
Section I Notes: N/A
    Section II: Course Details
Detailed Description
This course explores the fundamental concepts of dynamic website and web application development through server side programming and database access. Students will learn about the differences between physical servers and the services they run and how they work and how to interact with these systems using client and server-side programming. Through hands-on development, the server-side programming components will teach students the programming logic and methodology for developing code that will run separately from a client. To provide dynamic content students will learn database concepts including data modeling using relational and dimensional models, and programmatic database interaction. By combining HTML to create the web page itself with a database and server-side programming using ASP.NET, students will be able to create dynamic sites such as basic message forums, content management systems, picture galleries etc.

Program Context
 	Interactive Multimedia	
Program Coordinator: Andrew Smyk	

In Semester I students learn the fundamentals required to create dynamic websites and web applications, including the rolls of a server, server-side programming using ASP.NET, and database development. It extends the client side skills taught in the HTML and Flash courses to allow for dynamic content and web based application development.

Course Critical Performance and Learning Outcomes 
 	 Critical Performance:

By the end of the course, students will have demonstrated the ability to design and develop a relational database and interact with the database through the use of server-side programming.

Learning Outcomes:

1.  Students will be able to define the purpose and functionality of a relational database. 
2.  Will be able to explain the importance of creating flexible relational data structures and how to model basic relations.
3.  Students will be able to construct complex SQL queries involving multiple tables. 
4.  By examining a problem, students will be able to identify what aspects should be solved client-side and server-side.
5.	Understand the purpose of the .NET Framework and how it functions.
6.	Use the interactive designer in Visual Studio and manual programming with C#.
7.	Use library object, methods, and properties.
8.	Understand the importance of data validation and implement validation using GUI controls.
9.	Send and retrieve information from a database using server-side programming.
10.	Perform exception handling to handle errors gracefully.

	
Evaluation Plan 
Students demonstrate their learning in the following ways: 
 	Evaluation Measures:

20%	Mid-term Exam
25%	Assignments (3)
30%	Personal Project
25%	Client Project

Please note that the following practices are agreed to by the
professors teaching this course. We want to encourage behaviors that will help students be successful in the workplace, and to ensure that students receive credit for their individual work.

1.  For submission of assignments, the professor will specify, in 
    writing:
       a) due dates and special instructions for submissions
       b) deductions for overdue submissions
2.  All assignments must be completed as individual efforts unless the professor states otherwise in writing.
3.  Tests must be written as scheduled by the professor. A makeup test will only be provided to students who have an acceptable explanation for their absence, or students who provide acceptable documentation, such as a medical certificate, explaining their absence. These special situations must be arranged as soon as possible with the professor. There may be limitations on timing for makeups. 
4.  A student must average at least 50% on the tests and in order to receive credit for this course.  
5.  The major (team-based) Client Project must be completed (i.e., in a deliverable format) prior to the end of the semester.
N.B.  Steps outlining the appeal process for grades and evaluation can be found in the Student Handbook.	

Provincial Context 
The course meets the following Ministry of Training, Colleges and Universities requirements: 
 	Essential Employability Skills
Essential Employability Skills emphasized in the course:
X 	
Communication 	
X 	
Critical Thinking & Problem Solving 	
X 	
Interpersonal 	

X 	
Numeracy	
X 	
Information Management 	
X 	
Personal 	

Notes: N/A
General Education
This General Education course relates to the following themes as specified by the Ministry of Training, Colleges and Universities.
  	
Arts In Society 	
  	
Civic Life 	

Social and Cultural Understanding 	
  	
Science and Technology 	

Personal Understanding 	

Prior Learning Assessment
PLA Contact: Multiple PLA Contacts 
Students may apply to receive credit by demonstrating achievement of the course learning outcomes through previous life and work experiences. This course is eligible for challenge through the following method(s):
Challenge Exam 	
Portfolio	
Interview	
Other	
Not Eligible for PLA	

 	

X	

    Section III: Topical Outline
Some details of this outline may change as a result of circumstances such as weather cancellations, College and student activities, and class timetabling.
Effective term: Fall 2006
Instructor: Multiple Instructors
Textbook(s): 
tbd

Applicable student group(s): Interactive Multimedia
Course Details:
Description

Topics

[Week1]  Introduction to Databases
	 Outcome: Students will be able to define the purpose and
         functionality of a Relational Database and list some of the 
         common DB Servers available.
Outcome: Students will be able to define key database terminology.
Outcome: Students will be able to form basic SQL queries.

[Week 2] Database Structure - Relational Vs Dimensional
Outcome: Students will be able to explain the importance of creating
         flexible relational data structures and how to model basic 
         relations using tables.
Outcome: Given a simple dataset and problem to model, students will
         be able to define which modeling method is most appropriate
         and create a model of that data.

[Week 3] SQL Queries
ASSIGNMENT - 25%: data modeling rational essay.

Outcome: Students will be able to construct complex SQL queries
         involving multiple tables.
	
[Week 4] Lab: Model and Construct a Database
Outcome: Using the knowledge gained over the last 3 weeks, students
         will model a database data structure then develop and 
         populate the database with provided data.
LAB ASSIGNMENT - 50%: complete modeling lab assignment   

[Week 5] Introduction to Server Side Programming and the .NET Framework
  
Outcome: Given a specified problem requiring certain functionality
         students will be able to determine what aspects should be
         solved client side and which aspects server side.
Outcome: Students will be able to explain what the .NET Framework,
         ASP.NET, MSIL, and C# are, what the purpose of server side 
         programming is, and create a basic "Hello World" type 
         application using Forms in Visual Studio and C#. 

[Week 6] Learning the Fundamentals of Visual Studio
Outcome: Given a project outline students will be able define a new
         project within VS, configure the project, and add the 
         necessary pages to the project.
Outcome: Students will use and configure controls to create an
         application that responds to push button input.

[Week 7] Midterm Exam

[Week 8] Programming With C#
Outcome: Students will be able to define and explain the difference
         between reference and value data types, variable data type, 
         variable scope, classes, members, methods, fields,
         properties, events, and name spaces. 
Outcome: Using a combination of controls and user defined classes,
         students will create a Magic 8-Ball application.
ASSIGNMENT - 25%: complete and hand in Magic 8 Ball assignment.           

[Week 9] Maintaining State, Navigation, and Form Validation
Outcome: Students will be able implement different methods to
         maintain data across pages based on their needs.
Outcome: Students will be able to define and use different methods
         for navigation.
Outcome: Students will use ASP.NET form validation controls to
         validate user input.

[Week 10]Connecting to a Database
Outcome: Students will be able to retrieve and submit data from a SQL
         database.
Outcome: Students will be able to bind data from a DB to ASP.NET
         controls.

[Week 11]Exception Handling
Outcome: Students will be able to include exception handling logic
         within an application allowing it to recover from exceptions
         gracefully.

[Week 12]Personal Project Due

[Week 13]Client Project Due

Academic Honesty
The principle of academic honesty requires that all work submitted for evaluation and course credit be the original, unassisted work of the student. Cheating or plagiarism including borrowing, copying, purchasing or collaborating on work, except for group projects arranged and approved by the faculty member, or otherwise submitting work that is not the student's own violates this principle and will not be tolerated. Instances of academic dishonesty, including assisting another student to cheat, will be penalized as detailed in the Student Handbook. 

Students who have any questions regarding whether or not specific circumstances involve a breach of academic honesty are advised to discuss them with the faculty member prior to submitting the assignment in question. 

Discrimination and Harassment
Sheridan is committed to provide a learning environment that respects the dignity, self esteem and fair treatment of every person engaged in the learning process. Behaviour which is inconsistent with this principle will not be tolerated. Details of Sheridan's policy on Harassment and Discrimination are available in the Student Handbook.