16 research outputs found

    Visualization of software development metrics on a dashboard

    Get PDF
    Resulta difícil entendre, i més encara millorar, la qualitat del programari sense conèixer el procés de desenvolupament del mateix i dels seus productes. És necessari dur a terme algun tipus de procés d’avaluació per tal de determinar la qualitat dels productes (software). La investigació que es descriu en el present estudi és un intent d’analitzar diversos paràmetres en la producció del desenvolupament del programari i mostrar-los en una ”dashboard”. Es realitza, per tant, un breu recorregut per l’enginyeria, la qualitat i els paràmetres del programari en l’entorn d’una empresa informàtica real (Reval). Els resultats principals d’aquests paràmetres apareixeran monitoritzats en una única pàgina, de fàcil lectura, en una interfície a temps real per a l’usuari, la qual mostrarà una gràfica de l’estat actual (snapshot) i un historial dels indicadors clau de la producció software que permetran realitzar decisions instantànies i informades d’una ullada. L’analsis mètric, tot i no ser un tema interessant, és un aspecte necessari. És part de la sobrecàrrega necessària per a realitzar l’entrega del producte. Si podem detectar els possibles riscs de l’entrega a temps, els podrem solucionar. Si no descobrim quina és la seva magnitud, estem anant a les palpentes i els projectes poden fracassar. És important mesurar els aspectes adequats i assegurar-nos que van pel bon camí (per dirigir un treball progressivament). En segon lloc, és important mesurar els esforços per poder millorar ja que per molt que canviem coses i ens sembli que ho fem bé, no coneixerem les millores reals i no les podrem qualificar

    Towards Visual Analytics Dashboards for Provenance-driven Static Application Security Testing

    Get PDF
    The use of static code analysis tools for security audits can be time consuming, as the many existing tools focus on different aspects and therefore development teams often use several of these tools to keep code quality high and prevent security issues. Displaying the results of multiple tools, such as code smells and security warnings, in a unified interface can help developers get a better overview and prioritize upcoming work. We present visualizations and a dashboard that interactively display results from static code analysis for “interesting” commits during development. With this, we aim to provide an effective visual analytics tool for code security analysis results

    The connection between antipatterns and maintainability in Firefox

    Get PDF
    The notion that antipatterns have a detrimental effect on source code maintainability is widely accepted, but there is relatively little objective evidence to support it. We seek to investigate this issue by analyzing the connection between antipatterns and maintainability in an empirical study of Firefox, an open source browser application developed in C++. After extracting antipattern instances and maintainability information from 45 revisions, we looked for correlations to uncover a connection between the two concepts. We found statistically significant negative values for both Pearson and Spearman correlations, most of which were under -0.65. These values suggest there are strong, inverse relationships, thereby supporting our initial assumption that the more antipatterns the source code contains, the harder it is to maintain. Lastly, we combined these data into a table applicable for machine learning experiments, which we conducted using Weka [10] and several of its classifier algorithms. All five regression types we tried had correlation coefficients over 0.77 and used mostly negative weights for the antipattern predictors in the models we constructed. In conclusion, we can say that this empirical study is another step towards objectively demonstrating that antipatterns have an adverse effect on software maintainability

    Criação de um dashboard para monitoramento de perfis de qualidade de software

    Get PDF
    Trabalho de Conclusão de Curso (graduação)—Universidade de Brasília, Faculdade UnB Gama, 2017.A contratação de software é uma prática comum dentro dos Órgão Públicos Brasileiros. No momento que a empresa ganha a licitação de um serviço, a empresa passa a ter o direito de contratação, para prestar o serviço ao Órgão contratante. Este trabalho teve por objetivo implementar um dashboard que, com a ajuda de recursos visuais, fosse uma ferramenta que auxilie no processo de contratação de software em Órgãos Públicos. Para esta solução, o dashboard funciona como uma ferramenta de visualização de indicadores, determinados pelo Gestor de Projetos do Órgão Público. O dashboard exibe os indicadores dos projetos, que estão sendo desenvolvidos pela Contratante, para o Gestor. O trabalho consistiu de duas fases: Iniciação e Execução. O objetivo da primeira fase foi estabelecer fundamentos (teóricos e arquiteturais) para a fase de Execução. Enquanto o foco da segunda fase foi na implementação da solução. Como metodologia de desenvolvimento, optou-se por uma adaptação da metodologia Scrum. Por fim, cabe ressaltar que foi utilizado Aprendizado de Máquina na sugestão de possíveis métricas para os gestores. Nessa sugestão, leva-se em consideração perfis de outros gestores, criando-se personas para representar tais perfis.The contracting of software is a common practice within the Brazilian Public Departments. At the moment the company wins the bid for a service, the company will have the right to contract, to render the service to the contracting entity. This work aims to implement a dashboard that, with the help of visual resources, is a tool that helps in the process of contracting software in Public Departments. For this solution, the dashboard works as a tool for visualizing indicators, as determined by the Public Department Project Manager. The dashboard displays the project indicators, which are being developed by the Employer, for the Manager. The work consisted of two phases: Initiation and Execution. The objective of the first phase is to establish fundamentals (theoretical and architectural) for the Execution phase, while the focus of the second phase lies in the implementation of the solution. The use of an adaptation of the Scrum methodology for the development of the solution was chosen, but some changes were necessary, mainly due to the scope and number of roles required by the methodology. Machine Learning was used in suggesting possible metrics for managers, based on the profiles of other managers. In this case people were created to represent these profiles

    Utilizing static and dynamic software analysis to aid cost estimation, software visualization, and test quality management

    Get PDF
    The main results presented in the thesis are related to the semi- or fully-automated analysis of the software and its development processes. My overall research goal is to provide meaningful insights, methods, and practical tools to help the work of stakeholders during various phases of software development. The thesis statements have been grouped into three major thesis points, namely "Measuring, predicting, and comparing the productivity of developer teams"; "Providing immersive methods for software and unit test visualization"; and "Spotting the structures in the package hierarchy that required attention using test coverage data"

    Towards using fluctuations in internal quality metrics to find design intents

    Full text link
    Le contrôle de version est la pierre angulaire des processus de développement de logiciels modernes. Tout en construisant des logiciels de plus en plus complexes, les développeurs doivent comprendre des sous-systèmes de code source qui leur sont peu familier. Alors que la compréhension de la logique d'un code étranger est relativement simple, la compréhension de sa conception et de sa genèse est plus compliquée. Elle n'est souvent possible que par les descriptions des révisions et de la documentation du projet qui sont dispersées et peu fiables -- quand elles existent. Ainsi, les développeurs ont besoin d'une base de référence fiable et pertinente pour comprendre l'historique des projets logiciels. Dans cette thèse, nous faisons les premiers pas vers la compréhension des motifs de changement dans les historiques de révision. Nous étudions les changements prenant place dans les métriques logicielles durant l'évolution d'un projet. Au travers de multiples études exploratoires, nous réalisons des expériences quantitatives et qualitatives sur plusieurs jeux de données extraits à partir d'un ensemble de 13 projets. Nous extrayons les changements dans les métriques logicielles de chaque commit et construisons un jeu de donnée annoté manuellement comme vérité de base. Nous avons identifié plusieurs catégories en analysant ces changements. Un motif en particulier nommé "compromis", dans lequel certaines métriques peuvent s'améliorer au détriment d'autres, s'est avéré être un indicateur prometteur de changements liés à la conception -- dans certains cas, il laisse également entrevoir une intention de conception consciente de la part des auteurs des changements. Pour démontrer les observations de nos études exploratoires, nous construisons un modèle général pour identifier l'application d'un ensemble bien connu de principes de conception dans de nouveaux projets. Nos résultats suggèrent que les fluctuations de métriques ont le potentiel d'être des indicateurs pertinents pour gagner des aperçus macroscopiques sur l'évolution de la conception dans l'historique de développement d'un projet.Version control is the backbone of the modern software development workflow. While building more and more complex systems, developers have to understand unfamiliar subsystems of source code. Understanding the logic of unfamiliar code is relatively straightforward. However, understanding its design and its genesis is often only possible through scattered and unreliable commit messages and project documentation -- when they exist. Thus, developers need a reliable and relevant baseline to understand the history of software projects. In this thesis, we take the first steps towards understanding change patterns in commit histories. We study the changes in software metrics through the evolution of projects. Through multiple exploratory studies, we conduct quantitative and qualitative experiments on several datasets extracted from a pool of 13 projects. We mine the changes in software metrics for each commit of the respective projects and manually build oracles to represent ground truth. We identified several categories by analyzing these changes. One pattern, in particular, dubbed "tradeoffs", where some metrics may improve at the expense of others, proved to be a promising indicator of design-related changes -- in some cases, also hinting at a conscious design intent from the authors of the changes. Demonstrating the findings of our exploratory studies, we build a general model to identify the application of a well-known set of design principles in new projects. Our overall results suggest that metric fluctuations have the potential to be relevant indicators for valuable macroscopic insights about the design evolution in a project's development history

    The applications of autonomous systems to forestry management

    Get PDF
    Thesis (M.B.A.)--Massachusetts Institute of Technology, Sloan School of Management; and, (S.M.)--Massachusetts Institute of Technology, Engineering Systems Division; in conjunction with the Leaders for Global Operations Program at MIT, 2013.Cataloged from PDF version of thesis.Includes bibliographical references (p. 132-137).Public and private timberland owners continually search for new, cost effective methods to monitor and nurture their timber stand investments. Common management tasks include monitoring tree growth and tree health, estimating timber value and preventing wildfire. Many of these tasks are both manual and costly due to the vast areas and remote locations involved. Forestry experts predict that multi-vehicle autonomous systems may enable new, cost effective methods for performing various forest management tasks[1]. However, it remains unclear how these technologies may be applied, or where to focus development efforts. This research attempts to address this gap in literature, linking state-of-the-art research in forestry management science, robotics and autonomous systems, and product design and development. This thesis begins by reviewing existing forestry management practices and discussing a number of challenges identified through industry interviews and research. Modem product design methods are reviewed, and used to generate ideas for a number of new concept systems. Three design concepts are presented as detailed case studies. The data sets, methods and proposed systems discussed in this thesis may be used to guide future research in forestry management science, and drive further innovation in the emerging field of commercial and civilian autonomous systems. Key words: Forestry Management, Forestry Science, Robotics and Autonomous Systems, Unmanned Aerial Vehicles (UAV), Unmanned Aerial Systems (UAS), Product Design and Development, Light Detection and Ranging (LiDAR)by Joshua Przybylko.S.M.M.B.A

    Source Meter Sonar Qube Plug-in

    No full text

    Acta Cybernetica : Volume 23. Number 2.

    Get PDF
    corecore