CS 499 Mobile Application Development - Fall 2013
Dr. Elizabeth White
Office: Engineering, Rm. 5315
Phone: 993-1586
email: white@gmu.edu - put CS499 in subject line
Office Hours: TBD or by appt
Course Content
This course will teach fundamental programming principles with a focus on the mobile environment and the Android Platform. The course emphasizes practical application of numerous academic concepts.
This course is intended to be a project-based course. The introductory weeks focus on essentials needed to work on these projects. Students will complete multiple small labs and one final course project. Each student will design and implement an application for the final project. Course projects will be written in Java for the Android platform using the Android SDK.
Designing applications for a mobile device present unique challenges. User interface, mobile-specific technologies, and the importance of performance require special consideration. The Android SDK has its own interesting aspects to learn: the multi-touch model, accelerometer, important APIs will receive attention. Students will learn important development concepts applicable to any environment as well as Android specific APIs. Motorola Droid devices will be made available at various times throughout the semester to support application development & testing.
Pre-requisites
A C or better in both CS310 and CS367
Course Outcomes
Upon completion of this course, students should:
- Have a firm grasp of event-based computing models.
- Be able to demonstrate an understanding of and the ability to use different types of components used in mobile platforms.
- Be able to use threading efficiently and correctly in mobile apps.
- Be able to appropriately use different types of data management for mobile devices.
- Be able to appropriately use different types of networking options for mobile devices.
- Have a clear understanding of the creation and use of simple user interfaces.
- Be able to use tools to create apps for a mobile platform.
- Be able to create simple graphics for mobile devices.
- Have an understanding of the importance, role and use of security on mobile devices.
Textbooks
There is no required text for this class. Information about online resources will be provided to students.
Grading Policies
- Exams: 30% (Final Exam & Midterm)
Students claiming an excused absence must apply in writing and furnish documentary support (such as from a health care professional who treated the student) for any assertion that the absence qualifies as an excused absence. The support should explicitly indicate the dates and times the student was incapacitated due to illness and provide contact information for verification. Self-documentation of illness is not sufficient support to excuse an absence.
- Programming Project & Labs: 40%
There will be weekly labs and two larger projects assigned.
- Course Project: 30%
This project will use multiple elements studied in the course and at least one 'new' element that you teach yourslef how to u se. The project will have documentation checkpoints before the final due date of the finished project, which you will demonstrate for the class. You may do this project alone or with a partner.
Honor Code
You are expected to abide by the honor code. Programming assignments and
exams are individual efforts. Information on the university honor code
can be found at:
http://jiju.gmu.edu/catalog/apolicies/honor.html
This semester I will probably be using similarity detection software to
assist me in finding honor code violations, should they occur.