228,442 research outputs found

    Towards automated support for extraction of reusable components

    Get PDF
    A cost effective introduction of software reuse techniques requires the reuse of existing software developed in many cases without aiming at reusability. This paper discusses the problems related to the analysis and reengineering of existing software in order to reuse it. We introduce a process model for component extraction and focus on the problem of analyzing and qualifying software components which are candidates for reuse. A prototype tool for supporting the extraction of reusable components is presented. One of the components of this tool aids in understanding programs and is based on the functional model of correctness. It can assist software engineers in the process of finding correct formal specifications for programs. A detailed description of this component and an example to demonstrate a possible operational scenario are given

    The software-cycle model for re-engineering and reuse

    Get PDF
    This paper reports on the progress of a study which will contribute to our ability to perform high-level, component-based programming by describing means to obtain useful components, methods for the configuration and integration of those components, and an underlying economic model of the costs and benefits associated with this approach to reuse. One goal of the study is to develop and demonstrate methods to recover reusable components from domain-specific software through a combination of tools, to perform the identification, extraction, and re-engineering of components, and domain experts, to direct the applications of those tools. A second goal of the study is to enable the reuse of those components by identifying techniques for configuring and recombining the re-engineered software. This component-recovery or software-cycle model addresses not only the selection and re-engineering of components, but also their recombination into new programs. Once a model of reuse activities has been developed, the quantification of the costs and benefits of various reuse options will enable the development of an adaptable economic model of reuse, which is the principal goal of the overall study. This paper reports on the conception of the software-cycle model and on several supporting techniques of software recovery, measurement, and reuse which will lead to the development of the desired economic model

    A Cost Benefit Model for Systematic Software Reuse

    Get PDF
    Information systems development is typically acknowledged as an expensive and lengthy process, often producing code that is of uneven quality and difficult to maintain. Software reuse has been advocated as a means of revolutionizing this process. The claimed benefits from software reuse are reduction in development cost and time, improvement in software quality, increase in programmer productivity, and improvement in maintainability. Software reuse does incur undeniable costs of creating, populating, and maintaining a library of reusable components. There is anecdotal evidence to suggest that some organizations benefit from reuse. However, many software developers practicing reuse claim these benefits without formal demonstration thereof. There is little research to suggest when the benefits are expected and to what extent they will be realized. For example, does a larger library of reusable components lead to increased savings? What is the impact of search effectiveness when evaluating reuse? This research seeks to address these questions. It represents the first step in a series wherein the effects of software reuse on overall development effort and costs are modeled with a view to understanding when it is most effective

    A Model-Driven Engineering Approach for ROS using Ontological Semantics

    Full text link
    This paper presents a novel ontology-driven software engineering approach for the development of industrial robotics control software. It introduces the ReApp architecture that synthesizes model-driven engineering with semantic technologies to facilitate the development and reuse of ROS-based components and applications. In ReApp, we show how different ontological classification systems for hardware, software, and capabilities help developers in discovering suitable software components for their tasks and in applying them correctly. The proposed model-driven tooling enables developers to work at higher abstraction levels and fosters automatic code generation. It is underpinned by ontologies to minimize discontinuities in the development workflow, with an integrated development environment presenting a seamless interface to the user. First results show the viability and synergy of the selected approach when searching for or developing software with reuse in mind.Comment: Presented at DSLRob 2015 (arXiv:1601.00877), Stefan Zander, Georg Heppner, Georg Neugschwandtner, Ramez Awad, Marc Essinger and Nadia Ahmed: A Model-Driven Engineering Approach for ROS using Ontological Semantic

    Johnson Space Center software reuse activity

    Get PDF
    There is a strong operational interest in reuse and commonality at the Johnson Space Center (JSC). Although commonality and reuse were not emphasized in the Space Shuttle Orbiter Project, it is a major goal for Space Station Freedom and the Software Support Environment (SSE). Research activities at JSC are generally conducted through the Software Engineering Research Center (SERC) of the University of Houston at Clear Lake. The Life Cycle Model developed by SERC includes reuse at each phase, but reuse is not a principal theme. The SSE is a significant entry point for new reuse technology, and the SERC can provide consultation and possible prototypes. SERC is seen as an interface to other NISE reuse researchers. The AdaNET is managed at JSC through the University of Houston at Clear Lake for the NASA Office of Technology Utilization. It may also be a gateway for reuse research

    An evaluation model for software reuse processes

    Get PDF
    Software reuse is a major concern in many software development companies. It is one of the main strategies used to reduce the cost of software product development. Studies show that the reuse strategy is the most significant strategy in terms of effort and quality. That it could save the half of the software development effort and increase the quality of the software product. Different ways of software reuse are proposed and discussed. In this study, an evaluation model for software reuse is proposed. The model is developed in order to consider the new methods of software reuse. That developed based on the framework of develop a reusable software components through software development processes. The model is proposed in order to present the applicable methods of software reuse and to evaluate their cost

    A Qualitative Model for Barriers to Software Reuse Adoption

    Get PDF

    A reuse-based economic model for software reference architectures

    Get PDF
    The growing size and complexity of software systems, together with critical time-to-market needs, demand new software engineering approaches for software development. To remain competitive, organizations are challenged to make informed and feasible value-driven design decisions in order to ensure the quality of the systems. However, there is a lack of support for evaluating the economic impact of these decisions with regard to software reference architectures. This damages the communication among architects and management, which can result in poor decisions. This paper aims at opening a path in this direction by presenting a pragmatic preliminary economic model to perform cost-benefit analysis on the adoption of software reference architectures as key asset for optimizing architectural decision-making. A preliminary validation based on a retrospective study showed the ability of the model to support a cost-benefit analysis presented to the management of an IT consulting company.Preprin

    Software Reuse Management: Development of a Model in the Context of the Capability Maturity Model

    Get PDF
    This paper describes a model for software reuse management within the context of the Capability Maturity Model. It outlines reuse components and practices as organizations move through more mature levels of software development. Unlike prior models that focus on a prescriptive approach, the reuse management model acknowledges the existence of a sizeable portfolio of existing applications, including legacy systems, which can provide basis for reuse
    corecore