An automated refactoring approach to improve IoT software quality
Author | Zhang, Yang |
Author | Shao, Shuai |
Author | Ji, Minghan |
Author | Qiu, Jing |
Author | Tian, Zhihong |
Author | Du, Xiaojiang |
Author | Guizani, Mohsen |
Available date | 2022-12-26T06:56:25Z |
Publication Date | 2020-01-01 |
Publication Name | Applied Sciences (Switzerland) |
Identifier | http://dx.doi.org/10.3390/app10010413 |
Citation | Zhang, Y., Shao, S., Ji, M., Qiu, J., Tian, Z., Du, X., & Guizani, M. (2020). An automated refactoring approach to improve IoT software quality. Applied Sciences, 10(1), 413. |
Abstract | Internet of Things (IoT) software should provide good support for IoT devices as IoT devices are growing in quantity and complexity. Communication between IoT devices is largely realized in a concurrent way. How to ensure the correctness of concurrent access becomes a big challenge to IoT software development. This paper proposes a general refactoring framework for fine-grained read-write locking and implements an automatic refactoring tool to help developers convert built-in monitors into fine-grained ReentrantReadWriteLocks. Several program analysis techniques, such as visitor pattern analysis, alias analysis, and side-effect analysis, are used to assist with refactoring. Our tool is tested by several real-world applications including HSQLDB, Cassandra, JGroups, Freedomotic, and MINA. A total of 1072 built-in monitors are refactored into ReentrantReadWriteLocks. The experiments revealed that our tool can help developers with refactoring for ReentrantReadWriteLocks and save their time and energy. |
Sponsor | This research is supported by the Guangdong Province Key Research and Development Plan (2019B010137004), the National Key research and Development Plan (2018YEB1004003), the National Natural Science Foundation of China (U1636215,61871140,61872100), in part by the Scientific Research Foundation of Hebei Educational Department under Grant ZD2019093, in part by the Fundamental Research Foundation of Hebei Province under Grant 18960106D, and Guangdong Province Universities and Colleges Pearl River Scholar Funded Scheme (2019). |
Language | en |
Publisher | MDPI AG |
Subject | Concurrency IoT software Refactoring Software quality Synchronization |
Type | Article |
Issue Number | 1 |
Volume Number | 10 |
Files in this item
This item appears in the following Collection(s)
-
Computer Science & Engineering [2402 items ]