21,161 research outputs found

    Early detection of ripple propagation in evolving software systems

    Get PDF
    Ripple effect analysis is the analysis of the consequential knock on effects of a change to a software system. In the first part of this study, ripple effect analysis methods are classified into several categories based on the types of information the methods analyse and produce. A comparative and analytical study of methods from these categories was performed in an attempt to assist maintainers in the selection of ripple effect analysis methods for use in different phases of the software maintenance process. It was observed that existing methods are most usable in the later stages of the software maintenance process and not at an early stage when strategic decisions concerning project scheduling are made. The second part of the work, addresses itself to the problem of tracing the ripple effect of a change, at a stage earlier in the maintenance process than existing ripple effect analysis methods allow. Particular emphasis is placed upon the development of ripple effect analysis methods for analysing system documentation. The ripple effect analysis methods described in this thesis involve manipulating a novel graph theory model called a Ripple Propagation Graph. The model is based on the thematic structure of documentation, previous release information and expert judgement concerning potential ripple effects. In the third part of the study the Ripple Propagation Graph model and the analysis methods are applied and evaluated, using examples of documentation structure and a major case study

    DeltaImpactFinder: Assessing Semantic Merge Conflicts with Dependency Analysis

    Get PDF
    In software development, version control systems (VCS) provide branching and merging support tools. Such tools are popular among developers to concurrently change a code-base in separate lines and reconcile their changes automatically afterwards. However, two changes that are correct independently can introduce bugs when merged together. We call semantic merge conflicts this kind of bugs. Change impact analysis (CIA) aims at estimating the effects of a change in a codebase. In this paper, we propose to detect semantic merge conflicts using CIA. On a merge, DELTAIMPACTFINDER analyzes and compares the impact of a change in its origin and destination branches. We call the difference between these two impacts the delta-impact. If the delta-impact is empty, then there is no indicator of a semantic merge conflict and the merge can continue automatically. Otherwise, the delta-impact contains what are the sources of possible conflicts.Comment: International Workshop on Smalltalk Technologies 2015, Jul 2015, Brescia, Ital

    A document-like software visualization method for effective cognition of c-based software systems

    Get PDF
    It is clear that maintenance is a crucial and very costly process in a software life cycle. Nowadays there are a lot of software systems particularly legacy systems that are always maintained from time to time as new requirements arise. One important source to understand a software system before it is being maintained is through the documentation, particularly system documentation. Unfortunately, not all software systems developed or maintained are accompanied with their reliable and updated documents. In this case, source codes will be the only reliable source for programmers. A number of studies have been carried out in order to assist cognition based on source codes. One way is through tool automation via reverse engineering technique in which source codes will be parsed and the information extracted will be visualized using certain visualization methods. Most software visualization methods use graph as the main element to represent extracted software artifacts. Nevertheless, current methods tend to produce more complicated graphs and do not grant an explicit, document-like re-documentation environment. Hence, this thesis proposes a document-like software visualization method called DocLike Modularized Graph (DMG). The method is realized in a prototype tool named DocLike Viewer that targets on C-based software systems. The main contribution of the DMG method is to provide an explicit structural re-document mechanism in the software visualization tool. Besides, the DMG method provides more level of information abstractions via less complex graph that include inter-module dependencies, inter-program dependencies, procedural abstraction and also parameter passing. The DMG method was empirically evaluated based on the Goal/Question/Metric (GQM) paradigm and the findings depict that the method can improve productivity and quality in the aspect of cognition or program comprehension. A usability study was also conducted and DocLike Viewer had the most positive responses from the software practitioners

    Formal verification and testing: An integrated approach to validating Ada programs

    Get PDF
    An integrated set of tools called a validation environment is proposed to support the validation of Ada programs by a combination of methods. A Modular Ada Validation Environment (MAVEN) is described which proposes a context in which formal verification can fit into the industrial development of Ada software

    Software-Engineering Process Simulation (SEPS) model

    Get PDF
    The Software Engineering Process Simulation (SEPS) model is described which was developed at JPL. SEPS is a dynamic simulation model of the software project development process. It uses the feedback principles of system dynamics to simulate the dynamic interactions among various software life cycle development activities and management decision making processes. The model is designed to be a planning tool to examine tradeoffs of cost, schedule, and functionality, and to test the implications of different managerial policies on a project's outcome. Furthermore, SEPS will enable software managers to gain a better understanding of the dynamics of software project development and perform postmodern assessments

    DC-DC Boost Converter with Constant Output Voltage for Grid Connected Photovoltaic Application System

    Get PDF
    The main purpose of this paper is to introduce an approach to design a DC-DC boost converter with constant output voltage for grid connected photovoltaic application system. The boost converter is designed to step up a fluctuating solar panel voltage to a higher constant DC voltage. It uses voltage feedback to keep the output voltage constant. To do so, a microcontroller is used as the heart of the control system which it tracks and provides pulse-width-modulation signal to control power electronic device in boost converter. The boost converter will be able to direct couple with grid-tied inverter for grid connected photovoltaic system. Simulations were performed to describe the proposed design. Experimental works were carried out with the designed boost converter which has a power rating of 100 W and 24 V output voltage operated in continuous conduction mode at 20 kHz switching frequency. The test results show that the proposed design exhibits a good performance
    corecore