Jul 29th 2015

Programming Cloud Services for Android Handheld Systems: Security (Coursera)

Created by: Delivered by:

This course introduces students to basic issues in mobile cloud security, malware, and secure client/server communication. Students will learn about security risks in Android and cloud services, threat mitigation strategies, secure coding practices, and tools for managing security of devices.

A key challenge of mobile platforms is that the apps installed on a device increase the number of potential security vulnerabilities. Mistakes in app development or cloud services can lead to vulnerabilities that cause users data to be stolen, charges to user accounts, and spread of malware to a user’s friends. Ensuring that mobile cloud application developers are aware of potential vulnerabilities and avoid introducing them into their code is an essential part of building a more secure app ecosystem.

The course is designed to help students understand how to write more secure mobile cloud applications for Android. Students will be introduced to specific vulnerabilities that have affected well-known apps and be given a wide view of app threats on Android. Developers will also be introduced to the secure coding techniques that can be used to help prevent the introduction of app and cloud service vulnerabilities.

Suggested Readings:
Refactoring: Improving the Design of Existing Code
Java Concurrency in Practice
Concurrent Programming in Java™: Design Principles and Pattern, 2nd Edition
Design Patterns: Elements of Reusable Object-Oriented Software
Pattern-Oriented Software Architecture Volume 2: Patterns for Concurrent and Networked Objects
Pattern-Oriented Software Architecture Volume 4: A Pattern Language for Distributed Computing
Pattern Oriented Software Architecture Volume 5: On Patterns and Pattern Languages