Engineering Maintainable Android Apps
Description
When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan .
- Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
- Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.
About this course: 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. Students will work on the appropriate automated unit quizzes, 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 …
Frequently asked questions
There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.
When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan .
- Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
- Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.
About this course: 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. Students will work on the appropriate automated unit quizzes, 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, and quizzes. 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.
Created by: Vanderbilt University-
Taught by: Dr. Douglas C. Schmidt, Professor of Computer Science and Associate Chair of the Computer Science and Engineering Program
Electrical Engineering and Computer Science -
Taught by: Michael Walker, Instructor - Graduate Student pursuing PhD in Computer Science
EECS -
Taught by: Dr. C. Jules White, Assistant Professor of Computer Science
Electrical Engineering and Computer Science
每门课程都像是一本互动的教科书,具有预先录制的视频、测验和项目。
来自同学的帮助与其他成千上万的学生相联系,对想法进行辩论,讨论课程材料,并寻求帮助来掌握概念。
证书获得正式认证的作业,并与朋友、同事和雇主分享您的成功。
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.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.
1 video expand
- Video: Course Intro
Software Engineering & Testing I
7 videos expand
- Video: Software Engineering as Search
- Video: Why Test?
- Video: Unit Testing
- Video: Unit Testing with Android Studio
- Video: The Importance of Test Automation
- Video: Code Coverage
- Video: Styles of Testing
- 同学互评: Assignment: Testing (Optional)
Graded: Testing I Quiz
WEEK 2
Software Engineering & Testing II
7 videos expand
- Video: Functional & Non-functional Properties
- Video: Refactoring
- Video: Refactoring and Regression Testing
- Video: Integration Testing
- Video: Integration Testing with Android Studio
- Video: Mock Objects with Android Studio
- Video: UI Testing with Espresso in Android Studio
Graded: Testing II Quiz
WEEK 3
Security & Sustainability I
9 videos expand
- Video: Security & Sustainability
- Video: Economy of Mechanism
- Video: Economy of Mechanism Example
- Video: Least Privilege
- Video: Least Privilege Example
- Video: Complete Mediation
- Video: Complete Mediation Example
- Video: Secure Defaults
- Video: Secure Defaults Example
Graded: Security I Quiz
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.
13 videos expand
- Video: Traditional App Accounts
- Video: Traditional vs. Mobile App Accounts
- Video: App Account Mapping to Linux Users
- Video: Apps Lie & Steal
- Video: How Android Protects Apps
- Video: What Android Does Not Protect
- Video: The Challenges of Secure Coding
- Video: Security Vulnerability Walkthrough
- Video: The iRemember App Example
- Video: Privilege Escalation I
- Video: Privilege Escalation II
- Video: Privilege Escalation III
- Video: Course Wrap-up
Graded: Security II Quiz
Share your review
Do you have experience with this course? Submit your review and help other people make the right choice. As a thank you for your effort we will donate $1.- to Stichting Edukans.There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.