CSC 360 Seminar: Mobile and Locative Computing

CSC360: Mobile and Locative Computing

Classes: Monday – Wednesday 1.10 – 2.30 p.m.

Location: Ford Hall 345

Instructor: Dr. Şadi Evren ŞEKER (Office: Ford Hall 252)

Office Hours

  • Tuesday, 13.00 – 16.00
  • Other times by appointment/as available
  • Lunch meetings available by request for small groups

E-Mail: mobile@sadievrenseker.com

Web Site: http://sadievrenseker.com/wp/?p=1172

Course Content:

Emphases are on developing applications as a community that run on the Android platform.

Students planning to enroll in this course should have background in computer science and be familiar with Java, XML, and unix.

This course will also give students insight to today’s common procedures for getting their mobile application work academically published

 

Objectives:

  1. Be competent in programming in an event-based model used in application development for mobile devices
  2. Be able to write and deploy a content based application using a mobile computing software framework.
  3. Be able to describe the differences in software development between mobile device programming and server application programming, and develop applications that incorporate both programming methods to efficiently construct a single application task.
  4. Understand and be able to implement the Model, View, Controller (MVC) architecture pattern and use to properly separate your application into layouts, activities and classes.

Expected Outcomes of The Course

  • Getting used to the Android Studio environment and Java Programming Language
  • Understanding a new Operating System architecture (Android)
  • Using XML in real life and designing Java Views
  • Understanding and being able to program for user interactions on Android’s event system
  • Being able to code for the Canvas objects and screen drawings
  • Understanding the design of Android applications and being able to navigate through Android API and documentations
  • Debugging android applications
  • Code optimization for low resources (like low-memory or low-power)
  • Understanding and using the emulators for Android devices.

Texts:

  • There is no required text, however if you enjoy using a text to learn at your own pace I can recommend the following:
    Android Programming The Big Nerd Range Guide
    Android How To Program Second Edition by Deitel
  • Also, https://developer.android.com will be the best source for most part of the course

—Grading: Attendance on Project Meetings (20%), —Course Presentation (30%), Final Project Presentation  (50%)

Course Outline:

 

  • Class 26, May 3: Project Presentations 2

Course Presentation Details:

  • Course presentations are for 2 people and you will make a research about the topic provided to you. The talk is limited to 1 hour and rest of the class will be up for the discussions and questions.
  • You can group up with a friend and apply for one of the presentations until Feb 6 midnight.
  • Please send your friends and your name together with the topic you request as an email to the course email (on top of this page).
  • The projects will be assigned in first come first gets basis (so, if more than 1 group request for the same topic, the first request will be considered and the other requests will be informed about the situation within 24 hours, so you can pick another topic).
  • If you have not selected a topic until Feb 6 midnight, a topic and a group member will be assigned to you automatically (you can also request an auto-assignment with a friend of you, so you will be in the same team but the topic will be auto-assigned)
  • Please send me all the materials (like presentation files) at least 2 days in advance to your presentations (I will publish them from the web page) so audience can take notes or get prepared before your presentation.

Term Project Details

  • You are asked to come with a new project idea for the course.
  • The idea should be useful for the society (please explain the benefits of project to the society in your proposal).
  • The idea should cover some basic course content like (but not limited to) : User Interface, Data Management, Sound Effects / Music (you can also add location or server connection if you want to).
  • Term Projects are for 2 people (not the same group member from the course presentation)
  • We have 4 project meetings on the course schedule and we will discuss your project progress (A detailed list of meeting will be available later, so you can only come on your time slot or you can come and listen for the rest of the projects and get an idea)
  • Attendance to the project meetings is very important and it will be graded with 20% of overall grade (if you have something really important to cancel the project meeting, please let me know and I can schedule another time (like office hours) )
  • Term Project Presentations will be at the last 2 weeks of the term and the day will be assigned randomly (you can present at May 1 or May 3, so get prepared for May 1)
  • A sample proposal outline:
    • 1. Title of Project and Group Name (Please be creative about group names and project names 🙂 )
    • 2. Introduction: Project idea and brief introduction about your motivation to the project, why do you want to do such a project? What is the benefit for the society?
    • 3. Possible user interactions (how many screens do you plan to implement, what are the user interactions in each screen)
    • 4. Possible data management plan (if you want to store some information, what, where and how will you store)
    • 5. Conclusion: your expectations from the project and possible outcomes and benefits of the project.

Important Notes:

Course Presentations are for 2 people and Term Projects are for 2 people (not same 2 people)

Collaboration Policy: You may freely use internet resources and your course notes in completing assignments and quizzes for this course. You may not consult any person other than the professor when completing quizzes or exams. (Clarifying questions should be directed to the professor.) On assignments you may collaborate with others in the course, so long as you personally prepare the materials submitted under your name, and they accurately reflect your understanding of the topic. Any collaborations should be indicated by a note submitted with the assignment.

Announcements

Please fill the knowledge card attached here, and send it back via email.