Reviewerly/exHarmony huggingface dataset:
TechSpaces: Identifying and Clustering Popular Programming Technologies

Background: Software ecosystems are becoming increasingly complex and large. Therefore, discovering and selecting the right libraries and frameworks for use in a project is becoming a challenging task. Existing commercial services that support this task rely on annual surveys with developers to provide a landscape of the most popular technologies in a given ecosystem. Aims: In this paper, we outline a semi-automated technique for this purpose, which we call TechSpaces. Method: Our proposal relies on community detection and well-known NLP algorithms to automatically extract groups of related technologies, using as primary data source tags associated with Stack Overflow questions. Results: We describe the first results of using our technique to identify popular and inter-related technologies in five programming language ecosystems. Evaluation: We compare our technique against two other tools in the literature. Conclusions: The proposed technique shows potential to assist IT professionals in taking technical decisions supported by crowd knowledge. However, further improvements are needed to make it a viable choice. For instance, we envision the usage of other data sources (e.g., GitHub and Wikipedia) can contribute to improve the accuracy and expressiveness of our graph representations.
A Field Study on Reference Architectural Decisions for Developing a UML-based Software Product Line Tool

Variability modeling in Software Product Lines (SPL) encompasses a set of activities, such as domain analysis, identification of requirements, implementation of variability, variant management, and generation of products. In this context, the existing literature does not present any tools with native support for UML-based SPLs. To deal with the lack of practical solutions, an alternative to variability modeling is to handle XMI files for general-purpose UML tools. However, it requires significant effort, is time-consuming and error-prone, and does not provide users control over data for the SPL life cycle activities. To cope with this scenario, we developed SMartyModeling, an environment to allow SPL-related variability modeling on requirements, features, and UML models, thus providing visualization techniques to SPL/variability information, traceability, and configuration of products. To evolve SMartyModeling, we previously evaluated it throughout two studies: a comparative experiment between SMartyModeling and a general-purpose UML modeling tool, and a survey-based qualitative study on its usability. Results made it possible to identify benefits, limitations, and corrections on the main problems reported by the participants. More specifically in this paper, we present results of a field study focused on analyzing architectural decisions taken during the SMartyModeling instantiation process from a variability tools reference architecture (RA). We took into consideration the opinion of 13 experts in SPL and RA. Experts considered the architectural decisions and the solutions proposed adequate, and the architecture clear and objective. In addition, the analysis of the experts quotes allowed us to identify improvements in the instantiation process, as well as in the instantiated architecture. For example, inclusion of notations to ease the understanding of the instantiation process and the underlying decisions, clear representation of the MVC Design Pattern, and inclusion of other elements to the source RA.
How do Trivial Refactorings Affect Classification Prediction Models?

Refactoring is defined as a transformation that changes the internal structure of the source code without changing the external behavior. Keeping the external behavior means that after applying the refactoring activity, the software must produce the same output as before the activity. The refactoring activity can bring several benefits, such as: removing code with low structural quality, avoiding or reducing technical debt, improving code maintainability, reuse or readability. In this way, the benefits extend to internal and external quality attributes. The literature on software refactoring suggests carrying out studies that invest in improving automated solutions for detecting and correcting refactoring. Furthermore, few studies investigate the influence that a less complex type of refactoring can have on predicting more complex refactorings. This paper investigates how less complex (trivial) refactorings affect the prediction of more complex (non-trivial) refactorings. To do this, we classify refactorings based on their triviality, extract metrics from the code, contextualize the data and train machine learning algorithms to investigate the effect caused. Our results suggest that: (i) machine learning with tree-based models (Random Forest and Decision Tree) performed very well when trained with code metrics to detect refactorings; (ii) separating trivial from non-trivial refactorings into different classes resulted in a more efficient model, indicative of improving the accuracy of automated solutions based on machine learning; and, (iii) using balancing techniques that increase or decrease samples randomly is not the best strategy to improve datasets composed of code metrics.
OfflineManager: A Lightweight Approach for Managing Offline Status in Mobile Applications

Most current mobile applications work with a back-end server over the Internet. But in many occasions network connectivity is not available and a proper offline treatment must be provided. This question can be solved in many ways, such as storing requests for later attempts, caching data and full client-server synchronization, among others. There are solutions both in the industry and academia, however two challenges remain: to solve the problem in a way that covers many software layers, including interface and usability issues; and to support different kinds of treatment to the absence of connection. This paper presents a mobile library built to help developers provide offline functionality on their apps, while trying to solving these two challenges. To do that, the library, called OfflineManager, offers different ways to treat each call to the back-end, both in the case of missing Internet connection and unavailable server. It also offers feedback messages, and a point of interaction via pop-up messages. To evaluate the library, four evaluation methods were used, including experts, developers, users and well-known heuristics. The collected evidence indicates that the library achieves its goal to overcome the two presented challenges, and also uncovers some problems and points for improvement.
Connecting Non-Functional Requirements to Open Source Ecosystems Health

One efficient way to perceive the effects of design decisions is by analyzing and evaluating Non-Functional Requirements (NFRs). A design decison can contribute positively or negatively toward specific NFRs. In their turn, NFRs describe how the software operates, representing essential quality characteristics of the software systems. In addition, the typical way of perceiving the “quality” of a software ecosystem is through the concept of ecosystem health and its health indicators. Considering the descriptive nature of NFRs representing a quality characteristic of the system, they could be a feasible way to know ecosystem health. Through their connection with the health indicators, it is possible to sketch paths to understand the influence of the NFRs on the health indicators and realize how the ecosystem health perceives the design decisions. This study aims to understand and map influences from NFRs to health indicators based on evidence found in KDE, a real-world ecosystem. We conducted mixed-methods research, including a survey with ecosystem experts and an adapted practitioner-evidence framework. Findings present a high-level descriptive mapping with connections between NFRs and health indicators, besides explaining evidence found in the KDE ecosystem.
DocStone: A Blockchain-based Architecture for a Customizable Document Registration Service

Document management ensures the proper production, storage, and use of documents in many organizations. In this sense, digitization has become a relevant factor for the improvement of processes in several aspects of document management. In this context, blockchain is relevant due to its ability to meet the requirements of any document management solutions. However, there are still difficulties in the efficiency of blockchain infrastructure implementation. On the other hand, existing solutions present proposals for specific contexts and strict business rules. Therefore, this study proposes an architecture designed to provide and facilitate the integration of blockchain-based document registration and verification for use by third-party applications from different domains. Furthermore, this solution allows the configuration of parameters in creating customizable document templates and selecting blockchains. To evaluate the proposed solution, we performed performance tests for different scenarios and blockchains, demonstrating differences between public and private blockchains when performing read and write operations.
Data flow Subsumption and its Impact on Spectrum-based Fault Localization

Debugging aims at finding and correcting software defects. To help the developer, fault localization techniques were developed using association metrics and code coverage data spectra to identify the most suspicious code snippets. They assist the developer by means of a ranking of the most suspicious spectra that guides the developer in his or her ”hunt” for defects. These techniques, when based on data flow spectra, use definition use associations (DUA) for ranking calculation. However, the coverage of given DUAs often guarantees the coverage of other DUAs, in a relationship between DUAs called subsumption. In practice, the subsumption relationship means that if a given DUA is covered, others are also guaranteed to be covered in certain conditions. Based on the subsumption property, this work presents an experiment in which fault localization effectiveness is assessed using only the spectra of the set of unconstrained DUAs, that is, the minimal set of DUAs that may guarantee coverage of all other DUAs of the software under test. For this experiment, we use a subset of programs of the Defects4J repository, data flow spectra, and the Ochiai association metric. Our results compare the rankings produced by the set of unconstrained DUAs against those produced by all DUAs for fault localization. They indicate that most of the faults reached by DUA spectra can be found by inspecting only the unconstrained DUAs.
Another Neighbourhood Semantics for Intuitionistic Logic

Abstract In this paper we first introduce a new neighbourhood semantics for propositional intuitionistic logic. We then naturally extend this semantics to first-order intuitionistic logic. We also study bisimulation between neighbourhood models and prove some of their basic properties for both propositional and first-order intuitionistic logic.
Constructing unbiased gradient estimators with finite variance for conditional stochastic optimization

We study stochastic gradient descent for solving conditional stochastic optimization problems, in which an objective to be minimized is given by a parametric nested expectation with an outer expectation taken with respect to one random variable and an inner conditional expectation with respect to the other random variable. The gradient of such a parametric nested expectation is again expressed as a nested expectation, which makes it hard for the standard nested Monte Carlo estimator to be unbiased. In this paper, we show under some conditions that a multilevel Monte Carlo gradient estimator is unbiased and has finite variance and finite expected computational cost, so that the standard theory from stochastic optimization for a parametric (non-nested) expectation directly applies. We also discuss a special case for which yet another unbiased gradient estimator with finite variance and cost can be constructed.
An effective points of interest recommendation approach based on embedded meta‐path of spatiotemporal data

Abstract With the development of mobile networks and the rapid prevalence of location‐based social networks (LBSN), a massive volume of spatiotemporal data has been generated, which is valuable for points of interest (POI) recommendation. However, current studies have not unleashed the full power of such spatiotemporal data, which either explore only a single dimension of the data or consider multiple factors in an asynchronous fashion. In this article, we propose a novel spatiotemporal network‐based recommender framework (STNBR) to effectively recommend POIs for users. Specifically, we first establish a comprehensive conceptual model of spatiotemporal data, involving various essential factors for POIs recommendation. On top of the conceptual model, we design a series of meaningful meta‐paths that simultaneously consider the time and location factors to precisely capture the semantics of user behaviours. By profiling users based on their embedded meta‐paths, our approach can yield meaningful POIs recommendations. We have evaluated our proposal using a realistic dataset obtained from Foursquare and Gowalla, the results of which show that our STNBR model outperforms existing approaches.
Acquisition of English Corpus Machine Translation Based on Speech Recognition Technology

In the present information age, with the rapid development of computer software and hardware technology and the mature manufacturing system of English-speaking enterprises, it is no longer impossible to use statistics for machine translation. The level and quality of machine translation are expected to meet human expectations. This explains the meaning and realization value of the acquisition of English corpus machine translation, introduces the basic principles of speech recognition technology, and combines the characteristics of the English language on the basis of the original Chinese speech recognition system, adopts the technical means of speech recognition, and leads to in-depth research. In the new era of machine translation acquisition of English corpus, we use the combination of LabVIEW and MATLAB to complete the collection, editing, feature extraction, and speech recognition of speech signals and use VQ pattern matching technology to realize the English recognition of a large number of short vocabulary and individuals. In the application part, we applied the classic LabVIEW technology to the speech recognition technology, which actually realized the idea of “software instead of hardware” and achieved better translation results. Experiments show that the accuracy rate of English machine translation can be as high as 94% when using speech recognition technology. According to the results, it takes about 0.2 seconds to complete machine translation for a 30-second speech, which is basically okay to achieve the effect of real-time translation.
Split-n-Swap: A New Modification of the Twofish Block Cipher Algorithm

Securing digital data from unauthorized access throughout its entire lifecycle has been always a critical concern.A robust data security system should protect the information assets of any organization against cybercriminal activities.The Twofish algorithm is one of the well-known symmetric key block cipher cryptographic algorithms and has been known for its rapid convergence.But when it comes to security, it is not the preferred cryptographic algorithm to use compared to other algorithms that have shown better security.Many applications and social platforms have adopted other symmetric key block cipher cryptographic algorithms such as the Advanced Encryption Standard (AES) algorithm to construct their main security wall.In this paper, a new modification for the original Twofish algorithm is proposed to strengthen its security and to take advantage of its fast convergence.The new algorithm has been named Split-n-Swap (SnS).Performance analysis of the new modification algorithm has been performed using different measurement metrics.The experimental results show that the complexity of the SnS algorithm exceeds that of the original Twofish algorithm while maintaining reasonable values for encryption and decryption times as well as memory utilization.A detailed analysis is given with the strength and limitation aspects of the proposed algorithm.
A Service Level Agreement Aware Online Algorithm for Virtual Machine Migration

The demand for cloud computing has increased manifold in the recent past.More specifically, on-demand computing has seen a rapid rise as organizations rely mostly on cloud service providers for their day-to-day computing needs.The cloud service provider fulfills different user requirements using virtualization -where a single physical machine can host multiple Virtual Machines.Each virtual machine potentially represents a different user environment such as operating system, programming environment, and applications.However, these cloud services use a large amount of electrical energy and produce greenhouse gases.To reduce the electricity cost and greenhouse gases, energy efficient algorithms must be designed.One specific area where energy efficient algorithms are required is virtual machine consolidation.With virtual machine consolidation, the objective is to utilize the minimum possible number of hosts to accommodate the required virtual machines, keeping in mind the service level agreement requirements.This research work formulates the virtual machine migration as an online problem and develops optimal offline and online algorithms for the single host virtual machine migration problem under a service level agreement constraint for an over-utilized host.The online algorithm is analyzed using a competitive analysis approach.In addition, an experimental analysis of the proposed algorithm on real-world data is conducted to showcase the improved performance of the proposed algorithm against the benchmark algorithms.Our proposed online algorithm consumed 25% less energy and performed 43% fewer migrations than the benchmark algorithms.
An Algorithm to Reduce Compression Ratio in Multimedia Applications

In recent years, it has been evident that internet is the most effective means of transmitting information in the form of documents, photographs, or videos around the world.The purpose of an image compression method is to encode a picture with fewer bits while retaining the decompressed image's visual quality.During transmission, this massive data necessitates a lot of channel space.In order to overcome this problem, an effective visual compression approach is required to resize this large amount of data.This work is based on lossy image compression and is offered for static color images.The quantization procedure determines the compressed data quality characteristics.The images are converted from RGB to International Commission on Illumination CIE La * b * ; and YCbCr color spaces before being used.In the transform domain, the color planes are encoded using the proposed quantization matrix.To improve the efficiency and quality of the compressed image, the standard quantization matrix is updated with the respective image block.We used seven discrete orthogonal transforms, including five variations of the Complex Hadamard Transform, Discrete Fourier Transform and Discrete Cosine Transform, as well as thresholding, quantization, de-quantization and inverse discrete orthogonal transforms with CIE La * b * ; and YCbCr to RGB conversion.Peak to signal noise ratio, signal to noise ratio, picture similarity index and compression ratio are all used to assess the quality of compressed images.With the relevant transforms, the image size and bits per pixel are also explored.Using the (n, n) block of transform, adaptive scanning is used to acquire the best feasible compression ratio.Because of these characteristics, multimedia systems and services have a wide range of possible applications.
Replication Strategy with Comprehensive Data Center Selection Method in燙loud Environments

As the amount of data continues to grow rapidly, the variety of data produced by applications is becoming more affluent than ever.Cloud computing is the best technology evolving today to provide multi-services for the mass and variety of data.The cloud computing features are capable of processing, managing, and storing all sorts of data.Although data is stored in many high-end nodes, either in the same data centers or across many data centers in cloud, performance issues are still inevitable.The cloud replication strategy is one of best solutions to address risk of performance degradation in the cloud environment.The real challenge here is developing the right data replication strategy with minimal data movement that guarantees efficient network usage, low fault tolerance, and minimal replication frequency.The key problem discussed in this research is inefficient network usage discovered during selecting a suitable data center to store replica copies induced by inadequate data center selection criteria.Hence, to mitigate the issue, we proposed Replication Strategy with a comprehensive Data Center Selection Method (RS-DCSM), which can determine the appropriate data center to place replicas by considering three key factors: Popularity, space availability, and centrality.The proposed RS-DCSM was simulated using CloudSim and the results proved that data movement between data centers is significantly reduced by 14% reduction in overall replication frequency and 20% decrement in network usage, which outperformed the current replication strategy, known as Dynamic Popularity aware Replication Strategy (DPRS) algorithm.
Efficient Scalable Template-Matching Technique for Ancient Brahmi Script營mage

Analysis and recognition of ancient scripts is a challenging task as these scripts are inscribed on pillars, stones, or leaves.Optical recognition systems can help in preserving, sharing, and accelerate the study of the ancient scripts, but lack of standard dataset for such scripts is a major constraint.Although many scholars and researchers have captured and uploaded inscription images on various websites, manual searching, downloading and extraction of these images is tedious and error prone.Web search queries return a vast number of irrelevant results, and manually extracting images for a specific script is not scalable.This paper proposes a novel multistage system to identify the specific set of script images from a large set of images downloaded from web sources.The proposed system combines the two most important pattern matching techniques-Scale Invariant Feature Transform (SIFT) and Template matching, in a sequential pipeline, and by using the key strengths of each technique, the system can discard irrelevant images while retaining a specific type of images.