Search Results Heading

MBRLSearchResults

mbrl.module.common.modules.added.book.to.shelf
Title added to your shelf!
View what I already have on My Shelf.
Oops! Something went wrong.
Oops! Something went wrong.
While trying to add the title to your shelf something went wrong :( Kindly try again later!
Are you sure you want to remove the book from the shelf?
Oops! Something went wrong.
Oops! Something went wrong.
While trying to remove the title from your shelf something went wrong :( Kindly try again later!
    Done
    Filters
    Reset
  • Discipline
      Discipline
      Clear All
      Discipline
  • Is Peer Reviewed
      Is Peer Reviewed
      Clear All
      Is Peer Reviewed
  • Item Type
      Item Type
      Clear All
      Item Type
  • Subject
      Subject
      Clear All
      Subject
  • Year
      Year
      Clear All
      From:
      -
      To:
  • More Filters
      More Filters
      Clear All
      More Filters
      Source
    • Language
961 result(s) for "Version control"
Sort by:
Reuse and maintenance practices among divergent forks in three software ecosystems
With the rise of social coding platforms that rely on distributed version control systems, software reuse is also on the rise. Many software developers leverage this reuse by creating variants through forking, to account for different customer needs, markets, or environments. Forked variants then form a so-called software family; they share a common code base and are maintained in parallel by same or different developers. As such, software families can easily arise within software ecosystems, which are large collections of interdependent software components maintained by communities of collaborating contributors. However, little is known about the existence and characteristics of such families within ecosystems, especially about their maintenance practices. Improving our empirical understanding of such families will help build better tools for maintaining and evolving such families. We empirically explore maintenance practices in such fork-based software families within ecosystems of open-source software. Our focus is on three of the largest software ecosystems existence today: Android, .NET, and JavaScript. We identify and analyze software families that are maintained together and that exist both on the official distribution platform (Google play, nuget, and npm) as well as on GitHub , allowing us to analyze reuse practices in depth. We mine and identify 38 software families, 526 software families, and 8,837 software families from the ecosystems of Android, .NET, and JavaScript, to study their characteristics and code-propagation practices. We provide scripts for analyzing code integration within our families. Interestingly, our results show that there is little code integration across the studied software families from the three ecosystems. Our studied families also show that techniques of direct integration using git outside of GitHub is more commonly used than GitHub pull requests. Overall, we hope to raise awareness about the existence of software families within larger ecosystems of software, calling for further research and better tools support to effectively maintain and evolve them.
A Holistic, Proactive and Novel Approach for Pre, During and Post Migration Validation from Subversion to Git
Software development is getting a transition from centralized version control systems (CVCSs) like Subversion to decentralized version control systems (DVCDs) like Git due to lesser efficiency of former in terms of branching, fusion, time, space, merging, offline commits & builds and repository, etc. Git is having a share of 77% of total VCS, followed by Subversion with a share of 13.5%. The majority of software industries are getting a migration from Subversion to Git. Only a few migration tools are available in the software industry. Still, these too lack in many features like lack of identifying the empty directories as pre-migration check, failover capabilities during migration due to network failure or disk space issue, and detailed report generation as post-migration steps. In this work, a holistic, proactive and novel approach has been presented for pre/during/post-migration validation from Subversion to Git. Many scripts have been developed and executed run-time over various projects for overcoming the limitations of existing migration software tools for a Subversion to Git migration. During pre-migration, none of the available migration tools has the capability to fetch empty directories of Subversion, which results in an incomplete migration from Subversion to Git. Many Scripts have been developed and executed for pre-migration validation and migration preparation, which overcomes the problem of incomplete migration. Experimentation was conducted in SRLC Software Research Lab, Chicago, USA. During the migration process, in case of loss of network connection or due to any other reason, if migration stops or breaks, available migration tools do not have capabilities to start over from the same point where it left. Various Scripts have been developed and executed to keep the migration revision history in the cache (elastic cache) to start from the same point where it was left due to connection failure. During post-migration, none of the available version control migration tools generate a detailed report giving information about the total size of source Subversion repositories, the total volume of data migrated to destination repositories in Git, total number of pools migrated, time taken for migration, number of Subversion users with email notification, etc. Various Scripts have been developed and executed for the above purpose during the post-migration process.
A Version Control System for Point Clouds
This paper presents a novel version control system for point clouds, which allows the complete editing history of a dataset to be stored. For each intermediate version, this system stores only the information that changes with respect to the previous one, which is compressed using a new strategy based on several algorithms. It allows undo/redo functionality in memory, which serves to optimize the operation of the version control system. It can also manage changes produced from third-party applications, which makes it ideal to be integrated into typical Computer-Aided Design workflows. In addition to automated management of incremental versions of point cloud datasets, the proposed system has a much lower storage footprint than the manual backup approach for most common point cloud workflows, which is essential when working with LiDAR (Light Detection and Ranging) data in the context of spatial big data.
Repository mining for changes in Simulink and Stateflow models
Model-Based Development (MBD) is widely used for embedded controls development, with MATLAB/Simulink/Stateflow being one of the most used development environments in the automotive industry. Simulink/Stateflow models are the primary design artifacts in automotive controls MBD development, and these models must be maintained over their lifetime. We achieve this in traditional software designs through the use of information hiding . It is thus beneficial to develop these models so that they facilitate likely changes that do not adversely impact the quality of the design. In order to do so, the types of frequently performed changes must be understood and appropriate language mechanisms must be available to support these changes. While some work has been done to analyze changes in Simulink/Stateflow models, a much deeper understanding is needed. We leveraged an extraordinary opportunity of having access to a comprehensive industrial software repository and its associated version control system to gain insight into likely changes for Simulink/Stateflow in automotive controls development. This analysis provides accurate feedback on actual changes made over many years to Simulink/Stateflow models, and classifies changes to suggest how particular model changes can impact system evolution.
Optimization Design of an Industrial Carbon Emission Intelligent Monitoring System for Carbon Neutrality
This study aimed to optimize industrial carbon emission monitoring systems for enhanced accuracy and real-time responsiveness. It proposed an intelligent system that innovatively sinks multi-source carbon accumulation logic into the database layer (replacing traditional application-layer processing), integrated with dynamic factor version control and long short-term memory prediction models. These innovations yielded significant performance gains. Under thousands of concurrent users, key interface response time dropped from 7,465 ms to 40 ms (99.5% reduction), while carbon calculation error rates remained below 0.1%—far exceeding the International Standards Organization 14064 standard's 1% threshold. The proposed solution not only provides industry with efficient carbon management tools but also enables a paradigm shift from post-event statistics to real-time intelligent decision making, advancing global carbon neutrality goals.
An efficient line-based approach for resolving merge conflicts in XMI-based models
Conflicts in software artefacts can appear during collaborative development through version control systems. When these conflicts happen in XMI models, the conflict sections generated by diff programs break the XMI serialisation and compromise the ability to use model editors that assume well-formedness of this serialisation. While these conflict sections already mark the conflicting lines of the model, current tools for conflict resolution in models ignore them and instead load the different versions of a model from the repository, over which they perform a full and costly comparison that re-identifies the conflicts. We present a novel approach that prevents this repetition of work by directly parsing XMI-based models with conflict sections, which allows for a targeted analysis of only the lines of the model that have been detected to be in conflict by the version control system. We have implemented this approach in the Peacemaker tool, which can load XMI models with conflict sections, compute and display conflicts at the model level, and provide appropriate resolution actions. Compared with state-of-the-art model comparison tools with support for conflict resolution, Peacemaker is able to identify the vast majority of conflicts in models while reducing the required time by up to 60%. The small subset of non-identified conflicts does not introduce issues into the models, e.g. there is no loss of model information, and the resulting models after line-merging these conflicts conform to their metamodels.
Managing Design Variants in Formula Student Race Cars: A Digital Engineering Approach Across Multiple Teams
Increasing product complexity, shorter development cycles and cross-domain integration demands pose significant challenges for modern race car engineering teams. In Formula Student teams, heterogeneous toolchains, manual data exchange, late system integration, and high personnel turnover hinder efficient collaborative development and lead to repeated knowledge loss. This paper presents an integrated digital-engineering framework combining graph-based design languages (GBDL), model-to-text transformations, natural-language interactions via Large Language Models (LLMs), and Git-based version control to address these issues. By formalizing design knowledge and storing it in a centralized design graph, the framework ensures digital consistency of data and models, supports automated vehicle design variant generation, and enables seamless cross-domain integration. Through case studies of three Formula Student teams, the methodology demonstrates quantifiable reductions in design iteration time, enabling the evaluation of more than 104 suspension variants within days instead of a few dozen manually created variants, while reducing hands-on engineering effort from minutes per variant to a largely unattended optimization process. The results indicate that the approach not only enhances efficiency and collaboration but also preserves design knowledge for long-term knowledge management and reuse. Looking forward, this methodology provides a scalable route toward further engineering automation, systematic variant-driven development, and early-stage design optimization supported by design languages and integrated downstream toolchains.
An Analysis of Merge Conflicts and Resolutions in Git-Based Open Source Projects
Version control systems such as Git support parallel collaborative work and became very widespread in the open-source community. Whilst Git offers some very interesting features, resolving conflicts that arise during synchronisation of parallel changes is a time-consuming task. In this paper we present an analysis of concurrency and conflicts in official Git repository of four projects: Rails, IkiWiki, Samba and Linux Kernel. We analyse the collaboration process of these projects at specific periods revealing how change integration and conflict rates vary during project development life-cycle. We also analyse how often users decide to rollback to previous document version when the integration process generates conflicts. Finally, we discuss the mechanism adopted by Git to consider changes made on two continuous lines as conflicting.
On Predicting Exam Performance Using Version Control Systems’ Features
The advent of Version Control Systems (VCS) in computer science education has significantly improved the learning experience. The Learning Analytics community has started to analyze the interactions between students and VCSs to evaluate the behavioral and cognitive aspects of the learning process. Within the aforesaid scope, a promising research direction is the use of Artificial Intelligence (AI) to predict students’ exam outcomes early based on VCS usage data. Previous AI-based solutions have two main drawbacks: (i) They rely on static models, which disregard temporal changes in the student–VCS interactions. (ii) AI reasoning is not transparent to end-users. This paper proposes a time-dependent approach to early predict student performance from VCS data. It applies and compares different classification models trained at various course stages. To gain insights into exam performance predictions it combines classification with explainable AI techniques. It visualizes the explanations of the time-varying performance predictors. The results of a real case study show that the effect of VCS-based features on the exam success rate is relevant much earlier than the end of the course, whereas the timely submission of the first lab assignment is a reliable predictor of the exam grade.