-
Analysis of Marketed versus Not-marketed Mobile App Releases
Authors:
Maleknaz Nayebi,
Homayoon Farrahi,
Guenther Ruhe
Abstract:
Market and user characteristics of mobile apps make their release management different from proprietary software products and web services. Despite the wealth of information regarding users' feedback on an app, an in-depth analysis of app releases is difficult due to the inconsistency and uncertainty of the information. To better understand and potentially improve app release processes, we analyze…
▽ More
Market and user characteristics of mobile apps make their release management different from proprietary software products and web services. Despite the wealth of information regarding users' feedback on an app, an in-depth analysis of app releases is difficult due to the inconsistency and uncertainty of the information. To better understand and potentially improve app release processes, we analyze major, minor, and patch releases for releases following semantic versioning. In particular, we were interested in finding out the difference between marketed and not-marketed releases. Our results show that, in general, major, minor, and patch releases have significant differences in the release cycle duration, nature, and change velocity. We also observed that there is a significant difference between marketed and non-marketed mobile app releases in terms of cycle duration, nature and the extent of changes, and the number of opened and closed issues.
△ Less
Submitted 24 May, 2024;
originally announced May 2024.
-
More Insight from Being More Focused: Analysis of Clustered Market Apps
Authors:
Maleknaz Nayebi,
Homayoon Farrahi,
Ada Lee,
Henry Cho,
Guenther Ruhe
Abstract:
The increasing attraction of mobile apps has inspired researchers to analyze apps from different perspectives. As with any software product, apps have different attributes such as size, content maturity, rating, category, or number of downloads. Current research studies mostly consider sampling across all apps. This often results in comparisons of apps being quite different in nature and category…
▽ More
The increasing attraction of mobile apps has inspired researchers to analyze apps from different perspectives. As with any software product, apps have different attributes such as size, content maturity, rating, category, or number of downloads. Current research studies mostly consider sampling across all apps. This often results in comparisons of apps being quite different in nature and category (games compared with weather and calendar apps), also being different in size and complexity. Similar to proprietary software and web-based services, more specific results can be expected from looking at more homogeneous samples as they can be received as a result of applying clustering. In this paper, we target homogeneous samples of apps to increase the degree of insight gained from analytics. As a proof-of-concept, we applied the clustering technique DBSCAN and subsequent correlation analysis between app attributes for a set of 940 open-source mobile apps from F-Droid. We showed that (i) clusters of apps with similar characteristics provided more insight compared to applying the same to the whole data and (ii) defining the similarity of apps based on the similarity of topics as created from the topic modeling technique Latent Dirichlet Allocation does not significantly improve clustering results.
△ Less
Submitted 24 May, 2024;
originally announced May 2024.
-
Examining Ownership Models in Software Teams: A Systematic Literature Review and a Replication Study
Authors:
Umme Ayman Koana,
Quang Hy Le,
Shadikur Rahman,
Chris Carlson,
Francis Chew,
Maleknaz Nayebi
Abstract:
Effective ownership of software artifacts, particularly code, is crucial for accountability, knowledge sharing, and code quality enhancement. Researchers have proposed models linking ownership of software artifacts with developer performance and code quality. Our study aims to systematically examine various ownership models and provide a structured literature overview. Conducting a systematic lite…
▽ More
Effective ownership of software artifacts, particularly code, is crucial for accountability, knowledge sharing, and code quality enhancement. Researchers have proposed models linking ownership of software artifacts with developer performance and code quality. Our study aims to systematically examine various ownership models and provide a structured literature overview. Conducting a systematic literature review, we identified 79 relevant papers published between 2005 and 2022. We developed a taxonomy of ownership artifacts based on type, owners, and degree of ownership, along with compiling modeling variables and analytics types used in each study. Additionally, we assessed the replication status of each study. As a result, we identified nine distinct software artifacts whose ownership has been discussed in the literature, with "Code" being the most frequently analyzed artifact. We found that only three papers (3.79%) provided code and data, whereas nine papers (11.4%) provided only data. Using our systematic literature review results, we replicated experiments on nine priority projects at \texttt{Brightsquid}. The company aimed to compare its code quality against ownership factors in other teams, so we conducted a replication study using their data. Unlike prior studies, we found no strong correlation between minor contributors and bug numbers. Surprisingly, we found no strong link between the total number of developers modifying a file and bug counts, contrasting previous findings. However, we observed a significant correlation between major contributors and bug counts, diverging from earlier research.
△ Less
Submitted 24 May, 2024;
originally announced May 2024.
-
Prompt Engineering or Fine Tuning: An Empirical Assessment of Large Language Models in Automated Software Engineering Tasks
Authors:
Jiho Shin,
Clark Tang,
Tahmineh Mohati,
Maleknaz Nayebi,
Song Wang,
Hadi Hemmati
Abstract:
In this paper, we investigate the effectiveness of state-of-the-art LLM, i.e., GPT-4, with three different prompting engineering techniques (i.e., basic prompting, in-context learning, and task-specific prompting) against 18 fine-tuned LLMs on three typical ASE tasks, i.e., code generation, code summarization, and code translation. Our quantitative analysis of these prompting strategies suggests t…
▽ More
In this paper, we investigate the effectiveness of state-of-the-art LLM, i.e., GPT-4, with three different prompting engineering techniques (i.e., basic prompting, in-context learning, and task-specific prompting) against 18 fine-tuned LLMs on three typical ASE tasks, i.e., code generation, code summarization, and code translation. Our quantitative analysis of these prompting strategies suggests that prompt engineering GPT-4 cannot necessarily and significantly outperform fine-tuning smaller/older LLMs in all three tasks. For comment generation, GPT-4 with the best prompting strategy (i.e., task-specific prompt) had outperformed the first-ranked fine-tuned model by 8.33% points on average in BLEU. However, for code generation, the first-ranked fine-tuned model outperforms GPT-4 with best prompting by 16.61% and 28.3% points, on average in BLEU. For code translation, GPT-4 and fine-tuned baselines tie as they outperform each other on different translation tasks. To explore the impact of different prompting strategies, we conducted a user study with 27 graduate students and 10 industry practitioners. From our qualitative analysis, we find that the GPT-4 with conversational prompts (i.e., when a human provides feedback and instructions back and forth with a model to achieve best results) showed drastic improvement compared to GPT-4 with automatic prompting strategies. Moreover, we observe that participants tend to request improvements, add more context, or give specific instructions as conversational prompts, which goes beyond typical and generic prompting strategies. Our study suggests that, at its current state, GPT-4 with conversational prompting has great potential for ASE tasks, but fully automated prompt engineering with no human in the loop requires more study and improvement.
△ Less
Submitted 10 October, 2023;
originally announced October 2023.
-
Ownership in the Hands of Accountability at Brightsquid -- A Case Study and a Developer Survey
Authors:
Umme Ayman Koana,
Francis Chew,
Chris Carlson,
Maleknaz Nayebi
Abstract:
The COVID-19 pandemic has accelerated the adoption of digital health solutions. This has presented significant challenges for software development teams to swiftly adjust to the market need and demand. To address these challenges, product management teams have had to adapt their approach to software development, resha** their processes to meet the demands of the pandemic. Brighsquid implemented…
▽ More
The COVID-19 pandemic has accelerated the adoption of digital health solutions. This has presented significant challenges for software development teams to swiftly adjust to the market need and demand. To address these challenges, product management teams have had to adapt their approach to software development, resha** their processes to meet the demands of the pandemic. Brighsquid implemented a new task assignment process aimed at enhancing developer accountability toward the customer. To assess the impact of this change on code ownership, we conducted a code change analysis. Additionally, we surveyed 67 developers to investigate the relationship between accountability and ownership more broadly. The findings of our case study indicate that the revised assignment model not only increased the perceived sense of accountability within the production team but also improved code resilience against ownership changes. Moreover, the survey results revealed that a majority of the participating developers (67.5%) associated perceived accountability with artifact ownership.
△ Less
Submitted 23 August, 2023;
originally announced August 2023.
-
Multi-UAV Enabled Integrated Sensing and Wireless Powered Communication: A Robust Multi-Objective Approach
Authors:
Omid Rezaei,
Mohammad Mahdi Naghsh,
Seyed Mohammad Karbasi,
Mohammad Mahdi Nayebi
Abstract:
In this paper, we consider an integrated sensing and communication (ISAC) system with wireless power transfer (WPT) where multiple unmanned aerial vehicle (UAV)-based radars serve multiple clusters of energy-limited communication users in addition to their sensing functionality. In this architecture, the radars sense the environment in phase 1 (namely sensing phase) and meanwhile, the communicatio…
▽ More
In this paper, we consider an integrated sensing and communication (ISAC) system with wireless power transfer (WPT) where multiple unmanned aerial vehicle (UAV)-based radars serve multiple clusters of energy-limited communication users in addition to their sensing functionality. In this architecture, the radars sense the environment in phase 1 (namely sensing phase) and meanwhile, the communications users (nodes) harvest and store the energy from the radar transmit signals. The stored energy is then used for information transmission from the nodes to UAVs in phase 2, i.e., uplink phase. Performance of the radar systems depends on the transmit signals as well as the receive filters; the energy of the transmit signals also affects the communication network because it serves as the source of uplink powers. Therefore, we cast a multi-objective design problem addressing performance of both radar and communication systems via optimizing UAV trajectories, radar transmit waveforms, radar receive filters, time scheduling and uplink powers. The design problem is further formulated as a robust non-convex optimization problem taking into account the the user location uncertainty. Hence, we devise a method based on alternating optimization followed by concepts of fractional programming, S-procedure, and tricky majorization-minimization (MM) technique to tackle it. Numerical examples illustrate the effectiveness of the proposed method for different scenarios.
△ Less
Submitted 26 July, 2023;
originally announced July 2023.
-
Mining Reddit Data to Elicit Students' Requirements During COVID-19 Pandemic
Authors:
Shadikur Rahman,
Faiz Ahmed,
Maleknaz Nayebi
Abstract:
Data-driven requirements engineering leverages the abundance of openly accessible and crowdsourced information on the web. By incorporating user feedback provided about a software product, such as reviews in mobile app stores, these approaches facilitate the identification of issues, bug fixes, and implementation of change requests. However, relying solely on user feedback about a software product…
▽ More
Data-driven requirements engineering leverages the abundance of openly accessible and crowdsourced information on the web. By incorporating user feedback provided about a software product, such as reviews in mobile app stores, these approaches facilitate the identification of issues, bug fixes, and implementation of change requests. However, relying solely on user feedback about a software product limits the possibility of eliciting all requirements, as users may not always have a clear understanding of their exact needs from the software, despite their wealth of experience with the problem, event, or challenges they encounter and use the software to assist them. In this study, we propose a shift in requirements elicitation, focusing on gathering feedback related to the problem itself rather than relying solely on feedback about the software product. We conducted a case study on student requirements during the COVID-19 pandemic in a higher education institution. We gathered their communications from Reddit during the pandemic and employed multiple machine-learning and natural language processing techniques to identify requirement sentences. We achieved the F-score of 0.79 using Naive Bayes with TF-IDF when benchmarking multiple techniques. The results lead us to believe that mining requirements from communication about a problem are feasible. While we present the preliminary results, we envision a future where these requirements complement conventionally elicited requirements and help to close the requirements gap.
△ Less
Submitted 26 July, 2023;
originally announced July 2023.
-
Image-based Communication on Social Coding Platforms
Authors:
Maleknaz Nayebi,
Bram Adams
Abstract:
Visual content in the form of images and videos has taken over general-purpose social networks in a variety of ways, streamlining and enriching online communications. We are interested to understand if and to what extent the use of images is popular and helpful in social coding platforms. We mined nine years of data from two popular software developers' platforms: the Mozilla issue tracking system…
▽ More
Visual content in the form of images and videos has taken over general-purpose social networks in a variety of ways, streamlining and enriching online communications. We are interested to understand if and to what extent the use of images is popular and helpful in social coding platforms. We mined nine years of data from two popular software developers' platforms: the Mozilla issue tracking system, i.e., Bugzilla, and the most well-known platform for developers' Q/A, i.e., Stack Overflow. We further triangulated and extended our mining results by performing a survey with 168 software developers. We observed that, between 2013 and 2022, the number of posts containing image data on Bugzilla and Stack Overflow doubled. Furthermore, we found that sharing images makes other developers engage more and faster with the content. In the majority of cases in which an image is included in a developer's post, the information in that image is complementary to the text provided. Finally, our results showed that when an image is shared, understanding the content without the information in the image is unlikely for 86.9\% of the cases. Based on these observations, we discuss the importance of considering visual content when analyzing developers and designing automation tools.
△ Less
Submitted 27 June, 2023;
originally announced June 2023.
-
User Driven Functionality Deletion for Mobile Apps
Authors:
Maleknaz Nayebi,
Konstantin Kuznetsov,
Andreas Zeller,
Guenther Ruhe
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 importan…
▽ More
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 not known if these deletions are visible or important to the app users. In this study, we performed a survey study with 297 mobile app users to understand the significance of functionality deletion for them. Our results showed that for the majority of 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.
△ Less
Submitted 30 May, 2023;
originally announced May 2023.
-
A Learning-Inspired Strategy to Design Binary Sequences with Good Correlation Properties: SISO and MIMO Radar Systems
Authors:
Omid Rezaei,
Mahdi Ahmadi,
Mohammad Mahdi Naghsh,
Augusto Aubry,
Mohammad Mahdi Nayebi,
Antonio De Maio
Abstract:
In this paper, the design of binary sequences exhibiting low values of aperiodic/periodic correlation functions, in terms of Integrated Sidelobe Level (ISL), is pursued via a learning-inspired method. Specifcally, the synthesis of either a single or a burst of codes is addressed, with reference to both Single-Input Single-Output (SISO) and Multiple-Input Multiple-Output (MIMO) radar systems. Two o…
▽ More
In this paper, the design of binary sequences exhibiting low values of aperiodic/periodic correlation functions, in terms of Integrated Sidelobe Level (ISL), is pursued via a learning-inspired method. Specifcally, the synthesis of either a single or a burst of codes is addressed, with reference to both Single-Input Single-Output (SISO) and Multiple-Input Multiple-Output (MIMO) radar systems. Two optimization machines, referred to as two-layer and single-layer Binary Sequence Correlation Network (BiSCorN), able to learn actions to design binary sequences with small ISL/Complementary ISL (CISL) for SISO and MIMO systems are proposed. These two networks differ in terms of the capability to synthesize Low-Correlation-Zone (LCZ) sequences and computational cost. Numerical experiments show that proposed techniques can outperform state-of-the-art algorithms for the design of binary sequences and Complementary Sets of Sequences (CSS) in terms of ISL and, interestingly, of Peak Sidelobe Level (PSL).
△ Less
Submitted 15 May, 2023;
originally announced May 2023.
-
Developers' Perception of GitHub Actions: A Survey Analysis
Authors:
Sk Golam Saroar,
Maleknaz Nayebi
Abstract:
GitHub introduced "Actions" in 2019 to increase workflow velocity and add customized automation to the repositories. Any individual can develop Actions for automating workflow on GitHub repositories and others can reuse them whenever open source. GitHub introduced its marketplace for commercializing and sharing these automation tools, which currently hosts 16,730 Actions. Yet, there are numerous A…
▽ More
GitHub introduced "Actions" in 2019 to increase workflow velocity and add customized automation to the repositories. Any individual can develop Actions for automating workflow on GitHub repositories and others can reuse them whenever open source. GitHub introduced its marketplace for commercializing and sharing these automation tools, which currently hosts 16,730 Actions. Yet, there are numerous Actions that are developed and distributed in local repositories and outside the Marketplace. So far, the research community conducted mining studies to understand Actions with a significant focus on CI/CD. We conducted a survey study with 90 Action developers and users to understand the motivations and best practices in using, develo**, and debugging Actions, and the challenges associated with these tasks. We found that developers prefer Actions with verified creators and more stars when choosing between similar Actions, and often switch to an alternative Action when facing bugs or a lack of documentation. 60.87% of the developers consider the composition of YAML files, which are essential for Action integration, challenging and error-prone. They mainly check Q\&A forums to fix issues with these YAML files. Finally, developers tend to avoid using Actions (and hence automation) to reduce complexity, and security risk, or when the benefits of Actions are not worth the cost/effort of setting up Actions for automation.
△ Less
Submitted 7 March, 2023;
originally announced March 2023.
-
Design of a Multi-User Wireless Powered Communication System Employing Either Active IRS or AF Relay
Authors:
Omid Rezaei,
Maryam Masjedi,
Ali Kanaani,
Mohammad Mahdi Naghsh,
Saeed Gazor,
Mohammad Mahdi Nayebi
Abstract:
In this paper, we optimize a Wireless Powered Communication (WPC) system including multiple pair of users, where transmitters employ single-antenna to transmit their information and power to their receivers with the help of one multiple-antennas Amplify-and-Forward (AF) relay or an active Intelligent Reflecting Surface (IRS). We propose a joint Time Switching (TS) scheme in which transmitters, rec…
▽ More
In this paper, we optimize a Wireless Powered Communication (WPC) system including multiple pair of users, where transmitters employ single-antenna to transmit their information and power to their receivers with the help of one multiple-antennas Amplify-and-Forward (AF) relay or an active Intelligent Reflecting Surface (IRS). We propose a joint Time Switching (TS) scheme in which transmitters, receivers, and the relay/IRS are either in their energy or information transmission/reception modes. The transmitted multi-carrier unmodulated and modulated waveforms are used for Energy Harvesting (EH) and Information Decoding (ID) modes, respectively. In order to design an optimal fair system, we maximize the minimum rate of all pairs for both relay and IRS systems through a unified framework. This framework allows us to simultaneously design energy waveforms, find optimal relay/IRS amplification/reflection matrices, allocate powers for information waveforms, and allocate time durations for various phases. In addition, we take into account the non-linearity of the EH circuits in our problem. This problem turns out to be non-convex. Thus, we propose an iterative algorithm by using the Minorization-Maximization (MM) technique, which quickly converges to the optimal solution. Numerical examples show that the proposed method improves the performance of the multi-pair WPC relay/IRS system under various setups.
△ Less
Submitted 31 December, 2022;
originally announced January 2023.
-
GitHub Marketplace for Practitioners and Researchers to Date: A Systematic Analysis of the Knowledge Mobilization Gap in Open Source Software Automation
Authors:
Sk Golam Saroar,
Waseefa Ahmed,
Maleknaz Nayebi
Abstract:
Marketplaces for distributing software products and services have been getting increasing popularity. GitHub, which is most known for its version control functionality through Git, launched its own marketplace in 2017. GitHub Marketplace hosts third party apps and actions to automate workflows in software teams. Currently, this marketplace hosts 440 Apps and 7,878 Actions across 32 different categ…
▽ More
Marketplaces for distributing software products and services have been getting increasing popularity. GitHub, which is most known for its version control functionality through Git, launched its own marketplace in 2017. GitHub Marketplace hosts third party apps and actions to automate workflows in software teams. Currently, this marketplace hosts 440 Apps and 7,878 Actions across 32 different categories. Overall, 419 Third party developers released their apps on this platform which 111 distinct customers adopted. The popularity and accessibility of GitHub projects have made this platform and the projects hosted on it one of the most frequent subjects for experimentation in the software engineering research. A simple Google Scholar search shows that 24,100 Research papers have discussed GitHub within the Software Engineering field since 2017, but none have looked into the marketplace. The GitHub Marketplace provides a unique source of information on the tools used by the practitioners in the Open Source Software (OSS) ecosystem for automating their project's workflow. In this study, we (i) mine and provide a descriptive overview of the GitHub Marketplace, (ii) perform a systematic map** of research studies in automation for open source software, and (iii) compare the state of the art with the state of the practice on the automation tools. We conclude the paper by discussing the potential of GitHub Marketplace for knowledge mobilization and collaboration within the field. This is the first study on the GitHub Marketplace in the field.
△ Less
Submitted 30 July, 2022;
originally announced August 2022.
-
Example Driven Code Review Explanation
Authors:
Shadikur Rahman,
Umme Ayman Koana,
Maleknaz Nayebi
Abstract:
Background: Code reviewing is an essential part of software development to ensure software quality. However, the abundance of review tasks and the intensity of the workload for reviewers negatively impact the quality of the reviews. The short review text is often unactionable, which needs further interaction between the reviewer and the developer. The problem becomes more critical in dynamic teams…
▽ More
Background: Code reviewing is an essential part of software development to ensure software quality. However, the abundance of review tasks and the intensity of the workload for reviewers negatively impact the quality of the reviews. The short review text is often unactionable, which needs further interaction between the reviewer and the developer. The problem becomes more critical in dynamic teams and in the case of new team members who are less familiar with their reviewers and perspectives. Aims: We are proposing the Example Driven Review Explanation (EDRE) method to facilitate the code review process by adding additional explanations through examples. EDRE recommends similar code reviews as examples to further explain a review and help a developer to understand the received reviews with less communication overhead. Method: Through an empirical study in an industrial setting and by analyzing 3,722 code reviews across three open-source projects, we compared five methods of data retrieval, text classification, and text recommendation. Results: EDRE using TF-IDF word embedding along with an SVM classifier can provide practical examples for each code review with 92% F-score and 90% Accuracy. Conclusions: The example-based explanation is an established method for assisting experts in explaining decisions. EDRE was developed based on the same philosophy and can accurately provide a set of context-specific examples to facilitate the code review process in software teams.
△ Less
Submitted 23 July, 2022;
originally announced July 2022.
-
Cooperative Fair Throughput Maximization in a Multi-Cluster Wireless Powered Network
Authors:
Omid Rezaei,
Maryam Masjedi,
Mohammad Mahdi Naghsh,
Saeed Gazor,
Mohammad Mahdi Nayebi
Abstract:
In this paper, we study a multi-cluster Wireless Powered Communication Network (WPCN) where each cluster of users cooperate with a Cluster Head (CH) and a Hybrid Access Point (HAP). All users are equipped with multiple antennas. This HAP employs beamforming to deliver energy to the users in the downlink phase. The users of each cluster transmit their signals to the HAP and to their CHs in the upli…
▽ More
In this paper, we study a multi-cluster Wireless Powered Communication Network (WPCN) where each cluster of users cooperate with a Cluster Head (CH) and a Hybrid Access Point (HAP). All users are equipped with multiple antennas. This HAP employs beamforming to deliver energy to the users in the downlink phase. The users of each cluster transmit their signals to the HAP and to their CHs in the uplink phase. In the next step the CHs first relay the signals of their cluster users and then transmit their own information to the HAP. We design the Energy Beamforming (EB) matrix, transmit covariance matrices of the users and allocate time slots to energy transfer and cooperation phases by optimizing the max-min and sum throughputs of the network. Our optimization is a non-convex problem which we break it to two non-convex sub-problems and solve them by employing the Alternating Optimization (AO) and the Minorization-Maximization (MM) technique. We recast the resulting sub-problems as a convex Second Order Cone Programming (SOCP) and a Quadratic Constraint Quadratic Programming (QCQP) for the max-min and sum throughput maximization problems, respectively. We take into account the consider imperfect Channel State Information (CSI) and non-linearity in Energy Harvesting (EH) circuits. Using numerical examples, we explore the impact of the proposed cooperation as well as optimal placement of CHs under various setups.
△ Less
Submitted 17 November, 2022; v1 submitted 27 December, 2021;
originally announced December 2021.
-
What Makes Agile Software Development Agile?
Authors:
Marco Kuhrmann,
Paolo Tell,
Regina Hebig,
Jil Klünder,
Jürgen Münch,
Oliver Linssen,
Dietmar Pfahl,
Michael Felderer,
Christian R. Prause,
Stephen G. MacDonell,
Joyce Nakatumba-Nabende,
David Raffo,
Sarah Beecham,
Eray Tüzün,
Gustavo López,
Nicolas Paez,
Diego Fontdevila,
Sherlock A. Licorish,
Steffen Küpper,
Günther Ruhe,
Eric Knauss,
Özden Özcan-Top,
Paul Clarke,
Fergal McCaffery,
Marcela Genero
, et al. (22 additional authors not shown)
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…
▽ More
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%). 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.
△ Less
Submitted 23 September, 2021;
originally announced September 2021.
-
Compressed-Domain Detection and Estimation for Colocated MIMO Radar
Authors:
Ehsan Tohidi,
Alireza Hariri,
Hamid Behroozi,
Mohammad Mahdi Nayebi,
Geert Leus,
Athina Petropulu
Abstract:
This paper proposes compressed domain signal processing (CSP) multiple input multiple output (MIMO) radar, a MIMO radar approach that achieves substantial sample complexity reduction by exploiting the idea of CSP. CSP MIMO radar involves two levels of data compression followed by target detection at the compressed domain. First, compressive sensing is applied at the receive antennas, followed by a…
▽ More
This paper proposes compressed domain signal processing (CSP) multiple input multiple output (MIMO) radar, a MIMO radar approach that achieves substantial sample complexity reduction by exploiting the idea of CSP. CSP MIMO radar involves two levels of data compression followed by target detection at the compressed domain. First, compressive sensing is applied at the receive antennas, followed by a Capon beamformer which is designed to suppress clutter. Exploiting the sparse nature of the beamformer output, a second compression is applied to the filtered data. Target detection is subsequently conducted by formulating and solving a hypothesis testing problem at each grid point of the discretized angle space. The proposed approach enables an 8-fold reduction of the sample complexity in some settings as compared to a conventional compressed sensing (CS) MIMO radar thus enabling faster target detection. Receiver operating characteristic (ROC) curves of the proposed detector are provided. Simulation results show that the proposed approach outperforms recovery-based compressed sensing algorithms.
△ Less
Submitted 17 June, 2020;
originally announced June 2020.
-
Documentation of Machine Learning Software
Authors:
Yalda Hashemi,
Maleknaz Nayebi,
Giuliano Antoniol
Abstract:
Machine Learning software documentation is different from most of the documentations that were studied in software engineering research. Often, the users of these documentations are not software experts. The increasing interest in using data science and in particular, machine learning in different fields attracted scientists and engineers with various levels of knowledge about programming and soft…
▽ More
Machine Learning software documentation is different from most of the documentations that were studied in software engineering research. Often, the users of these documentations are not software experts. The increasing interest in using data science and in particular, machine learning in different fields attracted scientists and engineers with various levels of knowledge about programming and software engineering. Our ultimate goal is automated generation and adaptation of machine learning software documents for users with different levels of expertise. We are interested in understanding the nature and triggers of the problems and the impact of the users' levels of expertise in the process of documentation evolution. We will investigate the Stack Overflow Q/As and classify the documentation related Q/As within the machine learning domain to understand the types and triggers of the problems as well as the potential change requests to the documentation. We intend to use the results for building on top of the state of the art techniques for automatic documentation generation and extending on the adoption, summarization, and explanation of software functionalities.
△ Less
Submitted 29 January, 2020;
originally announced January 2020.
-
Eye of the Mind: Image Processing for Social Coding
Authors:
Maleknaz Nayebi
Abstract:
Developers are increasingly sharing images in social coding environments alongside the growth in visual interactions within social networks. The analysis of the ratio between the textual and visual content of Mozilla's change requests and in Q/As of StackOverflow programming revealed a steady increase in sharing images over the past five years. Developers' shared images are meaningful and are prov…
▽ More
Developers are increasingly sharing images in social coding environments alongside the growth in visual interactions within social networks. The analysis of the ratio between the textual and visual content of Mozilla's change requests and in Q/As of StackOverflow programming revealed a steady increase in sharing images over the past five years. Developers' shared images are meaningful and are providing complementary information compared to their associated text. Often, the shared images are essential in understanding the change requests, questions, or the responses submitted. Relying on these observations, we delve into the potential of automatic completion of textual software artifacts with visual content.
△ Less
Submitted 17 January, 2020;
originally announced January 2020.
-
Release Practices for Mobile Apps--What do Users and Developers Think?
Authors:
Maleknaz Nayebi,
Bram Adams,
Guenther Ruhe
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 unk…
▽ More
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.
△ Less
Submitted 19 October, 2019;
originally announced October 2019.
-
Mining Treatment-Outcome Constructs from Sequential Software Engineering Data
Authors:
Maleknaz Nayebi,
Guenther Ruhe,
Thomas Zimmermann
Abstract:
Many investigations in empirical software engineering look at sequences of data resulting from development or management processes. In this paper, we propose an analytical approach called the Gandhi-Washington Method (GWM) to investigate the impact of recurring events in software projects. GWM takes an encoding of events and activities provided by a software analyst as input. It uses regular expre…
▽ More
Many investigations in empirical software engineering look at sequences of data resulting from development or management processes. In this paper, we propose an analytical approach called the Gandhi-Washington Method (GWM) to investigate the impact of recurring events in software projects. GWM takes an encoding of events and activities provided by a software analyst as input. It uses regular expressions to automatically condense and summarize information and infer treatments. Relating the treatments to the outcome through statistical tests, treatment-outcome constructs are automatically mined from the data. The output of GWM is a set of treatment-outcome constructs. Each treatment in the set of mined constructs is significantly different from the other treatments considering the impact on the outcome and/or is structurally different from other treatments considering the sequence of events. We describe GWM and classes of problems to which GWM can be applied. We demonstrate the applicability of this method for empirical studies on sequences of file editing, code ownership, and release cycle time.
△ Less
Submitted 16 January, 2019;
originally announced January 2019.
-
Asymmetric Release Planning-Compromising Satisfaction against Dissatisfaction
Authors:
Maleknaz Nayebi,
Guenther Ruhe
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.…
▽ More
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.
△ Less
Submitted 15 January, 2019;
originally announced January 2019.
-
A Longitudinal Study of Identifying and Paying Down Architectural Debt
Authors:
Maleknaz Nayebi,
Yuanfang Cai,
Rick Kazman,
Guenther Ruhe,
Qiong Feng,
Chris Carlson,
Francis Chew
Abstract:
Architectural debt is a form of technical debt that derives from the gap between the architectural design of the system as it "should be" compared to "as it is". We measured architecture debt in two ways: 1) in terms of system-wide coupling measures, and 2) in terms of the number and severity of architectural flaws. In recent work it was shown that the amount of architectural debt has a huge impac…
▽ More
Architectural debt is a form of technical debt that derives from the gap between the architectural design of the system as it "should be" compared to "as it is". We measured architecture debt in two ways: 1) in terms of system-wide coupling measures, and 2) in terms of the number and severity of architectural flaws. In recent work it was shown that the amount of architectural debt has a huge impact on software maintainability and evolution. Consequently, detecting and reducing the debt is expected to make software more amenable to change. This paper reports on a longitudinal study of a healthcare communications product created by Brightsquid Secure Communications Corp. This start-up company is facing the typical trade-off problem of desiring responsiveness to change requests, but wanting to avoid the ever-increasing effort that the accumulation of quick-and-dirty changes eventually incurs. In the first stage of the study, we analyzed the status of the "before" system, which indicated the impacts of change requests. This initial study motivated a more in-depth analysis of architectural debt. The results of this analysis were used to motivate a comprehensive refactoring of the software system. The third phase of the study was a follow-on architectural debt analysis which quantified the improvements made. Using this quantitative evidence, augmented by qualitative evidence gathered from in-depth interviews with Brightsquid's architects, we present lessons learned about the costs and benefits of paying down architecture debt in practice.
△ Less
Submitted 30 November, 2018;
originally announced November 2018.
-
ESSMArT Way to Manage User Requests
Authors:
Maleknaz Nayebi,
Liam Dicke,
Ron Ittyipe,
Chris Carlson,
Guenther Ruhe
Abstract:
Quality and market acceptance of software products is strongly influenced by responsiveness to user requests. Once a request is received from a customer, decisions need to be made if the request should be escalated to the development team. Once escalated, the ticket must be formulated as a development task and be assigned to a developer. To make the process more efficient and reduce the time betwe…
▽ More
Quality and market acceptance of software products is strongly influenced by responsiveness to user requests. Once a request is received from a customer, decisions need to be made if the request should be escalated to the development team. Once escalated, the ticket must be formulated as a development task and be assigned to a developer. To make the process more efficient and reduce the time between receiving and escalating the user request, we aim to automate of the complete user request management process. We propose a holistic method called ESSMArT. The methods performs text summarization, predicts ticket escalation, creates the title and content of the ticket used by developers, and assigns the ticket to an available developer. We internally evaluated the method by 4,114 user tickets from Brightsquid and their secure health care communication plat- form Secure-Mail. We also perform an external evaluation on the usefulness of the approach. We found that supervised learning based on context specific data performs best for extractive summarization. For predicting escalation of tickets, Random Forest trained on a combination of conversation and extractive summarization is best with highest precision (of 0.9) and recall (of 0.55). From external evaluation we found that ESSMArT provides suggestions that are 71% aligned with human ones. Applying the prototype implementation to 315 user requests resulted in an average time reduction of 9.2 minutes per request. ESSMArT helps to make ticket management faster and with reduced effort for human experts. ESSMArT can help Brightsquid to (i) minimize the impact of staff turnover and (ii) shorten the cycle from an issue being reported to an assignment to a developer to fix it.
△ Less
Submitted 11 August, 2018;
originally announced August 2018.
-
Fast and Robust High-Dimensional Sparse Representation Recovery Using Generalized SL0
Authors:
Milad Nazari,
Ali Mehrpooya,
Zahra Abbasi,
Mehdi Nayebi,
M. Hassan Bastani
Abstract:
Sparse representation can be described in high dimensions and used in many applications, including MRI imaging and radar imaging. In some cases, methods have been proposed to solve the high-dimensional sparse representation problem, but main solution is converting high-dimensional problem into one-dimension. Solving the equivalent problem had very high computational complexity. In this paper, the…
▽ More
Sparse representation can be described in high dimensions and used in many applications, including MRI imaging and radar imaging. In some cases, methods have been proposed to solve the high-dimensional sparse representation problem, but main solution is converting high-dimensional problem into one-dimension. Solving the equivalent problem had very high computational complexity. In this paper, the problem of high-dimensional sparse representation is formulated generally based on the theory of tensors, and a method for solving it based on SL0 (Smoothed Least zero-nor) is presented. Also, the uniqueness conditions for solution of the problem are considered in the high-dimensions. At the end of the paper, some numerical experiments are performed to evaluate the efficiency of the proposed algorithm and the results are presented.
△ Less
Submitted 15 July, 2018;
originally announced July 2018.
-
Sparse Antenna and Pulse Placement for Colocated MIMO Radar
Authors:
Ehsan Tohidi,
Mario Coutino,
Sundeep Prabhakar Chepuri,
Hamid Behroozi,
Mohammad Mahdi Nayebi,
Geert Leus
Abstract:
Multiple input multiple output (MIMO) radar is known for its superiority over conventional radar due to its antenna and waveform diversity. Although higher angular resolution, improved parameter identifiability, and better target detection are achieved, the hardware costs (due to multiple transmitters and multiple receivers) and high energy consumption (multiple pulses) limit the usage of MIMO rad…
▽ More
Multiple input multiple output (MIMO) radar is known for its superiority over conventional radar due to its antenna and waveform diversity. Although higher angular resolution, improved parameter identifiability, and better target detection are achieved, the hardware costs (due to multiple transmitters and multiple receivers) and high energy consumption (multiple pulses) limit the usage of MIMO radars in large scale networks. On one hand, higher angle and velocity estimation accuracy is required, but on the other hand, a lower number of antennas/pulses is desirable. To achieve such a compromise, in this work, the Cram'er-Rao lower bound (CRLB) for the angle and velocity estimator is employed as a performance metric to design the antenna and pulse placement. It is shown that the CRLB derived for two targets is a more appropriate criterion in comparison with the single-target CRLB since the two-target CRLB takes into account both the mainlobe width and sidelobe level of the ambiguity function. In this paper, several algorithms for antenna and pulse selection based on convex and submodular optimization are proposed. Numerical experiments are provided to illustrate the developed theory.
△ Less
Submitted 27 May, 2018;
originally announced May 2018.
-
Status Quo in Requirements Engineering: A Theory and a Global Family of Surveys
Authors:
Stefan Wagner,
Daniel Méndez Fernández,
Michael Felderer,
Antonio Vetró,
Marcos Kalinowski,
Roel Wieringa,
Dietmar Pfahl,
Tayana Conte,
Marie-Therese Christiansson,
Desmond Greer,
Casper Lassenius,
Tomi Männistö,
Maleknaz Nayebi,
Markku Oivo,
Birgit Penzenstadler,
Rafael Prikladnicki,
Guenther Ruhe,
André Schekelmann,
Sagar Sen,
Rodrigo Spínola,
Ahmed Tuzcu,
Jose Luis de la Vara,
Dietmar Winkler
Abstract:
Requirements Engineering (RE) has established itself as a software engineering discipline during the past decades. While researchers have been investigating the RE discipline with a plethora of empirical studies, attempts to systematically derive an empirically-based theory in context of the RE discipline have just recently been started. However, such a theory is needed if we are to define and mot…
▽ More
Requirements Engineering (RE) has established itself as a software engineering discipline during the past decades. While researchers have been investigating the RE discipline with a plethora of empirical studies, attempts to systematically derive an empirically-based 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 valid foundation for a theory of RE, which helps software engineers establish effective and efficient RE processes. We designed a survey instrument and theory that has now been replicated in 10 countries world-wide. We evaluate the propositions of the theory with bootstrapped confidence intervals and derive potential explanations for the propositions. We report on the underlying theory and the full results obtained from the replication studies with participants from 228 organisations. Our results represent a substantial step forward towards develo** an empirically-based theory of RE giving insights into current practices with RE processes. The results reveal, for example, that there are no strong differences between organisations in different countries and regions, that interviews, facilitated meetings and prototy** are the most used elicitation techniques, that requirements are often documented textually, that traces between requirements and code or design documents is common, requirements specifications themselves are rarely changed and that requirements engineering (process) improvement endeavours are mostly intrinsically motivated. 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.
△ Less
Submitted 17 December, 2018; v1 submitted 21 May, 2018;
originally announced May 2018.
-
Direction-of-Arrival Estimation for Temporally Correlated Narrowband Signals
Authors:
Farzan Haddadi,
Mohammad Mahdi Nayebi,
Mohammad Reza Aref
Abstract:
signal direction-of-arrival estimation using an array of sensors has been the subject of intensive research and development during the last two decades. Efforts have been directed to both, better solutions for the general data model and to develop more realistic models. So far, many authors have assumed the data to be iid samples of a multivariate statistical model. Although this assumption redu…
▽ More
signal direction-of-arrival estimation using an array of sensors has been the subject of intensive research and development during the last two decades. Efforts have been directed to both, better solutions for the general data model and to develop more realistic models. So far, many authors have assumed the data to be iid samples of a multivariate statistical model. Although this assumption reduces the complexity of the model, it may not be true in certain situations where signals show temporal correlation. Some results are available on the temporally correlated signal model in the literature. The temporally correlated stochastic Cramer-Rao bound (CRB) has been calculated and an instrumental variable-based method called IV-SSF is introduced. Also, it has been shown that temporally correlated CRB is lower bounded by the deterministic CRB. In this paper, we show that temporally correlated CRB is also upper bounded by the stochastic iid CRB. We investigate the effect of temporal correlation of the signals on the best achievable performance. We also show that the IV-SSF method is not efficient and based on an analysis of the CRB, propose a variation in the method which boosts its performance. Simulation results show the improved performance of the proposed method in terms of lower bias and error variance.
△ Less
Submitted 23 April, 2009;
originally announced April 2009.
-
On The Positive Definiteness of Polarity Coincidence Correlation Coefficient Matrix
Authors:
Farzan Haddadi,
Mohammad Mahdi Nayebi,
Mohammad Reza Aref
Abstract:
Polarity coincidence correlator (PCC), when used to estimate the covariance matrix on an element-by-element basis, may not yield a positive semi-definite (PSD) estimate. Devlin et al. [1], claimed that element-wise PCC is not guaranteed to be PSD in dimensions p>3 for real signals. However, no justification or proof was available on this issue. In this letter, it is proved that for real signals…
▽ More
Polarity coincidence correlator (PCC), when used to estimate the covariance matrix on an element-by-element basis, may not yield a positive semi-definite (PSD) estimate. Devlin et al. [1], claimed that element-wise PCC is not guaranteed to be PSD in dimensions p>3 for real signals. However, no justification or proof was available on this issue. In this letter, it is proved that for real signals with p<=3 and for complex signals with p<=2, a PSD estimate is guaranteed. Counterexamples are presented for higher dimensions which yield invalid covariance estimates.
△ Less
Submitted 29 January, 2009;
originally announced January 2009.
-
Statistical Performance Analysis of MDL Source Enumeration in Array Processing
Authors:
Farzan Haddadi,
Mohammadreza Malekmohammadi,
Mohammad Mahdi Nayebi,
Mohammad Reza Aref
Abstract:
In this correspondence, we focus on the performance analysis of the widely-used minimum description length (MDL) source enumeration technique in array processing. Unfortunately, available theoretical analysis exhibit deviation from the simulation results. We present an accurate and insightful performance analysis for the probability of missed detection. We also show that the statistical performa…
▽ More
In this correspondence, we focus on the performance analysis of the widely-used minimum description length (MDL) source enumeration technique in array processing. Unfortunately, available theoretical analysis exhibit deviation from the simulation results. We present an accurate and insightful performance analysis for the probability of missed detection. We also show that the statistical performance of the MDL is approximately the same under both deterministic and stochastic signal models. Simulation results show the superiority of the proposed analysis over available results.
△ Less
Submitted 23 April, 2009; v1 submitted 21 January, 2009;
originally announced January 2009.