223,850 research outputs found

    Generic modelling of code clones

    Get PDF
    Code clones, i.e. instances of duplicated code, can be found in many software systems. They adversely affect the software systems ’ quality, in particular their maintainability and comprehensibility. Thus, this as-pect is particularly important to consider in software maintenance and re-engineering. Many different algorithms detecting code clones have been developed. For various reasons, it is difficult to compare the results of different algorithms. Most notable among these reasons is that there is no conceptual model allowing description of code clones determined by different algorithms. Much more, each algorithm uses its specific concept of code clones, which is rarely made explicit. To overcome these problems, we have developed a generic model for describing clones. The model is generic in that it is independent of the pro-gramming language examined and of the clone detection algorithm used. It is flexible enough to facilitate various granularities of artifacts employed for selection and comparison, including inexact clones. The model allows separation of concerns between clone detection, description and manage-ment, which reduces the effort for the implementation of tools supporting these activities. On the basis of the model, we have implemented a pro-totype tool supporting these activities, tightly integrated into the Eclipse environment.

    Using metamodels and workflows in a software maintenance environment

    Get PDF
    The objective of Software Engineering Environments (SEE) is to allow the integrated and automatic management and control of a specific process or group of processes of the software (ISO/IEC, 2000). In broader terms, the MANTIS project aims to define and construct an integral environment for the management of Software Maintenance Process (SMP). Due to the large number of different aspects that have to be considered, we have defined an architecture with 4 conceptual levels. Each of these levels incorporates concepts at a specific level of abstraction and generality. We present a proposal of a metamodel for the SMP based on the ontology formulated by Kitchenham et al.(1999) and in the Workflow Reference Model of the Workflow Management Coalition (WFMC, 1995). In so doing our aim is to incorporate in the said ontology, the aspects of process enaction that the workflow technology resolves in what we consider to be a satisfactory fashion.Eje: Ingeniería de softwareRed de Universidades con Carreras en Informática (RedUNCI

    Integrated environment of systems automated engineering

    Get PDF
    The Standardization of a development process for systems of medium complexity, entirely supported by an integrated development environment, could mean a double contribution to the industry of systems development. On the one hand it would contribute to the reduction of costs by shortening times of development and facilitating the maintenance of the systems. On the other hand, by using conceptual models of a high level of abstraction, final users would be able to visualize and follow the progress of systems development and to commit themselves in the process actively, guaranteeing their success. The purpose of this series of papers is to identify, design, develop and integrate the components of an integrated environment for a system automated development, starting from high-level-abstraction formal specifications. It is intended to achieve a generation of systems starting from only two models: the static or data structure model, and the dynamic or functional model. The former is based on an adaptation of the conceptual pattern of entities and relationships, and the latter on the formal specification of operations in objects relational algebra and on the finite automaton theory. The maintenance of the systems generated by the tool would be made by operating directly on the static and dynamic models, with no need for either re-coding or making reverse engineering. The strength of the proposal is based on integration of the Software Engineering and the analysis and metrics of quality. Storage protocols of data definitions and storage protocols of interface definitions corresponding to a graph, through the state transitions and their gradation so that the user could visualize the development of the life cycle[6][32][33][47]. Any artifact or document can be measured and estimated if it is produced during the software life cycle. This study is an approximation to a process of activities supported by an effective help tool. Abstraction and visualization capacities are provided to the artifacts with the system design and analysis (CASE). Such artifacts under controlled conditions trace the software life cycle taking information of the structure (framework) of the application; with Quality, Reliability and Metrics.Eje: Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Visualising software in cyberspace

    Get PDF
    The problems of maintaining software systems are well documented. The increasing size and complexity of modern software serves only to worsen matters. Software maintainers are typically confronted with very large and very complex software systems, of which they may have little or no prior knowledge. At this stage they will normally have some maintenance task to perform, though possibly little indication of where or how to start. They need to investigate and understand the software to some extent in order to begin maintenance. This understanding process is termed program comprehension. There are various theories on program comprehension, many of which put emphasis on the construction of a mental model of the software within the mind of the maintainor. These same theories hypothesise a number of techniques employed by the maintainer for the creation and revision of this mental model. Software visualisation attempts to provide tool support for generating, supplementing and verifying the maintainer’s mental model. The majority of software visualisations to date have concentrated on producing two dimensional representations and animations of various aspects of a software system. Very little work has been performed previously regarding the issues involved in visualising software within a virtual reality environment. This research represents a significant first step into this exciting field and offers insight into the problems posed by this new media. This thesis provides an identification of the possibilities afforded byU3D graphics for software visualisation and program comprehension. It begins by defining seven key areas of 3D software visualisation, followed by the definition of two terms, visualisation and representation. These two terms provide a conceptual division between a visualisation and the elements of which it is comprised. This division enables improved discussion of the properties of a 3D visualisation and particularly the idenfification of properties that are desirable for a successful visualisation. A number of such desirable properties are suggested for both visualisations and representations, providing support for the design and evaluation of a 3D software visualisation system. Also presented are a number of prototype visualisations, each providing a different approach to the visualisation of a software system. The prototypes help demonstrate the practicalities and feasibility of 3D software visualisation. Evaluation of these prototypes is performed using a variety of techniques, the results of which emphasise the fact that there is substantial potential for the application of 3D graphics and virtual reality to software visualisation

    Constructing a model of risk mitigation for anti software ageing during software maintenance

    Get PDF
    Software will normally undergo an inevitable ageing process during its lifecycle. Most often, software rejuvenation is mainly proposed by past researchers to delay software ageing caused by errors accumulation from long running software execution. This method addresses software ageing from software dependability perspective.However little attention has been paid to address software ageing from software engineering perspective, which caused by failures to modify the software or from the results of software changes.Changes are vital to enable software accommodating new functions, ensuring its survivability towards new environment but pioneer in software ageing field argued that the results of software changes could influence software ageing. Hence, this motivate the study to develop a method to tackle software ageing from software engineering perspective to reduce risks impact before it become apparent. This paper discusses on the development of conceptual model of risk mitigation for anti software ageing during software maintenance through concepts gained from literature study. The design of the conceptual modelillustrates the relationships between related concepts through concept mapping. It is significant to portray preliminary work in the study thus provide direction for further work to examine the relationships between concepts

    Use of COTS functional analysis software as an IVHM design tool for detection and isolation of UAV fuel system faults

    Get PDF
    This paper presents a new approach to the development of health management solutions which can be applied to both new and legacy platforms during the conceptual design phase. The approach involves the qualitative functional modelling of a system in order to perform an Integrated Vehicle Health Management (IVHM) design – the placement of sensors and the diagnostic rules to be used in interrogating their output. The qualitative functional analysis was chosen as a route for early assessment of failures in complex systems. Functional models of system components are required for capturing the available system knowledge used during various stages of system and IVHM design. MADe™ (Maintenance Aware Design environment), a COTS software tool developed by PHM Technology, was used for the health management design. A model has been built incorporating the failure diagrams of five failure modes for five different components of a UAV fuel system. Thus an inherent health management solution for the system and the optimised sensor set solution have been defined. The automatically generated sensor set solution also contains a diagnostic rule set, which was validated on the fuel rig for different operation modes taking into account the predicted fault detection/isolation and ambiguity group coefficients. It was concluded that when using functional modelling, the IVHM design and the actual system design cannot be done in isolation. The functional approach requires permanent input from the system designer and reliability engineers in order to construct a functional model that will qualitatively represent the real system. In other words, the physical insight should not be isolated from the failure phenomena and the diagnostic analysis tools should be able to adequately capture the experience bases. This approach has been verified on a laboratory bench top test rig which can simulate a range of possible fuel system faults. The rig is fully instrumented in order to allow benchmarking of various sensing solution for fault detection/isolation that were identified using functional analysis
    corecore