About this Course
5,711 recent views

100% online

Start instantly and learn at your own schedule.

Flexible deadlines

Reset deadlines in accordance to your schedule.

Approx. 11 hours to complete

Suggested: 9 hours/week...


Subtitles: English

Skills you will gain

Software TestingUnit TestingAndroid Software DevelopmentJunit

100% online

Start instantly and learn at your own schedule.

Flexible deadlines

Reset deadlines in accordance to your schedule.

Approx. 11 hours to complete

Suggested: 9 hours/week...


Subtitles: English

Learners taking this Course are

  • Software Engineers
  • Data Engineers
  • Research Assistants
  • Technical Support Associates
  • Data Scientists

Syllabus - What you will learn from this course

6 minutes to complete

MOOC Overview

1 video (Total 6 min)
1 video
3 hours to complete

Software Engineering & Testing I

7 videos (Total 67 min), 2 quizzes
7 videos
Why Test?5m
Unit Testing8m
Unit Testing with Android Studio21m
The Importance of Test Automation8m
Code Coverage9m
Styles of Testing6m
1 practice exercise
Testing I Quiz20m
2 hours to complete

Software Engineering & Testing II

7 videos (Total 83 min), 2 quizzes
7 videos
Refactoring and Regression Testing4m
Integration Testing6m
Integration Testing with Android Studio17m
Mock Objects with Android Studio20m
UI Testing with Espresso in Android Studio24m
2 practice exercises
Testing II Quiz20m
Optional Assignment 1: Android Test Driven Development (Programming)2m
1 hour to complete

Security & Sustainability I

9 videos (Total 63 min), 1 quiz
9 videos
Economy of Mechanism4m
Economy of Mechanism Example17m
Least Privilege6m
Least Privilege Example7m
Complete Mediation3m
Complete Mediation Example8m
Secure Defaults5m
Secure Defaults Example7m
1 practice exercise
Security I Quiz20m
2 hours to complete

Security & Sustainability II

13 videos (Total 90 min), 1 quiz
13 videos
Traditional vs. Mobile App Accounts5m
App Account Mapping to Linux Users4m
Apps Lie & Steal4m
How Android Protects Apps13m
What Android Does Not Protect14m
The Challenges of Secure Coding2m
Security Vulnerability Walkthrough7m
The iRemember App Example3m
Privilege Escalation I5m
Privilege Escalation II4m
Privilege Escalation III6m
Course Wrap-up13m
1 practice exercise
Security II Quiz10m
41 ReviewsChevron Right


started a new career after completing these courses


got a tangible career benefit from this course


got a pay increase or promotion

Top reviews from Engineering Maintainable Android Apps

By RLOct 7th 2017

Dr White is always a pleasure to learn from. He has presented a large amount of vital information in a relatively short, concise and palatable manner. Looking forward to the next course. \m/

By HRDec 7th 2017

a great course in terms of security specially the Plexiglas used by the instructor which was used in Picasso's paintings. the concept is very helpful. thanks. great effort



Dr. Douglas C. Schmidt

Professor of Computer Science and Associate Chair of the Computer Science and Engineering Program
Electrical Engineering and Computer Science

Michael Walker

Instructor - Graduate Student pursuing PhD in Computer Science

Dr. Jules White

Associate Professor of Computer Science
Electrical Engineering and Computer Science

About Vanderbilt University

Vanderbilt University, located in Nashville, Tenn., is a private research university and medical center offering a full-range of undergraduate, graduate and professional degrees....

About the Android App Development Specialization

This Specialization enables learners to successfully apply core Java programming languages features & software patterns needed to develop maintainable mobile apps comprised of core Android components, as well as fundamental Java I/O & persistence mechanisms. The Capstone project will integrate the material from throughout the Specialization to exercise and assess the ability of learners to create an interesting Android app by applying knowledge and skills learned in previous MOOCs, including Java programming features, Android Studio tools, Android Activity components, Material Design, file I/O and data persistence, unit testing, and software patterns. The project itself will be similar in design goals to previous assignments, however it will provide less of the skeleton code than earlier MOOCs provide to enable more creativity to learners and greater opportunity for learners to customize the app....
Android App Development

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.