Detection of REST Patterns and Antipatterns: A Heuristics-based Approach. Palma, F., Dubois, J., Moha, N., & Gu�h�neuc, Y. In Franch, X., Ghose, A., & Lewis, G., editors, Proceedings of the 12<sup>th</sup> International Conference on Service Oriented Computing (ICSOC), pages 230–244, November, 2014. Springer. 15 pages.
Detection of REST Patterns and Antipatterns: A Heuristics-based Approach [pdf]Paper  abstract   bibtex   
\textttREST (REpresentational State Transfer), relying on resources as its architectural unit, is currently a popular architectural choice for building Web-based applications. It is shown that design patterns—good solutions to recurring design problems—improve the design quality and facilitate maintenance and evolution of software systems. Antipatterns, on the other hand, are poor and counter-productive solutions. Therefore, the detection of \textttREST (anti)patterns is essential for improving the maintenance and evolution of \textttRESTful systems. Until now, however, no approach has been proposed. In this paper, we propose \textttSODA-R (Service Oriented Detection for Antipatterns in \textttREST), a heuristics-based approach to detect (anti)patterns in \textttRESTful systems. We define detection heuristics for eight \textttREST antipatterns and five patterns, and perform their detection on a set of 12 widely-used \textttREST \textttAPIs including BestBuy, Facebook, and DropBox. The results show that \textttSODA-R can perform the detection of \textttREST (anti)patterns with high accuracy. We also found that Twitter, DropBox, and Alchemy are not well-designed, \emphi.e., contain more antipatterns. In contrast, Facebook, BestBuy, and YouTube are well-designed, \emphi.e., contain more patterns and less antipatterns.

Downloads: 0