Engineering Maintainable Android Apps (Coursera)

Offered by Vanderbilt University,
Engineering Maintainable Android Apps (Coursera)

Engineering Maintainable Android Apps, which is a 4 week MOOC that shows by example various methods for engineering maintainable Android apps, including test-driven development methods and how to develop/run unit tests using JUnit and Robotium (or equivalent automated testing frameworks for Android), as well as how to successfully apply common Java/Android software patterns to improve the extensibility and clarity of Android apps.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Students will work incrementally on a hands-on project that systematically adds pattern-oriented enhancements to the app they developed in MOOC #3, along with the appropriate automated unit tests, i.e., each week they will add new functional and unit testing capabilities to their app project, based on the material covered in the lecture videos. These lessons will demonstrate the benefits of good software engineering practices that are targeted at creating maintainable code for mobile apps.
There will be roughly 3-4 hours of student engagement time per week, including video lectures, quizzes, and programming assignments. The ordering of the modules within the course is designed to be flexible. In particular, students can watch the videos in whatever order suits their experience and needs, e.g., they may want to watch the unit testing videos prior to the software pattern videos if they prefer to learn about unit testing first.

Course 4 of 5 in the Android App Development Specialization.

Syllabus

WEEK 1
MOOC Overview
Engineering Maintainable Android Apps, which is a 4 week MOOC that shows by-example various methods for engineering maintainable Android apps, including test-driven development methods and how to develop/run unit tests using JUnit and Robotium (or equivalent automated testing frameworks for Android), as well as how to successfully apply common Java/Android software patterns to improve the extensibility and clarity of Android apps.
Software Engineering & Testing I

WEEK 2
Software Engineering & Testing II

WEEK 3
Security & Sustainability I

WEEK 4
Security & Sustainability II
This module provides an introduction to Unit Testing using the Junit 4.0 Framework in Android, as well as an introduction to Testing Frameworks using the Robotium open-source test framework for writing graybox testing cases to automate the testing of multi-Activity Android apps.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Creative Programming for Digital Media & Mobile Apps (Coursera) Coursera
University of London,Goldsmiths, University of London

Creative Programming for Digital Media & Mobile Apps (Coursera)

This course is for anyone who would like to apply their technical skills to creative work ranging from video games to art installations to interactive music, and also for artists who would like to use programming in their artistic practice. This course will teach you how to develop and apply programming skills to creative work. This is an important skill within the development of creative mobile applications, digital music and video games. It will teach the technical skills needed to write software that make use of images, audio and graphics, and will concentrate on the application of these skills to creative projects. Additional resources will be provided for students with no programming background.

Nov 9th 2026
5-12 Weeks
Cybersecurity for Everyone (Coursera) Coursera
University of Maryland, College Park

Cybersecurity for Everyone (Coursera)

Cybersecurity affects everyone, including in the delivery of basic products and services. If you or your organization want to better understand how to address your cybersecurity, this is the course for you and your colleagues to take -- from seasoned professionals to your non-technical colleagues. Your instructor, Dr. Charles Harry, has served on the front lines with the NSA (National Security Agency) and as an expert advising corporate and institutional leaders on managing cybersecurity risk.

Nov 16th 2026
5-12 Weeks
Introduction to Physical Chemistry (Coursera) Coursera
University of Manchester

Introduction to Physical Chemistry (Coursera)

Chemical reactions underpin the production of pretty much everything in our modern world. But, what is the driving force behind reactions? Why do some reactions occur over geological time scales whilst others are so fast that we need femtosecond-pulsed lasers to study them? Ultimately, what is going on at the atomic level? Discover the answers to such fundamental questions and more on this course in introductory physical chemistry.

Nov 16th 2026
5-12 Weeks
Quantitative Formal Modeling and Worst-Case Performance Analysis (Coursera) Coursera
EIT Digital

Quantitative Formal Modeling and Worst-Case Performance Analysis (Coursera)

Welcome to Quantitative Formal Modeling and Worst-Case Performance Analysis. In this course, you will learn about modeling and solving performance problems in a fashion popular in theoretical computer science, and generally train your abstract thinking skills. After finishing this course, you have learned to think about the behavior of systems in terms of token production and consumption, and you are able to formalize this thinking mathematically in terms of prefix orders and counting functions. You have learned about Petri-nets, about timing, and about scheduling of token consumption/production systems, and for the special class of Petri-nets known as single-rate dataflow graphs, you will know how to perform a worst-case analysis of basic performance metrics, like throughput, latency and buffering.

Nov 16th 2026
4 Weeks
Internet of Things: Setting Up Your DragonBoard™ Development Platform (Coursera) Coursera
University of California, San Diego

Internet of Things: Setting Up Your DragonBoard™ Development Platform (Coursera)

Do you want to develop skills to prototype mobile-enabled products using state-of-the-art technologies? In this course you will build a hardware and software development environment to guide your journey through the Internet of Things specialization courses. We will use the DragonBoard™ 410c single board computer (SBC).

Nov 16th 2026
5-12 Weeks
Designing Effective Science Communication (Coursera) Coursera
University of Colorado Boulder

Designing Effective Science Communication (Coursera)

Although many would prefer to leave science in the past and no longer engage with it once completing compulsory science classes in school, the reality is that engaging with science is an integral part of our daily lives. Moreover, for the safety and wellness of human society, it is necessary to engage with scientific information. We are faced with the necessity of examining scientific evidence on topics ranging from conservation to public health and make decisions that impact not only our families but those around us.

Nov 16th 2026
5-12 Weeks
Cyber Security Fundamentals (Coursera) Coursera
University of London

Cyber Security Fundamentals (Coursera)

This course is intended to provide a general introduction to key concepts in cyber security. It is aimed at anyone with a good general knowledge of information and communications technology. The nature, scope and importance of cyber security are explained, and key concepts are justified and explored. This includes examining the types of threat that cyber security must address, as well as the range of mechanisms, both technological and procedural, that can be deployed.

Nov 15th 2026
3 Weeks
L'Art des Structures 2 : treillis, poutres, dalles et cadres (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

L'Art des Structures 2 : treillis, poutres, dalles et cadres (Coursera)

Les structures en treillis, en poutre, en dalles et en cadre sont essentielles pour une grande partie des constructions modernes : immeubles pour l'habitation ou de bureaux, halles et usines, ponts, ou passerelles, voies de transport de l'énergie ou des télécommunications, stades et grandes toitures. Le cours L'Art des Structures 2 vous propose d'en découvrir le fonctionnement et les bases de leur dimensionnement.

Nov 23rd 2026
5-12 Weeks
Advanced Modeling for Discrete Optimization (Coursera) Coursera
University of Melbourne,The Chinese University of Hong Kong

Advanced Modeling for Discrete Optimization (Coursera)

Optimization is a common form of decision making, and is ubiquitous in our society. Its applications range from solving Sudoku puzzles to arranging seating in a wedding banquet. The same technology can schedule planes and their crews, coordinate the production of steel, and organize the transportation of iron ore from the mines to the ports. Good decisions in manpower and material resources management also allow corporations to improve profit by millions of dollars.

Nov 9th 2026
5-12 Weeks
Learn React Router 6 (Coursera) Coursera
Scrimba

Learn React Router 6 (Coursera)

Learn React Router v6, the most popular routing library for React applications and one of the most downloaded React support libraries ever. In this course, you’ll learn the most important parts of the React Router (v6) library while building an app called “VanLife”, an app for renting decked-out travel vans for your next road trip adventure.

Nov 16th 2026
3 Weeks
Security Management and Governance (Coursera) Coursera
Royal Holloway, University of London

Security Management and Governance (Coursera)

In this course you will look at some of the key components of practical cyber security management and its governance. This includes what happens when things go wrong, understanding how organisations can respond to incidents, through to the essential role of people in achieving better cyber security outcomes. Together, you will examine how incident management, cyber resilience, and developing an effective appreciation of people, not simply as users but as active participants, can enable better cyber security outcomes.

Nov 16th 2026
4 Weeks
Programando con Java para aplicaciones Android (Coursera) Coursera
Universidad Nacional Autónoma de México

Programando con Java para aplicaciones Android (Coursera)

¡Aprende lo mejor de Java para el desarrollo en Android! Descubre lo necesario para construir tus aplicaciones móviles de una forma sencilla, objetiva y práctica. A lo largo del curso, verás diversos ejemplos para crear tu primer Hola Mundo y practicarás la programación orientada a objetos.

Nov 16th 2026
3 Weeks