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.
Paper abstract bibtex REST (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 REST (anti)patterns is essential for improving the maintenance and evolution of RESTful systems. Until now, however, no approach has been proposed. In this paper, we propose SODA-R (Service Oriented Detection for Antipatterns in REST), a heuristics-based approach to detect (anti)patterns in RESTful systems. We define detection heuristics for eight REST antipatterns and five patterns, and perform their detection on a set of 12 widely-used REST APIs including BestBuy, Facebook, and DropBox. The results show that SODA-R can perform the detection of REST (anti)patterns with high accuracy. We also found that Twitter, DropBox, and Alchemy are not well-designed, i.e., contain more antipatterns. In contrast, Facebook, BestBuy, and YouTube are well-designed, i.e., contain more patterns and less antipatterns.
@INPROCEEDINGS{Palma14-ICSOC-SOAAntiPatternsWebServices,
AUTHOR = {Francis Palma and Johann Dubois and Naouel Moha and
Yann-Ga�l Gu�h�neuc},
BOOKTITLE = {Proceedings of the 12<sup>th</sup> International Conference on Service Oriented Computing (ICSOC)},
TITLE = {Detection of REST Patterns and Antipatterns: A
Heuristics-based Approach},
YEAR = {2014},
OPTADDRESS = {},
OPTCROSSREF = {},
EDITOR = {Xavier Franch and Aditya Ghose and Grace Lewis},
MONTH = {November},
NOTE = {15 pages.},
OPTNUMBER = {},
OPTORGANIZATION = {},
PAGES = {230–244},
PUBLISHER = {Springer},
OPTSERIES = {},
OPTVOLUME = {},
KEYWORDS = {Topic: <b>Code and design smells</b>,
Rubrique : <b>mauvaises pratiques</b>, Conference: ICSOC},
URL = {http://www.ptidej.net/publications/documents/ICSOC14.doc.pdf},
PDF = {http://www.ptidej.net/publications/documents/ICSOC14.ppt.pdf},
ABSTRACT = {REST (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 REST (anti)patterns is essential for improving the maintenance and
evolution of RESTful systems. Until now, however, no approach has
been proposed. In this paper, we propose SODA-R (Service Oriented
Detection for Antipatterns in REST), a heuristics-based approach to
detect (anti)patterns in RESTful systems. We define detection
heuristics for eight REST antipatterns and five patterns, and perform
their detection on a set of 12 widely-used REST APIs including
BestBuy, Facebook, and DropBox. The results show that SODA-R can
perform the detection of REST (anti)patterns with high accuracy. We
also found that Twitter, DropBox, and Alchemy are not well-designed,
i.e., contain more antipatterns. In contrast, Facebook, BestBuy, and
YouTube are well-designed, i.e., contain more patterns and less
antipatterns.}
}
Downloads: 0
{"_id":"C2dygZmHsJRFyoq4n","bibbaseid":"palma-dubois-moha-guhneuc-detectionofrestpatternsandantipatternsaheuristicsbasedapproach-2014","downloads":0,"creationDate":"2018-01-17T20:29:42.282Z","title":"Detection of REST Patterns and Antipatterns: A Heuristics-based Approach","author_short":["Palma, F.","Dubois, J.","Moha, N.","Gu�h�neuc, Y."],"year":2014,"bibtype":"inproceedings","biburl":"http://www.yann-gael.gueheneuc.net/Work/Publications/Biblio/complete-bibliography.bib","bibdata":{"bibtype":"inproceedings","type":"inproceedings","author":[{"firstnames":["Francis"],"propositions":[],"lastnames":["Palma"],"suffixes":[]},{"firstnames":["Johann"],"propositions":[],"lastnames":["Dubois"],"suffixes":[]},{"firstnames":["Naouel"],"propositions":[],"lastnames":["Moha"],"suffixes":[]},{"firstnames":["Yann-Ga�l"],"propositions":[],"lastnames":["Gu�h�neuc"],"suffixes":[]}],"booktitle":"Proceedings of the 12<sup>th</sup> International Conference on Service Oriented Computing (ICSOC)","title":"Detection of REST Patterns and Antipatterns: A Heuristics-based Approach","year":"2014","optaddress":"","optcrossref":"","editor":[{"firstnames":["Xavier"],"propositions":[],"lastnames":["Franch"],"suffixes":[]},{"firstnames":["Aditya"],"propositions":[],"lastnames":["Ghose"],"suffixes":[]},{"firstnames":["Grace"],"propositions":[],"lastnames":["Lewis"],"suffixes":[]}],"month":"November","note":"15 pages.","optnumber":"","optorganization":"","pages":"230–244","publisher":"Springer","optseries":"","optvolume":"","keywords":"Topic: <b>Code and design smells</b>, Rubrique : <b>mauvaises pratiques</b>, Conference: ICSOC","url":"http://www.ptidej.net/publications/documents/ICSOC14.doc.pdf","pdf":"http://www.ptidej.net/publications/documents/ICSOC14.ppt.pdf","abstract":"REST (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 REST (anti)patterns is essential for improving the maintenance and evolution of RESTful systems. Until now, however, no approach has been proposed. In this paper, we propose SODA-R (Service Oriented Detection for Antipatterns in REST), a heuristics-based approach to detect (anti)patterns in RESTful systems. We define detection heuristics for eight REST antipatterns and five patterns, and perform their detection on a set of 12 widely-used REST APIs including BestBuy, Facebook, and DropBox. The results show that SODA-R can perform the detection of REST (anti)patterns with high accuracy. We also found that Twitter, DropBox, and Alchemy are not well-designed, i.e., contain more antipatterns. In contrast, Facebook, BestBuy, and YouTube are well-designed, i.e., contain more patterns and less antipatterns.","bibtex":"@INPROCEEDINGS{Palma14-ICSOC-SOAAntiPatternsWebServices,\r\n AUTHOR = {Francis Palma and Johann Dubois and Naouel Moha and \r\n Yann-Ga�l Gu�h�neuc},\r\n BOOKTITLE = {Proceedings of the 12<sup>th</sup> International Conference on Service Oriented Computing (ICSOC)},\r\n TITLE = {Detection of REST Patterns and Antipatterns: A \r\n Heuristics-based Approach},\r\n YEAR = {2014},\r\n OPTADDRESS = {},\r\n OPTCROSSREF = {},\r\n EDITOR = {Xavier Franch and Aditya Ghose and Grace Lewis},\r\n MONTH = {November},\r\n NOTE = {15 pages.},\r\n OPTNUMBER = {},\r\n OPTORGANIZATION = {},\r\n PAGES = {230–244},\r\n PUBLISHER = {Springer},\r\n OPTSERIES = {},\r\n OPTVOLUME = {},\r\n KEYWORDS = {Topic: <b>Code and design smells</b>, \r\n Rubrique : <b>mauvaises pratiques</b>, Conference: ICSOC},\r\n URL = {http://www.ptidej.net/publications/documents/ICSOC14.doc.pdf},\r\n PDF = {http://www.ptidej.net/publications/documents/ICSOC14.ppt.pdf},\r\n ABSTRACT = {REST (REpresentational State Transfer), relying on \r\n resources as its architectural unit, is currently a popular \r\n architectural choice for building Web-based applications. It is shown \r\n that design patterns—good solutions to recurring design \r\n problems—improve the design quality and facilitate maintenance \r\n and evolution of software systems. Antipatterns, on the other hand, \r\n are poor and counter-productive solutions. Therefore, the detection \r\n of REST (anti)patterns is essential for improving the maintenance and \r\n evolution of RESTful systems. Until now, however, no approach has \r\n been proposed. In this paper, we propose SODA-R (Service Oriented \r\n Detection for Antipatterns in REST), a heuristics-based approach to \r\n detect (anti)patterns in RESTful systems. We define detection \r\n heuristics for eight REST antipatterns and five patterns, and perform \r\n their detection on a set of 12 widely-used REST APIs including \r\n BestBuy, Facebook, and DropBox. The results show that SODA-R can \r\n perform the detection of REST (anti)patterns with high accuracy. We \r\n also found that Twitter, DropBox, and Alchemy are not well-designed, \r\n i.e., contain more antipatterns. In contrast, Facebook, BestBuy, and \r\n YouTube are well-designed, i.e., contain more patterns and less \r\n antipatterns.}\r\n}\r\n\r\n","author_short":["Palma, F.","Dubois, J.","Moha, N.","Gu�h�neuc, Y."],"editor_short":["Franch, X.","Ghose, A.","Lewis, G."],"key":"Palma14-ICSOC-SOAAntiPatternsWebServices","id":"Palma14-ICSOC-SOAAntiPatternsWebServices","bibbaseid":"palma-dubois-moha-guhneuc-detectionofrestpatternsandantipatternsaheuristicsbasedapproach-2014","role":"author","urls":{"Paper":"http://www.ptidej.net/publications/documents/ICSOC14.doc.pdf"},"keyword":["Topic: <b>Code and design smells</b>","Rubrique : <b>mauvaises pratiques</b>","Conference: ICSOC"],"metadata":{"authorlinks":{"gu�h�neuc, y":"https://bibbase.org/show?bib=http%3A%2F%2Fwww.yann-gael.gueheneuc.net%2FWork%2FPublications%2FBiblio%2Fcomplete-bibliography.bib&msg=embed","guéhéneuc, y":"https://bibbase.org/show?bib=http://www.yann-gael.gueheneuc.net/Work/BibBase/guehene%20(automatically%20cleaned).bib"}},"downloads":0},"search_terms":["detection","rest","patterns","antipatterns","heuristics","based","approach","palma","dubois","moha","gu�h�neuc"],"keywords":["topic: <b>code and design smells</b>","rubrique : <b>mauvaises pratiques</b>","conference: icsoc"],"authorIDs":["AfJhKcg96muyPdu7S","xkviMnkrGBneANvMr"],"dataSources":["Sed98LbBeGaXxenrM","8vn5MSGYWB4fAx9Z4"]}