-
A Tool for Automated Reasoning About Traces Based on Configurable Formal Semantics
Authors:
Ferhat Erata,
Arda Goknil,
Bedir Tekinerdogan,
Geylani Kardas
Abstract:
We present Tarski, a tool for specifying configurable trace semantics to facilitate automated reasoning about traces. Software development projects require that various types of traces be modeled between and within development artifacts. For any given artifact (e.g., requirements, architecture models and source code), Tarski allows the user to specify new trace types and their configurable semanti…
▽ More
We present Tarski, a tool for specifying configurable trace semantics to facilitate automated reasoning about traces. Software development projects require that various types of traces be modeled between and within development artifacts. For any given artifact (e.g., requirements, architecture models and source code), Tarski allows the user to specify new trace types and their configurable semantics, while, using the semantics, it automatically infers new traces based on existing traces provided by the user, and checks the consistency of traces. It has been evaluated on three industrial case studies in the automotive domain (https://modelwriter.github.io/Tarski/).
△ Less
Submitted 9 March, 2024;
originally announced March 2024.
-
AlloyInEcore: Embedding of First-Order Relational Logic into Meta-Object Facility for Automated Model Reasoning
Authors:
Ferhat Erata,
Arda Goknil,
Ivan Kurtev,
Bedir Tekinerdogan
Abstract:
We present AlloyInEcore, a tool for specifying metamodels with their static semantics to facilitate automated, formal reasoning on models. Software development projects require that software systems be specified in various models (e.g., requirements models, architecture models, test models, and source code). It is crucial to reason about those models to ensure the correct and complete system speci…
▽ More
We present AlloyInEcore, a tool for specifying metamodels with their static semantics to facilitate automated, formal reasoning on models. Software development projects require that software systems be specified in various models (e.g., requirements models, architecture models, test models, and source code). It is crucial to reason about those models to ensure the correct and complete system specifications. AlloyInEcore allows the user to specify metamodels with their static semantics, while, using the semantics, it automatically detects inconsistent models, and completes partial models. It has been evaluated on three industrial case studies in the automotive domain (https://modelwriter.github.io/AlloyInEcore/).
△ Less
Submitted 4 March, 2024;
originally announced March 2024.
-
ModelWriter: Text & Model-Synchronized Document Engineering Platform
Authors:
Ferhat Erata,
Claire Gardent,
Bikash Gyawali,
Anastasia Shimorina,
Yvan Lussaud,
Bedir Tekinerdogan,
Geylani Kardas,
Anne Monceaux
Abstract:
The ModelWriter platform provides a generic framework for automated traceability analysis. In this paper, we demonstrate how this framework can be used to trace the consistency and completeness of technical documents that consist of a set of System Installation Design Principles used by Airbus to ensure the correctness of aircraft system installation. We show in particular, how the platform allows…
▽ More
The ModelWriter platform provides a generic framework for automated traceability analysis. In this paper, we demonstrate how this framework can be used to trace the consistency and completeness of technical documents that consist of a set of System Installation Design Principles used by Airbus to ensure the correctness of aircraft system installation. We show in particular, how the platform allows the integration of two types of reasoning: reasoning about the meaning of text using semantic parsing and description logic theorem proving; and reasoning about document structure using first-order relational logic and finite model finding for traceability analysis.
△ Less
Submitted 2 March, 2024;
originally announced March 2024.
-
On the Use of Deep Learning in Software Defect Prediction
Authors:
Görkem Giray,
Kwabena Ebo Bennin,
Ömer Köksal,
Önder Babur,
Bedir Tekinerdogan
Abstract:
Context: Automated software defect prediction (SDP) methods are increasingly applied, often with the use of machine learning (ML) techniques. Yet, the existing ML-based approaches require manually extracted features, which are cumbersome, time consuming and hardly capture the semantic information reported in bug reporting tools. Deep learning (DL) techniques provide practitioners with the opportun…
▽ More
Context: Automated software defect prediction (SDP) methods are increasingly applied, often with the use of machine learning (ML) techniques. Yet, the existing ML-based approaches require manually extracted features, which are cumbersome, time consuming and hardly capture the semantic information reported in bug reporting tools. Deep learning (DL) techniques provide practitioners with the opportunities to automatically extract and learn from more complex and high-dimensional data. Objective: The purpose of this study is to systematically identify, analyze, summarize, and synthesize the current state of the utilization of DL algorithms for SDP in the literature. Method: We systematically selected a pool of 102 peer-reviewed studies and then conducted a quantitative and qualitative analysis using the data extracted from these studies. Results: Main highlights include: (1) most studies applied supervised DL; (2) two third of the studies used metrics as an input to DL algorithms; (3) Convolutional Neural Network is the most frequently used DL algorithm. Conclusion: Based on our findings, we propose to (1) develop more comprehensive DL approaches that automatically capture the needed features; (2) use diverse software artifacts other than source code; (3) adopt data augmentation techniques to tackle the class imbalance problem; (4) publish replication packages.
△ Less
Submitted 5 October, 2022;
originally announced October 2022.
-
Feature-Driven Survey of Physical Protection Systems
Authors:
Bedir Tekinerdogan,
Kaan Özcan,
Sevil Yağız,
İskender Yakın
Abstract:
Many systems nowadays require protection against security or safety threats. A physical protection system (PPS) integrates people, procedures, and equipment to protect assets or facilities. PPSs have targeted various systems, including airports, rail transport, highways, hospitals, bridges, the electricity grid, dams, power plants, seaports, oil refineries, and water systems. Hence, PPSs are chara…
▽ More
Many systems nowadays require protection against security or safety threats. A physical protection system (PPS) integrates people, procedures, and equipment to protect assets or facilities. PPSs have targeted various systems, including airports, rail transport, highways, hospitals, bridges, the electricity grid, dams, power plants, seaports, oil refineries, and water systems. Hence, PPSs are characterized by a broad set of features, from which part is common, while other features are variant and depend on the particular system to be developed. The notion of PPS has been broadly addressed in the literature, and even domain-specific PPS development methods have been proposed. However, the common and variant features are fragmented across many studies. This situation seriously impedes the identification of the required features and likewise the guidance of the systems engineering process of PPSs. To enhance the understanding and support the guidance of the development of PPS, in this paper, we provide a feature-driven survey of PPSs. The approach applies a systematic domain analysis process based on the state-of-the-art of PPSs. It presents a family feature model that defines the common and variant features and herewith the configuration space of PPSs
△ Less
Submitted 2 April, 2021;
originally announced April 2021.
-
Adoption of ICT innovations in the agriculture sector in Africa: A Systematic Literature Review
Authors:
Claudia Ayim,
Ayalew Kassahun,
Bedir Tekinerdogan,
Chris Addison
Abstract:
According to the latest World Economic Forum report, about 70% of the African population depends on agriculture for their livelihood. This makes agriculture a critical sector within the African continent. Nonetheless, agricultural productivity is low and food insecurity is still a challenge. This has in recent years led to several initiatives in using ICT (Information Communication Technology) to…
▽ More
According to the latest World Economic Forum report, about 70% of the African population depends on agriculture for their livelihood. This makes agriculture a critical sector within the African continent. Nonetheless, agricultural productivity is low and food insecurity is still a challenge. This has in recent years led to several initiatives in using ICT (Information Communication Technology) to improve agriculture productivity. This study aims to explore ICT innovations in the agriculture sector of Africa. To achieve this, we conducted a SLR (Systematic Literature Review) of the literature published since 2010. Our search yielded 779 papers, of which 23 papers were selected for a detailed analysis following a detailed exclusion and quality assessment criteria. The analysis of the selected papers shows that the main ICT technologies adopted are text and voice-based services targeting mobile phones. The analysis also shows that radios are still widely used in disseminating agriculture information to rural farmers, while computers are mainly used by researchers. Though the mobile-based services aimed at improving access to accurate and timely agriculture information, the literature reviews indicate that the adoption of the services is constrained by poor technological infrastructure, inappropriate ICT policies and low capacity levels of users, especially farmers, to using the technologies. The findings further indicate that literature on an appropriate theoretical framework for guiding ICT innovations is lacking.
△ Less
Submitted 24 June, 2020;
originally announced June 2020.
-
Model-Based User Interface Design for Generating E-Forms in the Context of an E-Government Project
Authors:
Bedir Tekinerdogan,
Namik Aktekin
Abstract:
We report on our experiences in an e-government project for supporting the automatic generation of E-forms for services provided by local governments. The approach requires the integration of both the model-based user interface design (MBUID) and software product line engineering approaches. During the domain engineering activity the commonality and variability of product services is modeled using…
▽ More
We report on our experiences in an e-government project for supporting the automatic generation of E-forms for services provided by local governments. The approach requires the integration of both the model-based user interface design (MBUID) and software product line engineering approaches. During the domain engineering activity the commonality and variability of product services is modeled using feature diagrams and the corresponding UI models are defined. To support the automation of e-forms the implemented feature models are on their turn used to generate E-forms automatically to enhance productivity, increase quality and reduce cost of development. We have developed three different approaches for e-form generation in increasing complexity: (1) offline model transformation without interaction (2) model transformation with initial interaction (3) model-transformation with run-time interaction. We discuss the lessons learned and propose a systematic approach for defining model transformations that is based on an interactive paradigm.
△ Less
Submitted 18 March, 2020;
originally announced March 2020.
-
Analyzing the Impact of Automated User Assistance Systems: A Systematic Review
Authors:
Murat Acar,
Bedir Tekinerdogan
Abstract:
Context: User assistance is generally defined as the guided assistance to a user of a software system in order to help accomplish tasks and enhance user experience. Automated user assistance systems are equipped with online help system that provides information to the user in an electronic format and which can be opened directly in the application. Various different automated user assistance appro…
▽ More
Context: User assistance is generally defined as the guided assistance to a user of a software system in order to help accomplish tasks and enhance user experience. Automated user assistance systems are equipped with online help system that provides information to the user in an electronic format and which can be opened directly in the application. Various different automated user assistance approaches have been proposed in the literature. However, there has been no attempt to systematically review and report the impact of automated user assistance systems. Objective: The overall objective of this systematic review is to identify the state of art in automated user assistance systems, and describe the reported evidence for automated user assistance. Method: A systematic literature review is conducted by a multiphase study selection process using the published literature since 2002. Results: We reviewed 575 papers that are discovered using a well-planned review protocol, and 31 of them were assessed as primary studies related to our research questions. Conclusions: Our study shows that user assistance systems can provide important benefits for the user but still more research is required in this domain.
△ Less
Submitted 12 March, 2020;
originally announced March 2020.
-
Experience in engineering of scientific software: The case of an optimization software for oil pipelines
Authors:
Vahid Garousi,
Ehsan Abbasi,
Bedir Tekinerdogan
Abstract:
Development of scientific and engineering software is usually different and could be more challenging than the development of conventional enterprise software. The authors were involved in a technology-transfer project between academia and industry which focused on engineering, development and testing of a software for optimization of pumping energy costs for oil pipelines. Experts with different…
▽ More
Development of scientific and engineering software is usually different and could be more challenging than the development of conventional enterprise software. The authors were involved in a technology-transfer project between academia and industry which focused on engineering, development and testing of a software for optimization of pumping energy costs for oil pipelines. Experts with different skillsets (mechanical, power and software engineers) were involved. Given the complex nature of the software (a sophisticated underlying optimization model) and having experts from different fields, there were challenges in various software engineering aspects of the software system (e.g., requirements and testing). We report our observations and experience in addressing those challenges during our technology-transfer project, and aim to add to the existing body of experience and evidence in engineering of scientific and engineering software. We believe that our observations, experience and lessons learnt could be useful for other researchers and practitioners in engineering of other scientific and engineering software systems.
△ Less
Submitted 1 March, 2020;
originally announced March 2020.