Research on Reliability of Mobile Applications in a Distributed Environment
Purpose: The purpose of the paper is to present the research on reliability of mobile applications in distributed systems. Design/methodology/approach: Ensuring the reliable operation of the software created for Android OS is related to ensuring compatibility with different versions of the systems. The use of various security policies, formal and structural requirements in various Android releases results in a high failure rate of dedicated programs. Findings: There is, therefore, a need to implement new testing methods. Originality/value: The article proposes a method of software reliability analysis dedicated to distributed systems. The developed solution is based on concurrency using the actor model. As part of the research, the effectiveness of the developed solutions was evaluated. (original abstract)
- 1. Han, D. et al. (2012). Understanding android fragmentation with topic analysis of vendor- specific bugs. 19th Working Conference on Reverse Engineering. IEEE, pp. 83-92.
- 2. Wang, H., Li, H., Li, L., Guo, Y., & Xu, G. (2018). Why are Android apps removed from Google Play?: a large-scale empirical study. Proceedings of the 15th International Conference on Mining Software Repositories, ACM, pp. 231-242.
- 3. Guide to Background Processing. Retrieved from https://developer.android.com/guide/ background, 25.09.2019.
- 4. Agha, G.A., Mason, I.A., Smith, S.F., & Talcott, C.L. (1997). A foundation for actor computation. Journal of Functional Programming, 7, 1, pp. 1-72.
- 5. Amalfitano, D., Amatucci, N., Fasolino, A.R., & Tramontana, P. (2015, August). AGRippin: a novel search based testing technique for Android applications. Proceedings of the 3rd International Workshop on Software Development Lifecycle for Mobile, ACM, pp. 5-12.
- 6. Arifiani, S., & Rochimah, S. (2016). Generating test data using ant Colony Optimization (ACO) algorithm and UML state machine diagram in gray box testing approach. 2016 International Seminar on Application for Technology of Information and Communication (ISemantic), IEEE, pp. 217-222.
- 7. Concurrent Class (2019). Retrieved from https://docs.oracle.com/javase/7/docs/api/java/ util/ConcurrentModificationException.html, 20.03.2019.
- 8. Execution Class (2019). Retrieved from https://docs.oracle.com/javase/7/docs/api/java/util/ concurrent/ExecutionException.html, 20.03.2019.
- 9. Haller, P. (2012). On the integration of the actor model in mainstream technologies: the scala perspective. Proceedings of the 2nd edition on Programming systems, languages and applications based on actors, agents, and decentralized control abstractions. ACM, pp. 1-6.
- 10. Hu, C., & Neamtiu, I. (2011, May). Automating GUI testing for Android applications. Proceedings of the 6th International Workshop on Automation of Software Test, ACM, pp. 77-83.
- 11. Mahmood, R., Esfahani, N., Kacem, T., Mirzaei, N., Malek, S., & Stavrou, A. (2012, June). A whitebox approach for automated security testing of Android applications on the cloud. Proceedings of the 7th International Workshop on Automation of Software Test, IEEE press, pp. 22-28.
- 12. Mao, K., Harman, M., & Jia, Y. (2017). Robotic testing of mobile apps for truly black-box automation. IEEE Software, 34, 2, pp. 11-16.
- 13. Monkeyrunner (2019). Retrieved from https://developer.android.com/studio/test/ monkeyrunner, 20.03.2019.
- 14. Null Pointer (2019). Retrieved from https://docs.oracle.com/javase/7/docs/api/java/lang/ NullPointerException.html, 20.03.2019.
- 15. Takala, T., Katara, M., Harty, J. (2011). Experiences of system-level model-based GUI testing of an Android application. Fourth IEEE International Conference on Software Testing, Verification and Validation. IEEE, pp. 377-386.
- 16. Tretmans, J. (1999). Testing concurrent systems: A formal approach. In International Conference on Concurrency Theory. Berlin-Heidelberg, Springer, pp. 46-65.
- 17. Wei, L., Liu, Y., Cheung, S.C., Huang, H., Lu, X., & Liu, X. (2018). Understanding and detecting fragmentation-induced compatibility issues for android apps. IEEE Transactions on Software Engineering.
- 18. Yang, Z., Guo, Y., & Chen, X. (2017, May). DroidBot: a lightweight UI-guided test input generator for Android. 2017 IEEE/ACM 39th International Conference on Software Engineering Companion (ICSE-C), IEEE, pp. 23-26.
- 19. Yang, Q., Li, J.J., & Weiss, D.M. (2009). A survey of coverage-based testing tools. The Computer Journal, 52, 5, pp. 589-597.
- 20. Yang, W., Prasad, M.R., & Xie, T. (2013). A gray-box approach for automated GUI-model generation of mobile applications. International Conference on Fundamental Approaches to Software Engineering. Berlin-Heidelberg: Springer, pp. 250-265.