M. Naumcheva, S. Ebersold, A. Naumchev, J. Bruel, Florian Galinier, B. Meyer
{"title":"Object-Oriented Requirements: a Unified Framework for Specifications, Scenarios and Tests","authors":"M. Naumcheva, S. Ebersold, A. Naumchev, J. Bruel, Florian Galinier, B. Meyer","doi":"10.48550/arXiv.2209.02189","DOIUrl":"https://doi.org/10.48550/arXiv.2209.02189","url":null,"abstract":"A paradox of requirements specifications as dominantly practiced in the industry is that they often claim to be object-oriented (OO) but largely rely on procedural (non-OO) techniques. Use cases and user stories describe functional flows, not object types. To gain the benefits provided by object technology (such as extendibility, reusability, reliability), requirements should instead take advantage of the same data abstraction concepts - classes, inheritance, information hiding - as OO design and OO programs. Many people find use cases and user stories appealing because of the simplicity and practicality of the concepts. Can we reconcile requirements with object-oriented principles and get the best of both worlds? This article proposes a unified framework. It shows that the concept of class is general enough to describe not only\"objects\"in a narrow sense but also scenarios such as use cases and user stories and other important artifacts such as test cases and oracles. Having a single framework opens the way to requirements that enjoy the benefits of both approaches: like use cases and user stories, they reflect the practical views of stakeholders; like object-oriented requirements, they lend themselves to evolution and reuse.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-09-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125090013","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Editorial Special Issue","authors":"J. Bézivin, B. Meyer","doi":"10.5381/jot.2007.6.9.e1","DOIUrl":"https://doi.org/10.5381/jot.2007.6.9.e1","url":null,"abstract":"A semiconductor memory includes a plurality of cell blocks, a refresh control circuit which sequentially refreshes a plurality of the cell blocks, an access control circuit which accesses a plurality of the cell blocks, and an ECC circuit which is provided in a data path between the access control circuit and the plurality of cell blocks, so that the data which is input from and output to the access control circuit is converted to a predetermined bit converted data (so called code) by the ECC circuit and is stored in the plurality of cell blocks. Accordingly, when the access control circuit accesses the plurality of cell blocks, if the access cannot be carried out for specified cell block which is in a refresh state (that is, a correct data (code) cannot be written to or read from the cell block in a refresh state) the data in the access control circuit side can be reproduced as correct data by the ECC circuit. Therefore, viewed from the external, a predetermined access can be carried out without being affected by the refresh state.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116987509","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A Meta-Circular Basis for Model-Based Language Engineering","authors":"T. Clark","doi":"10.5381/jot.2020.19.3.a11","DOIUrl":"https://doi.org/10.5381/jot.2020.19.3.a11","url":null,"abstract":"Meta-modelling is a technique that facilitates the construction of new languages to be used in system development. Although meta-modelling is supported by a number of tools and technologies, notably the Meta Object Facility from the OMG, there is no widely accepted precise basis for meta-modelling that can be used to develop and study language-based approaches to system development. Recent advances in meta-modelling have proposed several approaches to mixing types and instances, and allowing constraints to hold over multiple levels. This article proposes a collection of key characteristic features that are used to define a foundational self-contained unifying meta-language that is evaluated through several examples.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"29 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-10-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132985437","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Model Transformation as Conservative Theory-Transformation","authors":"Achim D. Brucker, Frédéric Tuong, B. Wolff","doi":"10.5381/jot.2020.19.3.a3","DOIUrl":"https://doi.org/10.5381/jot.2020.19.3.a3","url":null,"abstract":"Model transformations play a central role in model-driven software development. Hence, logical unsafe model transformation can result in erroneous systems. Still, most model transformations are written in languages that do not provide built-in safeness guarantees.We present a new technique to construct tool support for domain-specific languages (DSLs) inside the interactive theorem prover environment Isabelle. Our approach is based on modeling the DSL formally in higher-order logic (HOL), modeling the API of Isabelle inside it, and defining the transformation between these two. Reflection via the powerful code generators yields code that can be integrated as extension into Isabelle and its user interface. Moreover, we use code generation to produce tactic code which is bound to appropriate command-level syntax.Our approach ensures the logical safeness (conservativity) of the theorem prover extension and, thus, provides a certified tool for the DSL in all aspects: the deductive capacities of theorem prover, code generation, and IDE support. We demonstrate our approach by extending Isabelle/HOL with support for UML/OCL and, more generally, providing support for a formal object-oriented modeling method.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-10-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125686723","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Open Access all you wanted to know and never dared to ask","authors":"A. Pierantonio, B. Combemale, M. Brand","doi":"10.5381/jot.2020.19.1.e1","DOIUrl":"https://doi.org/10.5381/jot.2020.19.1.e1","url":null,"abstract":"This editorial presents the various forms of open access, discusses their pros and cons from the perspective of the Journal of Object Technology and its editors in chiefs, and illustrates how JOT implements a platinum open access model. The regular reader will also notice that this editorial features a new template for the journal that will be used from now on.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"40 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-07-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123202679","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Dynamic Virtual Network Embedding: Using Incremental Model Transformation and Integer Linear Programming Techniques","authors":"S. Tomaszek, Lars Fritsche, Andy Schürr","doi":"10.5381/jot.2020.19.2.a9","DOIUrl":"https://doi.org/10.5381/jot.2020.19.2.a9","url":null,"abstract":"","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"41 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132313110","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Nicolas Ferry, P. Nguyen, Hui Song, Erkuden Rios, Eider Iturbe, Satur Martinez, Angel Rego
{"title":"Continuous Deployment of Trustworthy Smart IoT Systems","authors":"Nicolas Ferry, P. Nguyen, Hui Song, Erkuden Rios, Eider Iturbe, Satur Martinez, Angel Rego","doi":"10.5381/jot.2020.19.2.a16","DOIUrl":"https://doi.org/10.5381/jot.2020.19.2.a16","url":null,"abstract":"The research leading to these results has received funding from the European Commission’s H2020 Programme under grant agreement numbers 780351 (ENACT).","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"69 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127252822","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"On Softening OCL Invariants","authors":"Martin Gogolla, Antonio Vallecillo","doi":"10.5381/JOT.2019.18.2.A6","DOIUrl":"https://doi.org/10.5381/JOT.2019.18.2.A6","url":null,"abstract":"Universidad de Malaga. Campus de Excelencia Internacional Andalucia Tech. Proyectos TIN2014-52034-R y PGC2018-094905-B-I00.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"27 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122326503","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Thibault Béziers la Fosse, Jean-Marie Mottu, M. Tisi, G. Sunyé
{"title":"Source-Code Level Regression Test Selection: the Model-Driven Way","authors":"Thibault Béziers la Fosse, Jean-Marie Mottu, M. Tisi, G. Sunyé","doi":"10.5381/JOT.2019.18.2.A13","DOIUrl":"https://doi.org/10.5381/JOT.2019.18.2.A13","url":null,"abstract":"In order to ensure that existing functionalities have not been impacted by recent program changes, test cases are regularly executed during regression testing (RT) phases. The RT time becomes problematic as the number of test cases is growing. Regression test selection (RTS) aims at running only the test cases that have been impacted by recent changes. RTS reduces the duration of regression testing and hence its cost. In this paper, we present a model-driven approach for RTS. Execution traces are gathered at runtime, and injected in a static source-code model. We use this resulting model to identify and select all the test cases that have been impacted by changes between two revisions of the program. Our MDE approach allows modularity in the granularity of changes considered. In addition, it offers better reusability than existing RTS techniques: the trace model is persistent and standardised. Furthermore, it enables more interoperability with other model-driven tools, enabling further analysis at different levels of abstraction (e.g. energy consumption). We evaluate our approach by applying it to four well-known open-source projects. Results show that our MDE proposal can effectively reduce the execution time of RT, by up to 32 % in our case studies. The overhead induced by the model building makes our approach slower than dedicated RTS tools, but the reuse of trace models for further analysis is overtaking this time difference.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-07-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124640415","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Théo Le Calvar, F. Jouault, F. Chhel, Mickael Clavreul
{"title":"Efficient ATL Incremental Transformations","authors":"Théo Le Calvar, F. Jouault, F. Chhel, Mickael Clavreul","doi":"10.5381/JOT.2019.18.3.A2","DOIUrl":"https://doi.org/10.5381/JOT.2019.18.3.A2","url":null,"abstract":"Incrementally executing model transformations offers several benefits such as updating target models in-place (instead of creating a new copy), as well as generally propagating changes faster (compared with complete re-execution). Active operations have been shown to of- fer performant OCL-based model transformation incrementality with use- ful properties like fine-grained change propagation, and the preservation of collection ordering. However, active operations have so far only been available as a Java library. This compels users to program at a relatively low level of abstraction, where most technical details are still present. Writing transformations at this level of abstraction is a tedious and error prone work. Using languages like Xtend alleviates some but not all issues. In order to provide active operation users with a more user-friendly front-end, we have worked on compiling ATL code to Java code using the active operations library. Our compiler can handle a significant subset of ATL, and we show that the code it generates provides similar performance to hand-written Java or Xtend code. Furthermore, this compiler also enables new possibilities like defining derived properties by leveraging the ATL refining mode.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130874106","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}