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
2,984 result(s) for "software reuse"
Sort by:
A Software Reuse Technology Based on Common Factor Method and Its Application in Fast Programming
In the application software development process with complex data content and constantly changing structure, it is difficult to cope with rapid changes in requirements only by relying on object inheritance and component technology, resulting in low software development efficiency. In order to improve the efficiency of software development, the paper proposes a software reuse technology based on the common factor method. In the process of writing code, first, use common factors to express the relationship between changes and unchanging parts; then; integrate component member variables, file UI component data initialization, data acquisition, addition, modification and verification, achieve more efficient code reuse. Taking the application practice of the research and development of the hospital nutrition department consultation software as a case, the research results show that the technology can quickly reuse the existing code, generate the code required for new requirements, ensure the quality of the software, and improve the efficiency of the development of the software.
Software reuse research: status and future
This paper briefly summarizes software reuse research, discusses major research contributions and unsolved problems, provides pointers to key publications, and introduces four papers selected from The Eighth International Conference on Software Reuse (ICSR8).
Enabling reuse-based software development of large-scale systems
Software reuse enables developers to leverage past accomplishments and facilitates significant improvements in software productivity and quality. Software reuse catalyzes improvements in productivity by avoiding redevelopment and improvements in quality by incorporating components whose reliability has already been established. This study addresses a pivotal research issue that underlies software reuse - what factors characterize successful software reuse in large-scale systems. The research approach is to investigate, analyze, and evaluate software reuse empirically by mining software repositories from a NASA software development environment that actively reuses software. This software environment successfully follows principles of reuse-based software development in order to achieve an average reuse of 32 percent per project, which is the average amount of software either reused or modified from previous systems. We examine the repositories for 25 software systems ranging from 3,000 to 112,000 source lines from this software environment. We analyze four classes of software modules: modules reused without revision, modules reused with slight revision (<25 percent revision), modules reused with major revision (/spl ges/25 percent revision), and newly developed modules. We apply nonparametric statistical models to compare numerous development variables across the 2,954 software modules in the systems. We identify two categories of factors that characterize successful reuse-based software development of large-scale systems: module design factors and module implementation factors. We also evaluate the fault rates of the reused, modified, and newly developed modules. The module design factors that characterize module reuse without revision were (after normalization by size in source lines): few calls to other system modules, many calls to utility functions, few input-output parameters, few reads and writes, and many comments. The module implementation factors that characterize module reuse without revision were small size in source lines and (after normalization by size in source lines): low development effort and many assignment statements. The modules reused without revision had the fewest faults, fewest faults per source line, and lowest fault correction effort. The modules reused with major revision had the highest fault correction effort and highest fault isolation effort as wed as the most changes, most changes per source line, and highest change correction effort. In conclusion, we outline future research directions that build on these software reuse ideas and strategies.
ScrumOntoSPL: Collaborative Method of Agile Product Line Engineering for Software Resource Reuse
Agile Product Line Engineering (APLE), a relatively new approach combining the two successful methods of Agile Software Development (ASD) and Software Product Lines (SPLs), makes product lines more responsive to ever-changing customer needs or market changes. However, SPLs often fail to keep up with market demand due to high coordination costs, slow development processes, and long release cycles in the case of frequent changes in business requirements; in agile software projects, the lack of a unified specification for describing requirements leads to high coordination costs and inconvenient requirement management. Some studies in the literature have proposed optimized approaches to integrate ASD and SPLs, but they still have not covered all aspects of APLE’s characteristics, and software resource reuse is rarely considered in these approaches during product line development. In view of this, we propose a collaborative framework of agile product line engineering for software resource reuse, namely ScrumOntoSPL. The ScrumOntoSPL approach efficiently merges ASD and SPL based on the agile method Scrum, SPL architecture, and ontology technology. In ScrumOntoSPL, uniform requirement specification is constructed by utilizing ontology, and the Matching Requirement with Component (MRC) process is designed to match product new requirements and software resources stored in a resource pool. In addition, we evaluated the proposed framework and approach with CMMI. In the end, a case study of a software development tool called IMC-Tool based on ScrumOntoSPL for a universal Instrument Microcontroller Chip (IMC) is discussed. The IMC-Tool case illustrates that the ScrumOntoSPL has the advantages of dynamically managing demand changes, enhancing software resource reuse, reducing coordination costs, and reducing time to market.
Strategies for software reuse: a principal component analysis of reuse practices
This research investigates the premise that the likelihood of success of software reuse efforts may vary with the reuse strategy employed and, hence, potential reuse adopters must be able to understand reuse strategy alternatives and their implications. We use survey data collected from 71 software development groups to empirically develop a set of six dimensions that describe the practices employed in reuse programs. The study investigates the patterns in which these practices co-occur in the real world, demonstrating that the dimensions cluster into five distinct reuse strategies, each with a different potential for reuse success. The findings provide a means to classify reuse settings and assess their potential for success.
Collaborative Approach for Feature Models in Software Product Lines
One of the strategies that help to software reuse are the Software Product Lines (SPL), which are a set of products developed from common and variable features that meet specific needs of a domain. In this sense, feature models are a key tool to manage common features, variability, and customization of the line products; however, their definition is a complex task that requires the participation of a multidisciplinary team. Therefore, to achieve their definition, it is crucial to establish clear guidelines for communication and collaboration among stakeholders. The lack of effective collaboration may result in a poor definition of the model since it is a fundamental component for the construction of an SPL. This paper aims to present CINDERELLA, a collaborative approach to define feature models in SPLs, and to show its initial evaluation. Evaluation was carried out by defining an experiment in an academic environment. The experiment revealed that the students had a positive perception of CINDERELLA, highlighting its usefulness and completeness, although the clarity of its instructions needs to be improved. CINDERELLA is perceived as a user-friendly, useful, and complete approach to define feature models, because of its consistency and organization. However, its description needs to be improved and additional experiments in real contexts are required to confirm its applicability and effectiveness. Una de las estrategias de ayuda a la reutilización de software son las Líneas de Productos de Software (LPS), las cuales son un conjunto de productos desarrollados a partir de características comunes y variables que satisfacen necesidades específicas de un dominio. En este sentido, los modelos de características son una herramienta clave para gestionar características comunes, variabilidad y personalización de los productos de la línea; sin embargo, su definición es una tarea compleja que requiere la participación de un equipo multidisciplinario. Por lo tanto, para lograr su definición, es crucial establecer directrices claras de comunicación y colaboración entre actores involucrados. La falta de colaboración efectiva puede resultar en una definición deficiente del modelo, debido a que es un componente fundamental para la construcción de una LPS. Este artículo tuvo como objetivo presentar CINDERELLA, un enfoque colaborativo para definir modelos de características en LPS, y mostrar su evaluación inicial. La evaluación se hizo mediante la definición de un experimento en un entorno académico. El experimento reveló que los estudiantes tuvieron una percepción positiva de CINDERELLA, destacando su utilidad e integridad, aunque se necesita mejorar la claridad de sus instrucciones. CINDERELLA es percibido como un enfoque fácil de usar, útil y completo para definir modelos de características, gracias a su coherencia y organización. Sin embargo, se requiere mejorar su descripción y realizar experimentos adicionales en contextos reales para confirmar su aplicabilidad y efectividad
Design and Implementation of Flywheel Universal Control and Test System Software
In response to the problems of strong specificity, poor universality, and high maintenance difficulty of existing flywheel control software, this paper develops a generalized flywheel control and testing software. By analyzing the problems in the universality, automation, parallelism, and reusability of existing equipment, and adopting the modular design concept, the design is carried out in the mode of hardware generalization to meet the control and testing requirements of various types of flywheel products, improve the universality and testing efficiency of the control software, and verify the accuracy and stability of the control software through experiments.
Reusing software: issues and research directions
Software productivity has been steadily increasing over the past 30 years, but not enough to close the gap between the demands placed on the software industry and what the state of the practice can deliver; nothing short of an order of magnitude increase in productivity will extricate the software industry from its perennial crisis. Several decades of intensive research in software engineering and artificial intelligence left few alternatives but software reuse as the (only) realistic approach to bring about the gains of productivity and quality that the software industry needs. In this paper, we discuss the implications of reuse on the production, with an emphasis on the technical challenges. Software reuse involves building software that is reusable by design and building with reusable software. Software reuse includes reusing both the products of previous software projects and the processes deployed to produce them, leading to a wide spectrum of reuse approaches, from the building blocks (reusing products) approach, on one hand, to the generative or reusable processor (reusing processes), on the other. We discuss the implication of such approaches on the organization, control, and method of software development and discuss proposed models for their economic analysis. Software reuse benefits from methodologies and tools to: (1) build more readily reusable software and (2) locate, evaluate, and tailor reusable software, the last being critical for the building blocks approach. Both sets of issues are discussed in this paper, with a focus on application generators and OO development for the first and a thorough discussion of retrieval techniques for software components, component composition (or bottom-up design), and transformational systems for the second. We conclude by highlighting areas that, in our opinion, are worthy of further investigation.< >
Software reuse in product populations
Consumer products are becoming increasingly software intensive. The software complexity of individual products grows, while the diversity of products increases and the lead time must decrease. Software reuse is the answer to this, not only within a family but also between families of consumer products. We have devised an approach based upon a software component technology to enable reuse. This paper describes that approach, and it zooms in on two important aspects of component-based development. One aspect concerns the prediction of system properties from properties of components, which we illustrate using thread synchronization as example. The other aspect concerns branching of our software in our configuration management systems, where our analysis leads to the discovery that we may be constantly rewriting our own code and to the definition of the turn-over factor to quantify this. We end this paper with a brief validation of our approach.
A Survey on Research of Code Comment Auto Generation
A code comment is an explanation of the code. As an important part of software development process, code comment plays an important role in software maintenance, software reuse and other fields. Automatic generation of code comment aims to study the automatic method of comment generation so as to improve the efficiency of software development. This paper summarizes the related concepts and researches of code comment, discusses the automatic generation technology of code comment and the evaluation of comment quality, introduces the application of code comment generation in the software domain, and finally analyzes the challenges of automatic generation of code comment, and looks forward to the future research in this field.