Filters








28 Hits in 0.78 sec

Aggregation-based minimization of finite state automata

Johanna Björklund, Loek Cleophas
2020 Acta Informatica  
Cleophas  ... 
doi:10.1007/s00236-019-00363-5 fatcat:ovsmow44urao7ol2sxesb3oosi

Tree pattern matching from regular tree expressions

Ahlem Belabbaci, Hadda Cherroun, Loek Cleophas, Djelloul Ziadi
2018 Kybernetika (Praha)  
doi:10.14736/kyb-2018-2-0221 fatcat:ec3rvph23nhqtgnv2q7ugelezm

Metamodel Clone Detection with SAMOS

Önder Babur, Loek Cleophas, Mark van den Brand
2019 Journal of Computer Languages  
W.A.Cleophas, M.G.J.v.d.Brand}@tue.nl 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 MDE
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 ( [1], [2]) 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
doi:10.1016/j.cola.2018.12.002 dblp:journals/vlc/BaburCB19 fatcat:mmcckrx2kbbn7gnzzieu7btw4i

Automaton-Based Sublinear Keyword Pattern Matching [chapter]

Loek Cleophas, Bruce W. Watson, Gerard Zwaan
2004 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

Weak factor automata: the failure of failure factor oracles?

Loek Cleophas, Derrick G. Kourie, Bruce W. Watson
2014 South African Computer Journal  
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 loek@fastar.org, Derrick G. Kourie derrick@fastar.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

Tool Support for Correctness-by-Construction [chapter]

Tobias Runge, Ina Schaefer, Loek Cleophas, Thomas Thüm, Derrick Kourie, Bruce W. Watson
2019 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.
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.
doi:10.1007/978-3-030-16722-6_2 fatcat:hjsfdbx4ingxxhmqtwlqkj7nhy

Models, More Models, and Then a Lot More [chapter]

Önder Babur, Loek Cleophas, Mark van den Brand, Bedir Tekinerdogan, Mehmet Aksit
2018 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

An Assessment of Algorithms for Deriving Failure Deterministic Finite Automata

Madoda Nxumalo, Derrick G Kourie, Loek Cleophas, Bruce W Watson
2017 South African Computer Journal  
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

A Functional Safety Assessment Method for Cooperative Automotive Architecture [article]

Sangeeth Kochanthara, Niels Rood, Arash Khabbaz Saberi, Loek Cleophas, Yanja Dajsuren, Mark van den Brand
2021 arXiv   pre-print
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 respect
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.
arXiv:2104.13729v2 fatcat:mqfzdgay2zd2jmwcbf5iypqocu

Interface protocol inference to aid understanding legacy software components

Kousar Aslam, Loek Cleophas, Ramon Schiffelers, Mark van den Brand
2020 Journal of Software and Systems Modeling  
Loek Cleophas l.g.w.a.cleophas@tue.nl Ramon Schiffelers r.r.h.schiffelers@tue.nl; ramon.schiffelers@asml.com Mark van den Brand m.g.j.v.d.brand@tue.nl 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

A new taxonomy of sublinear right-to-left scanning keyword pattern matching algorithms

Loek Cleophas, Bruce W. Watson, Gerard Zwaan
2010 Science of Computer Programming  
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 [12] .  ... 
doi:10.1016/j.scico.2010.04.012 fatcat:7tzjiwynjzfv7pr7c72j7p6bki

Towards Distributed Model Analytics with Apache Spark

Önder Babur, Loek Cleophas, Mark van den Brand
2018 Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development  
., Cleophas, L. and Brand, M. Towards Distributed Model Analytics with Apache Spark.  ... 
doi:10.5220/0006735407670772 dblp:conf/modelsward/BaburCB18 fatcat:kq4punadorcp3k3m6rpw5rwsqm

Towards Statistical Comparison and Analysis of Models

Önder Babur, Loek Cleophas, Tom Verhoeff, Mark van den Brand
2016 Proceedings of the 4th International Conference on Model-Driven Engineering and Software Development  
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, such
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.
doi:10.5220/0005799103610367 dblp:conf/modelsward/BaburCVB16 fatcat:cxyvpg2jevh3pjv4e3o2m5kcy4

N-Gram Representations For Comment Filtering

Dirk Brand, Steve Kroon, Brink van der Merwe, Loek Cleophas
2015 Proceedings of the 2015 Annual Research Conference on South African Institute of Computer Scientists and Information Technologists - SAICSIT '15  
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 outperform
more » ... ly outperform manual feature extraction techniques.
doi:10.1145/2815782.2815789 dblp:conf/saicsit/BrandKMC15 fatcat:zuldiokcizeunbpggzepdpmkb4

Performance of C++ bit-vector implementations

Vreda Pieterse, Derrick G. Kourie, Loek Cleophas, Bruce W. Watson
2010 Proceedings of the 2010 Annual Research Conference of the South African Institute of Computer Scientists and Information Technologists on - SAICSIT '10  
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 an
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.
doi:10.1145/1899503.1899530 dblp:conf/saicsit/PieterseKCW10 fatcat:mf7dp7abl5gllhiluk6em5xk7a
« Previous Showing results 1 — 15 out of 28 results