This is a graduate research-oriented course. Each student will read, summarize, and present several scientific papers. Students will work in pairs or groups of three to propose, implement, and present an original project that advances the state-of-the-art in mobile application analysis. The course will also focus on polishing the students' research, development, communication, and technical presentation skills.
Week | Topic | Major Deadlines |
---|---|---|
W1: Jan. 2 |
Introduction; mobile application development, Android development principles; mobile security, privacy and energy-efficiency [instructor] |
|
W2: Jan. 9 |
Software analysis principles: static and dynamic program analysis, symbolic execution, model checking [instructor] |
By 2pm on Jan. 7, select papers you would like to present here. |
W3: Jan. 16 |
Privacy
|
Finalize groups and project topic by the beginning of class. January 14: Last day to withdraw |
W4: Jan. 23 |
Privacy
|
|
W5: Jan. 30 |
Security
|
Project proposal are due by the beginning of class |
W6: Feb. 6 |
Project proposal presentations [students] |
|
W7: Feb. 13 |
Security
|
|
W8: Feb. 20 |
Midterm Break - No classes | |
W9: Feb. 27 |
Input generation and testing
|
|
W10: Mar. 6 |
No class | |
W11: Mar. 13 |
Input generation and testing
|
First project report is due by the beginning of class |
W12: Mar. 20 |
Energy-efficiency
|
|
W13: Mar. 27 |
Energy-efficiency
|
|
W14: Apr. 3 |
Workshop: project presentations and demos [students] |
|
W15: April 10 |
Final project report is due by April 10 |
For weeks 3-5, 7, and 9-13 students will read the assigned research papers (two or three papers each week). Each student will submit a one-page summary of each paper that describes (a) the main idea of the paper, (b) a critical review that includes paper strengths and weaknesses (beyond those listed in the paper), and (c) suggestions for improvement and follow-up work.
Each week, a student will present one of the assigned research papers to the class (two or three students each week). The student should summarize the paper, discuss its strengths and weaknesses, and lead the discussion on the paper. Depending on the number of course participants, each student will present 1-2 papers. Students do not need to submit summaries of the papers they present.
By 2pm PST on January 7, 2019, please indicate which papers you would like to present. Use this form to select up to 6 papers. I will do my best to satisfy everyone's preferences and will give priority to earlier records in case multiple students are interested in the same paper.
The majority of evaluation for the course is based on the course project. The expectation for the project is to generate novel insights relevant to the mobile application ecosystem. That can include novel mobile application development paradigms, novel application analysis techniques, discovery of previously unknown vulnerabilities in mobile applications, collection of statistical data on existing vulnerabilities and their impact on the society, or novel literature reviews. Come to talk to the course instructor if you want some ideas for inspiration!
The project will be performed by groups of 2-3 students. The scope of each group's project should match the number of students involved.
There are five deliverables for the project:
This course does not have a final exam. The attendance in lectures is mandatory. The grading is based on four components: