9 research outputs found

    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

    Modeling the Cost-Effectiveness of Systematic Software Reuse

    Get PDF

    Analytical and Empirical Evaluation of Software Reuse Metrics

    Get PDF
    How much can be saved by using pre-existing (or somewhat modified) software components when developing new software systems? With the increasing adoption of reuse methods and technologies, this question becomes critical. However, directly tracking the actual cost savings due to reuse is difficult. A worthy goal would be to develop a method of measuring the savings indirectly by analyzing the code for reuse of components. The focus of this paper is to evaluate how well several published software reuse metrics measure the ``time, money and quality'' benefits of software reuse. We conduct this evaluation both analytically and empirically. On the analytic front, we first develop some properties that should arguably hold of any measure of ``time, money and quality'' benefit due to reuse. We assess several existing software reuse metrics using these properties. Empirically, we constructed a toolset (using GEN++) to gather data on all published reuse metrics from C++ code; then, using some productivity and quality data from ``nearly replicated'' student projects at the University of Maryland, we evaluate the relationship the known metrics and the process data. The results show that different reuse metrics can be used as predictors of different quality attributes, and suggest possible directions for improving the known measures. (Also cross-referenced as UMIACS-TR-95-82

    Reusable framework for web application development

    Get PDF
    Web application (WA) is among the mainstream enterprise-level software solutions. One of the reasons for this trend was due to the presence of Web application framework (WAF) that in many ways has helped web developer to implement WA as an enterprise system. However, there are complexity issues faced by the developers when using existing WAFs as reported by the developers themselves. This study is proposed to find a solution to this particular issue by investigating generic issues that arise when developers utilize Web as a platform to deliver enterprise-level application. The investigation involves the identification of problems and challenges imposed by the architecture and technology of the Web itself, study of software engineering (SE) knowledge adaptation for WA development, determination of factors that contribute to the complexity of WAF implementation, and study of existing solutions for WA development proposed by previous works. To better understand the real issues faced by the developers, handson experiment was conducted through development testing performed on selected WAFs. A new highly reusable WAF is proposed, which is derived from the experience of developing several WAs case studies guided by the theoretical and technical knowledge previously established in the study. The proposed WAF was quantitatively and statistically evaluated in terms of its reusability and usability to gain insight into the complexity of the development approach proposed by the WAF. Reuse analysis results demonstrated that the proposed WAF has exceeded the minimum target of 75% reuse at both the component and system levels while the usability study results showed that almost all (15 out of 16) of the questionnaire items used to measure users’ attitudes towards the WAF were rated at least moderately by the respondents

    Software Engineering Laboratory Series: Collected Software Engineering Papers

    Get PDF
    The Software Engineering Laboratory (SEL) is an organization sponsored by NASA/GSFC and created to investigate the effectiveness of software engineering technologies when applied to the development of application software. The activities, findings, and recommendations of the SEL are recorded in the Software Engineering Laboratory Series, a continuing series of reports that includes this document

    Management of Reference Frames in Simulation and its Applications

    Get PDF
    The choice of reference frames used in simulations is typically fixed in dynamic models based on modeling decisions made early during their development, restricting model fidelity, numerical accuracy and integration into large-scale simulations. Individual simulation components typically need to model the transformations between multiple reference frames in order to interact with other components, resulting in additional development effort, time and cost. This dissertation describes the methods for defining and managing different reference frames in a simulation, thereby creating a shared simulation environment that can provide reference frame transformations, comprising of kinematics and rotations, to all simulation components through a Reference Frame Manager. Simulation components can use this Reference Frame Manager to handle all kinematics and rotations when interacting with components using different reference frames, improving the interoperability of simulation components, especially in parallel and distributed simulation, while reducing their development time, effort and cost. The Reference Frame Manager also facilitates the development of Generic Dynamic Models that encapsulate the core service of dynamic model, enabling the rapid development of dynamic models that can be reused and reconfigured for different simulation scenarios and requirements. The Reference Frame Manager can also be used to introduce Intermediate Frames that bound the magnitudes of vehicle states, reducing roundoff error and improving numerical accuracy.Ph.D.Committee Chair: Dr Amy R Pritchett; Committee Member: Dr Angus L. McLean; Committee Member: Dr Dewey H. Hodges; Committee Member: Dr Eric N. Johnson; Committee Member: Dr John R. Old

    Reuse Level Metrics

    No full text
    Reuse level is an abstract metric that can be applied to any reusable asset. This paper presents extensions to the reuse level metric, defines the metric formally, and discusses an implementation of the abstract metric for C in an enhanced version of the rl program

    Examining Reuse in LaSRS++-Based Projects

    No full text
    NASA Langley Research Center (LaRC) developed the Langley Standard Real-Time Simulation in C++ (LaSRS++) to consolidate all software development for its simulation facilities under one common framework. A common framework promised a decrease in the total development effort for a new simulation by encouraging software reuse. To judge the success of LaSRS++ in this regard, reuse metrics were extracted from 11 aircraft models. Three methods that employ static analysis of the code were used to identify the reusable components. For the method that provides the best estimate, reuse levels fall between 66% and 95% indicating a high degree of reuse. Additional metrics provide insight into the extent of the foundation that LaSRS++ provides to new simulation projects. When creating variants of an aircraft, LaRC developers use object-oriented design to manage the aircraft as a reusable resource. Variants modify the aircraft for a research project or embody an alternate configuration of the aircraft. The variants inherit from the aircraft model. The variants use polymorphism to extend or redefine aircraft behaviors to meet the research requirements or to match the alternate configuration. Reuse level metrics were extracted from 10 variants. Reuse levels of aircraft by variants were 60% - 99%
    corecore