J. Object Technol.最新文献

筛选
英文 中文
Model-driven Design-Runtime Interaction in Safety Critical System Development: an Experience Report 安全关键系统开发中的模型驱动设计-运行时交互:一份经验报告
J. Object Technol. Pub Date : 2019-07-01 DOI: 10.5381/JOT.2019.18.2.A1
Romina Eramo, Florent Marchand de Kerchove, Maximilien Colange, Michele Tucci, J. Ouy, H. Brunelière, D. D. Ruscio
{"title":"Model-driven Design-Runtime Interaction in Safety Critical System Development: an Experience Report","authors":"Romina Eramo, Florent Marchand de Kerchove, Maximilien Colange, Michele Tucci, J. Ouy, H. Brunelière, D. D. Ruscio","doi":"10.5381/JOT.2019.18.2.A1","DOIUrl":"https://doi.org/10.5381/JOT.2019.18.2.A1","url":null,"abstract":"Automotive, aerospace, industrial control, and railway systems are examples of application domains which are particularly characterized by the need for developing and managing critical systems. Model-driven engineering is recognized as an effective solution to leverage abstraction and automation while developing complex systems. One of the major and key challenges in the model-driven engineering of critical software systems is the integration of design and runtime aspects. Even though several methods and tools are available for performing measurements of runtime properties, the ability to trace them with design models is still limited. In the context of a real railway system, this paper presents a model-based approach that has been conceived to analyze runtime data (coming from different sensors), to produce corresponding traceability models and to automatically infer from them potential design issues that might need to be fixed in order to solve detected system malfunctionings.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"30 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":"125068178","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}
引用次数: 2
A Model-driven Approach to Trace Checking of Temporal Properties with Aggregations 基于聚合的时间属性跟踪检测的模型驱动方法
J. Object Technol. Pub Date : 2019-07-01 DOI: 10.5381/JOT.2019.18.2.A15
Chaima Boufaied, D. Bianculli, L. Briand
{"title":"A Model-driven Approach to Trace Checking of Temporal Properties with Aggregations","authors":"Chaima Boufaied, D. Bianculli, L. Briand","doi":"10.5381/JOT.2019.18.2.A15","DOIUrl":"https://doi.org/10.5381/JOT.2019.18.2.A15","url":null,"abstract":"The verification of complex software systems often requires to check quantitative properties that rely on aggregation operators (e.g., the average response time of a service). One way to ease the specification of these properties is to use property specification patterns, such as the ones for “service provisioning”, previously proposed in the literature. In this paper we focus on the problem of performing offline trace checking of temporal properties containing aggregation operators. We first present TemPsy-AG , an extension of TemPsy—an existing pattern-based language for the specification of temporal properties—to support service provisioning patterns that use aggregation operators. We then extend an existing model-driven procedure for trace checking, to verify properties expressed in TemPsy-AG . The trace checking procedure relies on the efficient mapping of temporal properties written in TemPsy-AG into OCL constraints on a meta-model of execution traces. We have implemented this procedure in the TemPsy-Check-AG tool and evaluated its performance: our approach scales linearly with respect to the length of the input trace and can deal with much larger traces than a state-of-the-art tool.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"88 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":"114234840","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}
引用次数: 3
The JOT Journal: Towards a Rising Generation The JOT Journal:迈向成长的一代
J. Object Technol. Pub Date : 2019-03-01 DOI: 10.5381/JOT.2019.18.1.E1
A. Pierantonio, M. Brand, B. Combemale
{"title":"The JOT Journal: Towards a Rising Generation","authors":"A. Pierantonio, M. Brand, B. Combemale","doi":"10.5381/JOT.2019.18.1.E1","DOIUrl":"https://doi.org/10.5381/JOT.2019.18.1.E1","url":null,"abstract":"HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés. The JOT Journal: Towards a Rising Generation Alfonso Pierantonio, Mark van den Brand, Benoit Combemale","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"49 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128387045","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}
引用次数: 1
Introduction to the Meta'16 Workshop Special Issue 介绍Meta'16研讨会特刊
J. Object Technol. Pub Date : 2018-11-27 DOI: 10.5381/jot.2018.17.1.e1
E. G. Boix, Stefan Marr
{"title":"Introduction to the Meta'16 Workshop Special Issue","authors":"E. G. Boix, Stefan Marr","doi":"10.5381/jot.2018.17.1.e1","DOIUrl":"https://doi.org/10.5381/jot.2018.17.1.e1","url":null,"abstract":"","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"331 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-11-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116349248","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}
引用次数: 0
Dynamic Software Update from Development to Production 从开发到生产的动态软件更新
J. Object Technol. Pub Date : 2018-11-01 DOI: 10.5381/jot.2018.17.1.a2
P. Tesone, G. Polito, N. Bouraqadi, Stéphane Ducasse, L. Fabresse
{"title":"Dynamic Software Update from Development to Production","authors":"P. Tesone, G. Polito, N. Bouraqadi, Stéphane Ducasse, L. Fabresse","doi":"10.5381/jot.2018.17.1.a2","DOIUrl":"https://doi.org/10.5381/jot.2018.17.1.a2","url":null,"abstract":"Dynamic Software Update (DSU) solutions update applications while they are executing. These solutions are typically used in production to minimize application downtime, or in integrated development environments to provide live programming support. Each of these scenarios presents different challenges, forcing existing solutions to be designed with only one of these use cases in mind. For example, DSUs for live programming typically do not implement safe point detection or instance migration, while production DSUs require manual generation of patches and lack IDE integration. Also, these solutions have limited ability to update themselves or the language core libraries, and some of them present execution penalties outside the update window. We propose a DSU (gDSU) that works for both live programming and production environments. Our solution implements safe update point detection using call stack manipulation and a reusable instance migration mechanism to minimize manual intervention in patch generation. Moreover, it also offers updates of core language libraries and the update mechanism itself. This is achieved by the incremental copy of the modified objects and an atomic commit operation. We show that our solution does not affect the global performance of the application and it presents only a run-time penalty during the update window. Our solution is able to apply an update impacting 100,000 instances in 1 second. In this 1 second, only during 250 milliseconds the application is not responsive. The rest of the time the application runs normally while gDSU is looking for the safe update point. The update only requires to copy the elements that are modified.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"72 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127138197","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}
引用次数: 10
Context 上下文
J. Object Technol. Pub Date : 2018-08-28 DOI: 10.5381/jot.2005.4.7.c4
J. McGregor
{"title":"Context","authors":"J. McGregor","doi":"10.5381/jot.2005.4.7.c4","DOIUrl":"https://doi.org/10.5381/jot.2005.4.7.c4","url":null,"abstract":"","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"68 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133719825","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}
引用次数: 614
Implementation of LMNtal Model Checkers: a Metaprogramming Approach 心智模型检查器的实现:一种元编程方法
J. Object Technol. Pub Date : 2018-04-12 DOI: 10.5381/jot.2018.17.1.a1
Yutaro Tsunekawa, Taichi Tomioka, K. Ueda
{"title":"Implementation of LMNtal Model Checkers: a Metaprogramming Approach","authors":"Yutaro Tsunekawa, Taichi Tomioka, K. Ueda","doi":"10.5381/jot.2018.17.1.a1","DOIUrl":"https://doi.org/10.5381/jot.2018.17.1.a1","url":null,"abstract":"LMNtal is a modeling language based on hierarchical graph rewriting, and its implementation SLIM features state space search and an LTL model checker. Several variations and extensions of the SLIM have been developed, and all of them achieve their functionalities by modifying SLIM written in C. If a model checker is implemented in the modeling language itself, it should be easy to develop prototypes of various model checkers without changing the base implementation of the model checker. This approach is called metaprogramming which has been taken extensively in Lisp and Prolog communities. In this paper, we design a framework for implementing extendable model checkers. First, we define first-class rewrite rules to extend a modeling language. Second, we design an API to operate on the states of programs. These features enable programmers to handle state transition graphs as first-class objects and implement diverse variants of a model checker without changing SLIM. We demonstrate it by implementing an LTL model checker and its variant and a CTL model checker. Furthermore, we show how easy it is to extend these model checkers in our framework by extending the CTL model checker to handle fairness constraints. The overhead of metainterpretation is around an order of magnitude or less. All these results demonstrate the viability of the resulting framework based on meta-interpreters that handle explicit state space in a flexible manner.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"88 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-04-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130473643","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}
引用次数: 1
XCorpus - An executable Corpus of Java Programs 一个可执行的Java程序语料库
J. Object Technol. Pub Date : 2017-09-25 DOI: 10.5381/jot.2017.16.4.a1
Jens Dietrich, Henrik Schole, Li Sui, E. Tempero
{"title":"XCorpus - An executable Corpus of Java Programs","authors":"Jens Dietrich, Henrik Schole, Li Sui, E. Tempero","doi":"10.5381/jot.2017.16.4.a1","DOIUrl":"https://doi.org/10.5381/jot.2017.16.4.a1","url":null,"abstract":"Empirical studies on code require standardized datasets of significant size extracted from real-world programs in order to be reproducible and generalisable. We argue that there is a need for such data sets that are executable and can therefore be used for experiments using static and dynamic analysis. A harness for such a data set should have high coverage in order to facilitate the construction of comprehensive models of program execution. We present XCorpus, a set of 76 executable, real-world Java programs, including a subset of 70 programs from the Qualitas Corpus. XCorpus uses a harness that is a combination of built-in and generated test cases, resulting in a branch coverage that is significantly better than what is available from DaCapo.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134179799","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}
引用次数: 31
API Evolution and Compatibility: A Data Corpus and Tool Evaluation API演化与兼容性:数据语料库与工具评估
J. Object Technol. Pub Date : 2017-09-25 DOI: 10.5381/jot.2017.16.4.a2
Kamil Jezek, Jens Dietrich
{"title":"API Evolution and Compatibility: A Data Corpus and Tool Evaluation","authors":"Kamil Jezek, Jens Dietrich","doi":"10.5381/jot.2017.16.4.a2","DOIUrl":"https://doi.org/10.5381/jot.2017.16.4.a2","url":null,"abstract":"The development of software components with independent release cycles is nowadays widely supported by multiple languages and frameworks. A critical feature of any such platform is to safeguard composition by ensuring backward compatibility of substituted components. In recent years, some tooling has been developed to help developers and DevOps engineers to establish whether components are backward compatible by means of static analysis. We investigate the state of the art in this space by benchmarking such tools for Java. For this purpose, we have developed a compact benchmark data set of less than 200KB. Using this dataset, we study possible API changes of Java libraries, and whether the tools investigated can detect them. We find that only a small number of tools suitable to analyse API evolution exist. Those tools are only infrequently maintained by small communities. All tools investigated have some shortcomings in that they fail to detect certain API incompatibilities.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122529370","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}
引用次数: 19
On principles of Least Change and Least Surprise for bidirectional transformations 关于双向变换的最小变化和最小惊奇原则
J. Object Technol. Pub Date : 2017-02-01 DOI: 10.5381/jot.2017.16.1.a3
J. Cheney, J. Gibbons, J. McKinna, P. Stevens
{"title":"On principles of Least Change and Least Surprise for bidirectional transformations","authors":"J. Cheney, J. Gibbons, J. McKinna, P. Stevens","doi":"10.5381/jot.2017.16.1.a3","DOIUrl":"https://doi.org/10.5381/jot.2017.16.1.a3","url":null,"abstract":"In software engineering and elsewhere, different people may work intensively with different, but related, artefacts, e.g. models, docu-ments, or code. They may use bidirectional transformations (bx) to main-tain consistency between them. Naturally, they do not want their deliber-ate decisions disrupted, or their comprehension of their artefact interfered with, by a bx that makes changes to their artefact beyond the strictly necessary. This gives rise to a desire for a principle of Least Change, which has been often alluded to in the field, but seldom addressed head on. In this paper we present examples, briefly survey what has been said about least change in the context of bx, and identify relevant notions from elsewhere that may be applicable. We conclude that we cannot expect a Principle of Least Change to determine the optimal behaviour of a bx based on the consistency relation it embodies alone. Any such principle would bind the hands of the bx developer too tightly: the specification of how consistency is restored is as important a part of the development of a bx as the specification of what consistency means. Rather, what is required is a notion of reasonable behaviour of a bx that captures the idea that the bx’s consistency restoration does not gratuitously surprise its user. We suggest considering continuity variants, particularly Hölder continuity. Such properties are too strong to expect them to hold univer-sally, so we introduce the idea of a property holding piecewise on an atlas of subspace pairs.","PeriodicalId":383341,"journal":{"name":"J. Object Technol.","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130032259","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}
引用次数: 18
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信
小红书