Syllabus - Computer Science 371M - Mobile Computing
 The University of Texas at Austin ∑ Summer 2017

Objectives: An introduction to mobile computing with a strong emphasis on application development for the Android operating system. Students will complete a major project with the goal of releasing an app on the Android Market place. Topics will include the Android development environment, user interfaces, activities, intents, content providers / content resolvers, services, broadcast receivers, persistence, MBaaS, location, sensors, graphics, and other Android features, tools, and capabilities.

Prerequisite: Computer Science 429 (or 310) or 429H (or 310H) with a grade of at least C-; and credit with a grade of at least C- or registration for Computer Science 439 (or 352 or 372) or 439H (or 352H or 372H).

Lecture: 87050 MTWHF 11:30 am - 1 pm  pm, GDC 1.304

Instructor, Mike Scott, email: office: GDC 6.304 .

Office Hours: Monday, Wednesday, Thursday, 1 - 2 pm in GDC 6.304. If you cannot make these hours email me to request an appointment.


Teaching Assistant:  
Michael Nguyen, email:

Lab hours: Tuesday and Friday 1 - 2 pm in third floor GDC public computer lab.

Website: We will also use Canvas for most course materials, grades, submissions, and some project related tasks.

Textbook (Strongly Recommended):

Class Participation, iClicker

 Computing Facilities:

Android Device: You are NOT required to have an Android Device. Development can be done on the Android Emulator. However there is no substitute for testing on a real device. I have multiple Android dev phones and tablets available for checkout during lab hours.

If you do want to purchase an Android device past students have favored Google Nexus tablets. Current version is the Nexus 9 tablet, but the older Nexus 7's work as well. The only downside to tablets is they lack telephony capability.

Software: Android development is done in Java. The Microlab computers in GDC are set up to do Android programming.


You are strongly encouraged to work on your own computer. The following software is required and freely available.

Class Discussion Tool: I have set up a discussion group for the class on Piazza.

Schedule: A schedule of lecture topics, reading assignments, and assignment distribution and due dates is available online, via the class web page,  The schedule lists topics and readings. The schedule is subject to change.


Assignments and Projects (Listed by Due Date)

Topic Due Date Points
Assignment 0, Mobile News Story Various 20
Attendance, 2 points per lecture Lecture 50
Tutorial 1 7/11 10
Assignment 1 - App Reviews 7/13 50
Tutorial 2 7/14 50
Tutorial 3 7/17 50
Tutorial 4 7/19 50
Assignment 2 - App Proposals - Written. Posters are due on assigned poster day. 7/20 125
Tutorial 5 7/21 50
App Groups with Target App 7/24 None
Tutorial 6 7/24 50
Assignment 3 - Design Document and Paper Mockup 7/27 70
Assignment 4 - Alpha Release 8/2 100
Assignment 5 - Alpha Peer Evaluations 8/7 75
Assignment 6 - "How to ..." Writeup 8/10 50
Assignment 7 Beta Release and Beta Demo Demos: 8/10 and 8/11
Final Project: 8/14
Assignment 8 Team Member Evaluations 8/14 10


Academic Honesty: Taken from the CS department Code of Conduct.

"The University and the Department are committed to preserving the reputation of your degree. It means a lot to you. In order to guarantee that every degree means what it says it means, we must enforce a strict policy that guarantees that the work that you turn in is your own and that the grades you receive measure your personal achievements in your classes:

Every piece of work that you turn in with your name on it must be yours and yours alone unless explicitly allowed by an instructor in a particular class. Specifically, unless otherwise authorized by an instructor:

You are responsible for complying with this policy in two ways:

  1. You must not turn in work that is not yours, except as expressly permitted by the instructor of each course.
  2. You must not enable someone else to turn in work that is not theirs. Do not share your work with anyone else. Make sure that you adequately protect all your files. Even after you have finished a class, do not share your work or published answers with the students who come after you. They need to do their work on their own.

The penalty for academic dishonesty will be a course grade of F and a referral of the case to the Dean of Students. Further penalties, including suspension or expulsion from the university may be imposed by that office.

One final word: This policy is not intended to discourage students from learning from each other, nor is it unmindful of the fact that most significant work in computer science and in the computing industry is done by teams of people working together. But, because of our need to assign individual grades, we are forced to impose an otherwise artificial requirement for individual work. In some classes, it is possible to allow and even encourage collaboration in ways that do not interfere with the instructor's ability to assign grades. In these cases, your instructor will make clear to you exactly what kinds of collaboration are allowed for that class."

For CS371M I expect you to complete the tutorials on your using the provided code when given.

For your projects I expect you to do significant work on your own.

You can use class examples and examples from the web, but these must be documented.

To be clear, a significant amount of work on your project must be your own, but it is okay to incorporate code samples and 3rd party libraries.

For more information on Scholastic Dishonesty see the University Policy on Scholastic Dishonesty

Important Dates for Changing Academic Status and Dropping the Course: Refer to the Registrar's academic calendar for the deadlines for changes in academic status. Highlights are:

See the College of Natural Science Guidelines and Procedures page for more information. (

Students experiencing significant nonacademic problems (extended health problems or family emergencies) should contact the CNS Deanís Office (WCH 1.106, (512) 471-4536) or the Dean of Studentís Office ( for assistance.

Religious Holidays: By UT Austin policy, you must notify me of your pending absence at least fourteen days prior to the date of observance of a religious holy day. If you must miss a class, an examination, a work assignment, or a project in order to observe a religious holy day, you will be given an opportunity to complete the missed work within a reasonable time after the absence.

Students with Disabilities: students with disabilities may request appropriate academic accommodations from the Division of Diversity and Community Engagement, Services for Students with Disabilities, 471-6259,

Many thanks to Professor Frank McCown of Harding University and Professor David Janzen of Cal Poly - San Luis Obispo for sharing their Android app development materials with me.

To the CS 371M home page