On the Semantic Detection of Cloud API (Anti)Patterns. Brabra, H., Mtibaa, A., Petrillo, F., Merle, P., Sliman, L., Moha, N., Gaaloul, W., Gu�h�neuc, Y., Benatallah, B., & Gargouri, F. Information and Software Technology (IST), 107(3):65–82, Elsevier, March, 2019. 17 pages.
Paper abstract bibtex Context. Open standards are urgently needed for enabling software interoperability in Cloud Computing. Open Cloud Computing Interface (OCCI) provides a set of best design principles to create interoperable REST management APIs. Although OCCI is the only standard addressing the management of any kind of cloud resources, it does not support a range of best principles related to REST design. This often worsens REST API quality by decreasing their understandability and reusability. Objective. We aim at assisting cloud developers to enhance their REST management APIs by providing a compliance evaluation of OCCI and REST best principles and a recommendation support to comply with these principles. Method. First, we leverage patterns and anti-patterns to drive respectively the good and poor practices of OCCI and REST best principles. Then, we propose a semantic-based approach for defining and detecting REST and OCCI (anti)patterns and providing a set of correction recommendations to comply with both REST and OCCI best principles. We validated this approach by applying it on cloud REST APIs and evaluating its accuracy, usefulness and extensibility. Results. We found that our approach accurately detects OCCI and REST(anti)patterns and provides useful recommendations. According to the compliance results, we reveal that there is no widespread adoption of OCCI principles in existing APIs. In contrast, these APIs have reached an acceptable level of maturity regarding REST principles. Conclusion. Our approach provides an effective and extensible technique for defining and detecting OCCI and REST (anti)patterns in Cloud REST APIs. Cloud software developers can benefit from our approach and defined principles to accurately evaluate their APIs from OCCI and REST perspectives. This contributes in designing interoperable, understandable, and reusable Cloud management APIs. Thank to the compliance analysis and the recommendation support, we also contribute to improving these APIs, which make them more straightforward.
@ARTICLE{Brabra19-IST-SemanticDetectionCloudAPI,
AUTHOR = {Hayet Brabra and Achraf Mtibaa and F�bio Petrillo and
Philippe Merle and Layth Sliman and Naouel Moha and Walid Gaaloul and
Yann-Ga�l Gu�h�neuc and Boualem Benatallah and Fa�ez Gargouri},
JOURNAL = {Information and Software Technology (IST)},
TITLE = {On the Semantic Detection of Cloud API (Anti)Patterns},
YEAR = {2019},
MONTH = {March},
NOTE = {17 pages.},
NUMBER = {3},
PAGES = {65–82},
VOLUME = {107},
EDITOR = {Claes Wohlin},
KEYWORDS = {Topic: <b>Design patterns</b>,
Rubrique : <b>patrons de conception</b>,
Topic: <b>Code and design smells</b>,
Rubrique : <b>mauvaises pratiques</b>, Journal: <b>IST</b>},
PUBLISHER = {Elsevier},
URL = {http://www.ptidej.net/publications/documents/IST19.doc.pdf},
ABSTRACT = {Context. Open standards are urgently needed for enabling
software interoperability in Cloud Computing. Open Cloud Computing
Interface (OCCI) provides a set of best design principles to create
interoperable REST management APIs. Although OCCI is the only
standard addressing the management of any kind of cloud resources, it
does not support a range of best principles related to REST design.
This often worsens REST API quality by decreasing their
understandability and reusability. Objective. We aim at assisting
cloud developers to enhance their REST management APIs by providing a
compliance evaluation of OCCI and REST best principles and a
recommendation support to comply with these principles. Method.
First, we leverage patterns and anti-patterns to drive respectively
the good and poor practices of OCCI and REST best principles. Then,
we propose a semantic-based approach for defining and detecting REST
and OCCI (anti)patterns and providing a set of correction
recommendations to comply with both REST and OCCI best principles. We
validated this approach by applying it on cloud REST APIs and
evaluating its accuracy, usefulness and extensibility. Results. We
found that our approach accurately detects OCCI and
REST(anti)patterns and provides useful recommendations. According to
the compliance results, we reveal that there is no widespread
adoption of OCCI principles in existing APIs. In contrast, these APIs
have reached an acceptable level of maturity regarding REST
principles. Conclusion. Our approach provides an effective and
extensible technique for defining and detecting OCCI and REST
(anti)patterns in Cloud REST APIs. Cloud software developers can
benefit from our approach and defined principles to accurately
evaluate their APIs from OCCI and REST perspectives. This contributes
in designing interoperable, understandable, and reusable Cloud
management APIs. Thank to the compliance analysis and the
recommendation support, we also contribute to improving these APIs,
which make them more straightforward.}
}
Downloads: 0
{"_id":"HTZpxHep2rejBFC8Z","bibbaseid":"brabra-mtibaa-petrillo-merle-sliman-moha-gaaloul-guhneuc-etal-onthesemanticdetectionofcloudapiantipatterns-2019","author_short":["Brabra, H.","Mtibaa, A.","Petrillo, F.","Merle, P.","Sliman, L.","Moha, N.","Gaaloul, W.","Gu�h�neuc, Y.","Benatallah, B.","Gargouri, F."],"bibdata":{"bibtype":"article","type":"article","author":[{"firstnames":["Hayet"],"propositions":[],"lastnames":["Brabra"],"suffixes":[]},{"firstnames":["Achraf"],"propositions":[],"lastnames":["Mtibaa"],"suffixes":[]},{"firstnames":["F�bio"],"propositions":[],"lastnames":["Petrillo"],"suffixes":[]},{"firstnames":["Philippe"],"propositions":[],"lastnames":["Merle"],"suffixes":[]},{"firstnames":["Layth"],"propositions":[],"lastnames":["Sliman"],"suffixes":[]},{"firstnames":["Naouel"],"propositions":[],"lastnames":["Moha"],"suffixes":[]},{"firstnames":["Walid"],"propositions":[],"lastnames":["Gaaloul"],"suffixes":[]},{"firstnames":["Yann-Ga�l"],"propositions":[],"lastnames":["Gu�h�neuc"],"suffixes":[]},{"firstnames":["Boualem"],"propositions":[],"lastnames":["Benatallah"],"suffixes":[]},{"firstnames":["Fa�ez"],"propositions":[],"lastnames":["Gargouri"],"suffixes":[]}],"journal":"Information and Software Technology (IST)","title":"On the Semantic Detection of Cloud API (Anti)Patterns","year":"2019","month":"March","note":"17 pages.","number":"3","pages":"65–82","volume":"107","editor":[{"firstnames":["Claes"],"propositions":[],"lastnames":["Wohlin"],"suffixes":[]}],"keywords":"Topic: <b>Design patterns</b>, Rubrique : <b>patrons de conception</b>, Topic: <b>Code and design smells</b>, Rubrique : <b>mauvaises pratiques</b>, Journal: <b>IST</b>","publisher":"Elsevier","url":"http://www.ptidej.net/publications/documents/IST19.doc.pdf","abstract":"Context. Open standards are urgently needed for enabling software interoperability in Cloud Computing. Open Cloud Computing Interface (OCCI) provides a set of best design principles to create interoperable REST management APIs. Although OCCI is the only standard addressing the management of any kind of cloud resources, it does not support a range of best principles related to REST design. This often worsens REST API quality by decreasing their understandability and reusability. Objective. We aim at assisting cloud developers to enhance their REST management APIs by providing a compliance evaluation of OCCI and REST best principles and a recommendation support to comply with these principles. Method. First, we leverage patterns and anti-patterns to drive respectively the good and poor practices of OCCI and REST best principles. Then, we propose a semantic-based approach for defining and detecting REST and OCCI (anti)patterns and providing a set of correction recommendations to comply with both REST and OCCI best principles. We validated this approach by applying it on cloud REST APIs and evaluating its accuracy, usefulness and extensibility. Results. We found that our approach accurately detects OCCI and REST(anti)patterns and provides useful recommendations. According to the compliance results, we reveal that there is no widespread adoption of OCCI principles in existing APIs. In contrast, these APIs have reached an acceptable level of maturity regarding REST principles. Conclusion. Our approach provides an effective and extensible technique for defining and detecting OCCI and REST (anti)patterns in Cloud REST APIs. Cloud software developers can benefit from our approach and defined principles to accurately evaluate their APIs from OCCI and REST perspectives. This contributes in designing interoperable, understandable, and reusable Cloud management APIs. Thank to the compliance analysis and the recommendation support, we also contribute to improving these APIs, which make them more straightforward.","bibtex":"@ARTICLE{Brabra19-IST-SemanticDetectionCloudAPI,\r\n AUTHOR = {Hayet Brabra and Achraf Mtibaa and F�bio Petrillo and \r\n Philippe Merle and Layth Sliman and Naouel Moha and Walid Gaaloul and \r\n Yann-Ga�l Gu�h�neuc and Boualem Benatallah and Fa�ez Gargouri},\r\n JOURNAL = {Information and Software Technology (IST)},\r\n TITLE = {On the Semantic Detection of Cloud API (Anti)Patterns},\r\n YEAR = {2019},\r\n MONTH = {March},\r\n NOTE = {17 pages.},\r\n NUMBER = {3},\r\n PAGES = {65–82},\r\n VOLUME = {107},\r\n EDITOR = {Claes Wohlin},\r\n KEYWORDS = {Topic: <b>Design patterns</b>, \r\n Rubrique : <b>patrons de conception</b>, \r\n Topic: <b>Code and design smells</b>, \r\n Rubrique : <b>mauvaises pratiques</b>, Journal: <b>IST</b>},\r\n PUBLISHER = {Elsevier},\r\n URL = {http://www.ptidej.net/publications/documents/IST19.doc.pdf},\r\n ABSTRACT = {Context. Open standards are urgently needed for enabling \r\n software interoperability in Cloud Computing. Open Cloud Computing \r\n Interface (OCCI) provides a set of best design principles to create \r\n interoperable REST management APIs. Although OCCI is the only \r\n standard addressing the management of any kind of cloud resources, it \r\n does not support a range of best principles related to REST design. \r\n This often worsens REST API quality by decreasing their \r\n understandability and reusability. Objective. We aim at assisting \r\n cloud developers to enhance their REST management APIs by providing a \r\n compliance evaluation of OCCI and REST best principles and a \r\n recommendation support to comply with these principles. Method. \r\n First, we leverage patterns and anti-patterns to drive respectively \r\n the good and poor practices of OCCI and REST best principles. Then, \r\n we propose a semantic-based approach for defining and detecting REST \r\n and OCCI (anti)patterns and providing a set of correction \r\n recommendations to comply with both REST and OCCI best principles. We \r\n validated this approach by applying it on cloud REST APIs and \r\n evaluating its accuracy, usefulness and extensibility. Results. We \r\n found that our approach accurately detects OCCI and \r\n REST(anti)patterns and provides useful recommendations. According to \r\n the compliance results, we reveal that there is no widespread \r\n adoption of OCCI principles in existing APIs. In contrast, these APIs \r\n have reached an acceptable level of maturity regarding REST \r\n principles. Conclusion. Our approach provides an effective and \r\n extensible technique for defining and detecting OCCI and REST \r\n (anti)patterns in Cloud REST APIs. Cloud software developers can \r\n benefit from our approach and defined principles to accurately \r\n evaluate their APIs from OCCI and REST perspectives. This contributes \r\n in designing interoperable, understandable, and reusable Cloud \r\n management APIs. Thank to the compliance analysis and the \r\n recommendation support, we also contribute to improving these APIs, \r\n which make them more straightforward.}\r\n}\r\n\r\n","author_short":["Brabra, H.","Mtibaa, A.","Petrillo, F.","Merle, P.","Sliman, L.","Moha, N.","Gaaloul, W.","Gu�h�neuc, Y.","Benatallah, B.","Gargouri, F."],"editor_short":["Wohlin, C."],"key":"Brabra19-IST-SemanticDetectionCloudAPI","id":"Brabra19-IST-SemanticDetectionCloudAPI","bibbaseid":"brabra-mtibaa-petrillo-merle-sliman-moha-gaaloul-guhneuc-etal-onthesemanticdetectionofcloudapiantipatterns-2019","role":"author","urls":{"Paper":"http://www.ptidej.net/publications/documents/IST19.doc.pdf"},"keyword":["Topic: <b>Design patterns</b>","Rubrique : <b>patrons de conception</b>","Topic: <b>Code and design smells</b>","Rubrique : <b>mauvaises pratiques</b>","Journal: <b>IST</b>"],"metadata":{"authorlinks":{}}},"bibtype":"article","biburl":"http://www.yann-gael.gueheneuc.net/Work/Publications/Biblio/complete-bibliography.bib","dataSources":["8vn5MSGYWB4fAx9Z4"],"keywords":["topic: <b>design patterns</b>","rubrique : <b>patrons de conception</b>","topic: <b>code and design smells</b>","rubrique : <b>mauvaises pratiques</b>","journal: <b>ist</b>"],"search_terms":["semantic","detection","cloud","api","anti","patterns","brabra","mtibaa","petrillo","merle","sliman","moha","gaaloul","gu�h�neuc","benatallah","gargouri"],"title":"On the Semantic Detection of Cloud API (Anti)Patterns","year":2019}