The third category includes classes that are upper division
electives with prerequisites, i.e., data structures, and/or algorithm
analysis, and with goals that are similar to those of our classes.
Unfortunately, much of this work is based on specific vendors
(e.g., Blackberry [20, 21]) or platforms (e.g., Android [8, 23]),
where some of the results are not generally applicable for
technology agnostic approach, e.g., resource references specific to
Blackberry or best practices related to working with Android.
However, the general discussions and experience shared,
especially the brief but informative descriptions on results from
Elon and Appalachian State [8], provided important insights that
guided our approach, preparations, and the eventual structure for
our courses. These will be detailed in the following sections,
Lastly, there are recent discussions on re-evaluating the entire CS
education in the context of the fast changing, increasingly
powerful, ubiquitous, and wildly popular mobile technologies [5,
31]. While the topics are important, for now they are relatively
independent from a course that focuses on mobile application
development.