CPSC 5555U Wireless Web Development

CPSC 5555U Wireless Web Development

Outline

Instructor: Dr. Vladimir Zanev
Office Location/Phone Number: CCT 442, 569-3056
Office Hours: Mon, Wed, Fri: 11:00 a.m.-12:00 a.m. ,Tue: 10:00-11:30 a.m
E-mail:
Website: http://csc.colstate.edu/zanev/current_courses.asp

Class meetings:

Days / Time / Location
TR / 4:30 p.m.-5:45 p.m. / CCT 407
Course Description and Objectives

Course Description: Prerequisites - senior standing.
The CPSC 5555U/G Wireless Web Development is a solid introduction to developing Internet-based applications that can be accessed from wireless devices such as mobile phones and PDAs. The purpose of this class is to teach students how to develop applications for WAP (Wireless Application Protocol) enabled devices and how to develop voice applications with VoiceXML using different technologies and tools. The course topics cover WML, WMLScript, HDML, dynamic WAP applications with ASP, Java servlets, and JSP (Java Server Pages), VoiceXML and dynamic voice applications with server-side scripting. For WAP we will use development tools as Openwave SDK 5.1, Openwave Simulator v7, Nokia Mobile Internet Toolkit 4.1 and for VoiceXML - BeVocal Cafe development tools

Course Objectives:
Upon completion of this course the student will have an understanding of:

·  how to develop wireless Web applications using WML

·  how to implement dynamic wireless applications with WML and WMLScript

·  how to create wireless applications with HDML and how to update and maintain such applications

·  how to develop dynamic wireless applications with ASP and WML

·  how to access and use databases with dynamic wireless applications

·  how to write Java servlets and how to incorporate them in WML code

·  how to use JSP (Java Server Pages) technology to embed Java server-side code into WML

·  how to implement e-mail wireless application using Java

·  developing practical skills to use wireless developer tools such as Openwave SDK 5.1 and Nokia Mobile Internet Toolkit 4.1.

·  how to develop voice applications with VoiceXML

·  how to develop dynamic voice applications with VoiceXML and server-side programming languages

·  how to use BeVocal development tools as VoiceXML Checker, Tracing, Calling, and Debugging

Textbook and Tutorials

Textbook and Online Resources:

/ Title: Dynamic WAP Application Development
Edition: 2001
Author: Soo Mee Foo, Christopher Hoover, and Wei Meng Lee
Publisher: Manning Publications Co.
ISBN: 1-930110-08-1
/ BeVocal Cafe Documentation
Online Chapters and Resources / See the Resources Web Page
Software

Software:

·  Windows 2000/XP

·  Openwave SDK 5.1, Openwave Simulator v7

·  Nokia Mobile Internet Toolkit 4.1

·  BeVocal Cafe Platform

·  MS Access DBMS, SQL Server 2005

·  ASP, PHP, ASP.NET, Java Servlets, JSP

Methods of Instruction

Methods of Instruction:

·  Class Lectures

·  Programming Assignments

·  Exams

Class Lectures
The CPSC 5555U/G class will meet regularly TR from 4:30 p.m. - 5:45 p.m. at CCT 407. The topics covered in the class follow the course schedule. Each student is expected to attend all class lectures, to complete the textbook chapters, all required readings, and to make notes.

Assignments
Programming activities as designing and developing source code, debugging, running and testing of markup code and programs cannot be learned simply by reading. You must practice, practice, and practice solving different problems by implementing real Web applications, markup code and programs. Eight programming assignments about WML, WMLScript, HDML, VoicesXML, ASP, Java servlets, and JSP will be assigned and graded. Late assignments are not accepted for credits. All assignments are due on the day given in the assignment and no later than 11:59 PM (23:59) (Eastern Time). See the Assignments area of the class Web site for details.

The assignments have to be developed and will be graded on the student CPSC4125 Web sites at
http://csd.colstate.edu/CPSC5555/lastname_firstname.
The date of creation or modifications of your files must be before the deadline. No late submissions are allowed.

To access your Web site you have to use your:

User ID: csd\lastname_firstname1 (one at the end)
Password: sidXXXX
XXXX are the last four digits of your CSU ID

Exams

Two midterm exams and a Final Exam are scheduled. They will be take-home exams delivered through WebCT Vista. During the exam you have to develop an application that solves a problem, writing a WML, WMLScript, VoiceXML code and server-side programs. You can use your textbook, the textbook source codes, notes, and Internet resources. No make up exams will be given unless an exam was missed due to a documented emergency.

The exams have to be developed and will be graded on the student CPSC5555 Web sites at
http://csd.colstate.edu/CPSC5555/lastname_firstname.
The date of creation or modifications of your files must be before the deadline. No late submissions are allowed.

To access your Web site you have to use your:

User ID: csd\lastname_firstname1 (one at the end)
Password: sidXXXX

XXXX are the last four digits of your CSU ID

Evaluation

Evaluation
The final grade will be obtained from the following:

Programming Assignments / 8 / 40%
Exam 1 / 20%
Exam 2 / 20%
Final Exam / 20%

The letter grade will be assigned as follows:

Grade / Points
A / 90-100
B / 80-89
C / 70-79
D / 60-69
F / 0 -59

Passing grade for this class - C (see the catalog).

Student Responsibilities

Student Responsibilities

Each student is responsible to

·  manage your time and maintain the discipline required to meet the course requirements;

·  read from the textbook all topics covered in the class;

·  attend class regularly and actively participate in classroom discussions;

·  complete assignments by their due dates;

·  take the tests as they are scheduled in the course schedule;

·  abide by documented lab rules;

·  respect the value of the other students' time while in the classroom, this means no surfing the Web or playing games;

·  read any e-mail sent by the instructor and respond accordingly.

'I didn't know' is not an acceptable excuse for failing to meet the course requirements. If you fail to meet your responsibilities, you do so at your own risk.

While in the classroom, students should turn off cell phones or place them on vibrate. In addition, to be respectful of other students' time and money, if the classroom is equipped with computers, playing games and/or surfing the Web is not allowed since these activities can be distracting to other students.

Attendance Policy

Attendance Policy
Attendance at all classes and other activities (lecture periods, laboratory sessions, tests, examinations, or other schedule meetings is required of every student at Columbus State University. The attendance record begins with the first meeting of the class, and one who registers late is responsible for class work missed. Student should note that the Computer Science Faculty does not initiate 'class drops'. A student wishing to drop should complete the official procedure before the deadline. Those who violate the attendance policy after that deadline may receive an "F" at the discretion of the instructor. After the midpoint of the quarter, no drop slip will be signed by the Dean unless extreme circumstances can be proved.

Academic Dishonesty

Academic Dishonesty
Academic dishonesty includes, but is not limited to, activities such as cheating and plagiarism (http://aa.colstate.edu/advising/a.htm#AcademicDishonesty/Academic Misconduct). It is a basis for disciplinary action. Any work turned in for individual credit must be entirely the work of the student submitting the work. All work must be your own. You may share ideas but submitting identical assignments (for example) will be considered cheating. You may discuss the material in the course and help one another with debugging; however, any work you hand in for a grade must be your own. A simple way to avoid inadvertent plagiarism is to talk about the assignments, but don't read each other's work or write solutions together unless otherwise directed. For your own protection, keep scratch paper and old versions of assignments to establish ownership, until after the assignment has been graded and returned toyou. If you have any questions about this, please see me immediately. For assignments, access to notes, the course textbooks, books and other publications is allowed. All work that is not your own, MUST be properly cited. This includes any material found on the Internet. Stealing or giving or receiving any code, diagrams, drawings, text or designs from another person (CSU or non-CSU, including the Internet) is not allowed. Having access to another person's work on the computer system or giving access to your work to another person is not allowed. It is your responsibility to keep your work confidential.
No cheating in any form will be tolerated. Penalties for academic dishonesty may include:

·  a zero grade on the assignment or exam/quiz

·  a failing grade for the course

·  suspension from the Computer Science program

·  dismissal from the Computer Science program.

All instances of cheating will be documented in writing with a copy placed in the Department's files. Students will be expected to discuss the academic misconduct with the faculty members and the chairperson. For more details see the Faculty Handbook:http://aa.colstate.edu/faculty/FacHandbook0203/sec100.htm#109.14and the Student Handbook:http://sa.colstate.edu/handbook/handbook2003.pdf

ADA Accommodation Notice

ADA Accommodation Notice
If you have a documented disability as described by the Rehabilitation Act of 1973 (P.L. 933-112 Section 504) and Americans with Disabilities Act (ADA) and would like to request academic and/or physical accommodations please the Office of Disability Services in the Center for Academic Support and Student Retention, Tucker Hall 100 or at (706) 568-2330, as soon as possible. Course requirements will not be waived but reasonable accommodations may be provided as appropriate.

CPSC 5555U Wireless Web Development

Tentative Schedule

(These dates could be changed depending upon the pace of the course.)

Week
Dates / Lecture Topics / Projects and Tests
08/16, Thu / Class organization and administration
Week 1
08/21, Tue / Introduction to Wireless Application Development.
Chapter 1. Understanding WAP
08/23, Thu / Chapter 2. WAP Application Development Platforms.
Openwave Phone Simulator v7, Openwave SDK 5.1, Nokia Mobile Internet Toolkit 4.1, BeVocal Café.
Week 2
08/28, Tue / Chapter 3. Getting Started with WML
Chapter 4. Navigating with WML
08/30, Thu / Chapter 5. Getting Information
Week 3
09/04, Tue / Chapter 6. Using Variables in WML
09/06, Thu / Chapter 7. Extending WML / Assignment 1 due on 09/08, Sat
Week 4
09/11, Tue / Chapter 8. Getting Started with WMLScript
09/13, Thu / Chapter 9. Using WMLScript statements and operators / Assignment 2 due on 09/15, Sat
Week 5
09/18, Tue / Chapter 10. WMLScript functions and pragmas
09/20, Thu / Chapter 11. Getting Started with HDML
Chapter 12. Building interactivity with HDML
Review for Test 1. / Assignment 3 due on 09/22, Sat
Week 6
09/25, Tue / Test 1. WML and WMLScript
09/27, Thu / Chapter 13. Using variables in HDML
Chapter 14. Activities, bookmarks, cache, and access control / Assignment 4 due on 09/29, Sat
Week 7
10/02, Tue / Chapter 15. Wireless application design issues
10/04, Thu / Chapter 16. Converting HDML to WML
Week 8
10/09, Tue / Midpoint of the semester
Chapter 17. Introduction to MS ASP
10/12, Thu / Fall Break. No classes
Week 9
10/16, Tue / Chapter 18. Database Connectivity with ADO
10/18, Thu / Chapter 19. Using ASP to generate dynamic WAP content
Chapter 20. Using ASP to implement data-based WAP application / Assignment 5 due on 10/20, Sat
Week 10
10/23, Tue / Chapter 20. Using ASP to implement data-based WAP application.
Chapter 21. Troubleshooting your ASP/WAP Application.
Review for Test 2.
10/25, Thu / Test 2. Dynamic WAP content with ASP / Test 2 on 10/25, Thu
Week 11
10/30, Tue / Chapter 22. Introduction to Java servlets
Chapter 23. Database connectivity using JDBC
11/01, Thu / Chapter 24. Using Java servlets to generate dynamic WAP content
Chapter 25. Information tracking
Week 12
11/06, Tue / Chapter 26. Using Java servlets to implement database access
Chapter 27. Introduction to Java Server Pages
11/08, Thu / BeVocal Café Documentation
1. Getting Started with Café
Sign up and log in the Café
BeVocal Café Documentation
2. Using the BeVocal Café Tools
Editting .vxml files, VoiceXML checker and errors, calling a voice application, trace a call, debugging.
Week 13
11/13, Tue / BeVocal Café Documentation – VoiceXML Tutorial
Chapter 1. Introduction
Chapter 2. A Basic Dialog
Chapter 3. Variables, Expressions, and JavaScript
11/15, Thu / BeVocal Café Documentation – VoiceXML Tutorial
Chapter 4. Forms
Chapter 5. Prompts
Chapter 6. Interaction with Servers
Chapter 7. Other VoiceXML Elements / Assignment 5 due on 11/17, Sat
Week 14
11/20, Tue / BeVocal Café Documentation – VoiceXML Tutorial
Chapter 8. Subdialogs
Chapter 9. More on Grammars
Chapter 10. Design and Performance Considerations
Chapter 11. Example Code
11/22, Thu / Thanksgiving Break. No classes
Week 15
11/27, Tue / VoiceXML and Server-Side Languages (Online Chapters on the Resources Web Page) / Assignment 7 due on 11/27, Mon
11/29, Thu / Advanced Topics and Server-Side Development (Online Chapters on the Resources Web Page) / Assignment 8 due on 12/01, Sat
Week 16
12/04, Tue / The Future of VoiceXML (Online Chapters on the Resources Web Page)
Review for Test 3.
12/06, Thu / Test 3. Dynamic VoiceXML / Test 3 on 12/06, Thu