10 research outputs found

    Processo de depuração depois do teste: definição e análise.

    Get PDF
    O objetivo da realização deste trabalho foi analisar em detalhes o processo de depuração que ocorre depois da atividade de teste. Por tanto, vários processos de depuração de software foram analisados. Baseado nessa análise foi definido um processo de Depuração depois do teste (DDT) que enfativa os seguintes aspectos: identificação, avaliação e refinamento sucessivo de sintomas internos até a localização do defeito; e tipo de informação de teste utilizada. Várias técnicas de depuração foram então avaliadas em termos de mecanismos de apoio ao processo DDT e quanto a sua escabilidade para programas reais. Dessa avaliação, observou-se que os resultados do teste sistemático de software, quando utilizado na depuração, resultam em técnicas de baixo custo e com maiores perspectivas de escabilidade para programas reais. Infelizmente, esses resultados têm sido utilizados apenas para apoiar um dos aspectos do processo DDT- identificação de sintomas internos. Essa observação motiva a definição de estratégias de depuração que utilizem, de maneira eficaz e eficiente, as informações de teste na avaliação e no refinamento de sintomas internos.bitstream/CNPTIA/9957/1/bolpesq5.pdfAcesso em: 28 maio 2008

    Log Event Filtering Using Clustering Techniques

    Get PDF
    Large software systems are composed of various different run-time components, partner applications and, processes. When such systems operate they are monitored so that audits can be performed once a failure occurs or when maintenance operations are performed. However, log files are usually sizeable, and require filtering and reduction to be processed efficiently. Furthermore, there is no apparent correspondence of how logged events relate to particular use cases the system may be performing. In this thesis, we have developed a framework that is based on heuristic clustering algorithms to achieve log filtering, log reduction and, log interpretation. More specifically we define the concept of the Event Dependency Graph, and we present event filtering and use case identification techniques, that are based on event clustering. The clustering process groups together all events that relate to a collection of initial significant events that relate to a use case. We refer to these significant events as beacon events. Beacon events can be identified automatically or semiautomatically by examining log event types or event names against event types or event names in the corresponding specification of a use case being considered (e.g. events in sequence diagrams). Furthermore, the user can select other or additional initial clustering conditions based on his or her domain knowledge of the system. The clustering technique can be used in two possible ways. The first is for large logs to be reduced or sliced, with respect to a particular use case so that, operators can better focus their attention to specific events that relate to specific operations. The second is for the determination of active use cases where operators select particular seed events of interest and then examine the resulting reduced logs against events or event types stemming from different alternative known use cases being considered, in order to identify the best match and consequently provide insights on which of these alternative use cases may be running at any given time. The approach has shown very promising results towards the identification of executing use cases among various alternative ones in various runs of the Session Initiation Protocol

    Sampling-based Program Execution Monitoring

    Get PDF
    For its high overall cost during product development, program debugging is an important aspect of system development. Debugging is a hard and complex activity, especially in time-sensitive systems which have limited resources and demanding timing constraints. System tracing is a frequently used technique for debugging embedded systems. A specific use of system tracing is to monitor and debug control-flow problems in programs. However, it is difficult to implement because of the potentially high overhead it might introduce to the system and the changes which can occur to the system behaviour due to tracing. To solve the above problems, in this work, we present a sampling-based approach to program execution monitoring which specifically helps developers trace the program execution in time-sensitive systems such as real-time applications. We build the system model and propose three theorems which determine the sampling period or the optimal in different scenarios. We also design seven heuristics and an instrumentation framework to extend the sampling period which can reduce the monitoring overhead and achieve an optimal tradeoff between accuracy and overhead introduced by instrumentation. Using this monitoring framework, we can use the information extracted through sampling to reconstruct the system state and execution paths to locate the deviation. Based on the statistically significant data, we also model the trend of the sampling period with the instrumentation steps. Based on the modelling results, we devise a scheme for predicting the number of markers we need to reach a certain sampling period. Last, we build a tool chain to instrument and monitoring the software system and further prove the soundness of our approach

    Instrumentação configuravel e incremental de programas

    Get PDF
    Orientadores : Mario Jino, Marcos Lordello ChaimDissertação (mestrado) - Universidade Estadual de Campinas, Faculdade de Engenharia Eletrica e de ComputaçãoMestrad
    corecore