Günther Ruhe

dblp:42/6131 · also Guenther Ruhe · DBLP profile ↗
← Back
116ranked-venue papers
17as first author
6since 2021 · last 2024
0000-0001-5651-1414ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 107 · 15 first-author · 6 since 2021Artificial intelligence and machine learning · 23 · 8 first-authorDatabases, data management, data science and information retrieval · 5 · 1 first-authorHuman-computer interaction and ubiquitous computing · 4 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 1 · 1 first-author
YearPublicationVenuePosition
2024 Recommending and release planning of user-driven functionality deletion for mobile apps
Maleknaz Nayebi, Konstantin Kuznetsov 0001, Andreas Zeller, Günther Ruhe
Requir. Eng.4
2023 User Driven Functionality Deletion for Mobile Apps
abstract
Evolving software with an increasing number of features is harder to understand and thus harder to use. Software release planning has been concerned with planning these additions. Moreover, software of increasing size takes more effort to be maintained. In the domain of mobile apps, too much functionality can easily impact usability, maintainability, and resource consumption. Hence, it is important to understand the extent to which the law of continuous growth applies to mobile apps. Previous work showed that the deletion of functionality is common and sometimes driven by user reviews. However, it is unknown whether these deletions are visible or important to the app users. In this study, we surveyed 297 mobile app users to understand the significance of functionality deletion for them. Our results showed that for most users, the deletion of features corresponds with negative sentiments and change in usage and even churn. Motivated by these preliminary results, we propose Radiation to input user reviews and recommend if any functionality should be deleted from an app's User Interface (UI). We evaluate Radiation using historical data and surveying developers' opinions. From the analysis of 190,062 reviews from 115 randomly selected apps, we show that Radiation can recommend functionality deletion with an average F-Score of 74% and if sufficiently many negative user reviews suggest so.
Maleknaz Nayebi, Konstantin Kuznetsov 0001, Andreas Zeller, Günther Ruhe
RE4
2022 An Empirical Study of Blockchain Repositories in GitHub
abstract
Blockchain is a distributed ledger technique that guarantees the traceability of transactions. Blockchain is adopted in multiple domains like finance (e.g., cryptocurrency), healthcare, security, and supply chain. In the open-source software (OSS) portal GitHub, we observe a growing adoption of Blockchain-based solutions. Given the rapid emergence of Blockchain-based solutions in our daily life and the evolving cryptocurrency market, it is important to know the status quo, how developers generally interact in those repos, and how much freedom they have in applying code changes. We report an empirical study of 3,664 Blockchain software repositories from GitHub. We divide the Blockchain repositories into two categories: Tool (e.g., SDKs) and Applications (e.g., service/solutions developed using SDKs). The Application category is further divided into two sub-categories: Crypto and Non-Crypto applications. In all Blockchain repository categories, the contribution interactions on commits are the most common interaction type. We found that more organizations contributing to the Blockchain repos than individual users. The median numbers of internal and external users in tools are higher than the application repos. We observed a higher degree of collaboration (e.g., for maintenance efforts) among users in Blockchain tools than those in the application repos. Among the artifacts, issues have a greater number of interactions than commits and pull requests. Related to autonomy we found that less than half of total project contributions are autonomous. Our findings offer implications to Blockchain stakeholders, like developers to stay aware of OSS practices around Blockchain software.
Ajoy Das, Gias Uddin 0001, Günther Ruhe
EASE3
2022 Stakeholder identification for a structured release planning approach in the automotive domain
abstract
Abstract In regulated domains like automotive, release planning is a complex process. This complex process consists of an agreement between product development processes for hardware as well as mechanic systems and approaches for software development. Particularly in automotive, the creation and synchronization of release plans for hardware as well as software is a challenge. Within the whole complex system development, it is challenging to consider the relevant stakeholders in the initial creation of a release plan. Depending on the context that a release plan shall be created for, there are different stakeholders that have to be considered from the beginning. There are numerous publications in the area of release planning, but there is no detailed research that shows which stakeholders have to be addressed in the automotive context. The aim of this work is to identify stakeholders of a release plan as an appropriate approach to create transparency in release planning in the automotive domain. Action research to elaborate relevant stakeholders for release planning was conducted at Dr. Ing. h. c. F. Porsche AG. We present a detailed overview of identified stakeholders as well as their required content and added value regarding two pilot projects. With this contribution, identified stakeholders of release planning from the hardware and software points of view are introduced. We discuss, based on the results, why there are common stakeholders for the two projects and why there are individual stakeholders for each project. With this work, we present a more complete stakeholder identification and a more detailed understanding of their needs.
Kristina Marner, Stefan Wagner 0001, Günther Ruhe
Requir. Eng.3
2022 What Makes Agile Software Development Agile?
abstract
Together with many success stories, promises such as the increase in production speed and the improvement in stakeholders’ collaboration have contributed to making agile a transformation in the software industry in which many companies want to take part. However, driven either by a natural and expected evolution or by contextual factors that challenge the adoption of agile methods as prescribed by their creator(s), software processes in practice mutate into hybrids over time. Are these still agile? In this article, we investigate the question: what makes a software development method agile? We present an empirical study grounded in a large-scale international survey that aims to identify software development methods and practices that improve or tame agility. Based on 556 data points, we analyze the perceived degree of agility in the implementation of standard project disciplines and its relation to used development methods and practices. Our findings suggest that only a small number of participants operate their projects in a purely traditional or agile manner (under 15 percent). That said, most project disciplines and most practices show a clear trend towards increasing degrees of agility. Compared to the methods used to develop software, the selection of practices has a stronger effect on the degree of agility of a given discipline. Finally, there are no methods or practices that explicitly guarantee or prevent agility. We conclude that agility cannot be defined solely at the process level. Additional factors need to be taken into account when trying to implement or improve agility in a software company. Finally, we discuss the field of software process-related research in the light of our findings and present a roadmap for future research.
Marco Kuhrmann, Paolo Tell, Regina Hebig, Jil Klünder, Jürgen Münch, Oliver Linssen, Dietmar Pfahl, Michael Felderer, Christian Prause, Stephen G. MacDonell, Joyce Nakatumba-Nabende, David Raffo, Sarah Beecham, Eray Tüzün, Gustavo López 0001, Nicolás Paez, Diego Fontdevila, Sherlock A. Licorish, Steffen Küpper, Günther Ruhe, Eric Knauss, Özden Özcan Top, Paul M. Clarke, Fergal McCaffery, Marcela Genero, Aurora Vizcaíno, Mario Piattini, Marcos Kalinowski, Tayana Conte, Rafael Prikladnicki, Stephan Krusche, Ahmet Coskunçay, Ezequiel Scott, Fabio Calefato, Svetlana Pimonova, Rolf-Helge Pfeiffer, Ulrik Pagh Schultz Lundquist, Rogardt Heldal, Masud Fazal-Baqaie, Craig Anslow, Maleknaz Nayebi, Kurt Schneider, Stefan Sauer 0001, Dietmar Winkler 0001, Stefan Biffl, M. Cecilia Bastarrica, Ita Richardson
IEEE Trans. Software Eng.20
2021 Mining Treatment-Outcome Constructs from Sequential Software Engineering Data
Maleknaz Nayebi, Günther Ruhe, Thomas Zimmermann 0001
IEEE Trans. Software Eng.2
2020 Beyond Accuracy: ROI-driven Data Analytics of Empirical Data
abstract
Background: The unprecedented access to data has rendered a remarkable opportunity to analyze, understand, and optimize the investigation approaches in almost all the areas of (Empirical) Software Engineering. However, data analytics is time and effort consuming, thus, expensive, and not automatically valuable.
Gouri Deshpande, Günther Ruhe
ESEM2
2020 Requirements Dependency Extraction by Integrating Active Learning with Ontology-Based Retrieval
abstract
Context: Incomplete or incorrect detection of requirement dependencies has proven to result in reduced release quality and substantial rework. Additionally, the extraction of dependencies is challenging since requirements are mostly documented in natural language, which makes it a cognitively difficult task. Moreover, with ever-changing and new requirements, a manual analysis process must be repeated, which imposes extra hardship even for domain experts. Objective: The three main objectives of this research are: 1) Proposing a new dependency extraction method using a variant of Active Learning (AL). 2) Evaluating this AL and Ontology-based Retrieval (OBR) as baseline methods for dependency extraction on the two industrial data sets. 3) Analyzing the value gained from integrating these diverse approaches to form two hybrid methods. Method: Building on the general AL, ensemble and semi-supervised machine learning, a variant of AL was developed, which was further integrated with OBR to form two hybrid methods (Hybrid1, Hybrid2) for extracting three types of dependencies (requires, refines, other): Hybrid1 used OBR as a substitute for human expert; Hybrid2 used dependencies extracted through the OBR as an additional input for training set in AL. Results: For two industrial case studies, AL extracted more dependencies than OBR. Hybrid1 showed improvement for both data sets. For one of them, F1 score increased to 82.6% compared to the AL baseline score of 49.9%. Hybrid2 increased the accuracy by 25% to the level of 75.8% compared to the AL baseline accuracy. OBR also complemented the AL approach by reducing 50% of the human effort.
Gouri Deshpande, Quim Motger, Cristina Palomares, Ikagarjot Kamra, Katarzyna Biesialska, Xavier Franch, Günther Ruhe, Jason Ho
RE7
2019 New Approaches to the Identification of Dependencies between Requirements
abstract
There is a high demand for intelligent decision support systems which assist stakeholders in requirements engineering tasks. Examples of such tasks are the elicitation of requirements, release planning, and the identification of requirement-dependencies. In particular, the detection of dependencies between requirements is a major challenge for stakeholders. In this paper, we present two content-based recommendation approaches which automatically detect and recommend such dependencies. The first approach identifies potential dependencies between requirements which are defined on a textual level by exploiting document classification techniques (based on Linear SVM, Naive Bayes, Random Forest, and k-Nearest Neighbors). This approach uses two different feature types (TF-IDF features vs. probabilistic features). The second recommendation approach is based on Latent Semantic Analysis and defines the baseline for the evaluation with a real-world data set. The evaluation shows that the recommendation approach based on Random Forest using probabilistic features achieves the best prediction quality of all approaches (F1: 0.89).
Ralph Samer, Martin Stettinger, Müslüm Atas, Alexander Felfernig, Günther Ruhe, Gouri Deshpande
ICTAI5
2019 Data-Driven Elicitation and Optimization of Dependencies between Requirements
abstract
Requirement dependencies affect many activities in the software development life cycle such as design, implementation, testing, release planning and change management. They are the basis for various software development decisions. However, requirements dependencies extraction is not only error-prone but also a cognitively and computationally complex problem that consumes substantial efforts, since most of the requirements are documented in natural language. This paper proposes a novel approach to extracts requirements dependencies utilizing natural-language processing (NLP) and weakly supervised learning (WSL) in two stages. In the first stage, binary dependencies (basic dependencies:dependent/independent) are identified, which are further analyzed to detect the type of the dependency in the second stage. An initial evaluation of this approach on the PURE data set - European Rail Traffic Management System - was carried out using three machine learners (Random Forest, Support Vector Machine and Naïve Bayes), which were then compared and tested. Results showed that all the three learners exhibited similar accuracy measures, while SVM needed additional parameter tuning. The machine learners' accuracy was further improved by applying weakly supervised learning to generate pseudo annotations for unlabelled data. Based on these results, agenda is to provide decision support under a dynamic use case scenario that includes (i) continuous updates and analysis of dependencies, (ii) identification of the general types of dependencies, and (iii) dependencies as a key driver of the decision support for the product releases.
Gouri Deshpande, Chahal Arora, Günther Ruhe
RE3
2019 ESSMArT way to manage customer requests
Maleknaz Nayebi, Liam Dicke, Ron Ittyipe, Chris Carlson, Günther Ruhe
Empir. Softw. Eng.5
2019 Special Issue in Honor of Professor Claes Wohlin
Günther Ruhe
Inf. Softw. Technol.1
2019 Status Quo in Requirements Engineering: A Theory and a Global Family of Surveys
abstract
Requirements Engineering (RE) has established itself as a software engineering discipline over the past decades. While researchers have been investigating the RE discipline with a plethora of empirical studies, attempts to systematically derive an empirical theory in context of the RE discipline have just recently been started. However, such a theory is needed if we are to define and motivate guidance in performing high quality RE research and practice. We aim at providing an empirical and externally valid foundation for a theory of RE practice, which helps software engineers establish effective and efficient RE processes in a problem-driven manner. We designed a survey instrument and an engineer-focused theory that was first piloted in Germany and, after making substantial modifications, has now been replicated in 10 countries worldwide. We have a theory in the form of a set of propositions inferred from our experiences and available studies, as well as the results from our pilot study in Germany. We evaluate the propositions with bootstrapped confidence intervals and derive potential explanations for the propositions. In this article, we report on the design of the family of surveys, its underlying theory, and the full results obtained from the replication studies conducted in 10 countries with participants from 228 organisations. Our results represent a substantial step forward towards developing an empirical theory of RE practice. The results reveal, for example, that there are no strong differences between organisations in different countries and regions, that interviews, facilitated meetings and prototyping are the most used elicitation techniques, that requirements are often documented textually, that traces between requirements and code or design documents are common, that requirements specifications themselves are rarely changed and that requirements engineering (process) improvement endeavours are mostly internally driven. Our study establishes a theory that can be used as starting point for many further studies for more detailed investigations. Practitioners can use the results as theory-supported guidance on selecting suitable RE methods and techniques.
Stefan Wagner 0001, Daniel Méndez 0001, Michael Felderer, Antonio Vetrò, Marcos Kalinowski, Roel J. Wieringa, Dietmar Pfahl, Tayana Conte, Marie-Therese Christiansson, Des Greer, Casper Lassenius, Tomi Männistö, Maleknaz Nayebi, Markku Oivo, Birgit Penzenstadler, Rafael Prikladnicki, Günther Ruhe, André Schekelmann, Sagar Sen, Rodrigo O. Spínola, Ahmet Tuzcu, Jose Luis de la Vara, Dietmar Winkler 0001
ACM Trans. Softw. Eng. Methodol.17
2019 Asymmetric Release Planning: Compromising Satisfaction against Dissatisfaction
abstract
Maximizing satisfaction from offering features as part of the upcoming release(s) is different from minimizing dissatisfaction gained from not offering features. This asymmetric behavior has never been utilized for product release planning. We study Asymmetric Release Planning (ARP) by accommodating asymmetric feature evaluation. We formulated and solved ARP as a bi-criteria optimization problem. In its essence, it is the search for optimized trade-offs between maximum stakeholder satisfaction and minimum dissatisfaction. Different techniques including a continuous variant of Kano analysis are available to predict the impact on satisfaction and dissatisfaction with a product release from offering or not offering a feature. As a proof of concept,we validated the proposed solution approach called Satisfaction-Dissatisfaction Optimizer (SDO) via a real-world case study project. From running three replications with varying effort capacities, we demonstrate that SDO generates optimized trade-off solutions being (i) of a different value profile and different structure, (ii) superior to the application of random search and heuristics in terms of quality and completeness, and (iii) superior to the usage of manually generated solutions generated from managers of the case study company. A survey with 20 stakeholders evaluated the applicability and usefulness of the generated results.
Maleknaz Nayebi, Günther Ruhe
IEEE Trans. Software Eng.2
2018 Anatomy of functionality deletion: an exploratory study on mobile apps
abstract
One of Lehman's laws of software evolution is that the functionality of programs has to increase over time to maintain user satisfaction. In the domain of mobile apps, though, too much functionality can easily impact usability, resource consumption, and maintenance effort. Hence, does the law of continuous growth apply there? This paper shows that in mobile apps, deletion of functionality is actually common, challenging Lehman's law. We analyzed user driven requests for deletions which were found in 213,866 commits from 1,519 open source Android mobile apps from a total of 14,238 releases. We applied hybrid (open and closed) card sorting and created taxonomies for nature and causes of deletions. We found that functionality deletions are mostly motivated by unneeded functionality, poor user experience, and compatibility issues. We also performed a survey with 106 mobile app developers. We found that 78.3% of developers consider deletion of functionality to be equally or more important than the addition of new functionality. Developers confirmed that they plan for deletions. This implies the need to re-think the process of planning for the next release, overcoming the simplistic assumptions to exclusively look at adding functionality to maximize the value of upcoming releases. Our work is the first to study the phenomenon of functionality deletion and opens the door to a wider perspective on software evolution.
Maleknaz Nayebi, Konstantin Kuznetsov 0001, Paul Chen, Andreas Zeller, Günther Ruhe
MSR5
2018 Welcome Message from the RE18 Chairs
abstract
This document includes the welcome message from the chairs of the 26th IEEE International Requirements Engineering Conference, including an introduction to the program and main contributors.
Walid Maalej, Daniel Amyot, Günther Ruhe
RE3
2018 App store mining is not enough for app improvement
Maleknaz Nayebi, Henry Cho, Günther Ruhe
Empir. Softw. Eng.3
2018 An Empirical Study of Meta- and Hyper-Heuristic Search for Multi-Objective Release Planning
abstract
A variety of meta-heuristic search algorithms have been introduced for optimising software release planning. However, there has been no comprehensive empirical study of different search algorithms across multiple different real-world datasets. In this article, we present an empirical study of global, local, and hybrid meta- and hyper-heuristic search-based algorithms on 10 real-world datasets. We find that the hyper-heuristics are particularly effective. For example, the hyper-heuristic genetic algorithm significantly outperformed the other six approaches (and with high effect size) for solution quality 85% of the time, and was also faster than all others 70% of the time. Furthermore, correlation analysis reveals that it scales well as the number of requirements increases.
Yuanyuan Zhang 0003, Mark Harman, Gabriela Ochoa, Günther Ruhe, Sjaak Brinkkemper
ACM Trans. Softw. Eng. Methodol.4
2017 Failure Prediction in Crowdsourced Software Development
abstract
Background: Despite the increasingly reported benefits of software crowdsourcing, one of the major practical concerns is the limited visibility and control over task progress. Aim: This paper reports an empirical study to develop a framework for failure prediction in software crowdsourcing. Method: This process begins with identifying 13 influencing factors in software crowdsourcing failures, across four categories including task characteristics, technology popularity, competition network, and workers reliability. Presenting an algorithm to construct worker competition network and extract its network metrics features. The proposed framework was evaluated on 4,872 software crowdsourcing tasks, extracted from TopCoder platform, using five machine learners, compared with in-house TopCoder predictor. Results: 1) Workers reliability, links in the description, number of registered workers, number of required technologies, and task-workers network modularity are the most influencing factors for predicting crowdsourcing failure; 2) The top-three learners for task failure are Naïve Bayes, Random Forest, and StackingC, with precision above 98.8%, recall above 81.2%, and F-measure above 91.2%; and 3) The proposed best learners significantly outperform the two baseline models in our evaluation. Conclusions: The performance of the proposed framework is better than those of the two baseline models. This paper offers practical recommendations for managing task failure risks.
Abdullah Khanfor, Gregg Vesonder, Günther Ruhe, David Messinger
APSEC4
2017 A Two-staged Survey on Release Readiness
abstract
Deciding about the content and readiness when shipping a new product release can have a strong impact on the success (or failure) of the product. Having formerly analyzed the state-of-the art in this area, the objective for this paper was to better understand the process and rationale of real-world release decisions and to what extent research on release readiness is aligned with industrial needs. We designed two rounds of surveys with focus on the current (Survey-A) and the desired (Survey-B) process of how to make release readiness decisions. We received 49 and 40 valid responses for Survey-A and Survey-B, respectively.
S. M. Didar Al Alam, Maleknaz Nayebi, Dietmar Pfahl, Günther Ruhe
EASE4
2017 Predicting the Vector Impact of Change - An Industrial Case Study at Brightsquid
abstract
Background: Understanding and controlling the impact of change decides about the success or failure of evolving products. The problem magnifies for start-ups operating with limited resources. Their usual focus is on Minimum Viable Product (MVP's) providing specialized functionality, thus have little expense available for handling changes. Aims: Change Impact Analysis (CIA) refers to the identification of source code files impacted when implementing a change request. We extend this question to predict not only affected files, but also the effort needed for implementing the change, and the duration necessary for that. Method: This study evaluates the performance of three textual similarity techniques for CIA based on Bag of words in combination with either topic modeling or file coupling. Results: The approaches are applied on data from two industrial projects. The data comes as part of an industrial collaboration project with Brightsquid, a Canadian start-up company specializing in secure communication solutions. Performance analysis shows that combining textual similarity with file coupling improves impact prediction, resulting in Recall of 67%. Effort and duration can be predicted with 84% and 72% accuracy using textual similarity only. Conclusions: The relative effort invested into CIA for predicting impacted files can be reduced by extending its applicability to multiple dimensions which include impacted files, effort, and duration.
Shaikh Jeeshan Kabeer, Maleknaz Nayebi, Günther Ruhe, Chris Carlson, Francis Chew
ESEM3
2017 Which Version Should Be Released to App Store?
abstract
Background: Several mobile app releases do not find their way to the end users. Our analysis of 11,514 releases across 917 open source mobile apps revealed that 44.3% of releases created in GitHub never shipped to the app store (market). Aims: We introduce "marketability" of open source mobile apps as a new release decision problem. Considering app stores as a complex system with unknown treatments, we evaluate performance of predictive models and analogical reasoning for marketability decisions. Method: We performed a survey with 22 release engineers to identify the importance of marketability release decision. We compared different classifiers to predict release marketability. For guiding the transition of not successfully marketable releases into successful ones, we used analogical reasoning. We evaluated our results both internally (over time) and externally (by developers). Results: Random forest classification performed best with F1 score of 78%. Analyzing 58 releases over time showed that, for 81% of them, analogical reasoning could correctly identify changes in the majority of release attributes. A survey with seven developers showed the usefulness of our method for supporting real world decisions. Conclusions: Marketability decisions of mobile apps can be supported by using predictive analytics and by considering and adopting similar experience from the past.
Maleknaz Nayebi, Homayoon Farrahi, Günther Ruhe
ESEM3
2017 What Works Better? A Study of Classifying Requirements
abstract
Classifying requirements into functional requirements (FR) and non-functional ones (NFR) is an important task in requirements engineering. However, automated classification of requirements written in natural language is not straightforward, due to the variability of natural language and the absence of a controlled vocabulary. This paper investigates how automated classification of requirements into FR and NFR can be improved and how well several machine learning approaches work in this context. We contribute an approach for preprocessing requirements that standardizes and normalizes requirements before applying classification algorithms. Further, we report on how well several existing machine learning methods perform for automated classification of NFRs into sub-categories such as usability, availability, or performance. Our study is performed on 625 requirements provided by the OpenScience tera-PROMISE repository. We found that our preprocessing improved the performance of an existing classification method. We further found significant differences in the performance of approaches such as Latent Dirichlet Allocation, Biterm Topic Modeling, or Naïve Bayes for the sub-classification of NFRs.
Zahra Shakeri Hossein Abad, Oliver Karras, Parisa Ghazi, Martin Glinz, Günther Ruhe, Kurt Schneider
RE5
2017 Task Interruptions in Requirements Engineering: Reality Versus Perceptions!
abstract
Task switching and interruptions are a daily reality in software development projects: developers switch between Requirements Engineering (RE), coding, testing, daily meetings, and other tasks. Task switching may increase productivity through increased information flow and effective time management. However, it might also cause a cognitive load to reorient the primary task, which accounts for the decrease in developers' productivity and increases in errors. This cognitive load is even greater in cases of cognitively demanding tasks as the ones typical for RE activities. In this paper, to compare the reality of task switching in RE with the perception of developers, we conducted two studies: (i) a case study analysis on 5,076 recorded tasks of 19 developers and (ii) a survey of 25 developers. The results of our retrospective analysis show that in ALL of the cases that the disruptiveness of RE interruptions is statistically different from other software development tasks, RE related tasks are more vulnerable to interruptions compared to other task types. Moreover, we found that context switching, the priority of the interrupting task, and the interruption source and timing are key factors that impact RE interruptions. We also provided a set of RE task switching patterns along with recommendations for both practitioners and researchers. While the results of our retrospective analysis show that self-interruptions are more disruptive than external interruptions, developers have different perceptions about the disruptiveness of various sources of interruptions.
Zahra Shakeri Hossein Abad, Günther Ruhe, Mike Bauer
RE2
2017 A Visual Narrative Path from Switching to Resuming a Requirements Engineering Task
abstract
Requirements Engineering (RE) is closely tied to other development activities and is at the heart and foundation of every software development process. This makes RE the most data and communication intensive activity compared to other development tasks. The highly demanding communication makes task switching and interruptions inevitable in RE activities. While task switching often allows us to perform tasks effectively, it imposes a cognitive load and can be detrimental to the primary task, particularly in complex tasks as the ones typical for RE activities. Visualization mechanisms enhanced with analytical methods and interaction techniques help software developers obtain a better cognitive understanding of the complexity of RE decisions, leading to timelier and higher quality decisions. In this paper, we propose to apply interactive visual analytics techniques for managing requirements decisions from various perspectives, including stakeholders communication, RE task switching, and interruptions. We propose a new layered visualization framework that supports the analytical reasoning process of task switching. This framework consists of both data analysis and visualization layers. The visual layers offer interactive knowledge visualization components for managing task interruption decisions at different stages of an interruption (i.e. before, during, and after). The analytical layers provide narrative knowledge about the consequences of task switching decisions and help requirements engineers to recall their reasoning process and decisions upon resuming a task. Moreover, we surveyed 53 software developers to test our visual prototype and to explore more required features for the visual and analytical layers of our framework.
Zahra Shakeri Hossein Abad, Alex Shymka, Jenny Le, Noor Hammad, Günther Ruhe
RE5
2017 Optimized Functionality for Super Mobile Apps
abstract
Functionality of software products often does not match user needs and expectations. The closed set-up of systems and information is replaced by wide access to data of users and competitor products. This shift offers completely new opportunities to approach requirements elicitation and subsequent planning of software functionality. This is, in particular true for app store markets. App stores are markets for many small sized software products which provide an open platform for users to provide feedback on using apps. Moreover, the functionality and status of similar software products can be retrieved. While this is a competitive risk, it is at the same time an opportunity.In this paper, we envision a new release planning approach that leverages the new opportunities for decision making. We propose a new model using bi-criterion integer programming. We make suggestions for optimized super app functionality that are based on two key aspects: (i) the estimated value of features, and (ii) the cohesiveness between newly added features and cohesiveness between existing and the features to be added. The information on these attributes comes from reasoning on feature composition of existing similar apps. The approach is applicable to the development of new product releases as well as to the creation of completely new apps. We illustrate the applicability of our model by a small example and outline directions for future research.
Maleknaz Nayebi, Günther Ruhe
RE2
2017 The Vision: Requirements Engineering in Society
abstract
Industry and society are facing radical changes due to fast growing digital technologies and its ubiquity. Products and services will increasingly augment and integrate the real world with the digital world. This digital transformation has reached all business areas. Companies and consumers expect to obtain innovation, market penetration, cost reductions and more flexibility. The relationship between RE and society is bi-directional. In this talk, we discuss the evolving role of RE by referring to a quarter century of impressive research. We discuss the increasing scope and responsibility of our discipline, serving as the bridge between the general public and technical teams and providing a response to the dramatic changes in our society.
Günther Ruhe, Maleknaz Nayebi, Christof Ebert
RE1
2017 Evolutionary robust optimization for software product line scoping: An explorative study
Reza Karimpour, Günther Ruhe
Comput. Lang. Syst. Struct.2
2017 Naming the pain in requirements engineering - Contemporary problems, causes, and effects in practice
Daniel Méndez 0001, Stefan Wagner 0001, Marcos Kalinowski, Michael Felderer, Priscilla Mafra, Antonio Vetrò, Tayana Conte, Marie-Therese Christiansson, Des Greer, Casper Lassenius, Tomi Männistö, M. Nayabi, Markku Oivo, Birgit Penzenstadler, Dietmar Pfahl, Rafael Prikladnicki, Günther Ruhe, André Schekelmann, Sagar Sen, Rodrigo O. Spínola, Ahmet Tuzcu, Jose Luis de la Vara, Roel J. Wieringa
Empir. Softw. Eng.17
2016 Release Readiness Classification: An Explorative Case Study
abstract
Context: To survive in a highly competitive software market, product managers are striving for frequent, incremental releases in ever shorter cycles. Release decisions are characterized by high complexity and have a high impact on project success. Under such conditions, using the experience from past releases could help product managers to take more informed decisions.
S. M. Didar Al Alam, Dietmar Pfahl, Günther Ruhe
ESEM3
2016 Who Should Take This Task?: Dynamic Decision Support for Crowd Workers
abstract
Context: The success of crowdsourced software development (CSD) depends on a large crowd of trustworthy software workers who are registering and submitting for their interested tasks in exchange of financial gains. Preliminary analysis on software worker behaviors reveals an alarming task-quitting rate of 82.9%.
Muhammad Rezaul Karim 0002, Razieh Lotfalian Saremi, Günther Ruhe
ESEM4
2016 Requirements Engineering Visualization: A Systematic Literature Review
abstract
Requirements Engineering (RE) is a decision-centric activity which is highly data-intensive. The results of this process are known to have key impact on the results of the project. As known from the experience in other fields and disciplines, visualization can potentially provide more insights into data, information and knowledge studied. While research in the area of information visualization and its application to software engineering has rapidly increased over the last decade, there is only a limited amount of studies addressing the usage and impact of visualization techniques for RE activities. In this paper, we report on the results of a Systematic Literature Review (SLR) related to RE visualization. Extending the established SLR process by the usage of grounded theory for the encoding of papers, we synthesize 18 usage patterns. Even though there are punctual applications, there is a clear deficit on a holistic perspective across the different RE activities. As another conclusion, we derive the clear need for more research on visualization support in particular for tackling requirements uncertainty, requirements verification, and modeling, as well as non-functional requirements (NFRs).
Zahra Shakeri Hossein Abad, Mohammad Noaeen, Günther Ruhe
RE3
2016 Release Practices for Mobile Apps - What do Users and Developers Think?
abstract
Large software organizations such as Facebook or Netflix, who otherwise make daily or even hourly releases of their web applications using continuous delivery, have had to invest heavily into a customized release strategy for their mobile apps, because the vetting process of app stores introduces lag and uncertainty into the release process. Amidst these large, resourceful organizations, it is unknown how the average mobile app developer organizes her app's releases, even though an incorrect strategy might bring a premature app update to the market that drives away customers towards the heavy market competition. To understand the common release strategies used for mobile apps, the rationale behind them and their perceived impact on users, we performed two surveys with users and developers. We found that half of the developers have a clear strategy for their mobile app releases, since especially the more experienced developers believe that it affects user feedback. We also found that users are aware of new app updates, yet only half of the surveyed users enables automatic updating of apps. While the release date and frequency is not a decisive factor to install an app, users prefer to install apps that were updated more recently and less frequently. Our study suggests that an app's release strategy is a factor that affects the ongoing success of mobile apps.
Maleknaz Nayebi, Bram Adams, Günther Ruhe
SANER3
2016 A guest editorial: special section on search-based software engineering
Marouane Kessentini, Günther Ruhe
Empir. Softw. Eng.2
2016 An empirical investigation of single-objective and multiobjective evolutionary algorithms for developer's assignment to bugs
abstract
Abstract In this paper, the modeling of developers’ assignment to bugs (DAB) is studied. The problem is modeled both as a single objective (minimize bug fix time) and as a bi‐objective (minimize bug fix time and cost) combinatorial optimization problem. Two models of developer assignment are considered where in the first model a single developer is assigned per bug (single developer model), while in the second model a single developer is assigned for each competency area of a bug (individual competency model). The latter model is proposed in this paper. For the single developer model, GA@DAB, an existing genetic algorithm‐based approach, is extended to support precedence among bugs. For the individual competency model of DAB, one genetic algorithm‐based approach (Competence@DAB) and one nondominated sorting genetic algorithm II‐based approach (CompetenceMulti2@DAB ) are proposed to generate solutions minimizing time and minimizing both time and cost, respectively. The performance of the proposed approaches was evaluated for 2040 bugs of 19 open‐source milestone projects from the Eclipse platform. Our results and analysis show that the proposed individual competency model is far better than the single developer model, with average bug fix time reduction of 39.7% across all projects. Copyright © 2016 John Wiley & Sons, Ltd.
Muhammad Rezaul Karim 0002, Günther Ruhe, Md. Mainur Rahman, Vahid Garousi, Thomas Zimmermann 0001
J. Softw. Evol. Process.2
2015 STRATOS: Using Visualization to Support Decisions in Strategic Software Release Planning
abstract
Software is typically developed incrementally and released in stages. Planning these releases involves deciding which features of the system should be implemented for each release. This is a complex planning process involving numerous trade-offs-constraints and factors that often make decisions difficult. Since the success of a product depends on this plan, it is important to understand the trade-offs between different release plans in order to make an informed choice. We present STRATOS, a tool that simultaneously visualizes several software release plans. The visualization shows several attributes about each plan that are important to planners. Multiple plans are shown in a single layout to help planners find and understand the trade-offs between alternative plans. We evaluated our tool via a qualitative study and found that STRATOS enables a range of decision-making processes, helping participants decide on which plan is most optimal.
Bon Adriel Aseniero, Tiffany Wun, David Ledo, Günther Ruhe, Anthony Tang 0001, Sheelagh Carpendale
CHI4
2015 Using real options to manage Technical Debt in Requirements Engineering
abstract
Despite the importance of Requirements Engineering (RE) for the success of software products, most of the requirements decisions such as requirements specification and prioritization are still ad hoc and depend upon the managers' preferences and the trade-offs they make. The Technical Debt (TD) metaphor looks into the trade-offs between short term and long-term goals in software development projects that may lead to increased cost in the future. This problem is mainly due to the lack of a systematic and well-defined approach to manage the high level of uncertainty in requirements decisions. In this paper, we propose to apply the real options thinking to develop a quantitative method for managing requirements decisions under uncertainty and, more specifically for managing requirements debt in software development projects. A real option is a right without an obligation to make a specific future decision depending on how uncertainty resolves. We demonstrate the application of real options in the context of requirements debt valuation by using the binomial model combined with dynamic programming. We provide an illustrative example to show how uncertainty creates option value and influences requirements decisions and finally outline a future research agenda.
Zahra Shakeri Hossein Abad, Günther Ruhe
RE2
2015 Usage and usefulness of technical software documentation: An industrial case study
Golara Garousi, Vahid Garousi, Günther Ruhe, Junji Zhi, Mahmood Moussavi
Inf. Softw. Technol.3
2015 Introduction to special section on Search Based Software Engineering
Günther Ruhe, Yuanyuan Zhang 0003
Inf. Softw. Technol.1
2015 Cost, benefits and quality of software development documentation: A systematic mapping
Junji Zhi, Vahid Garousi, Golara Garousi, S. M. Shahnewaz 0001, Günther Ruhe
J. Syst. Softw.6
2014 Monitoring bottlenecks in achieving release readiness: a retrospective case study across ten OSS projects
abstract
Context: Not releasing software on time can cause substantial loss in revenue. Continuous awareness of the product release status is required. Release readiness is a time-dependent attribute of the status of the product release, which aggregates the degree of satisfaction of a portfolio of release process and product measures.
S. M. Didar Al Alam, S. M. Shahnewaz 0001, Dietmar Pfahl, Günther Ruhe
ESEM4
2014 Industrial evaluation of the impact of quality-driven release planning
abstract
Context: Product release decisions are often made ad hoc or not relying on up-to-date information from systematic and analysis-driven process. Often, too much emphasis solely is put into functionality, thereby neglecting the different quality aspects being important for the success of the product. Objective: For a case study project, we quantitatively measure the impact of the analytical and systematic release planning approach Q-EVOLVE II. Method: As an explorative and retrospective case study, we perform optimized planning scenarios and compare them with the actual baseline scenario. Results: For the case study project in an Austrian public health insurance institution, we demonstrate that the analytical and systematic approach Q-EVOLVE II results in a (1) reduced release time, (2) more features implemented in the same time, and (3) better final quality through increased testing activities and less defects slipping through at the time of release. Conclusion: In the context of the studied institution, analytical and systematic planning of product releases considering quality criteria is superior to ad hoc planning ignoring quality.
Michael Felderer, Armin Beer, Jason Ho, Günther Ruhe
ESEM4
2014 Analysis and Improvement of Release Readiness - A Genetic Optimization Approach
S. M. Didar Al Alam, S. M. Shahnewaz 0001, Dietmar Pfahl, Günther Ruhe
PROFES4
2014 RELREA - An Analytical Approach for Evaluating Release Readiness
S. M. Shahnewaz 0001, Günther Ruhe
SEKE2
2014 Bi-objective Genetic Search for Release Planning in Support of Themes
Muhammad Rezaul Karim 0002, Günther Ruhe
SSBSE2
2014 Two machine-learning techniques for mining solutions of the ReleasePlanner™ decision support system
Gengshen Du, Günther Ruhe
Inf. Sci.2
2013 Evaluating usage and quality of technical software documentation: an empirical study
abstract
Context: Software documentation is an integral part of any software development process. However, software practitioners are often concerned about the lack of usage and quality of documentation in practice. Unfortunately, in many projects, practitioners find that software documentation artifacts are outdated, incomplete and sometimes not beneficial. Objective: Motivated by the needs of NovAtel Inc. (NovAtel), a world-leading company of GPS software systems, we propose in this paper an approach to analyze the usage and quality of software documentation in development and maintenance phases. Method: The approach incorporates inputs from automated analysis (e.g., mining of project's data) and also experts' opinion extracted from survey-based questionnaire. The approach has been designed based on the "action-research" approach and in close collaboration between industry and academia. Results: To evaluate the feasibility and usefulness of the proposed approach, we have applied it in an industrial setting and results are presented in this paper. One of the results is that, in the context of our case-study, usage of documentation for an implementation purpose is higher than the usage for maintenance purposes. Conclusion: It is concluded that the usage of documentation differs for various purposes and it depends on the type of the information needs as well as the task to be completed (e.g. development and maintenance). In addition, we identify the most important and relevant quality attributes which are critical to improving documentation quality.
Golara Garousi, Vahid Garousi, Mahmood Moussavi, Günther Ruhe
EASE4
2013 A Pilot Experiment to Quantify the Effect of Documentation Accuracy on Maintenance Tasks
abstract
This paper reports the results and some challenges we discovered during the design and execution of a pilot experiment with 21 bachelor students aimed at investigating the effect of documentation accuracy during software maintenance and evolution activities. As documentation we considered: a high level system functionality description and UML documents. Preliminary results indicate a benefit of +15% in terms of efficiency (computed as number of correct tasks per minute) when a more accurate documentation is used. The discovered challenging aspects to carefully consider in future executions of the experiment are as follows: selecting "the right" documentation artefacts, maintenance tasks and documentation versions, verifying that the subjects really used the documentation during the experiment and measuring documentation-code alignment.
Maurizio Leotta, Filippo Ricca, Giuliano Antoniol, Vahid Garousi, Junji Zhi, Günther Ruhe
ICSM6
2013 Analyzing an Industrial Strategic Release Planning Process - A Case Study at Roche Diagnostics
Gabriele Zorn-Pauli, Barbara Paech, Tobias Beck, Hannes Karey, Günther Ruhe
REFSQ5
2013 Decision Support for Re-planning of Software Product Releases (S)
S. M. Didar Al Alam, Günther Ruhe, Dietmar Pfahl
SEKE2
2013 DEVis: A tool for visualizing software document evolution
abstract
During the software development process many technical documents are produced. Such documents and their evolution history contain rich information about the development process. Analyzing these document changes may reveal regularities and anomalies which are helpful to understand the software system and its development process. In this paper, we propose DEVis, an interactive visualization tool to visualize the software documentation evolution and aid the tasks of analyzing software development process. We initially evaluated our tool using the knowledge task-based framework and discuss the challenging aspects and lessons learned during the development of DEVis.
Junji Zhi, Günther Ruhe
VISSOFT2
2013 A bibliometric/Geographic Assessment of 40 Years of Software Engineering Research (1969-2009)
abstract
Bibliometric rankings are quite common in the field of software engineering. For example, there are a series of ranking repeated every year which identify the top researchers and institutions at the international level in the field. There are also other studies to determine the most cited articles in software engineering journals, the most popular research topics in this area, or identify the top researchers and institutions in regional levels. However, there exists no existing bibliometric quantitative analysis of publications in the area of software engineering (SE), including relative and absolute growth in the number of all SE publications as well as an analysis among countries. This is the main goal and motivation of this article. Besides, this study intends to provide an overall quantitative trend of the software engineering papers, and compare that trend to research output in other areas of science. The bibliometric study reported in this paper is motivated by the fact that understanding the amount of geographical research contributions to the field of software engineering can help identify different countries’ level of commitment to support research activities in this area over years. We analyze how the contribution levels of top-ranked countries have changed over the years and how SE compares to other disciplines of engineering and science. Among the most interesting findings of this study are: (1) Over 40 years, in total about 60% of the SE literature has been contributed by only 7% of all countries, (2) the SE research output of different countries does not necessarily correlate with their GDPs, (3) the share of contributions to the SE discipline by the American researchers has declined from 71.43% (in 1980) to 14.90% (in 2008), and (4) China is the country with the biggest share growth in the number of publications (from 0.82% of the entire SE publications in 1991 to 13.82% in 2009).
Vahid Garousi, Günther Ruhe
Int. J. Softw. Eng. Knowl. Eng.2
2012 Information needs for integration decisions in the release process of large-scale parallel development
abstract
Version control branching allows an organization to parallelize its development efforts. Releasing a software system developed in this manner requires release managers, and other project stakeholders, to make decisions about how to integrate the branched work. This group decision-making process becomes very complex in the case of large-scale parallel development. To better understand the information needs of release managers in this context, we conducted an interview study at a large software company. Our analysis of the interviews provides a view into how release managers make integration decisions, organized around ten key factors. Based on these factors, we discuss specific information needs for release managers and how the needs can be met in future work.
Shaun Phillips, Günther Ruhe, Jonathan Sillito
CSCW2
2012 A hybrid release planning method and its empirical justification
abstract
Background: The use of Constraint Programming (CP) has been proposed by Regnell and Kuchcinski to model and solve the Release Planning Problem. However, they did not empirically demonstrate the advantages and disadvantages of CP over existing release planning methods.
Mark Przepiora, Reza Karimpour, Günther Ruhe
ESEM3
2012 Evolution of features and their dependencies - an explorative study in OSS
abstract
Release Planning is the process of decision making about what features are to be implemented (or revised) in which release of a software product. While release planning for proprietary software products is well-studied, little investigation has been performed for open source products. Various types of feature dependencies are known to impact both the planning and the subsequent maintenance process. In this paper, we provide the basic layout of a method to formulate and analyze feature dependencies defined at the code level. Dependencies are defined from evolutionary analysis of the commit graph of OSS code development and syntactical dependencies. We demonstrate our method with an explorative study of an open source project, the Spring Framework. From the analysis of the development cycles of two major releases over forty-one months, we could correlate late, increased feature dependencies with an increased number for subsequent improvements and bug fixes.
Maximilian Steff, Barbara Russo, Günther Ruhe
ESEM3
2012 Systematic mapping of recommendation systems for requirements engineering
abstract
Recommendation systems provide users with up-to-date guidance on processes, artifacts or other project-relevant information. Recommendation systems for requirements engineering can be used to provide the right information, at the right time, to requirements engineers. In this paper, we use systematic mapping to provide an overview of recommendation systems for the requirements engineering process, their characteristics, and state of validation. The resulting maps are analyzed to provide conclusions and to identify the limitations of current studies, and future research areas. The results of the mapping are used to outline the motivation for our future work on a recommendation system that helps product managers decide on the assignment of requirements to subsequent releases while considering constraints such as time, effort, quality, and resources.
Jamshaid G. Mohebzada, Günther Ruhe, Armin Eberlein
ICSSP2
2012 Simulation-based decision support for bringing a project back on track: The case of RUP-based software construction
abstract
RUP-based development has proven successful in various contexts. The iterative and phased development approach provides a framework for how to develop software efficiently and effectively. Yet, there are plenty of occasions that the projects go off-track in terms of the key parameters of the project such as quality, functionality, cost, and schedule. The challenge for the software project manager is to bring the project back on track. Simulation, in general, and system dynamics based simulation in particular, is established as a method to pro-actively evaluate possible scenarios and decisions. The main contribution of this paper is a method called SIM-DASH; it combines three established techniques for providing decision support to the software project manager in the context of RUP-based development. SIM-DASH consists of (i) a system dynamics modeling and simulation component for RUP-based construction, (ii) dashboard functionality providing aggregated and visualized information for comparing actual versus targeted performance, and (iii) knowledge and experience base describing possible actions that have proven successful in the past for how to bring a project back on track. As part of (iii), decision trees and experience-based guidelines are used. The interplay between these three components provides pre-evaluated actions for bringing the current project iteration back on track. As proof-of-concept, a case study is provided to illustrate the key steps of the method and to highlight its principal advantages. For this purpose, SIM-DASH was substantiated retrospectively for a real-world SAP web system development project within the banking field. While the method is applicable for different issues and scenarios, we study its impact for the specific issue of adding personnel to testing and/or development in order to ensure improved project performance to achieve established quality levels of feature development.
Elham Paikari, Günther Ruhe, Prashanth Harish Southekel
ICSSP2
2012 Defect Prediction using Case-Based Reasoning: an Attribute Weighting Technique Based upon sensitivity Analysis in Neural Networks
abstract
Software defect prediction is an acknowledged approach used to achieve better product quality and to better utilize resources needed for that purpose. One known method for predicting the number of defects is to apply case-based reasoning (CBR). In this paper, different attribute weighting techniques for CBR-based defect prediction are analyzed. One of the weighting techniques used in this work, Sensitivity Analysis based on Neural Networks (SANN), is based on sensitivity analysis of the impact of attributes as part of neural network analysis. Neural networks are applicable when there are non-linear and complicated relationships among the attributes. Since weighting plays a key role in the CBR model, using an efficient weight calculation method can change the results. The results of SANN are compared with applying uniform weights and weights gained from Multiple Linear Regression (MLR). Evaluation of the accuracy of the overall method for applying the three different weighting techniques is done over five data sets, comprising about 5000 modules from NASA. Two quality measures are applied: Average Absolute Error (AAE) and Average Relative Error (ARE). In addition to the variation of weighting techniques, the impact of varying the number of nearest neighbors is studied. The three main results of the empirical analysis are: (i) In the majority of cases, SANN achieves the most accurate results; (ii) uniform weighting performs better than the MLR-based weighting heuristic; and (iii) there is no significant preference pattern for defining the number of similar objects used for prediction in CBR.
Elham Paikari, Michael M. Richter, Günther Ruhe
Int. J. Softw. Eng. Knowl. Eng.3
2011 Value-Risk Trade-off Analysis for Iteration Planning in Extreme Programming
abstract
Selection of the right user stories and planning their implementation for the next iteration is critical for success of extreme Programming (XP). Success here is measured by the total business value generated from all user stories implemented within time. The business value of an iteration is composed by the value of the individual user stories selected and additional value created from themes of user stories. In this paper, a method combining advanced search and risk analysis is proposed to support decision-making for the "best" set of user stories. The advanced search technique combines genetic search with subsequent application of the hill climbing technique. The top candidate solutions are further analyzed pro-actively in terms of their risk to be implementable in-time with the available effort. As a proof-of-concept, the applicability of the proposed method is applied for the planning of one iteration in a case study project with 40 user stories. As a result, a set of trade-off solutions is offered as decision support for XP teams.
Qiusong Yang, Qing Wang 0001, Jian Zhai, Günther Ruhe
APSEC5
2011 Multi-Agent System for Semantic Web Service Composition
Elham Paikari, Emadoddin Livani, Mohammad Moshirpour, Behrouz Homayoun Far, Günther Ruhe
KSEM5
2011 Mismatch handling for COTS selection: a case study
abstract
Abstract Using Commercial Off‐The‐Shelf (COTS) products to build software systems requires the evaluation of existing COTS products, the selection of the COTS that best fit system requirements, and the integration of the selected COTS into the system. During this process, it is inevitable to encounter two types of mismatches: (1) COTS mismatches, which are encountered during COTS selection between requirements and COTS features, due to an excess or shortage of COTS features, and (2) architectural mismatches, which arise when integrating multiple COTS products that do not fit well together. This paper focuses on the ‘COTS mismatch’ problem. The paper describes a real‐world case study of a single COTS selection with the aid of a method called MiHOS (Mismatch Handling for COTS Selection) to handle the COTS mismatches. MiHOS runs on top of existing COTS selection models in order to properly address COTS mismatches with limited resources. The case study was conducted in the e‐service domain. The goal was to validate MiHOS and to answer two key questions: (1) How useful is decision support during different phases in the process mismatch handling? And (2) what is the effort vs benefit of using MiHOS? The results are promising and illustrate the potential benefits of using MiHOS. Copyright © 2011 John Wiley & Sons, Ltd.
Abdallah Mohamed, Günther Ruhe, Armin Eberlein
J. Softw. Maintenance Res. Pract.2
2010 Evaluation of optimized staffing for feature development and bug fixing
abstract
Skill level and productivity varies substantially between developers. In current staffing practices, however, developers are largely treated as the same. In this paper, an empirical analysis of the tow formulations of assignment of developers to tasks and bug fixing activities is studied. Two related problems are considered:
Md. Mainur Rahman, Frank Maurer, Günther Ruhe
ESEM4
2010 Decision Support for Product Release Planning Based on Robustness Analysis
abstract
Decision-making in requirements engineering often needs to be done in the presence of uncertainty. Rigorous methods can help to increase the probability of making the most appropriate decisions under the given circumstances. Robustness is a measure for the degree of stability of a solution in case of changes in the problem parameters. This paper presents a method (called DECIDERelease) that applies simulation-based analysis and multi-criteria decision analysis on top of the existing strategic release planning approach EVOLVE*. The purpose of DECIDEReleaseis to qualify decision-making by pro-actively exploring the robustness of the operational plans of upcoming releases. Based on this analysis, the strategic release plan that is the most robust against assumed changes in planning parameters at operational level can be selected. As a proof-of-concept, the applicability of DECIDERelease is demonstrated by an illustrative case study. Results from a survey administered to managers and engineers in industry indicate that the proposed method is perceived as useful in practice.
Ahmed Al-Emran, Dietmar Pfahl, Günther Ruhe
RE3
2010 Decision Support for Staffing of the Next Software Product Release
Emadoddin Livani, Günther Ruhe
SEKE2
2010 A Comparative Study of Attribute Weighting Techniques for Software Defect Prediction Using Case-based Reasoning
Elham Paikari, Michael M. Richter, Günther Ruhe
SEKE3
2010 Future Research Directions for Software Engineering and Knowledge Engineering
Günther Ruhe
SEKE1
2010 Studying the impact of uncertainty in operational release planning - An integrated method and its initial evaluation
Ahmed Al-Emran, Puneet Kapur, Dietmar Pfahl, Günther Ruhe
Inf. Softw. Technol.4
2010 Special Section on Best Papers PROMISE 2009
Gary D. Boetticher, Günther Ruhe
Inf. Softw. Technol.2
2010 Decision support for moving from a single product to a product portfolio in evolving software systems
Muhammad Irfan Ullah, Günther Ruhe, Vahid Garousi
J. Syst. Softw.2
2010 When-to-release decisions for features with time-dependent value functions
Jim McElroy, Günther Ruhe
Requir. Eng.2
2009 Does explanation improve the acceptance of decision support for product release planning?
abstract
Objective: Decision support provided to users is often lack of acceptance. One of the reasons is a deficit in understanding where the suggestions come from and how they come. This essentially is not a technical problem, but a technology adoption problem. This situation was also analyzed as a result of former empirical studies conducted on ReleasePlannerTM, a decision support tool for planning product releases. To overcome this situation, three machine learning techniques have been applied to mine the tool's solutions, and the mining results are presented to the tool users as explanations. This paper presents the evaluation on the generated explanations as a means to improve the user acceptance of the tool. Method: A three-stage controlled experiment was designed and carried out with a group of ten graduate students at the University of Calgary and another group of five project managers from the IT industry. Two research goals were addressed to (i) evaluate the impact of the explanations generated from these three applied techniques, and (ii) compare some of the findings from this study with the ones from our previous experiments. Results: Our findings for the first research goal indicated that the explanations generated from the three techniques contributed to the improvement of the subjects' confidence in the tool solutions and trust of the tool, and therefore an overall better user acceptance of the tool. Meanwhile, no significant differences were found among the impacts of the three techniques. For the second research goal, we found that some of the findings from this study were consistent with the ones from our previous experiments.
Gengshen Du, Günther Ruhe
ESEM2
2009 Optimized assignment of developers for fixing bugs an initial evaluation for eclipse projects
abstract
Decisions on ldquoWho should fix this bugrdquo have substantial impact on the duration of the process and its results. In this paper, optimized strategies for the assignment of the ldquorightrdquo developers for doing the ldquorightrdquo task are studied and the results are compared to manual (called ad hoc) assignment. The quality of assignment is measured by the match between requested (from bugs) and available (from developers) competence profile. Different variants of Greedy search with varying parameter of look-ahead time are studied. The quality of the results has been evaluated for nine milestones of the open source Eclipse JDT project. The optimized strategies with largest look ahead time are demonstrated to be substantially better than the ad hoc solutions in terms of the quality of the assignment and the number of bugs which can be fixed within the given time interval.
Md. Mainur Rahman, Günther Ruhe, Thomas Zimmermann 0001
ESEM2
2009 Balancing value and modifiability when planning for the next release
abstract
Planning the next release in software release planning addresses the problem of assigning features to the next release such that technical, resource, risk, and budget constraints are met. This paper studies the planning for the next release of an evolving system from a bi-criteria perspective. We introduce a method called NRP-trade-off to adjust baseline release plans for more modifiability by replacing lower value features with features having a higher modifiability. For that purpose, we include a new approach for feature modeling and assessing modifiability by applying object-oriented design metrics to the feature domain. We also briefly introduce a case study.
Anas Jadallah, Matthias Galster, Mahmood Moussavi, Günther Ruhe
ICSM4
2009 A Layered Approach for Planning Releases under Uncertain Capacities
Jim McElroy, Günther Ruhe
SEKE2
2009 Towards Design and Architectural Evaluation of Product Variants: A Case Study on an Open Source Software System
Muhammad Irfan Ullah, Günther Ruhe, Vahid Garousi
SEKE2
2009 Optimized Resource Allocation for Software Release Planning
abstract
Release planning for incremental software development assigns features to releases such that technical, resource, risk and budget constraints are met. Planning of software releases and allocation of resources cannot be handled in isolation. A feature can be offered as part of a release only if all its necessary tasks are done before the given release date. We assume a given pool of human resources with different degrees of productivity to perform different types of tasks. To address the inherent difficulty of this process, we propose a two-phased optimization approach that combines the strength of two existing solution methods. The industrial applicability of the approach is primarily directed towards mature organizations having systematic development and measurement processes in place. The expected practical benefit of the planning method is to provide release plan solutions that achieve a better overall business value (e.g., expressed by the degree of stakeholder satisfaction) by better allocation of resources. Without ignoring the importance of the human expert in this process, the contributions of the paper are seen in making the overall process more objective and the resulting decisions more transparent.
An Ngo-The, Günther Ruhe
IEEE Trans. Software Eng.2
2008 Explaining Product Release Planning Results Using Concept Analysis
Gengshen Du, Thomas Zimmermann 0001, Günther Ruhe
SEKE3
2008 Analysis of attribute weighting heuristics for analogy-based software effort estimation method AQUA+
Jingzhou Li, Günther Ruhe
Empir. Softw. Eng.2
2008 Software Effort Estimation by Analogy Using Attribute Selection Based on Rough Set Analysis
abstract
Estimation by analogy (EBA) predicts effort for a new project by learning from the performance of former projects. This is done by aggregating effort information of similar projects from a given historical data set that contains projects, or objects in general, and attributes describing the objects. While this has been successful in general, existing research results have shown that a carefully selected subset, as well as weighting, of the attributes may improve the performance of the estimation methods. In order to improve the estimation accuracy of our former proposed EBA method AQUA, which supports data sets that have non-quantitative and missing values, an attribute weighting method using rough set analysis is proposed in this paper. AQUA is thus extended to AQUA+by incorporating the proposed attribute weighting and selection method. Better prediction accuracy was obtained by AQUA+compared to AQUA for five data sets. The proposed method for attribute weighting and selection is effective in that (1) it supports data sets that have non-quantitative and missing values; (2) it supports attribute selection as well as weighting, which are not supported simultaneously by other attribute selection methods; and (3) it helps AQUA+to produce better performance.
Jingzhou Li, Günther Ruhe
Int. J. Softw. Eng. Knowl. Eng.2
2008 Sensitivity analysis in the process of COTS mismatch-handling
Abdallah Mohamed, Günther Ruhe, Armin Eberlein
Requir. Eng.2
2008 Optimized staffing for product releases and its application at Chartwell Technology
abstract
Abstract Release planning for incremental software development assigns features to releases such that technical, resource, risk and budget constraints are met. Each feature offers a piece of functionality. A feature can be offered as part of a release only if all its necessary tasks are done before the given release date. These tasks require different skills. Staffing for product releases as considered in this paper is the process of assigning human resources from a given pool of developers who might have varying levels of skill to perform different tasks. In addition to that, we consider time windows of absence of the developers. The primary goal of staffing is to provide product releases of best quality where quality means offering the most attractive features to customers in a timely manner. We call the problem STAFF‐PRO. The problem is known to be NP‐complete. Consequently, we have to be satisfied with solutions that are sufficiently good, but not necessarily optimal in the case of mid‐sized or large problems. Search‐based methods relying on meta‐heuristics have been proven to be successful in similar contexts. In this research, a focused search (FS) method is presented. This refers to a two‐phased solution approach where Phase 1 applies integer linear programming to a relaxed version of the full problem. Its solution is used as a starting point to perform FS in a reduced search space in Phase 2. The search itself is conducted by a genetic algorithm. It generates a solution that fulfills all the stated resource and scheduling constraints and is of a proven degree of optimality. We performed an empirical analysis of the proposed solution approach by comparing FS and unfocused search (UFS) (without Phase 1) for a series of 200 test examples. On average, FS performs about 15% better than UFS. The whole method was applied as an industrial case study performed at Chartwell Technology. The case study demonstrates that application of the FS method to STAFF‐PRO (i) allows a reduction in the time needed for generating acceptable staffing plans, (ii) generates plans of proven quality that are better than manual plans and (iii) supports the various types of re‐planning necessary for varying parameters, budgets and resource. Copyright © 2008 John Wiley & Sons, Ltd.
Puneet Kapur, An Ngo-The, Günther Ruhe
J. Softw. Maintenance Res. Pract.3
2008 A systematic approach for solving the wicked problem of software release planning
An Ngo-The, Günther Ruhe
Soft Comput.2
2007 Impact Analysis of Missing Values on the Prediction Accuracy of Analogy-based Software Effort Estimation Method AQUA
abstract
Effort estimation by analogy (EBA) is often confronted with missing values. Our former analogy- based method AUQA is able to tolerate missing values in the data set, but it is unclear how the percentage of missing values impacts the prediction accuracy and if there is an upper bound for how big this percentage might become in order to guarantee the applicability of AQUA. This paper investigates these questions through an impact analysis. The impact analysis is conducted for seven data sets being of different size and having different initial percentages of missing values. The major results are that (i) we confirm the intuition that the more missing values, the poorer the prediction accuracy of AQUA; (ii) there is a quadratic dependency between the prediction accuracy and the percentage of missing values; and (Hi) the upper limit of missing values for the applicability of AQUA is determined as 40%. These results are obtained in the context of AQUA. Further analysis is necessary for other ways of applying EBA, such as using different similarity measures or analogy adaptation methods from those used in AQUA. For that purpose, the experimental design in this study can be adapted.
Jingzhou Li, Ahmed Al-Emran, Günther Ruhe
ESEM3
2007 Bi-objective release planning for evolving software systems
abstract
The release planning (RP) problem can be investigated from two dimensions -- what to release and when to release. We investigate the "what" to release decision in terms of which new features or change requests should be assigned and implemented in which releases of a software system. RP for evolving systems is challenging, because the new features might require changes to the existing system. A major drawback of existing RP methods is that, they do not consider the existing systems in making RP decisions. In this paper, we present a technique to detect coupling between features based on relatedness of the components that would implement the features. The components implementing the features are derived from change impact analysis. We integrate the results from feature coupling into a RP strategy that encourages the assignment of highly coupled features in the same release. This helps to avoid haphazard implementation of related features. We present a decision support approach that formulates the RP problem as a bi-objective optimization problem. Our Bi-Objective Release Planning for Evolving Systems (BORPES) is aimed at optimizing the value of release plans from both the business perspectives and the implementation perspectives. This paper presents BORPES in detail and reports on a proof-of-concept case study that investigates the applicability of the proposed approach. The bi-objective optimization offers a set of Pareto-optimal solutions.
Moshood Omolade Saliu, Günther Ruhe
ESEC/SIGSOFT FSE2
2007 A flexible method for software effort estimation by analogy
Jingzhou Li, Günther Ruhe, Ahmed Al-Emran, Michael M. Richter
Empir. Softw. Eng.2
2007 MiHOS: an approach to support handling the mismatches between system requirements and COTS products
Abdallah Mohamed, Günther Ruhe, Armin Eberlein
Requir. Eng.2
2006 Ad Hoc Versus Systematic Planning of Software Releases - A Three-Staged Experiment
Gengshen Du, Jim McElroy, Günther Ruhe
PROFES3
2006 Art and Science of System Release Planning
Günther Ruhe, Moshood Omolade Saliu
PROFES1
2006 Decision Support for Resource-centric Software Release Planning
Jim McElroy, Günther Ruhe
SEKE2
2006 Guest Editors' Introduction
Frank Maurer, Günther Ruhe
Int. J. Softw. Eng. Knowl. Eng.2
2006 Guest Editors' Introduction
An Ngo-The, Günther Ruhe
Int. J. Softw. Eng. Knowl. Eng.2
2005 Explorative Study to Provide Decision Support for Software Release Decisions
abstract
The paper presents a reliability driven decision support approach to study the effects of defect repository patterns on software release decisions as the systems evolve with continuously changing requirements. The proposed approach called 6C evaluates the suitability of existing reliability models in guiding release decisions and provides different solution alternatives with respect to some project specific parameters for making such decisions. The case study conducted with the approach reveals the impact of project and domain specific uncertainty factors such as risk, testing effort and target reliability on time to market decisions for the software release when the underlying assumptions made by existing reliability models are violated.
Pankaj Bhawnani, Behrouz Homayoun Far, Günther Ruhe
ICSM3
2005 Identification of question types and answer types for an explanation component in software release planning
abstract
Acceptance of decision support offered by software systems is largely determined by the degree of acceptance and understanding of system results from the users. The generation of explanations helps the user of the software systems to better understand and utilize system outputs. Explanations can be generated and conveyed through dialogues. One way to achieve dialogues is to use question types and answer types. This paper presents an overview of the identification of question types and answer types for an explanation component called EXPLAIN-RP that provides decision support for software release planning.
Gengshen Du, Günther Ruhe
K-CAP2
2005 Supporting Software Release Planning Decisions for Evolving Systems
abstract
Large-scale software systems constantly change during system evolution for feature enhancement. Most of the features originate from diverse stakeholders that require their needs to be met despite resource and risk constraints. In such large systems, the number of features requested during the different releases of the system typically exceeds the available resources. Release planning involves decision making about what new features or changes to implement during which release of the software. Existing release planning techniques are not targeted at evolving systems; in this case, knowledge about existing software product is core to making meaningful release decisions. In this paper, we describe ten key technical and nontechnical aspects impacting release planning. Based on these aspects, we evaluate seven existing release planning methods. We have also proposed a new release planning framework that considers the effect of existing system characteristics on release planning decisions. Initial realization of this framework focuses on historical defect data to characterize the health of system components. This proposed approach extends the existing solution method called EVOLVE* by (i) the proactive analysis of the risk involved in integrating new features into existing components of the system and (ii) identifying the importance of estimating the integration effort for each feature based on system characteristics. An illustrative example is also presented
Moshood Omolade Saliu, Günther Ruhe
SEW2
2004 Intelligent Support for Software Release Planning
Amandeep, Günther Ruhe, Mark Stanford
PROFES2
2004 Software release planning: an evolutionary and iterative approach
Des Greer, Günther Ruhe
Inf. Softw. Technol.2
2004 Evaluating the learning effectiveness of using simulations in software project management education: results from a twice replicated experiment
Dietmar Pfahl, Oliver Laitenberger, Günther Ruhe, Jörg Dorsch, Tatyana Krivobokova
Inf. Softw. Technol.3
2003 Requirements Negotiation under Incompleteness and Uncertainty
An Ngo-The, Günther Ruhe
SEKE2
2003 An Externally Replicated Experiment for Evaluating the Learning Effectiveness of Using Simulations in Software Project Management Education
Dietmar Pfahl, Oliver Laitenberger, Jörg Dorsch, Günther Ruhe
Empir. Softw. Eng.4
2003 Guest Editor's Introduction
Günther Ruhe
Int. J. Softw. Eng. Knowl. Eng.1
2003 Trade-off Analysis for Requirements Selection
abstract
Evaluation, prioritization and selection of candidate requirements are of tremendous importance and impact for subsequent software development. Effort, time as well as quality constraints have to be taken into account. Typically, different stakeholders have conflicting priorities and the requirements of all these stakeholders have to be balanced in an appropriate way to ensure maximum value of the final set of requirements. Trade-off analysis is needed to proactively explore the impact of certain decisions in terms of all the criteria and constraints. The proposed method called Quantitative WinWin uses an evolutionary approach to provide support for requirements negotiations. The novelty of the presented idea is four-fold. Firstly, it iteratively uses the Analytical Hierarchy Process (AHP) for a stepwise analysis with the aim to balance the stakeholders' preferences related to different classes of requirements. Secondly, requirements selection is based on predicting and rebalancing its impact on effort, time and quality. Both prediction and rebalancing uses the simulation model prototype GENSIM. Thirdly, alternative solution sets offered for decision-making are developed incrementally based on thresholds for the degree of importance of requirements and heuristics to find a best fit to constraints. Finally, trade-off analysis is used to determine non-dominated extensions of the maximum value that is achievable under resource and quality constraints. As a main result, quantitative WinWin proposes a small number of possible sets of requirements from which the actual decision-maker can finally select the most appropriate solution.
Günther Ruhe, Armin Eberlein, Dietmar Pfahl
Int. J. Softw. Eng. Knowl. Eng.1
2002 Quantitative WinWin: a new method for decision support in requirements negotiation
abstract
Defining, prioritizing, and selecting requirements are problems of tremendous importance. In this paper, a new approach called Quantitative WinWin for decision support in requirements negotiation is studied. The difference to Boehm's WinWin groupware-based negotiation support is the inclusion of quantitative methods as a backbone for better and more objective decisions. Like Boehm's original WinWin, Quantitative WinWin uses an iterative approach, with the aim to increase knowledge about the requirements during each iteration. The novelty of the presented idea is three-fold. Firstly, it uses the Analytical Hierarchy Process for a stepwise determination of the stakeholders' preferences in quantitative terms. Secondly, these results are combined with methods for early effort estimation, in our case using the simulation prototype GENSIM, to evaluate the feasibility of alternative requirements subsets in terms of their related implementation efforts. Thirdly, it reflects the increasing knowledge gained about the requirements during each iteration, in a similar way as it is done in Boehm's spiral model for software development. As main result, quantitative WinWin offers decision support for selecting the most appropriate requirements based on the preferences of the stakeholders, the business value of requirements and a given maximum development effort.
Günther Ruhe, Armin Eberlein, Dietmar Pfahl
SEKE1
2001 System Dynamics as an Enabling Technology for Learning in Software Organizations
Dietmar Pfahl, Günther Ruhe
SEKE2
2001 A CBT module with integrated simulation component for software project management education and training
Dietmar Pfahl, Marco Klemm, Günther Ruhe
J. Syst. Softw.3
2000 Methodological Contributions to Professional Education and Training
abstract
Professional education and training plays a crucial role for successful transfer of innovative software engineering technologies and for achieving long-term strategic goals of an organization. We describe how empirically validated knowledge related to methods, tools and techniques is organized and maintained in an organizational unit called Experience Factory. The emphasis is on describing how the knowledge and experience available from the Experience Factory is integrated into professional education and training courses and programs. The Web-based training approach is focusing on computer supported collaborative learning. We apply the fundamental quality improvement paradigm to describe the different steps for how to perform and develop courses and programs by applying principles of systematic product and process management.
Günther Ruhe
COMPSAC1
2000 Shortages of qualified software engineering faculty and practitioners (panel session): challenges in breaking the cycle
abstract
S.665-668
Nancy R. Mead, Hossein Saiedian, Günther Ruhe, Donald J. Bagert, Helen M. Edwards, Michael Ryan
ICSE3
2000 The PROFES Improvement Methodology - Enabling Technologies and Methodology Design
Janne Järvinen, Seija Komi-Sirviö, Günther Ruhe
PROFES3
2000 Guest Editor's Introduction: 11th International Conference on Software Engineering and Knowledge Engineering (SEKE'99)
abstract
S.371-376
Günther Ruhe
Int. J. Softw. Eng. Knowl. Eng.1
2000 A hybrid approach to analyze empirical software engineering data and its application to predict module fault-proneness in maintenance
Sandro Morasca, Günther Ruhe
J. Syst. Softw.2
1999 Experience Factory-Based Professional Education and Training
abstract
Professional education and training plays a crucial role for successful transfer of innovative software engineering technologies and for achieving long-term strategic goals of an organization. We describe how empirically validated knowledge related to methods, tools, and techniques is organized and maintained in an organizational unit called Experience Factory. Emphasis of the paper is to describe how the knowledge and experience available from the Experience Factory is integrated into professional education and training courses and programs. We apply the fundamental quality improvement paradigm to describe the different steps how to perform courses and programs as part of organizational learning. Finally, the approach is illustrated by technology related experiences from the Fraunhofer Institute for Experimental Software Engineering. The infrastructure technology under investigation is goal-oriented measurement following the GQM paradigm. We describe the relevant part of a technology package, which forms the background of our related professional education and training courses.
Günther Ruhe
CSEE&T1
1999 Introduction and Motivation
Günther Ruhe, Frank Bomarius
SEKE1
1999 Learning Organizations in the Software Engineering Domain
Günther Ruhe, Frank Bomarius
SEKE1
1999 Enabling Techniques for Learning Organizations
Günther Ruhe, Frank Bomarius
SEKE1
1999 Outlook
Günther Ruhe, Frank Bomarius
SEKE1
1999 The Contributions from SEKE'99 and LSO'99 to this Book
Günther Ruhe, Frank Bomarius
SEKE1
1997 Knowledge Discovery from Software Engineering Data: Rough Set Analysis and Its Interaction with Goal-Oriented Measurement
Günther Ruhe
PKDD1