Proceedings of the 23rd International Systems and Software Product Line Conference - Volume A
This tutorial explores the impact of the socio-economic trends of mass customization on software ... more This tutorial explores the impact of the socio-economic trends of mass customization on software reuse through software product line development.
An inductive learning perspective on automated generation of feature models from given product specifications
Proceedings of the 22nd International Systems and Software Product Line Conference - Volume 1
For explicit representation of commonality and variability of a product line, a feature model is ... more For explicit representation of commonality and variability of a product line, a feature model is mostly used. An open question is how a feature model can be inductively learned in an automated way from a limited number of given product specifications in terms of features. We propose to address this problem through machine learning, more precisely inductive generalization from examples. However, no counter-examples are assumed to exist. Basically, a feature model needs to be complete with respect to all the given example specifications. First results indicate the feasibility of this approach, even for generating hierarchies, but many open challenges remain.
Proceedings of the 26th ACM International Systems and Software Product Line Conference - Volume A
The volume, variety and velocity of products in software-intensive systems product lines is incre... more The volume, variety and velocity of products in software-intensive systems product lines is increasing. One challenge is to understand the range of similarity between products. Reasons for product comparison include (i) to decide whether to build a new product or not (ii) to evaluate how products of the same type differ for strategic positioning or branding reasons (iii) to gauge if a product line needs to be reorganized (iv) to assess if a product falls within the national legislative and regulatory boundaries. We will discuss two different approaches to address this challenge. One is grounded in feature modelling, the other in case-based reasoning. We will also describe a specific product comparison approach using similarity matching, in which a product configured from a product line feature model is represented as a weighted binary string, the overall similarity between products is compared using a binary string metric, and the significance of individual feature combinations for product similarity can be explored by modifying the weights. We will illustrate our ideas with a mobile phone example, and discuss some of the benefits and limitations of this approach.
Proceedings of the Annual Hawaii International Conference on System Sciences, 2022
In this paper, we describe the harnessing and analyses of a large sample (n = 661 705) of Android... more In this paper, we describe the harnessing and analyses of a large sample (n = 661 705) of Android apps and associated metadata available on the Google Play Store. The analyses and scrutiny are in the context of cross-platform mobile development, as we report on the technologies used to develop apps for the Android ecosystem. Specifically, we quantify the use of 13 technical frameworks for cross-platform development, identify their distribution across Google Play Store categories, present an overview of framework usage from 2008 to 2019, app file size (.apk size), and lastly discuss our findings in the context of current industry trends and directions. Our findings indicate that cross-platform apps account for approximately 15% (n = 99 304) of the dataset, and that all overarching development approaches are present.
Reuse vs. Reusability of Software Supporting Business Processes
Lecture Notes in Computer Science, 2016
Reusing software is desirable, and so is reusing business processes. For reusing both in the cour... more Reusing software is desirable, and so is reusing business processes. For reusing both in the course of developing software supporting business processes, an integration of related reuse approaches is necessary. Of course, such reuse is not for free and requires reusability of related artefacts, i.e., business process models and software parts supporting them. For successful reuse, of course, trade-offs with making artefacts reusable or acquiring them have to be beneficial. In this paper, we present an integration of business process and software reuse and reusability R&R. Based on it, we compare trade-offs between making reusable and reusing in the context of developing software supporting business processes. As a consequence, it should become easier to make rational judgments on whether and how to engage in R&R of such software.
High-level interaction design for automated GUI generation and customization
Proceedings of the ACM SIGCHI Symposium on Engineering Interactive Computing Systems, 2017
Interaction design is considered important for achieving usable user interfaces. In this tutorial... more Interaction design is considered important for achieving usable user interfaces. In this tutorial, we present our discourse-based approach for the specification of (classes of) dialogues. We also explain a previously identified and published duality of discourse- and task-based interaction design according to these approaches to high-level modeling for GUI generation. In addition, this tutorial demonstrates how graphical user interfaces (GUIs) can be automatically generated from such discourse-based models specifying a high-level interaction design. This generation approach is especially useful when user interfaces tailored for different devices are needed. It is based on model-transformation rules according to the model-driven architecture. This tutorial also shows how customization can be included into the generation itself. It presents our approach for managing model transformation rules for customization of GUIs in the context of their automated generation. Finally, this tutoria...
Proceedings of the 23rd International Conference on Enterprise Information Systems, 2021
The volume, variety and velocity of products in software-intensive systems product lines is incre... more The volume, variety and velocity of products in software-intensive systems product lines is increasing. One challenge is to understand the range of similarity between products to evaluate its impact on product line management. This paper contributes to product line management by presenting a product similarity evaluation process in which (i) a product configured from a product line feature model is represented as a weighted binary string (ii) the overall similarity between products is compared using the Jaccard Coefficient similarity metric (iii) the significance of individual features and feature combinations to product similarity is explored by modifying the weights. We propose a method for automatically allocating weights to features depending on their position in a product line feature model, although we do not claim that this allocation method nor the use of the Jaccard Coefficient is optimal. We illustrate our ideas with mobile phone worked examples.
Proceedings of the 50th Hawaii International Conference on System Sciences (2017), 2017
Services implemented through information and communication technology need to provide value for c... more Services implemented through information and communication technology need to provide value for customers, with whom they usually have non-trivial interaction. However, user interface and (Web) service specifications are often disconnected. The most widely used Web services are stateless, hence only trivial user interaction with one-step input and output can be embedded in such a service. Remembering the state is a prerequisite for implementing nontrivial user interaction with a service. We present new stateful SOA-conformant services as building blocks for interactive software systems. This new kind of service has a unified high-level protocol both for (non-trivial) user interaction with a machine and for machine-machine communication. Services with the same protocol can substitute each other (also dynamically at runtime), whether they are machine or user services. Using such services as building blocks, interactive software systems can be composed, also recursively. As a matter of fact, from such service specifications (graphical) user interfaces for non-trivial interaction can be automatically generated.
Proceedings of the 14th International Conference on Software Technologies, 2019
Using design space exploration (DSE), certain real-world problems can be made solvable through (h... more Using design space exploration (DSE), certain real-world problems can be made solvable through (heuristic) search. A meta-model of the domain and transformation rules defined on top of it specify the search space. For example, we previously (meta-)modeled specific problems in the context of reusing hardware/software interfaces (HSIs) in automotive systems, and defined transformation rules that lead from a model of one specific HSI to another one. Based on that, a minimal number of adaptation steps can be found using best-first A* searches that lead from a given HSI to another one fulfilling new requirements. A closer look revealed that these problems involved a few reconfigurations, but often no reconfiguration is necessary at all. For such trivial problem instances, no real search should be necessary, but in general, it is. After it became clear that a good tie-breaker for the many nodes with the same minimal value of the evaluation function of A* was the key to success, we performed experiments with the tie-breakers recently found best in the literature, all based on a last-in-first-out (LIFO) strategy in contrast to the previous belief that using minimal h-values would be the best tie-breakers. However, our experiments provide empirical evidence in our real-world domain that tie-breakers based on minimal h-values can indeed be (statistically significantly) better than a tie-breaker based on LIFO. In addition, they show that the best tie-breakers for the more difficult problems are also best for the trivial problem instances without reconfigurations, where they really make a difference.
The scope of this paper is the utilization of inheritance for requirements specification, i.e., t... more The scope of this paper is the utilization of inheritance for requirements specification, i.e., the tasks of analyzing and modeling the domain, as well as forming and defining requirements. Our approach and the tool supporting it are named RETH (Requirements Engineering Through Hypertext). Actually, RETH uses a combination of various technologies, including object-oriented approaches and artificial intelligence (in particular frames). We do not attempt to exclude or replace formal representations, but try to complement and provide means for gradually developing them. Among others, RETH has been applied in the CERN (Conseil Europeen pour la Rechereche Nucleaire) Cortex project. While it would be impossible to explain this project in detail here, it should be sufficient to know that it deals with a generic distributed control system. Since this project is not finished yet, it is difficult to state its size precisely. In order to give an idea, its final goal is to substitute the many e...
HIS: an information system about hypertext on hypertext
This paper addresses the issue whether hypertext of paper is more appropriate for certain tasks. ... more This paper addresses the issue whether hypertext of paper is more appropriate for certain tasks. We chose the task of getting a quick overview of a new topic. We describe the design of a hypertext system with specific emphasis on hierarchical structuring for semi-formal knowledge representation. The domain of our application is hypertext itself. For the evaluation of our design, and more generally hypertext versus paper, we descirbe the experiment and results on the effectiveness of our system compared to a printout version. In particular, we classify the difficulty of the questions posed to the subjects in our experiment accoring to various methods. It is interesting that the achieved classifications have small correlation. There are no statistically significant differences between the performance of subjects using HIS or the paper version. We interpret this as a compensation of the adverse effects of the usually slower reading from a computer screen and unfamiliarity with the medi...
Towards Probabilistic Analysis of Human-System Integration in Automated Driving
Advances in Intelligent Systems and Computing, 2020
According to the Automated Driving Roadmap ERTRAC 17, only vehicles of Level 5 may not need human... more According to the Automated Driving Roadmap ERTRAC 17, only vehicles of Level 5 may not need human interference. The current adaptive cruise control system or more advanced automated driving solutions below Level 5 require, therefore, that a human driver takes over, if an extraordinary situation occurs. A critical safety problem may be caused by the very short time span available to the driver. It has been recently demonstrated, mostly in application to the aerospace domain, how probabilistic analytical modeling (PAM) could effectively complement computational simulation techniques in various human-in-the-loop (HITL) related missions and off-normal situations, when the reliability of the equipment (instrumentation), both hard- and software, and the performance of the human contribute jointly to their likely outcome. Our objective is to extend this approach, with appropriate modifications, to safety analyses of automated driving applications.
Advances in Intelligent Systems and Computing, 2019
Usually, courses are given on human-computer interaction, while in recent years there was a major... more Usually, courses are given on human-computer interaction, while in recent years there was a major shift towards (mobile) devices and machines, with new human interfaces. Of course, they include embedded computers and software, but their interaction with users poses many new challenges and offers new solutions. This tutorial shows manifold usability problems as observed by the presenter in daily life, beyond those usually known from graphical user interfaces (GUIs) of traditional PCs (including laptop computers). It explains them by human factors usually unknown to embedded engineers and motivates user experience. User-centered and Usage-centered Design are compared with the result that they typically overlap but have a different focus each on Interaction Design. Usability Test and Usability Study are explained and contrasted as well. In addition, this tutorial explains key properties of Multimodal Interfaces and UIs of Mobile Devices. Finally, it culminates in a sketch of specific challenges of Human-Robot Interaction.
7. Österreichische Artificial-Intelligence-Tagung / Seventh Austrian Conference on Artificial Intelligence
Informatik-Fachberichte, 1991
I Contents.- Eingeladene Beitrage/Invited Talks.- Knowledge-based Generation of Illustrated Docum... more I Contents.- Eingeladene Beitrage/Invited Talks.- Knowledge-based Generation of Illustrated Documents.- On the Complexity of Clause Condensing.- AI und Hypertext/AI and Hypertext.- HESDE - A Hypertext based Expert-System debugging Tool.- Naturliche Sprache I Natural Language.- A Model of Task-oriented Communication Based on Principles of Rational Action and Interaction.- VIE-DU - Dialogue by Unification.- Eine deklarative Beschreibung von Linkstilgungslucken in koordinierten Strukturen des Deutschen.- Wissensbasierte Systeme/Knowledge-Based Systems.- Applying Artificial Intelligence in Designing for Quality.- Automatische Verfeinerung der Wissensbasis durch maschinelles Lernen in einem medizinischen Expertensystem.- Learning Diagnostic Rules for Power Distribution Systems.- Neuronale Netze/Neural Networks.- Modelling Feature Maps by Attributed Parallel Array Grammars.- Design of the SNNS Neural Network Simulator.- Logik und Schliessen/Logic and Automated Reasoning.- Deductive Generalization and Meta-Reasoning or How to Formalize Genesis.- A Generalized Factorization Rule Based on the Introduction ofSkolem Terms.- On Exploiting the Structure of Martin-Lof's Theory of Types.- Being Aware of Assumptions.- A Mathematical Formulation of Dempster-Shafer's Belief Functions.- Qualitative Spatial Reasoning with Cardinal Directions.- Model-Based Diagnosis with Constraint Logic Programs.
Even though for solving concrete problem instances, e.g., through case-based reasoning (CBR) or h... more Even though for solving concrete problem instances, e.g., through case-based reasoning (CBR) or heuristic search, estimating their difficulty really matters, there is not much theory available. In a prototypical realworld application of CBR for reuse of hardware/software interfaces (HSIs) in automotive systems, where the problem adaptation has been done through heuristic search, we have been facing this problem. Hence, this work compares different approaches to estimating problem instance difficulty (similarity metrics, heuristic functions). It also shows that even measuring problem instance difficulty depends on the ground truth available and used. A few different approaches are investigated on how they statistically correlate. Overall, this paper compares different approaches to both estimating and measuring problem instance difficulty with respect to CBR and heuristic search. In addition to the given real-world domain, experiments were made using slidingtile puzzles. As a consequence, this paper points out that admissible heuristic functions h guiding search (normally used for estimating minimal costs to a given goal state or condition) may be used for retrieving cases for CBR as well. Notation s,t Start node and goal node, respectively c(m, n) Cost of the direct arc from m to n k(m, n) Cost of an optimal path from m to n g * (n) Cost of an optimal path from s to n h * (n) Cost of an optimal path from n to t g(n), h(n) Estimates of g * (n) and h * (n), respectively f (n) Static evaluation function: g(n) + h(n) C * Cost of an optimal path from s to t N# Number of nodes generated
Towards reuse in safety risk analysis based on product line requirements
2015 IEEE 23rd International Requirements Engineering Conference (RE), 2015
Risk analysis and requirements engineering for safety-critical systems are expensive and challeng... more Risk analysis and requirements engineering for safety-critical systems are expensive and challenging, especially for the very high reliability required, e.g., in the automotive and railway industries. Currently, risk analysis is performed by safety engineers with little or no explicit reuse. Of course, these engineers build on their previous experience in this course, but explicit reuse of related artefacts, e.g., from a dedicated repository is not available according to our best knowledge.
Uploads
Papers by Hermann Kaindl