CS 477 Mobile Application Development -
Fall 2015
Dr. Elizabeth White
Office: Engineering, Rm. 5315
Phone: 993-1586
email: white@gmu.edu - put CS477 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.
Pre-requisites
A C or better in both CS310 and CS367. STRONG programming skills.
Course Outcomes
Upon completion of this course, students should:
o Have a firm grasp of event-based computing models.
o Be able to demonstrate an understanding of and the ability to use
different types of components used in mobile platforms.
o Be able to use threading efficiently and correctly in mobile apps.
o Be able to appropriately use different types of data management for
mobile devices.
o Be able to appropriately use different types of networking options for
mobile devices.
o Have a clear understanding of the creation and use of simple user
interfaces.
o Be able to use tools to create apps for a mobile platform.
o Be able to create simple graphics for mobile devices.
o 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
Assignment
Points
Labs (10 @ 30) Approximately 1 per week related to the lecture
300
Projects (2 @ 100)
200
Exam
150
Course Project (see below)
350
Course Project: This project will use multiple elements studied in the course
and at least one 'new' element that you teach yourself how to use. You may do
this project alone or with a partner. The project will have graded
documentation checkpoints before the final due date of the finished project,
which you will demonstrate for the class.
Grading Scale (out of 1000 possible points)
o A >= 920
o A- >= 900
o B >= 820
o B- >= 800
o C >= 720
o C- >= 800
o D >= 620
o F < 600
Late work 10% first day, 20%/day after
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.
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