This presentation is about a lecture I gave within the "Green Lab" course of the Computer Science master, Software Engineering and Green IT track of the Vrije Universiteit Amsterdam: http://masters.vu.nl/en/programmes/computer-science-software-engineering-green-it/index.aspx
http://www.ivanomalavolta.com
1. 1 Het begint met een idee
Future research challenges
(within the Green Lab)
The Green Lab team
2. Vrije Universiteit Amsterdam
Announcement
● Guest lecture by Alberto Bacchelli
○ VU Green Office http://www.greenofficevu.nl/
○ Room HG KC-18
○ Thursday October 20th, 11 AM
TOPIC: Mining software repositories
3. Vrije Universiteit Amsterdam
3
Roadmap
1. The hidden costs of 3rd party libraries in mobile web apps
2. Understanding how context-awareness is realized in mobile
apps
3. Hybrid mobile apps - a cross-store exploratory study
4. A cross-store study on performance-related commits in
mobile apps
5. An exploratory study on the usage of networking protocols in
mobile apps
6. Software Sustainability: A Systematic Mapping
7. Measuring the scientific impact of software
S2 group / Future research challenges
4. Vrije Universiteit Amsterdam
4
The hidden costs of 3rd party libraries in mobile
web apps
S2 group / Future research challenges
1
● Thousands of JavaScript libraries out there
● Every web developer uses them
5. Vrije Universiteit Amsterdam
5
The hidden costs of 3rd party libraries in mobile
web apps
+ speed up the development process via code reuse
- may impact the performance and energy consumption
- download
- parsing
- execution
S2 group / Future research challenges
1
7. Vrije Universiteit Amsterdam
7
The hidden costs of 3rd party libraries in mobile
web apps
Main steps:
1. research questions formulation and experiment design
2. development of a generic slicing algorithm that reduces a
javaScript codebase to only the strictly needed functions
3. dataset building (~1000 real mobile web apps)
4. experiment execution
5. data analysis
6. reflection
Contacts: Ivano Malavolta, Giuseppe Procaccianti
S2 group / Future research challenges
1
8. Vrije Universiteit Amsterdam
8
The hidden costs of 3rd party libraries in mobile
web apps
References
● Nejati, Javad, and Aruna Balasubramanian. "An in-depth study of mobile
browser performance." Proceedings of the 25th International Conference on
World Wide Web. International World Wide Web Conferences Steering
Committee, 2016.
● Thiagarajan, Narendran, et al. "Who killed my battery?: analyzing mobile
browser energy consumption." Proceedings of the 21st international conference
on World Wide Web. ACM, 2012.
S2 group / Future research challenges
1
9. Vrije Universiteit Amsterdam
9
Understanding how context-awareness is realized
in mobile apps
● This app works in a specific context depending on the current
location of the user
S2 group / Future research challenges
context added value
2
10. Vrije Universiteit Amsterdam
10
Understanding how context-awareness is realized
in mobile apps
CONTEXT
The mode, medium and environment in which users perform
their tasks
There are 3 different types of context:
● physical context
● media context
● modal context
S2 group / Future research challenges
2
12. Vrije Universiteit Amsterdam
12
Understanding how context-awareness is realized
in mobile apps
THESIS
Exploration into how software developers extract contextual
information when developing mobile apps
DATASET: >10k real mobile apps (already mined)
TOOL: extract key parts of a mobile app where it is accessing the
context of its users
OUTPUT: catalogue of patterns of use of context + guidelines and
tactics for better considering contextual information in mobile apps
S2 group / Future research challenges
2
13. Vrije Universiteit Amsterdam
13
Understanding how context-awareness is realized
in mobile apps
References
● Google Awareness API
○ https://developers.google.com/awareness
● Sentiance SDK
○ http://www.sentiance.com
Contacts: Ivano Malavolta, Edwin Hermkens (PharmIT)
S2 group / Future research challenges
2
19. Vrije Universiteit Amsterdam
19
Hybrid mobile apps - a cross-store exploratory
study
THESIS: to extend the performed study on iOS apps
Focus on
→ difference of ratings across stores (Google Play vs Apple)
→ difference of perceptions across the two types of users
○ value
○ performance
○ bugginess
○ size
S2 group / Future research challenges
3
20. Vrije Universiteit Amsterdam
20
Hybrid mobile apps - a cross-store exploratory
study
References
● Malavolta, Ivano, et al. "Hybrid mobile apps in the google play
store: An exploratory investigation." Mobile Software
Engineering and Systems (MOBILESoft), 2015 2nd ACM
International Conference on. IEEE, 2015.
● Malavolta, Ivano, et al. "End Users' Perception of Hybrid Mobile
Apps in the Google Play Store." 2015 IEEE International
Conference on Mobile Services. IEEE, 2015.
Contact: Ivano Malavolta
S2 group / Future research challenges
3
21. Vrije Universiteit Amsterdam
21
A cross-store study on performance-related
commits in mobile apps
S2 group / Future research challenges
4
RQ1: To what extent developers consider performance issues
of Android apps?
RQ2: What are the concerns that developers have when
dealing with performance issues of Android apps?
22. Vrije Universiteit Amsterdam
22
A cross-store study on performance-related
commits in mobile apps
S2 group / Future research challenges
4
● Apps identification
23. Vrije Universiteit Amsterdam
23
A cross-store study on performance-related
commits in mobile apps
S2 group / Future research challenges
4
● Performance-related commits
Keyword-based approach:
wait, slow, fast, lag, tim, minor, stuck, instant, respons, react,
speed, latenc, perform, throughput, hang, memory, leak
Results:
535 candidate performance-related commits,
78 false positives
→ 457 true performance-related commits
24. Vrije Universiteit Amsterdam
24
A cross-store study on performance-related
commits in mobile apps
S2 group / Future research challenges
4
25. Vrije Universiteit Amsterdam
25
A cross-store study on performance-related
commits in mobile apps
THESIS: to extend the performed study on iOS apps
Focus on
→ different number of performance-related commits across
stores (Google Play vs Apple)?
→ different types of commits?
→ how much overlap among categories?
S2 group / Future research challenges
4
26. Vrije Universiteit Amsterdam
26
A cross-store study on performance-related
commits in mobile apps
References
● Das, Teerath, Massimiliano Di Penta, and Ivano Malavolta. "A
Quantitative and Qualitative Investigation of Performance-
Related Commits in Android Apps." International Conference on
Software Maintenance and Evaluation, IEEE, 2016.
Contact: Ivano Malavolta
S2 group / Future research challenges
4
27. Vrije Universiteit Amsterdam
27
An exploratory study on the usage of networking
protocols in mobile apps
S2 group / Future research challenges
5
Network
Recurrent protocols
● HTTP
● Web sockets
● ...
28. Vrije Universiteit Amsterdam
28
An exploratory study on the usage of networking
protocols in mobile apps
● Every protocol has its features, e.g.:
○ HTTP1/HTTP2
■ many implementations
■ wide spread
■ authentication mechanisms already implemented
■ firewall-friendly
○ Web sockets
■ lightweight
■ bidirectional
■ full-duplex
S2 group / Future research challenges
5
29. Vrije Universiteit Amsterdam
29
An exploratory study on the usage of networking
protocols in mobile apps
THESIS: to analyze a dataset of thousands of mobile apps w.r.t.
to their use of network protocols
TOOL: given a mobile app, analyzes it (statically), and extracts
all the used networking protocols
Goals
● understand how recently introduced protocols are used in
real projects (e.g., Google’s SPDY, web sockets, custom)
● Different protocols in different categories?
● Any other patterns to discover?
S2 group / Future research challenges
5
30. Vrije Universiteit Amsterdam
30
An exploratory study on the usage of networking
protocols in mobile apps
References:
● Li, Ding, et al. "Automated energy optimization of HTTP requests
for mobile applications." Proceedings of the 38th International
Conference on Software Engineering. ACM, 2016.
Contacts: Ivano Malavolta, Fahimeh Alizadeh
S2 group / Future research challenges
5
31. Vrije Universiteit Amsterdam
31
Software Sustainability: A Systematic Mapping
● What is Sustainable Software?
○ Software that consumes low energy
○ Software that performs well
○ Software that adapts and evolves over time
○ Software that is profitable
○ Software that takes care of its users
○ ….and much more
S2 group / Future research challenges
6
32. Vrije Universiteit Amsterdam
32
Software Sustainability: A Systematic Mapping
● Systematic Mapping Study [1]
● Why?
○ A systematic mapping study provides a structure of the type
of research reports and results that have been published by
categorizing them
○ It requires less effort while providing a more coarse-grained
overview
○ recommended for research areas where there is a lack of
relevant, high-quality primary studies
[1] Petersen K, Feldt R, Mujtaba S. Systematic mapping studies in software engineering. in software engineering. isl.ce.yildiz.edu.tr; 2008;
S2 group / Future research challenges
6
33. Vrije Universiteit Amsterdam
33
Software Sustainability: A Systematic Mapping
● Literature Study: Systematic search
○ Perform the search, identify primary studies
● THESIS: Systematic Mapping
○ Identify dimensions and domains
○ Perform the analysis
S2 group / Future research challenges
6
34. Vrije Universiteit Amsterdam
34
Software Sustainability: A Systematic Mapping
S2 group / Future research challenges
6
● Contacts: Giuseppe Procaccianti, Patricia Lago
References:
● Penzenstadler, B., Raturi, A., Richardson, D., Calero, C.,
Femmer, H., & Franch, X. (2014). Systematic Mapping Study on
Software Engineering for Sustainability (SE4S). In Proceedings
of the 18th International Conference on Evaluation and
Assessment in Software Engineering (EASE 2014).
36. Vrije Universiteit Amsterdam
36
Measuring the Scientific Impact of Software
● Scientific Impact: measure in papers
○ ...but papers would not be possible without software!
S2 group / Future research challenges
7
● How to measure the impact of software?
○ inconsistent citations
○ complex lifecycle
37. Vrije Universiteit Amsterdam
37
Measuring the Scientific Impact of Software
● THESIS: quantify the impact and quality of scientific software
S2 group / Future research challenges
7
● Focus:
○ define metrics and indicators
○ use already known metrics (e.g. reuse, repositories…)
● Contacts: Giuseppe Procaccianti, Willem van Hage (eScience)
38. Vrije Universiteit Amsterdam
38
Next steps
S2 group / Future research challenges
● Assignment 3
○ Validity and execution
■ Sections 4 and 5 of your report
○ Submit on Blackboard by Wednesday, October 19th, 23.59h
● Assignment 4
○ Complete report
■ Results, discussion, conclusions
○ Submit on Blackboard by Thursday, November 3rd, 23.59h