3 research outputs found

    A detailed VM profiler for the Cog VM

    Get PDF
    International audienceCode profiling enables a user to know where in an application or function the execution time is spent. The Pharo ecosystem offers several code profilers. However, most of the publicly available profilers (MessageTally, Spy, GadgetPro-filer) largely ignore the activity carried out by the virtual machine , thus incurring inaccuracy in the gathered information and missing important information, such as the Just-in-time compiler activity. This paper describes the motivations and the latest improvements carried out in VMProfiler, a code execution pro-filer hooked into the virtual machine, that performs its analysis by monitoring the virtual machine execution. These improvements address some limitations related to assessing the activity of native functions (resulting from a Just-in-time compiler operation): as of now, VMProfiler provides more detailed profiling reports, showing for native code functions in which bytecode range the execution time is spent

    Framework de verificação estática e dinâmica de código : uma abordagem baseada em valor

    Get PDF
    Trabalho de Conclusão de Curso (graduação)—Universidade de Brasília, Faculdade UnB Gama, 2017.A produção de código e a implementação de testes unitários, bem como a realização de inspeções de código, estão instrinsecamente conectados. Testes unitários e inspeções, enquanto práticas complementares da verificação de software, foram concebidas com a intenção de aprimorar a identificação de defeitos existentes no código fonte do software. Nesse sentido, também é válido notar que a qualidade do código fonte influi na qualidade de uso do software, sendo esta contemplada pelo usuário. Mediante este cenário, durante a execução da primeira parte do plano metodológico elaborado neste estudo, concebeu-se um framework que reúne um conjunto de atividades e práticas que favorecem a implementação de testes unitários e realização de inspeções correlacionado aos conceitos da Engenharia de Software Baseada em Valor, que aborda o alinhamento entre a missão do projeto e as atividades técnicas de desenvolvimento de software. Neste trabalho, o objetivo é apresentar a avaliação da efetividade do framework concebido na primeira parte deste estudo mediante o uso de um procedimento técnico denominado pesquisa-ação. Foram executados dois ciclos de pesquisa-ação para coletar os dados de execução dos projetos adotados para utilização do framework. Ao final será possível contemplar um framework de avaliação da qualidade de código comprovadamente adequado para uso em qualquer organização que faça uso de metodologias ágeis.Code production and implementation of unit tests, as well as code inspections, are insensitively connected. Unit tests and inspections, as complementary software verification practices, were designed with the aim of improving the identification of defects in the software source code. In this sense, it is also worth noting that the quality of the source code influences the quality of use of the software, which is contemplated by the user. Through this scenario, during the execution of the first part of the methodological plan elaborated in this study, a framework was conceived that brings together a set of activities and practices that favor the implementation of unit tests and conducting inspections correlated to the concepts of Software Engineering Based on Value, which addresses the alignment between the project’s mission and the technical activities of software development. In this work, the objective is to present the evaluation of the effectiveness of the framework conceived in the first part of this study through the use of a technical procedure called action research. Two action research cycles were executed to collect the execution data of the projects adopted to use the framework. At the end it will be possible to contemplate a code quality evaluation framework that is proven to be suitable for use in any organization that uses agile methodologies
    corecore