132 research outputs found

    Measuring Complexity and Stability of Web Programs�

    Get PDF
    Software maintenance engineers spend at least half of their time trying to understand the system they are to modify. This is due partially to the fact that often the only documentation available is the source code itself. The literate programming paradigm provides the incentive and the capability to produce high quality documentation and code simultaneously. The goal is to create "works of literature" which have all the extras (table of contents, cross references, and indices) to help readers to comprehend the programs quickly and thoroughly. The purpose of this thesis is to explore the similarities and differences in measurements of complexity and stability of literate programs compared to those of traditionally developed code.Computer Scienc

    Adaptive object-modeling : patterns, tools and applications

    Get PDF
    Tese de Programa Doutoral. Informática. Universidade do Porto. Faculdade de Engenharia. 201

    Testing Object Interaction

    Get PDF

    Restructuring Object -Oriented Designs Using a Metric-Driven Approach.

    Get PDF
    The benefits of object-oriented software are now widely recognized. However, methodologies that are used to develop object-oriented software are still in their infancy. There is a lack of methods to assess the quality of the various components that are derived during the development process. The design of a system is a crucial component derived during the system development process. Little attention has been given to assessing object-oriented designs to determine the goodness of the designs. There are metrics that can provide guidance for assessing the quality of the design. The objective of this research is to develop a system to evaluate object-oriented designs and to provide guidance for the restructuring of the design based on the results of the evaluation process. We identify a basic set of metrics that reflects the benefits of the object-oriented paradigm such as inheritance, encapsulation, and method interactions. Specifically, we include metrics that measure depth of inheritance, methods usage, cardinality of subclasses, coupling, class responses, and cohesion. We define techniques to evaluate the metric values on existing object-oriented designs. We then define techniques to utilize the metric values to help restructure designs so that they conform to predetermined design criteria. These methods and techniques are implemented as a part of a Design Evaluation Assistant that automates much of the evaluation and restructuring process

    SAGA: A project to automate the management of software production systems

    Get PDF
    The Software Automation, Generation and Administration (SAGA) project is investigating the design and construction of practical software engineering environments for developing and maintaining aerospace systems and applications software. The research includes the practical organization of the software lifecycle, configuration management, software requirements specifications, executable specifications, design methodologies, programming, verification, validation and testing, version control, maintenance, the reuse of software, software libraries, documentation, and automated management

    On Modularity In Abstract State Machines

    Get PDF
    In the field of model based formal methods we investigate the Abstract State Machine (ASM) modularity features. With the growing complexity of systems and the experience gained in more than thirty years of ASM method application a need for more manageable models emerged. We mainly investigate the notion of modules in ASMs as independent interacting components and the ability to identify portions of the machine state with the aim of improving the modelling process. In this thesis we provide a language level semantically well defined solution for (1) the definition of ASM modules as independent services and their communication behaviour; (2) a new construct that operates on the global state of an ASM machine that ease the management of state partitions and their identification; (3) a novel transition rule for the management of computations providing different execution strategies and putting termination condition for the machine inside the specification; (4) a data definition convention along with a new transition rule for their manipulation via pattern matching. In our work we build upon CoreASM, a well-known extensible modelling framework and tool environment for ASMs. The semantic of our modularity constructs is compatible with the one defined for the CoreASM interpreter. This ease the implementation of extension plugins for tool support of modularity features. A real world system use case ground model ends the thesis exemplifying the practical usage of our modularity constructs
    • …
    corecore