NeoIDL: A Domain Specific Language for Specifying REST Contracts Detailed Design and Extended Evaluation

2015 ◽  
Vol 25 (09n10) ◽  
pp. 1653-1675
Author(s):  
Lucas Lima ◽  
Rodrigo Bonifácio ◽  
Edna Canedo ◽  
Thiago Mael de Castro ◽  
Ricardo Fernandes ◽  
...  

Service-oriented computing has emerged as an effective approach for integrating business (and systems) that might spread throughout different organizations. A service is a unit of logic modularization that hides implementation details using well-defined contracts. However, existing languages for contract specification in this domain present several limitations. For instance, both WSDL and Swagger use language-independent data formats (XML and JSON) that are not suitable for specifying contracts and often lead to heavyweight specifications. Interface description languages, such as CORBA IDL and Apache Thrift, solve this issue by providing specific languages for contract specifications. Nevertheless, these languages do not target to the REST architectural style and lack support for language extensibility. In this paper we present the design and implementation of NeoIDL, an extensible domain specific language and program generator for writing REST based contracts that are further translated into service’s implementations. In addition, we also present a systematic evaluation of our approach from different perspectives, which involved the implementation of different services using NeoIDL from the domain of Command & Control. In particular, we found initial evidences that shows that NeoIDL can contribute: (i) to bring return on investment with respect to the design and development of NeoIDL, after the implementation of 4 to 7 services; and (ii) to reduce significantly the number of lines of specification when compared to an existing service specification language such as Swagger.

2012 ◽  
Vol 8 (1) ◽  
pp. 19-44
Author(s):  
Shih-Hsi Liu ◽  
Adam Cardenas ◽  
Marjan Mernik ◽  
Barrett R. Bryant ◽  
Jeff Gray ◽  
...  

Author(s):  
Mohammed Lethrech ◽  
Adil Kenzi ◽  
Issam Elmagrouni ◽  
Mahmoud Nassar ◽  
Abdelaziz Kriouile

The simultaneous use of the new computing paradigms: Domain Specific Modeling, Context Oriented Computing and Service Oriented Computing, raises many challenges. Particularly, the challenge of engineering such systems, which consists of the definition of modeling approaches, processes, techniques and tools to facilitate their construction. The proposed MDSD approach for context-aware service oriented systems is based on Domain Specific Language Engineering. The Context-Aware, Domain Specific and Service Oriented (CADSSO) development approach is based on five models. The first one is domain specific context model; it symbolizes the services context of use. The second is domain specific services model; it takes care of services modeling. The third is service variability model; it formulates services variants. The fourth is adaptation rules model, which is the joint between service variability model and context model. The fifth is business rules model, used to model domain business. A code generator is in charge of the transformation of the five models to the final code.


Author(s):  
Jessica Ray ◽  
Ajav Brahmakshatriya ◽  
Richard Wang ◽  
Shoaib Kamil ◽  
Albert Reuther ◽  
...  

2021 ◽  
Vol 205 ◽  
pp. 102610
Author(s):  
Davide Ancona ◽  
Luca Franceschini ◽  
Angelo Ferrando ◽  
Viviana Mascardi

Sign in / Sign up

Export Citation Format

Share Document