A copy of this work was available on the public web and has been preserved in the Wayback Machine. The capture dates from 2021; you can also visit the original URL.
The file type is
W.A.Cleophas, M.G.J.v.d.Brandfirstname.lastname@example.org I. EXTENDED ABSTRACT Model-driven engineering (MDE) promotes the use of models (and metamodels to which they conform) as central artifacts in the software development process. This eases development and maintenance of software artifacts (including source code generated from models), yet increasing MDE adoption leads to an abundance of models in use. Some examples of this include the academic efforts to gather models in repositories, and large-scale MDEdoi:10.1016/j.cola.2018.12.002 dblp:journals/vlc/BaburCB19 fatcat:mmcckrx2kbbn7gnzzieu7btw4i
more »... arge-scale MDE practices in the industry. This leads to challenges in the management and maintenance of those artifacts. One of those challenges is the identification of model clones, which can be defined in the most general sense as duplicate or highly similar models and model fragments. Similar scenarios apply in the traditional software development for source code clones. There is a significant volume of research on code clones, elaborating the drawbacks of having clones, which can be a major source of defects or lead to higher maintenance cost and less reusability, and providing detection techniques and tools. Note that in some cases clones might be useful too; it is nevertheless worthwhile to investigate them. Code clones have attracted the attention of the source code analysis community, who had to deal with the maintenance of large numbers of artifacts for a longer time than the MDE community. Model clone detection, on the other hand, is a relatively new topic. Many researchers have drawn parallels to code clones, and claimed that a lot of the issues there can be directly translated into the world of models. While the problem domains are similar, the solution proves to be a challenge. Source code clone detection usually works on linear text or on an abstract syntax tree of the code, while models in general are graphs; other aspects are also inherently different for models, such as tool-specific representations, internal identifiers, and abstract vs. concrete syntaxes. In our research we have the goal of detecting clones in large repositories of models (notably Ecore metamodels) and large evolving industrial domain-specific language (DSL) ecosystems based on the Eclipse Modelling Framework (EMF). Metamodels are artifacts of particular interest to us, for various purposes including metamodel repository management and DSL analysis. To achieve this goal, we have investigated the feasibility of existing tools, with three major requirements: (1) conceptual and technological applicability to Ecore metamodel clones; (2) sensitivity to all possible metamodel changes, and accuracy in general (precision, recall); and (3) scalability for large datasets. Among the existing model clone detectors in the literature are ConQAT, NICAD-SIMONE and MACH. A good portion of such tools are either limited to, tailored for, or evaluated on specific types of models such as MATLAB/Simulink. As a starting point we considered MACH and NICAD-SIMONE as promising candidates. However, these tools underperformed with respect to some of our requirements, notably sensitivity with respect to fine-grained changes, thus accuracy. We have eventually taken an orthogonal approach by extending the SAMOS framework (Statistical Analysis of MOdelS) for model clone detection. SAMOS is a state-of-the-art tool for large-scale analysis of models. We wish to exploit the underlying capabilities of the frameworkincorporating information retrieval-based fragmentation, natural language processing, and statistical algorithms-for model clone detection. This extended abstract summarizes our recent studies ( , ) in extending and tailoring SAMOS for (meta-)model clone detection, and evaluating it in three extensive case studies with mutation analysis for SAMOS, NICAD and MACH; comparison of SAMOS with NICAD on ATL Zoo metamodels; and finally a repository mining scenario on a very large set of GitHub metamodels. SAMOS applies a typical Information Retrieval plus Machine Learning workflow (see Figure 1 ) to models: (1) extract a set of features such as model names, types, and chunks out of the underlying model graph (e.g. n-grams or subtrees), (2) define comparison and weighting schemes for those features such as Natural Language Processing (NLP) for model names and tree edit distance for subtrees, (3) compute a Vector Space Model (VSM) based on the feature comparison for all the models in the dataset, and finally (4) apply distance measures and clustering suitable to the problem at hand. In our study we have tailored this workflow for clone detection with additional scoping capabilities (e.g. whole model or EClass scope), a new distance measure (masked Bray-Curtis) and a density-based clustering algorithm to find metamodel clones. We performed three case studies to evaluate the clone detection capabilities of SAMOS compared to NICAD and MACH; in terms of accuracy, and with respect to scalability in the presence of e.g. thousands of models: • Case Study 1: We analyzed artificially generated atomic mutation cases and large change scenarios where we
Lecture Notes in Computer Science
literature survey & taxonomy development -Watson & Zwaan (1992-1996) -Contained Aho-Corasick, Knuth-Morris-Pratt, Boyer- Moore, Commentz-Walter and many variants • Revised & extended taxonomy -Cleophas ... suffix-based algorithms by Watson & Zwaan -Extension to factor-/factor oracle-based algorithms remains to be done -derivations of Commentz-Walter, Boyer-Moore, Fan- Su by Watson & Zwaan, Horspool by Cleophas ...doi:10.1007/978-3-540-30213-1_3 fatcat:nsqzud4zrbfxngo67d3y5bpbei
We discuss and classify this pattern matching algorithm in terms of the keyword pattern matching taxonomies of Watson, Cleophas and Zwaan. ... Secondly, one is often interested in finding the occurrences of a given relatively short pattern or keyword Email: Loek Cleophas email@example.com, Derrick G. Kourie firstname.lastname@example.org, Bruce W. ... We discuss and classify this pattern matching algorithm in terms of the keyword pattern matching taxonomies of Watson, Cleophas, and Zwaan [7, 18, 19] . ...doi:10.18489/sacj.v53i0.199 fatcat:quriyhvdevf3hjyyqcx3ulhlwa
Lecture Notes in Computer Science
Correctness-by-Construction (CbC) is an approach to incrementally create formally correct programs guided by pre-and postcondition specifications. A program is created using refinement rules that guarantee the resulting implementation is correct with respect to the specification. Although CbC is supposed to lead to code with a low defect rate, it is not prevalent, especially because appropriate tool support is missing. To promote CbC, we provide tool support for CbC-based program development.doi:10.1007/978-3-030-16722-6_2 fatcat:hjsfdbx4ingxxhmqtwlqkj7nhy
more »... gram development. We present CorC, a graphical and textual IDE to create programs in a simple while-language following the CbC approach. Starting with a specification, our open source tool supports CbC developers in refining a program by a sequence of refinement steps and in verifying the correctness of these refinement steps using the theorem prover KeY. We evaluated the tool with a set of standard examples on CbC where we reveal errors in the provided specification. The evaluation shows that our tool reduces the verification time in comparison to post-hoc verification.
Lecture Notes in Computer Science
With increased adoption of Model-Driven Engineering, the number of related artefacts in use, such as models, greatly increase. To be able to tackle this dimension of scalability in MDE, we propose to treat the artefacts as data, and apply various techniques ranging from information retrieval to machine learning to analyse and manage them in a scalable and efficient way.doi:10.1007/978-3-319-74730-9_10 fatcat:dkbiaubdajhmlnqxfi75ka34gi
Since the second Kumar et al. algorithm focuses on minimising lengths of failure 5 Initial results have been published in Nxumalo, Kourie, Cleophas, and Watson (2015a) and Nxumalo, Kourie, Cleophas ... Such an algorithm was proposed by Kourie, Watson, Cleophas, and Venter (2012) for input DFAs that are complete 3 . The resulting graph structure was named an FDFA for the first time. ...doi:10.18489/sacj.v29i1.456 fatcat:vsluvfz5dzgmfp3npzbytxhmru
The scope of automotive functions has grown from a single-vehicle as an entity to multiple vehicles working together as an entity, referred to as cooperative driving. The current automotive safety standard, ISO 26262, is designed for single vehicles. With the increasing number of cooperative driving capable vehicles on the road, it is now imperative to systematically assess the functional safety of architectures of these vehicles. Many methods are proposed to assess architectures with respectarXiv:2104.13729v2 fatcat:mqfzdgay2zd2jmwcbf5iypqocu
more »... ures with respect to different quality attributes in the software architecture domain, but to the best of our knowledge, functional safety assessment of automotive architectures is not explored in the literature. We present a method, that leverages existing research in software architecture and safety engineering domains, to check whether the functional safety requirements for a cooperative driving scenario are fulfilled in the technical architecture of a vehicle. We apply our method on a real-life academic prototype for a cooperative driving scenario, platooning, and discuss our insights.
Loek Cleophas email@example.com Ramon Schiffelers firstname.lastname@example.org; email@example.com Mark van den Brand firstname.lastname@example.org ASML, Veldhoven, The Netherlands of evolving requirements ... Loek Cleophas is an assistant professor in Software Engineering Technology at Eindhoven University of Technology, where he obtained his doctorate in computer science and engineering, and a research fellow ...doi:10.1007/s10270-020-00809-2 fatcat:lyb6dujhyrecrj3lzenkqlm2mu
The additions and changes to the original taxonomy to form the new taxonomy are described in Cleophas' M.Sc. Thesis [12, Chapter 3] . ... This category includes algorithms such as (Set) Backward DAWG Matching [16, 30] and (Set) Backward Oracle Matching [3, 4] , which were added to the existing taxonomy by Cleophas  . ...doi:10.1016/j.scico.2010.04.012 fatcat:7tzjiwynjzfv7pr7c72j7p6bki
., Cleophas, L. and Brand, M. Towards Distributed Model Analytics with Apache Spark. ...doi:10.5220/0006735407670772 dblp:conf/modelsward/BaburCB18 fatcat:kq4punadorcp3k3m6rpw5rwsqm
Model comparison is an important challenge in model-driven engineering, with many application areas such as model versioning and domain model recovery. There are numerous techniques that address this challenge in the literature, ranging from graph-based to linguistic ones. Most of these involve pairwise comparison, which might work, e.g. for model versioning with a small number of models to consider. However, they mostly ignore the case where there is a large number of models to compare, suchdoi:10.5220/0005799103610367 dblp:conf/modelsward/BaburCVB16 fatcat:cxyvpg2jevh3pjv4e3o2m5kcy4
more »... to compare, such as in common domain model/metamodel recovery from multiple models. In this paper we present a generic approach for model comparison and analysis as an exploratory first step for model recovery. We propose representing models in vector space model, and applying clustering techniques to compare and analyse a large set of models. We demonstrate our approach on a synthetic dataset of models generated via genetic algorithms.
Accurate classifiers for short texts are valuable assets in many applications. Especially in online communities, where users contribute to content in the form of posts and comments, an effective way of automatically categorising posts proves highly valuable. This paper investigates the use of Ngrams as features for short text classification, and compares it to manual feature design techniques that have been popular in this domain. We find that the N-gram representations greatly outperformdoi:10.1145/2815782.2815789 dblp:conf/saicsit/BrandKMC15 fatcat:zuldiokcizeunbpggzepdpmkb4
more »... ly outperform manual feature extraction techniques.
This paper describes an experimental study to compare the performance of various dynamically resizable bit-vector implementations for the C++ programming language. We compare the std::vector from the Standard Template Library (STL), boost::dynamic_bitset from Boost, Qt::QBitArray from QT Software, and BitMagic's bm::bvector<> with one another. We also compare std::vector from the STL with these because it is a dynamically resizable vector implementation that has been suggested to be andoi:10.1145/1899503.1899530 dblp:conf/saicsit/PieterseKCW10 fatcat:mf7dp7abl5gllhiluk6em5xk7a
more »... d to be an acceptable alternative for std::vector. We describe the test data and the methods that were applied to measure memory use and processing time. This lays a foundation for comparing other parts of the different C++ libraries. The results are presented and discussed in terms of the differences in the implementations of these data structures. Although the results reported in this article is specific to the mentioned C++ libraries, the techniques used to measure and compare the performance of the different libraries go beyond C++ bit-vectors and may be used more generally.
« Previous Showing results 1 — 15 out of 28 results