CS F314 Software Development for Portable Devices

Table of Contents


In the current offering of the course, we will focus on developing apps for Android platform using Java. Reasonable proficiency in Java, version controling, UML, and software engineering principles is assumed. Students will be guided through setting up Android Studio and related tools. Through sample apps, students will be exposed to basic concepts of Android apps like Activities and Fragments. Then, building upon those concepts, we will introduce handling data, networking, sensors, etc. Alongside, we will also talk about addressing enterprise requirements in mobile applications, like performance, scalability, testability, accessibility.


Course modules

We will add modules as the semester progresses.


What are the prerequisites?

Reasonable proficiency in Java, git, UML, and software engineering principles.

If you believe you are not proficient in one or more of these, please talk to me ASAP.

Is this course offered every semester?

No. It may be offered once a year.

Do we need a specific OS or environment for the assignments?

Android apps can be developed on Windows, macOS, or Linux machines. You can test your apps using device emulators - a physical android device is recommended but not required.

Can I audit this course?

According to the Academic Undergraduate Studies department: “[This] is not an audit course. A student can attend the lectures etc. but no grade or entry in the Transcript will be made.”

All lectures are available on the course website. Students can watch those as and when they like.