Service Oriented Framework For Analysis

DOLAR (Detection Of Linguistic Antipatterns in REST)

We propose the DOLAR approach for the analysis and detection of linguistic (anti)patterns in RESTful APIs. DOLAR proceeds in three steps, as shown in Figure below:


Step 1. Analysis of Linguistic Patterns and Antipatterns: This step consists in analysing the description of REST linguistic patterns and antipatterns from the literature to identify their relevant properties. We use these relevant properties to define algorithmic rules for patterns and antipatterns.

Step 2. Implementation of Interfaces and Detection Algorithms: This step involves the implementation of detection algorithms for patterns and antipatterns based on rules defined in Step 1 and the service interfaces for RESTful APIs.

Step 3. Detection of Linguistic Patterns and Antipatterns: This step deals with the automatic application of detection algorithms implemented in Step 2 on RESTful APIs for the detection of linguistic patterns and antipatterns.

Linguistic Antipatterns in RESTful APIs

The REST linguistic antipatterns that we defined as heuristics and detected are described here.

List of RESTful APIs

All the RESTful APIs that we analysed are listed here.


To show the effectiveness and accuracy of our heuristics and the performance of the implemented detection algorithms, we performed experiments with ten REST linguistic patterns and antipatterns on a set of 15 RESTful APIs including BestBuy, Facebook, and DropBox.

We define four hypotheses to assess the effectiveness of our DOLAR approach.

Result 1: Detection results on 15 RESTful APIs.


Result 2: Detection results on four representative RESTful APIs (cross-view).


Result 3: Detection results on four representative RESTful APIs (cross-view).


Our Hypotheses:

H1. Robustness:The DOLAR approach is robust.

H2. Accuracy:The defined rules have an average precision and recall of more than 75%, i.e., more than three out of four are true positive and we do not miss more than one out of four of all existing patterns and antipatterns.

H3. Extensibility:Our SOFA framework is extensible for adding new service-oriented and REST-specific (anti)patterns. In addition, SOFA facilitates an easy integration of new RESTful APIs.

H4. Performance: The concretely implemented detection algorithms perform with a low detection times, i.e., on an average in the order of seconds.

Summary of the Detection Results on 15 RESTful APIs

The table below presents the summary on the results for the detection of 10 REST linguistic patterns and antipatterns:




The table below presents the validation results for the REST patterns and antipatterns on 15 RESTful APIs:



Detailed Detection Results for all Request URIs

The following data-set contains all results for all request URIs from all the RESTful APIs we analysed.

1. Alchemy
2. Bestbuy
3. Bitly
4. Charlieharvey
5. Dropbox
6. Externalip
7. Facebook
8. Instagram
9. Musicgraph
10. Ohloh
11. Stackexchange
12. Teamviewer
13. Twitter
14. Toutube
15. Zappos


Logo Logo